您好,欢迎访问三七文档
第9章无线传感器网络应用开发9.1无线传感器网络硬件平台9.1.1无线传感器网络硬件结构及分类无线传感器网络中主要涉及三类硬件平台:传感器节点(SensorNode)、汇聚节点(又称基站、网关节点、Sink节点)及管理结点,如图9-1所示。另外,在无线传感器网络的设计、调试、部署等过程中还会用到一些辅助设备,比如编程器、仿真器等。图9-1无线传感器网络的宏观系统架构1.传感器节点传感器节点其结构如图9-2所示。存储模块传输模块处理模块其他支持模块(如GPS等)无线通信模块电源模块图9-2传感器节点结构9.1.1无线传感器网络硬件结构及分类2.汇聚节点汇聚节点实现两个通信网络之间数据的交换,其结构如图9-3所示。存储模块网络通信模块处理器模块节点通信模块电源系统图9-3汇聚节点结构3.管理结点管理结点由图9-3模块组成。软件系统传感模块通信模块传感器AC/DC转换器应用程序内存处理器网络层MAC物理层电源图9-4传感器网络终端结点的结构计算机与存储模块9.1.2网络结点的硬件开发1.硬件系统的设计特点和要求设计传感器网络的硬件结点需从以下方面考虑:(1)微型化(2)扩展性和灵活性(3)稳定性和安全性(4)低成本(5)低功耗2.硬件系统的设计内容传感器网络设计的主要内容在于传感器网络结点。传感器结点的基本硬件模块组成如图9-5所示。换能器模块数据处理模块无线通信模块电源模块其它模块图9-5无线传感网络结点的结构络组成9.1.3传感器结点的模块化设计1.数据处理模块对于数据处理模块的设计,主要考虑如下五个方面的问题。节能设计、处理速度的选择、低成本、小体积、安全性2.换能器模块所谓换能器(transducer)是指将一种物理能量变为另一种物理能量的器件,包括传感器和执行器两种类型。3.无线通信模块无线通信模块由无线射频电路和天线组成,4.电源模块设计电源模块是任何电子系统的必备基础模块。5.外围模块设计传感器网络结点的外同模块主要包括看门狗电路、I/O电路和低电量检测电路等。9.1.4传感器节点开发实例传感器节点的设计需要经过很多步骤,其流程图如图9-6所示。开始功能定义电路板调试印制板加工印制板设计元件采购原理图设计方案确定软件设计完成图9-6传感器节点设计流程图1.功能分析和芯片选型CC2420传感器部分ATMEGA128电源部分图9-7自行设计的节点结构目前设计的节点的结构如图9-7所示。9.1.4传感器节点开发实例3.电路板调试2.原理图及印制板设计(1)处理器时钟电路设计,其电路原理图如图9-8所示。XINXOUTY4128MHzC2613pFC2713pFXIN1XOUT1Y51232.768KHzC2813pFC2913pF图9-8时钟电路图(2)处理器无线模块接口设计;它们之间的逻辑连接图如图9-9所示。CSnSCLKSIS0FIF0SFDCCAFIF0PCC2420PB0PB1PB2PB3PB7PD4PD6PE6ATMEGA128图9-9ATMEGA128与CC2420接口(3)无线收发器模块设计;CC2420只需要极少的外围元器件,它的外围电路包括晶振对钟电路、射频输入/输出匹配电路和微控制器接口电路三个部分。开始部分模块焊接检查错误原因及修改模块检查系统整体功能测试下一个部分功能模块测试下一个部分模块焊接部分功能模块测试焊接错误测试通过?焊接错误?测试通过?模块检查模块测试完毕测试通过?结束是否否否否否是否是否是图9-10电路板调试沉程图9.2操作系统与软件开发9.2.1网络节点的操作系统1.网络结点操作系统的设计要求根据传感器网络的特征,通常设计操作系统时需要满足如下要求:①由于传感器结点只有有限的能量、计算和存储资源,它的操作系统代码量必须尽可能小,复杂度尽可能低,从而尽可能降低系统的能耗。②由于传感器网络的规模可能很大,网络拓扑动态变化,操作系统必须能够适应网络规模和拓扑高度动态变化的应用环境。③对监测环境发生的事件能快速响应,迅速执行相关的处理任务。④能有效地管理能量资源、计算资源、存储资源和通信资源,高效地管理多个并发任务的执行,使应用程序能快速切换并执行频繁发生的多个并发任务。⑤由于每个传感器结点资源有限,有时希望多个传感器结点协同工作,形成分布式的网络系统,才能完成复杂的监测任务。传感器网络操作系统必须能够使多个结点高效地协作完成监测任务。⑥提供方便的编程方法。基于传感器网络操作系统提供的编程方法,开发者能够方便、快速地开发应用程序,无需过多地关注对底层硬件的操作。⑦有时传感器网络部署在危险的不可到达区域,某些应用要求对大量的传感器结点进行动态编程配置。在这种情况下,操作系统能通过可靠传输技术对大量的结点发布代码,实现对结点在线动态重新编程。9.2.1网络节点的操作系统1.网络结点操作系统的设计要求TinyOS是一个开源的嵌入式操作系统,TinyOS本身提供了一系列的组件,可以很方便地编制程序,用来获取和处理传感器的数据,并通过无线方式来传输信息。可以把TinyOS看成是一个与传感器进行交互的API接口,它们之间能实现各种通信。(1)TinyOS的安装(2)创建应用程序(3)TinyOS的特点(4)TinyOS的应用程序示例①Blink程序的配件②BlinkM模块③ncc编译nesC程序④应用程序导入结点2.TinyOS操作系统介绍9.2.2软件开发1.传感器网络软件开发的特点和要求通常传感器网络的软件运行采用分层结构如图9-14所示。核心支撑技术具体应用代码系统内核通信协议应用数据功能管理控制功能收/发模块硬件抽象层物理层图9-14传感器网络结点软件系统的分层结构网络结点的软件系统开发设计具有如下特点:①具有自适应功能。②保证结点的能量优化。③采用模块化设计。④面向具体应用。⑤具有维护和升级功能。2.网络系统开发的基本内容主要包括以下三个方面的环节:①传感器应用。②结点应用。如图9-15所示。③网络应用。如图9-16所示。9.2.2软件开发算法模块服务虚拟机中间件管理操作系统传感驱动CPU传感器操作系统操作系统传感器硬件操作系统传感器硬件用户终端传感器网络应用分布式中间件系统传感器硬件节点节点节点图9-15结点应用框架的组件图9-16网络应州框架的组件3.传感器网络的软件编程模式主要简介三种常见的编程模式。(1)抽象域编程(2)以对象为巾心的编程(3)以状态为中心的编程模式9.3后台管理软件无线传感器网络后台管理软件一般由三大部分组成,其结构如图9-17所示。无线传感器网络传输网络后台管理平台图9-17无线传感器网络后台管理软件一般结构后台管理软件一般组成如图9-18所示。后台管理软件数据处理引擎图形用户界面后台组件数据库传输网络数据图9-18后台管理软件一般组成1.Mote-ViewMote-View是无线传感器网络与用户之间的一个接口。图9-19为无线传感器网络的三部分框架。传感器网络传感器网络传感器层TinyOS程序Mote-View客户端Mote-View客户端Mote-View服务器端服务器(数据库)Stargate服务器层(数据库、数据访问)客户层(可视化、分析工具)图9-19无线传感器网络软件框架9.3后台管理软件2.TinyVizTinyViz是TOSSIM的可视化工具,能够附加到一个正在运行的仿真程序中,采用Java实现。3.EmStarEmStar是一个基于Linux的软件框架,它着重于在无线传感器网络领域创建可靠的软件。4.SNADraintreeNetwork公司的SensorNetworkAnalyzer(SNA)是对传统网络协议分析的扩展,它是一个强大的虚拟网络分析器,包括网络拓扑结构、路由及绑定应用、链路质量及设备状态等的可视化。5.SpyGlassSpyGlass的目的在于通过将传感器网络、拓扑结构、状态及传感数据形象化而简化对传感器网络的调试、评估及对软件的理解。SpyGlass的可视化框架包括三个重要的功能实体:传感器网络、网关和可视化软件。9.3后台管理软件6.SNAMP中科院开发的SNAMP(SensorNetworkAnalysisandManagementPlatform)包括串口监听模块、数据处理模块、实时显示模块等主要模块。模块化的设计使得整个系统层次清晰,可扩展性良好。串口监听模板数据处理模块拓扑树实时曲线节点列表图9-20SNAMP的总体架构图9.4无线传感器网络的仿真9.4.1无线传感器网络仿真特点由于无线传感器网络是高度面向应用的网络类型,并且无线传感器网络相对其它类型网络有许多限制和独特之处,因此其仿真特点与现有的有线和无线网络有所不同,具有如下特点。1.仿真规模大2.仿真目标不同3.业务模型不固定4.节点特点5.无线传感器网络的其他特点9.4.2通用网络仿真平台1.NS-2NS-2(NetworkSimulatorVersion2)是无线传感器网络中最流行的仿真工具。是一个开源的面向对象离散事件仿真器,采用模块化方法实现。用户可以通过“继承”来开发自己的模块,具有很好的扩展性,能够对仿真模型进行扩展,也可以直接创建和使用新的协议。NS-2通过C++与OTcl的结合来实现仿真,C++用于实现协议及对NS-2模型库的扩展,OTcl用于创建和控制仿真环境,包括选择输出数据。NS-2包括大量的协议、通信产生器(TrafficGenerator)及工具。NS-2对无线传感器网络的仿真是对AdHoc仿真工具的改进并添加一些组件来实现的。对传感器网络仿真的支持包括传感信道、传感器模型、电池模型、针对无线传感器的轻量级协议栈、混合仿真及场景生成等。NS-2也存在以下一些缺点。①不适合大规模的无线传感器网络仿真:②缺少用户自定义:③缺少应用模型:④使用比较困难:2.OPNETOPNET(OptimizedNetworkEngineeringTool)是一个面向对象的离散事件通用网络仿真器,它使用分层模型来定义系统的每一方面。9.4.2通用网络仿真平台OPNET的特点如下。①建模与仿真周期:OPNET提供了强大的工具以帮助用户完成设计周期中五个设计阶段的三个,即模型建立、仿真执行和数据分析,如图9-21所示。②分层建模:OPNET使用层次结构建模,每个层次描述仿真模型的不同方面。③专用于通信网络:详细的模型库提供对现有协议的支持并且允许用户修改现有模型或者创建自己的模型。④自动仿真生成:OPNET模型能被编译为可执行代码,然后调试和执行,并且输出数据。它拥有探测器编辑器、分析工具、过滤工具、动画视图等结果分析工具。问题定义创建模型执行仿真结果分析作出决策验证图9-21建模与仿真周期3.OMNet++OMNet++(ObjectiveModularNetworkTest-bedinC++)是一个开源的、面向对象的离散事件仿真器,一般用来仿真通信网络及其他一些分布式系统。OMNet++多层嵌套的模块构成,如图9-22所示。SMSMSMCMSMSMSMCMSMSMSMCM系统模块SM:简单模块CM:复合模块:简单模块之间的消息图9-22OMNeT++模块9.4.2通用网络仿真平台OMNeT++的传感器网络模块称为SensorSim,传感器节点是一个复合模块,它包括三类模块:分别为代表每个协议层的模块、反映硬件的模块和一个协调器模块。SensorSim是基于组件实现的,但是OMNeT++也有以下一些缺点。①设计方法与其他仿真器大不相同,学习困难;②使用SensorSim所作的研究发布很少;③实现的协议很少。4.GIoMoSimGloMoSim(GlobalMobileInformationSystemsSimulationLibrary)于1998年针对移动无线网络而开发,它具有以下特点。①并行仿真:②可扩展性:③面向对象:GloMosim仍然存在以下一些问题。①仿真网络类型限制:②不支持外部环境事件③不再更新:应用层通信量产生器传输层:TCP、UDP、RTPIP/移动IP无线网络层:路由无线网络层:VC支持聚类(可选)数据链路层媒体访问层传播模
本文标题:第9章-应用开发
链接地址:https://www.777doc.com/doc-4768842 .html