1第5章传感器网络应用开发基础2传感器网络的应用开发基础技术是传感器网络完成应用功能的关键,这里主要介绍它的仿真平台和工程测试床、网络节点的硬件开发、操作系统和软件开发等内容。35.1仿真平台和工程测试床5.1.1传感器网络的仿真技术概述1、网络研究与设计方法通常计算机网络的研究与设计方法包括分析方法、实验方法和模拟方法。分析方法:对研究对象和所依存的网络系统进行初步分析,根据限定条件和假设,对研究对象和系统进行描述,抽象出研究对象的数学分析模型。实验方法:建立测试床和实验室。模拟方法:应用模拟软件来仿真网络系统的运行效果。42、网络仿真的应用意义(1)全新的模拟实验机理,使得这项技术具有在高度复杂的网络环境下得到高可信度结果的特点。(2)使用范围广,既可以用于现有网络的优化和扩容,也可以用于新网络的设计,而且特别适用于大中型规模网络的设计和优化。(3)初期应用成本不高,而且建好的网络模型可以延续使用,后期投资还会不断下降。5网络仿真的软件体系结构用户应用编程接口可视化工具网络模拟模型生成器模拟监视器流程模型协议模型拓扑模型模拟引擎63、传感器网络仿真的特点①分布性②动态性③综合性75.1.2常用网络仿真软件平台1、TOSSIMTinyOS是为传感器网络节点而设计的一个事件驱动的操作系统,由加州大学的伯利克分校开发,采用nesC编程语言。主要应用于无线传感器网络领域,采用基于一种组件的架构方式,能够快速实现各种应用。8TOSSIM是TinyOS自带的仿真工具,可以同时模拟传感器网络的多个节点运行同一个程序,提供运行时的调试和配置功能。由于TOSSIM仿真程序直接编译来自实际运行于硬件环境的代码,因而可以用来调试最后实际真正运行的程序代码92、MatlabMatlab除具备卓越的数值计算能力外,还提供专业水平的符号计算、文字处理、可视化建模仿真和实时控制等功能;也可以进行网络仿真,用于模拟传感器网络的运行情况和某些应用算法的性能。102、MatlabMatlab软件工具中,典型的无线传感器网络应用程序如WiSNAP。这是一个针对无线图像传感器网络而设计的基于Matlab的应用开发平台。113、NSNS(NetworkSimulator)是一种针对网络技术的源代码公开的、免费的软件模拟平台,使用它可以很容易地进行网络技术的开发。目前它所包含的模块内容已经非常丰富,几乎涉及到网络技术的所有方面,成为了目前学术界广泛使用的一种网络模拟软件。123、NS网络技术的学术论文中,利用NS给出模拟结果的文章最多,通过这种方法得出的研究结果也是被学术界所普遍认可的。NS也可作为一种辅助教学的工具,广泛应用在网络技术的教学方面。目前这种网络仿真软件工具已经发展到第二个版本,即NS2。135.1.3仿真平台的选择和设计1、仿真平台的选择仿真平台种类较多、功能各异,侧重点也不同。采用的设计方法也不一样,仿真平台的执行效率、速度、扩展性、重用性和易用性等有所差异。各仿真器都是在某些性能方面比较突出,而在其他方面又不重视。需要综合考虑各个因素,寻找一个平衡点以获得最佳的仿真效果。142、仿真平台的自主设计开发者需要决定是在现有仿真平台上开发还是单独构建。如果开发时间有限并且只有一些需要用到的特定特性在现有工具中没有,那么最好是在现有仿真平台上做开发。如果有足够的开发时间,以及自己的设计思路比现有工具在仿真规模、执行速度、特点等方面优越,那么创建一个仿真工具是有效的。155.1.4传感器网络工程测试床传感器网络中,仿真是一个重要的研究手段。但是仿真通常仅局限于特定问题的研究,并不能获取节点、网络和无线通信等运行的详细信息,只有实际的测试床(Testbed)才能够捕获到这些信息。16虽然在验证大型传感器网络方面有一些有效的仿真工具,但只有通过对实际的传感器网络测试床的使用,才能真正理解资源的限制、通信损失及能源限制等问题。测试床可以对无线传感器网络的许多问题进行研究,简化系统部署、调试等步骤,使得无线传感器网络的研究和应用变得相对容易。17Motelab是哈佛大学开发的一个开放的无线传感器网络实验环境,是基于Web的无线传感器网络测试床。它包括一组长期部署的传感器网络节点,以及一个中心服务器。18无线传感器网络传感器节点2传感器节点1传感器节点3传感器节点4本地用户因特网外部用户中心服务器以太网端口19SensoNet是美国亚特兰大市乔治亚州技术学院电子与计算机工程学校宽带&无线网络实验室研制的传感器网络试验床。SensoNet试验床是由三部分组成:核心网、核心接入网和传感器现场。2021SensoNet工程测试床的场景和部分实物225.2网络节点的硬件开发5.2.1硬件开发概述1、硬件系统的设计特点和要求(1)微型化(2)扩展性和灵活性(3)稳定性和安全性(4)低成本(5)低功耗232、硬件系统的设计内容主要内容:传感器网络节点传感器节点的基本硬件模块组成主要由数据处理模块、换能器模块、无线通信模块、电源模块和其他外围模块组成。换能器模块包括各种传感器和执行器,用于感知数据和执行各种控制动作。其他外围模块包括看门狗电路、电池电量检测模块等,也是传感器节点不可缺少的组成部分。24换能器模块数据处理模块无线通信模块电源模块其它模块255.2.2传感器节点的模块化设计1、数据处理模块对于数据处理模块的设计,主要考虑如下五个方面的问题:(1)节能设计(2)处理速度的选择(3)低成本(4)小体积(5)安全性26各种常见的微控制器性能列表厂商芯片型号RAM容量/KBFlash容量/KB正常工作电流/mA睡眠模式下的电流/μAAtmelMega10341285.51Mega1284128820Mega165/325/6454642.52MicrochipPIC87x0.36821Intel80518位Classic0.532305805116位1164510Philips5116位260153MotorolaHC050.5326.690HC082328100HCS084606.51TIMSP14x16位2601.51MSP16x16位104821AtmelAT91ARMThumb256102438160IntelXScalePXA27X256N/A39574SamsungS44B08N/A605272、换能器模块功能:将一种物理能量变为另一种物理能量的器件,包括传感器和执行器两种类型。传感器输出是模拟信号,通常传感器网络传输数字信号,须进行模/数转换,同样输出也进行数/模转换。在网络节点中配置ADC和DAC,能降低系统的成本,尤其是在节点有多个传感器且可共享一个转换器。283、无线通信模块无线通信模块由无线射频电路和天线组成,目前采用的传输介质主要包括无线电、空气、红外、激光和超声波等,它是传感器节点中最主要的耗能模块,是传感器节点的设计重点。传感器网络应用的无线通信技术通常包括IEEE802.11b、IEEE802.15.4(ZigBee)、Bluetooth、UWB、RFID和IrDA等,还有很多芯片双方通信的协议由用户自己定义,这些芯片一般工作在ISM免费频段。29传感器网络的常用无线通信技术无线技术频率距离/m功耗传输速率/kbpsBluetooth2.4GHz10低10000802.11b2.4GHz100高11000RFID50kHz~5.8GHz5~200ZigBee2.4GHz10~75低250IrDAInfrared1低16000UWB3.1~10.6GHz10低100000RF300~1000MHz10X~100X低10XX表示数字1~930常用短距离无线芯片的主要参数芯片/参数频段/MHZ速率/kbps电流/mA灵敏度/dBm功率/dBm调制方式TR10009161153-1061.5OOK/FSKCC1000300~100076.85.3-11020~10FSKCC1020402~904153.619.9-11820~10GFSKCC2420240025019.7-94-3O~QPSKnRF905433~91510012.5-10010GFSKnRF24012400100015-8520~0GFSK9Xstream902~92820140-11016~20FHSS31目前市场上支持ZigBee协议的芯片制造商有Chipcon公司和Freescale半导体公司。Chipcon公司的CC2420芯片应用较多,该公司还提供ZigBee协议的完整开发套件。Freescale半导体公司提供ZigBee的2.4GHz无线传输芯片包括MC13191、MC13192、MC13193,该公司也提供配套的开发套件。32无线射频电路设计①天线设计天线的设计指标有很多种,无线传感器网络节点使用的是ISM/SRD免证使用频段,主要从天线增益、天线效率和电压驻波比三个指标来衡量天线的性能。天线增益是指天线在能量发射最大方向上的增益,当以各向同性为增益基准时,单位为dBi;如果以偶极子天线的发射为基准时,单位为dBd。天线的增益越高,通信距离就越远。33天线效率是指天线以电磁波的形式发射到空中的能量与自身消耗能量的比值,其中自身消耗的能量是以热的形式散发。天线电压驻波比主要用来衡量传输线与天线之间阻抗失配的程度。当天线电压驻波比值越高,表示阻抗失配程度越高,则信号能量损耗越大。34②阻抗匹配射频放大输出部分与天线之间的阻抗匹配情况,直接关系到功率的利用效率。如果匹配不好,很多能量会被天线反射回射频放大电路,不仅降低了发射效率,严重时还会导致节点的电路发热,缩短节点寿命。由于传感器节点通常使用较高的工作频率,因而必须考虑导线和PCB基板的材质、PCB走线、器件的分布参数等诸多可能造成失配的因素。35③电磁兼容电磁兼容问题容易导致微处理器和无线接收器出现不正常的工作状况。因为微处理器有很多外部引脚,各引脚上的引线通常连接到节点内部的各个部位,受到干扰影响的可能性很大。无线接收器本身就是用于接收电磁信号的,因此如果信号或强信号的高次谐波分量落在接收电路的通带范围内,就可能造成误码和阻塞等问题。364、电源模块设计电池供电是最常见的传感器节点供电方式。按照电池能否充电,电池可分为可充电电池和不可充电电池;根据电极材料,电池可以分为镍铬电池、镍锌电池、银锌电池、锂电池和锂聚合物电池等。374、电源模块设计一般不可充电电池比可充电电池能量密度高,如果没有能量补充来源,则应选择不可充电电池。在可充电电池中,锂电池和锂聚合物电池的能量密度最高,但是成本比较高;镍锰电池和锂聚合物电池是唯一没有毒性的可充电电池。38常见电池的性能参数电池类型铅酸镍镉镍氢锂离子锂聚合物锂锰银铅重量能量比/(W·h·kg)354150~80120~160140~180330体积能量比/(W·h·L)80120100~200200~2803205501150循环寿命/次3005008001000100011工作温度/℃-20~6020~6020~600~600~60-20~6020~60记忆效应无有小很小无无无内阻/mΩ30~807~1918~3580~10080~100毒性有有轻毒轻毒无无有价格低低中高最高高中可充电是是是是是否否漏电流(%/月)3030158820251139原电池是把化学能转变为电能的装置,它以其成本低廉、能量密度高、标准化程度好、易于购买等特点而备受青睐。例如,我们日常使用的AA电池(即通常所说的5号电池,尺寸为直径14mm/高度49mm)、AAA电池(即通常所说的7号电池,尺寸为直径11mm/高度44mm)。404、外围模块设计传感器网络节点的外围模块主要包括看门狗电路、I/O电路和低电量检测电路等。看门狗(WatchDog)是一种增强系统鲁棒性的重要措施,它能够有效地防止系统进入死循环或者程序跑飞。传感器节点工作环境复杂多变,可能由于干扰造成系统软件的运行混乱。由于电池寿命有限,为了避免节点工作中发生突然断电的情况,当电池电量将要耗尽时必须要有某种指示,以便及时更