一种快速可靠的无线传感器网络路由

发布者:平和的心态最新更新时间:2007-11-26 来源: 电子测量技术关键字:终端  路由  驱动  反馈 手机看文章 扫描二维码
随时随地手机看文章

0 引 言

无线传感器网络(wireless sensor networks,简称WSNs)是当前在国际上备受关注的涉及多学科高度交叉的热点研究领域。它综合了传感器技术、嵌入式计算技术、现代网络及无线通信技术等,能够通过各类集成化的微型传感器协同工作,完成指定的任务,并进行自组织无线通信网络以多跳中继方式将所感知信息传送到用户终端。

WSNs一般运行在人们无法接近的恶劣甚至危险的远程环境中,并且传感器节点通常携带不能补充的有限能量。低能耗、低延迟、自动修复路径成了WSNs最根本的要求。目前所存在的WSNs路由协议大都不能同时满足这样的条件,或者需要依靠特殊硬件才能实现这些功能,本文提出了一种快速可靠的低能耗路由(a fast andreliable protocol,简称为FRP),不仅可以满足上面的基本要求,还可以工作于任务查询方式及事件驱动方式,并具有较强的路径修复能力。

FRP主要分为3个部分。首先是构建路由树结构,SINK点以洪泛方式向传感器网络传播路由树组建消息,使得网络中的每个节点都拥有自己的级别值和父节点,然后SINK点将所要查询的任务通过路由树发布出去;最后源节点将选择最短路径将数据反馈给SINK点。FRP主要能够实现以下几种功能:任务查询、事件驱动以及路径自我修复。而这些仅依靠普通的射频芯片即可实现,以下将做详细介绍。

1 FRP路由的建立与运行

1.1 路由树的建立

在无线传感器网络里,由于受到射频芯片通信距离的限制,单个节点无法了解网络中全部节点,只能知道其邻节点的一些信息。因此第一步需要建立路由树结构,让节点了解其所处的级别及父节点。SINK点首先通过洪泛方式向网络传播路由树组建消息。组建消息由组建标志位、发送节点ID、发送节点级值组成。收到该组建消息的节点将发送节点ID记录为父节点,然后将级值加1,并以自身ID和级值更新消息后继续向邻节点传播,直到网络中所有节点都拥有自己父节点和级值。由于洪泛传输中可能会导致已经发出消息的节点再次收到邻节点将级值加1后重新发送来的消息,从而导致消息循环。为了解决该问题,文中制定如下规则:当一个节点从邻节点处收到组建消息时,首先检查消息中级值是否低于自身级值,如果是,则以该级值更新,并向邻节点发送新的组建消息;否则将不予处理。在组建消息传播过程中,节点选择最早发送其消息,级值更低的节点作为父节点。图1所示为路由树的初始化过程。

1.2 任务查询机制

当SINK点进行任务查询时,首先以洪泛方式向整个网络发布任务查询命令,该命令主要由任务查询标志位、任务发送节点ID、任务发送节点级别、任务条件、任务存活时间等字段组成。收到该命令的节点,将以记录的形式将本次任务存储在本地存储器里,每一条记录代表不同的任务。当节点收到任务查询命令时,首先检查命令中的发送节点级别,若低于本身节点,则与本地存储的任务记录表相比较,如果不存在该任务,则添加该任务记录。然后检查自身是否满足该任务条件,若不满足,则以本身级点更新任务查询命令中的任务发送节点ID、任务发送节点级别,然后转发该命令;否则该节点即为源节点,并从任务查询命令中取出任务发送节点ID,作为目标节点,准备向其发送任务确认命令。该命令由任务确认标志位、源节点ID、数据发送节点ID、测量数据等字段组成。收到任务确认命令的节点从中取出数据发送节点ID,存储在任务记录中,作为以后相同任务的子节点,然后以自身ID作为新的数据发送节点ID更新命令,并从任务列表中取出该任务的任务发送节点作为目标节点继续传输任务确认命令,直到返回至SINK点。同时,其它未收到任务确认命令的节点将会在任务存活时间到期后,将存储器中的任务记录删除。在任务查询命令广播过程中,若接收节点检测到本地任务记录表中存在相同任务,则从该记录中取出子节点作为目标节点,向其发送任务查询命令,避免洪泛传播,从而大大节约了能量。

1.3 事件驱动

当某事件被传感器节点捕捉时,则该节点即为源节点,并向其父节点发送事件命令。该命令由事件类型、源节点ID、发送节点ID、测量数据组成。收到事件命令的节点,以自身ID作为新的发送节点ID更新命令,向其父节点继续传输事件驱动命令,直到数据传输至SINK点。

2 路由修复机制

本文中的节点传输路径是唯一的,这样可以节约能量,提高效率。但是由于这种唯一性,如果一个节点电池耗尽或者物理损害而失效,则会导致其下级节点也脱离了网络。目前有些无线传感器路由协议针对这一问题,采用通过由SINK点发起洪泛协议进行路径修复的办法来解决,但是这样明显浪费能量,而且在洪泛期间,失效节点的邻节点若产生事件将无法传递,导致了数据丢失。

FRP路径修复机制分为2个部分:节点状态检测和新目标节点的选择。文中采用应答机制来进行节点状态检测。当节点发送数据给目标节点后,若在一定时间内,收到目标节点的ACK,则认为目标节点仍然正常工作,并已将数据向前传输;否则目标节点已经死亡,需要另行寻找新的目标节点。如果在任务查询方式运行过程中,某节点检测到子节点死亡时,按相反路径发送命令通知SINK点,进行本次任务的重新路由,建立新的任务路径。如果在事件驱动方式下,当节点发现其父节点死亡,则发送SEARCH消息,邻节点将返回ACK。节点从中选取响应时间低的低级别节点作为目标节点。若无低级别的节点应答,则该节点将以洪泛方式发送命令通知SINK点进行新的路由树的建立。其过程如图2,图3所示。

3 软件仿真

本文采用了Visual C++开发了无线传感器网络路由仿真平台。分别研究了从100到500个节点共5个不同规模的传感器区域。我们建立参数如表1所示。

PEQ将根据上述参数在相同的仿真环境下与Directed Diffusion协议(DD协议)进行测试并进行以下几个方面的比较:SINK点-源节点-SINK点时间延迟;平均延迟;平均消耗能量,以下将分别作以说明。

SINK点-源节点-SINK点的时间延迟指的是从SINK点发出查询信息,到数据返回到SINK点所消耗的时间。低的延迟时间可以保证用户有更充足的时间来处理突发事件。FRP主要通过SINK点发布任务查询命令建立路径,源节点沿着该路径反方向将数据传输给SINK点。而DD协议则是通过SINK点发布兴趣给网络,当源节点收到后,源节点通过多个路径传送数据给SINK点,SINK点收到后,并从中选择更快捷的路径加强,进行数据传输。FRP比DD协议在步骤上更简洁,从而获得更低的延迟效果。其仿真数据如图4所示:

平均延迟指的是仿真中所产生的事件从源节点传播到SINK点需要的平均时间。仿真数据如图5所示,结果表明,随着网络规模的扩大,PEQ协议显示了比DD协议更好的延迟特性。

平均消耗能量指的是仿真结束后,节点平均所消耗的能量。仿真数据如图6所示,结果表明,FRP比DD更节约能量。原因在于FRP在数据传输中仅使用单一路径,而DD协议在数据传输中会使用多个传输路径,并对其中传输速度慢的路径进行反向增强,产生了能量消耗。

4 结 论

本文提出了一种新的无线传感器路由协议FRP,经过与DD协议仿真比较,实验数据显示,无论是小规模网络(100个节点),还是中大规模网络(300~500个节点),FRP都具有更短的时间延迟和较低的能量消耗。并且该协议已经在基于MSP430F123和NRF2401的硬件节点上成功应用。现场试验表明,该路由反应迅速,自我修复能力强,可以满足无线传感器实时监测应用的要求。

关键字:终端  路由  驱动  反馈 引用地址:一种快速可靠的无线传感器网络路由

上一篇:RFID技术应用于集装箱领域的解决方案分析
下一篇:利用Virtex器件实现子空问法雷达目标一维像识别

推荐阅读最新更新时间:2024-05-07 15:59

基于PLC810PG控制IC的LED路灯驱动电路
  目前LED应用的一个热点就是LED 的道路照明。LED路灯技术主要有两大部分:一个是离线(off2line) LED驱动电源技术;另一个是LED 路灯模块及其散热和灯具技术。   由于用来取代高压钠灯等传统光源用于道路照明的LED路灯功率往往远超过75 W,因此要求LED路灯电源AC输入电流谐波含量必须符合IEC610002322等标准规定限制。为此, LED路灯电源必须采用功率因数校正( PFC) 。   LED路灯电源大多采用开关型电源( SMPS)拓扑结构。由于LED路灯功率通常达150 W 以上,不宜再沿用单开关反激式电路,而必须采用支持相应功率的电路拓扑,例如半桥LLC谐振拓扑结构。   1 半桥LLC谐振拓
[电源管理]
基于PLC810PG控制IC的LED路灯<font color='red'>驱动</font>电路
基于Linux系统的触摸屏驱动方案
  引言   触摸屏作为一种输入设备,具有坚固耐用、反应速度快、节省空间、易于交流等优点,提供简单、方便、自然的人机交互方式,目前被广泛应用于工业控制、电子查询、消费性电产品领域。   Linux作为是目前最流行的操作系统之一,在桌面系统、服务器领域有大量用户,具有源代码开放,支持的硬件丰富、高可移植等优点,在嵌入式领域也备受青睐。Linux根据不同设备,将驱动程序分为字符设备驱动、块设备驱动、网络设备驱动三种,Linux输入子系统u是对字符类型输入设备驱动实现方式的抽象,是对分散的、多种不同类别的输入设备进行统一处理的内核驱动模型。输入子系统具高效、无Bug和可重用等优点。本文对基于Linux输入子系统的触摸屏驱动进行深
[电源管理]
基于Linux系统的触摸屏<font color='red'>驱动</font>方案
恩智浦可调光市电LED驱动解决方案
LED在电子系统中使用已经有很多年了,主要用作电子设备的指示灯。推动LED照明市场发展的关键推动力是高亮度LED和智能LED控制器的出现。采用高亮度LED的产品设计师面临的主要设计挑战包括散热管理、驱动方案、拓扑架构和已有的基础设施。要替代现有的可调光白炽灯或卤素灯光源,必须实现这样的一个电子灯驱动系统,它不仅可以与现有的调光开关一起工作,而且可复制现有光源的调光性能。   NXP(恩智浦) SSL2101 IC可以满足上述性能要求。此外,它还是一种高效的电源转换器。这是业内第一款集成这些能力的IC,它使得高亮度LED灯设计师能够以一种省成本和体积的方式集成电子电路,并从最佳热权衡中获益。   LED特性   LED
[电源管理]
恩智浦可调光市电LED<font color='red'>驱动</font>解决方案
歌尔推出新一代扬声器技术,智能终端音质提升一站解决
AI智能+万物互联,是随着科技发展,人们对当下和未来生活的美好期望。像是智能家居、智能穿戴、智能交通、智能医疗等领域,正在迎来一轮新的技术升级和产品升级,以满足消费者不断变化的高品质需求。 针对智能手表、智能眼镜、智能音箱、智能手机和平板、以及汽车音响等智能终端在音质提升方面的痛点和市场需求,歌尔股份有限公司(下文简称“歌尔”)在深圳举行了一场扬声器技术分享会,推出了微型扬声器SBS™和大扬声器Cyclone两个品牌的升级技术,旨在帮助各类智能终端改善产品音质,让消费者听得更清、听得更好。 面向智能穿戴市场:弧形振膜扬声器让产品更轻薄 随着科技的进步,TWS耳机、智能手表、智能手环这类可穿戴设备功能丰富,集成度高。经
[嵌入式]
歌尔推出新一代扬声器技术,智能<font color='red'>终端</font>音质提升一站解决
广芯推出同时支持共阳(阴)极并联驱动芯片
广芯电子(BROADCHIP)推出业内首款能够同时支持共阳极并联LED及共阴极并联LED的背光LED驱动芯片----BCT3220/BCT3221。 BCT3220/BCT3221: Low Dropout Current Source & Current Sink,功能特点:   1. 芯片的SEL引脚连接Ground,实现共阳极并联LED驱动功能;   2. 芯片的SEL引脚连接VIN,实现共阴极并联LED驱动功能;   3. 每路20mA输出时,Vdropout最低可达50mV;   4. 8阶数字脉冲控制背光亮度;   5. 不同通道电流匹配度 2%;   6. 支持SEL引脚 输入PWM,通过
[电源管理]
节能型交流驱动系统在电动车中的应用(图)
  在电动车中,蓄电池和电驱动系统是两个关键,它们的技术水平很大程度上决定着电动车的主要性能。不同于一般工业和家用电驱动系统,在电动车上,不论是采用何种方式供给电能,能量都是有限的,因此为满足电动车的特殊性,新型的电驱动系统中的电机和功率变换装置应满足以下一些基本要求:①高效率;②体积小重量轻;③高起动转矩倍数;④良好的调速性能和可控制性;⑤可靠性一定要高,使用寿命必须尽可能长,少维护甚至是不维护;⑥降低噪声和减小振动,改善舒适性。   目前,我国电动车电驱动系统仍以直流电机驱动为主,普遍采用从蓄电池到功率变换器再到驱动电机的单向能量传递方式,它存在着很多不足。具体而言,直流电机虽然具有结构简单、可控制性好、调速范围宽、起动转矩
[工业控制]
节能型交流<font color='red'>驱动</font>系统在电动车中的应用(图)
工业机器人的驱动系统包括哪些_工业机器人的优点和缺点
  工业机器人的驱动系统包括哪些   工业机器人的驱动系统,按动力源分为,气动和电动三大类。根据需要也可由这三种基本类型组复合式的驱动系统。这三类基本驱动系统的各有自己的特点。   一、液压驱动系统   由于液压技术是一种比较成熟的技术。它具有动力大、力(或力矩)与惯量比大、快速响应高、易于实现直接驱动等特点。适于在承载能力大,惯量大以及在环境中工作的这些机器人中应用。但需进行能量转换(电能转 换成液压能),速度控制多数情况下采用节流调速,效率比电动驱动系统低。液压系统的液体泄泥会对环境产生,工作噪声也较高。因这些弱点,近年来,在负荷为100kz以下的机器人中往往被电动系统所取代。   二、气动驱动系统   
[机器人]
STM32 ILI9341驱动TFTLCD屏(三)
上次已经常用的指令封装成函数,今天通过调用这些函数在屏幕上显示图片,让大家进一步了解ILI9341。 要让屏幕显示图片,那就要先把图片转化为计算机能识别的数据.,这里用Image2Lcd这款工具软件,把图片转换成特定的数据格式以用来匹配STM32系统所需要的显示数据格式。 图片转换成特定的数据格式步骤: (1)把图片尺寸修改为想要显示的大小并保存; (2)在Image2Lcd中打开要显示的图片; (3)设置输出类型为C语言数组;扫描模式要和ILI9341的扫描方式一致;输出灰度选择屏幕适用的;确定要显示的宽度和高度; (4)将生成的数组保存到一个h文件或c文件,方便调用。 数组保存到文件后,文件会自动打开,图片现在
[单片机]
STM32 ILI9341<font color='red'>驱动</font>TFTLCD屏(三)
小广播
最新网络通信文章
换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved