《无线传感器网络自组网协议的实现方法.docx》由会员分享,可在线阅读,更多相关《无线传感器网络自组网协议的实现方法.docx(12页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、无线传感器网络自组网协议的实现方法摘要:无线传感器网络通常采用电池供电,放置在没有根底构造的地方,节点的通讯才能特别有限。这就要求传感器节点具有自组织的才能,自动形成转发监测数据的多跳无线网络。本文提出一种简单、易实现的自组织协议,选用MSP430F149单片机设计微型传感器节点,并实现了一种低功耗无线网络。关键词:无线传感器网络自组织协议低功耗无线传感器网络具有非常广阔的应用前景。一种传统的洪泛算法Flooding,也是最早、最简单的路由协议。节点以播送的形式发送消息,接收到消息的节点再以播送形式转发数据包给所有的邻节点,这个经过重复执行,直到数据包到达目的地或到达预先设定的最大跳数。提出了
2、最具代表性的层次型自组织算法LEACH,LowEnergyAdaptiveClusteringHierarchy。LEACH是MIT的Heinzelman等人为无线传感器网络设计的低功耗自适应聚类路由算法,主要通过随机选择聚类领袖、平均分摊中继通讯业务来实现。以数据为中心的自组织算法SPINSensorProtocolsforInformationViaNegotiation。它的主要思想是通过高层的描绘方式元数据来命名传感数据。在发送真实的数据之前,传感器节点播送收集数据的描绘信息元数据,当有相应的恳求时,才有目的地发送数据信息。这些研究均在无线传感器网络的自组织算法上获得进展,但是,Flo
3、oding存在消息“内爆和“重叠的缺陷;LEACH的动态分簇带来了拓扑变换和大量播送这样的额外开销;SPIN中的元数据没有统一的形式,且其拓扑变化是部分性的,因此不适用于需要高可靠性的应用。还有很多其他相关算法停留在理论研究阶段。针对这种研究现状,本文提出一种简单易实现的自组织协议,选用MSP430F149单片机设计了微型传感器节点,并实现了一种低功耗无线网络。1.自组织协议在协议中,通过定义数据包的格式和关键字来实现节点的自组织。1.1协议格式自组织协议格式如下:其中,Pre表示前导码,这些字符杂波不轻易产生,通过测试和试验发现,噪声中不轻易产生0x55和0xAA等非常有规律的信号;Key表
4、示关键字,用来区分各种情况下的数据,接收节点会根据这些关键字分别进入不同的数据处理单元;From表示源地址,是发送数据的节点自身信息;Final表示数据的目的地址;Data表示有效数据,这些数据随着字符Key的不同采用不同的格式,可携带不同的信息;Check表示检验位,可防止接收错误的数据包;Flag表示数据包的完毕标志位。根据协议格式中的Key,可以将节点通讯时捎带的数据包分为自组网信息、环境突变信息、上位机的控制命令、播送信息等。节点在发送状态突变时的数据包格式如下:其中,0x55和0xAA为数据前导码,0xFF为传感器节点在感测到其状态突变时向外发送数据的关键字,0x11表示发送节点的地
5、址,0x00为数据包要到达的目的地址,0x01表示数据包在网络传输中的跳数,接着的0x01表示节点在当前网络中的级别,0x15表示节点当时收集的温度,0x20表示节点当时收集的电源电压值,0x03表示节点的状态量,0x000x00为11个字节的有效数据,可记录数据包经过节点的地址,0x3A为前面核心数据和的低8位,作为数据包的检验码,0xBB为数据包的完毕标志。接收节点需要向发送节点做出应答,应答状态突变时的数据包格式如下:其中,0xFF就表示应答状态突变的关键字,后面分别是发送节点和接收节点的地址。1.2自组网经过网络包含一个与上位机相连接的基站节点和假设干传感器节点。基站节点上电初始化后就
6、进入低功耗形式。传感器节点随机布放,上电初始化后,传感器节点首先会向基站节点发出恳求分配级别的命令,然后进入低功耗状态并翻开定时器。假设在设定时间内收到基站节点分配的级别,该传感器节点就会向基站节点发送自组织信息的数据包。假如在设定时间内没有收到基站节点分配的级别,该节点会从低功耗状态唤醒,再次发送恳求分配级别的命令,如此循环。当传感器节点发出恳求基站分配级别的命令到达设定上限后,但仍然没有确定自己在网络中的级别时,该节点就会向全网发出播送命令,然后进入低功耗状态并翻开定时器。定时时间到,节点重新回到发射播送命令状态。当传感器节点发射播送的次数到达设定值时,该节点就会将接收到的应答信息进展整理
7、,确定自己在网络中的级别,并确定上级、同级和下级节点的相关信息。该节点再向上级节点发送包含这些信息的数据包,直到数据包传送到基站节点,进而确定整个网络的拓扑构造。节点的自组织流程如图1所示。图1节点的自组织流程2、硬件研制为了验证提出的自组织协议,本文选用了片上资源丰富的MSP430F149单片机作为处理器,研制了一种微型传感器节点。2.1总体方案系统由基站节点和传感器节点组成。节点硬件选择了支持低功耗工作形式的MSP430F149单片机和nRF905射频模块,使用32768Hz的低频晶振,采用2节5号电池供电。在设计节点的经过中,拨码开关、蜂鸣器、LCD指示灯的设计极大方便了实验的调试。2.
8、2节点设计图2为传感器节点的框图,该节点使用电池供电,体积小巧,只有打火机般大小。图2传感器节点框图MSP430系列单片机是TI公司消费的一种混合信号控制器,其突出优点是低电源电压、超低功耗,可采用电池工作,有很长的使用时间。nRF905是挪威NordicVLSI公司推出的单片射频收发器,低电压工作,功耗非常低,工作于433/868/915MHz三个ISM工业、科学和医学频道,频道之间的转换时间小于650s。ShockBurstTM工作形式,能自动处理字头和CRC循环冗余码校验。通过SPI串口与微控制器通讯,使用非常方便;内建空闲形式与关机形式,易于实现节能。nRF905适用于无线数据通讯、无
9、线开锁等众多领域。天线的设计是整个系统设计的一个非常重要的环节。系统功耗的上下以及网络性能的好坏与天线的设计都有亲密关系。天线局部的设计采用整体PCB环行差分天线。与传统的鞭状天线相比,不仅节省空间,降低消费本钱,机构上也更稳固可靠。由于本文主要研究无线传感器网络的自组网和低功耗技术,所以只选择了MSP430系列单片机的内部集成热敏二极管来测量节点的工作温度,但预留了大量外接传感器接口,外接传感器的信号能以中断方式唤醒节点。2.3系统功耗传感器节点采用电池供电,功耗的上下直接影响整个网络的生命期。系统的功耗不仅与选择的元器件有关,还与整个网络的控制策略有关。采用不同的控制策略,系统的工作时间就
10、会不同。假设希望节点工作一年的时间36524=8760小时,那么理论上要求平均工作电流约为263A23008760。发射数据到接收应答的工作时间约为50ms,这样可推算出每次工作前的平均休眠时间为2.3s。实际应用中,可以根据网络的反响速度和信息的采样率来选择系统工作和休眠的时间。3、软件开发低功耗系统的设计是一种综合硬件和软件为一体的技术,必须在使用低功耗芯片的同时,采用智能的控制策略。例如,让系统在需要工作时全速运行;而当整个系统处理完事件就进入低功耗形式,等待外部事件的唤醒。系统软件包括基站节点软件、传感器节点软件和上位机处理软件。3.1基站节点软件基站节点的主程序比拟简单,初始化后就进
11、入低功耗形式,等待外部事件唤醒。外部事件包括串口中断事件、接收到数据事件和定时器的中断事件。图3给出了基站节点的串口中断流程。图3基站节点串口中断流程为了防止串口通讯经过中丧失数据,软件设计上加了握手协议。当基站节点每发送一个数据包给上位机时,上位机都会向基站节点发送应答信号,直到数据包发送给上位机。接收到数据包后,节点会从低功耗形式中唤醒,根据接收到的数据中标志位的不同字符分别进入不同的处理单元。当多个传感器节点同时与某个传感器节点通讯时,存在挣抢信道的现象。为了防止多个传感器节点同时与某个传感器节点通讯造成数据丧失,软件上采用一定的退避机制。一方面,利用射频芯片nRF905的CD载波侦听信
12、号来产生随机延时,以防止同时发送信号;另一方面,当一个传感器节点与某个传感器节点建立了通讯通道时,其他发送数据的节点会增加发射数据的次数。3.2传感器节点软件传感器节点初始化后,首先发送恳求基站节点分配级别的命令,同时翻开一个定时唤醒的定时器;然后进入低功耗形式,等待外部事件的唤醒。假设传感器发送恳求基站节点分配级别的次数到达设定上限,仍未确定节点在网络中的级别,那么该节点就会向四周传感器节点播送信息。当播送次数到达设定值时,传感器节点就根据收到的信息确定自己的级别以及与该节点有直接联络的节点的信息,并把这些信息发送给基站节点。传感器节点的外部中断事件包括接收到数据事件、定时器中断事件、状态突
13、变事件。当传感器节点检测到状态突变后,会从低功耗状态唤醒,并及时收集此时的环境参数包括状态量、温度值及节点电压值,将这些数据发送出去。该数据包通过单跳或者多跳到达基站节点并在上位机软件上显示。3.3上位机处理软件为了监测整个网络情况,需要在主机上建立良好的人机交互界面。采用VisualBasicVB来设计人机界面。利用VB的MSComm控件实现上、下位机的串口通讯,利用其他控件实现对无线传感器网络的分析、显示和操纵。上位机主程序主要完成一些变量和控件初始化,然后等待串口数据。数据的接收和发送都是由中断程序完成的,其流程如图4所示。图4上位机的串口中断流程上位机接收到完好的数据包后,会根据数据包
14、中的关键字进展不同的处理。发送数据时,根据保存的网络数据计算中转数据的途径。为节约基站节点的能量,网络中有很多的数据处理是在上位机中进展的。4、实验结果系统研制完成后,需要设计实验来考核自组网效果及网络性能。实验中,首先关注的问题是随机分布的传感器节点在自定义的组织协议下的组网情况。为了考核自组织效果,首先让基站节点通过串口与上位机相连并翻开上位机处理软件;然后翻开传感器节点的电源,并通过人工安放或随机撒播方式布置好传感器节点。借助上位机的处理软件,可以非常清楚地看到整个网络的拓扑构造和网络节点的环境参数。当上位机处理软件检测到网络内的传感器节点后,会在上位机上进展显示并保存传感器节点的数据。
15、图5为系统演示的11个传感器节点自由组网时界面的显示情况。组网时间约3min。图5中的黑色曲线为数据的传输途径。当鼠标点击某个节点,会弹出该节点的信息收集卡。信息收集卡反映了节点的状态量、温度值、电压值以及剩余能量,通过收集卡可直接对该节点进展远程控制。图5网络拓扑及数据传输道路图在检测网络性能的实验中,让传感器节点一级一级分布下去。通过上位机软件可以很清楚地看到所投放的传感器节点可组成的最大跳数的网络拓扑构造。当网络组成后,可通过上位机界面对网内各个节点进展远程控制;当各个节点发生状态突变时,会以中断形式唤醒节点,以能量优先的原那么逐级传送到基站节点,并在上位机界面上进展相应显示。当新的传感
16、器节点参加到网络中,系统会及时反映新参加节点。当系统检测到传感器节点由于电源电压低于工作电压,或者人为破坏引起失效时,会从网络中删除该节点的拓扑构造及相关信息,检测方法有手动刷新和定时采样两种。网络内传送的数据都保存在网络数据库中,便于查寻。通过上位机软件还可以对网络进展复位,让所有传感器节点进展重新组网。本文首先提出了一种无线传感器网络的自组织协议,然后选用MSP430F149和nRF905设计了微型传感器节点,并实现了一种低功耗无线网络,其特点如下:利用无线通讯携带的信息自动生成多级网状网络,并按能量优先的原那么自动生成数据的传输途径。采取应答和退避机制,防止多个传感器节点向一个节点发送数据时所导致的数据丧失。无线通讯的双向性,不仅被动显示各个传感器节点的信息,还可主动对每个传感器节点进展远程控制。使用支持低功耗工作形式的硬件,配合软件上的智能控制策略来实现系统低功耗,尽可能延长网络寿命。0