电子文章 | 电子资料下载 | 家电维修 | 维修资料下载 | 加入收藏 | 全站地图
您现在所在位置:电子爱好者电子文章传感技术基于nRF905的无线传感器网络节点的设计与实现

基于nRF905的无线传感器网络节点的设计与实现

11-20 00:37:23 | http://www.5idzw.com | 传感技术 | 人气:983
标签:传感技术知识,传感器与检测技术,http://www.5idzw.com 基于nRF905的无线传感器网络节点的设计与实现,http://www.5idzw.com

  后退次数(NB):NB的初始值为0,当设备有数据要传送时,经过一段后退时间(2BE-1)×100 μs后,检测CD,若检测到信道忙,则会再一次产生倒退时间。此时NB值会加1,NB值最大定义为4。当信道在经过4次的后退延迟时间后仍为忙,则放弃此次的传送,以避免过大开销。

  尝试次数(CW):循环判断当前频道是否空闲,当判断到了一定次数后该频道依然空闲则跳出循环,开始传送数据,设初值为2。

  后退指数(BE):初值设为2。

  本设计中,CD信号为高时必须通过切换至standby模式来使CD信号复位,以保证下次CD信号的检测。

  根据nRF905模块的时序可知,模块从standby模式切换至接收或发送模式的时间为650 μs,发送和接收模式之间的切换需要550 μs,切换时间远大于时隙及DIFS的值。因此,BE设置为2,最大为4。

  2.2.2 数据传输

  在进行数据传输时,源节点首先检查自己的缓存中是否有到目的节点的路由信息,如果没有,则先进行路由发现,与广播模式相同。如果有至目的节点的路由信息,则根据路由信息,先发送数据请求命令RTS。当目的节点接收到返回的允许发送命令CTS信号时,则表示已经建立了数据传输通道,由请求节点开始传输数据,传输完毕后,由目的节点发送DATA_ACK给源节点,表示数据发送完毕。其工作流程如图4所示。


  2.2.3 路由修复

  数据传输时,每个节点收到数据后,都要先回复应答ACK信号给其前一个节点,再转发至下一个中继节点,节点中设置超时定时器,约等待1 633 μs ACK信号,前一个节点没有收到ACK,则重发数据,设置重发次数为3。假若重发3次都没有收到ACK信号,则判断下一个节点为中断节点。查询缓存路由中是否有其他到达中断节点下游节点的信息,有则使用这个备用路由,无则广播发送RERR给所有包含中断节点路由的源节点,每个节点在收到该RERR后,就会从它的路由缓存中删除所有包含该中断节点的路由。


  路由修复示例如图5所示。节点0需要发送数据给节点5,节点0中含有到节点5的路由信息,0→1→2→5;节点0开始发送RTS,每个节点收到RTS后返回给前一个节点ACK,表示路由无中断;假若节点1没有收到ACK,重发3次后仍没有ACK返回,则判断节点2是中断节点;这时查询节点1中有无到达节点5的路由,发现1→3→4→5,则按照此路由继续发送RTS;当节点1返回DATA_ACK,表示数据传输完成,延迟10×跳数(ms)后,广播发送RRER,收到RRER的每个节点查询本节点是否含有中断路由,有则从路由缓存中删除包含中断节点的路由。

  3 试验结果

  试验网络系统由10个普通节点和1个协调器节点组成,采用人工随机安放的方式把所有节点放置在约200 m的空旷地带。首先,把协调器节点通过串口与主控PC机连接,打开上位机控制软件,并给协调器节点上电;随后在随机放置普通节点的同时一一打开节点的电源。

  通过上位机软件可以清楚地看到,每当有新节点加入网络(打开电源),上位机会实时显示出新加入节点的地址和路由信息,并且通过反向路由返回应答信号给新节点,表示成功加入网络。当所有节点都加入网络后,可以通过上位机软件看到整个网络中各个节点的路由信息,并且可以对每个节点或多个节点进行远程控制。

  为了实时监测到每个节点的运行情况,每个节点程序都加入定时扫描程序,定时时间1 min,检测节点本身在1 min内是否为空闲状态,如果是空闲状态,则向协调器节点发送节点信号,保证本链路无中断;协调器在一定时间周期内,检测接收到的每个节点信号,如果缺少某个节点的信息,则由协调器发送检测信号给这个节点,寻找中断节点并进行路由维护。也可以直接通过主控电脑的上位机软件手动发送检测信号给每个节点,从而检测每个节点的运行情况。

  nRF905的空中传输速率峰值为100 kb/s,有效传输速率为50 kb/s。

  通过上位机软件对整个网络进行连续数据传输试验,测试在本协议下的网络吞吐率。测试条件:200 m空旷地带,分别测试一个节点至10节点网络中点对点,1跳、2跳、3跳情况下的吞吐率,数据包大小32 B。传输要求一个包到达目的节点后返回到应答表示传输完成,其吞吐率计算如下:


  测得的网络吞吐率如图6所示。可以看出,网络中进行点对点的数据传输,吞吐率约为16 kb/s,并且随着节点数的增多,影响很小;随着跳数的增加,网络吞吐率降低,但是网络中节点数量增多,同时节点传输几率增加,因此逐渐趋于稳定值。最后在网络设定最大跳数(3跳)、10个节点网络的情况下,网络吞吐率约为4 kb/s。


  通过实验测得数据表明,在短距离的无线通信网络中,该系统可以稳定可靠地运行,数据传输率高,网络吞吐率完全可以达到一般的无线传感器网络的要求。并且该系统具有良好的扩展性、移植性和实用性,可广泛运用于温度、湿度、光传感器采集数据、能量监测及电路控制等技术。


上一页  [1] [2] 

,基于nRF905的无线传感器网络节点的设计与实现
关于《基于nRF905的无线传感器网络节点的设计与实现》的更多文章