首页 理论教育 节点运行流程的分析介绍,

节点运行流程的分析介绍,

时间:2023-06-28 理论教育 版权反馈
【摘要】:2)判断节点周期定时器t1是否到期,如果到期则进行第3)步。如果不等于0,表示节点在上一轮数据收发中收到了区域定位节点的ACK信号,处于15000~20000ms的休眠中;如果等于0,表示节点在上一轮休眠中没有收到ACK信号或收到ACK信号并且已完成休眠,这样可以进行第5)步。

节点运行流程的分析介绍,

1.移动节点流程

如图10-5所示,移动节点流程如下。

1)节点初始化,包括MSP430的各端口、寄存器、时钟、CC1100工作状态以及各个变量

2)判断节点周期定时器t1是否到期,如果到期则进行第3)步。

3)节点周期定时器重新赋值,t1=3000ms。

4)判断标志位flag是否等于0。如果不等于0,表示节点在上一轮数据收发中收到了区域定位节点的ACK信号,处于15000~20000ms的休眠中;如果等于0,表示节点在上一轮休眠中没有收到ACK信号或收到ACK信号并且已完成休眠,这样可以进行第5)步。

5)在1000ms内随机选择一个时间点t2,并休眠。

6)时间t2到期,最大退避次数设为6。

7)判断信道忙闲。如果信道忙,则退避数减1,并在11~20ms内选择一个时间t3,并休眠,t3到期后重复步骤7);如果信道闲,则节点从休眠模式中激活,并发送数据包,且设置最大的ACK接收时间t4为11ms。

8)判断是否收到ACK。如果在t4到期内都没有收到ACK信号,表明没有来自控制中心的控制命令,则节点休眠,等待下一次周期定时器到期,即进入步骤2);如果在t4到期前收到了ACK信号,就提取其中的控制信息并执行。则在15000~20000ms内随机选择一个时间点t5作为休眠时间,并把标志位flag置1,这样即使周期定时器到期,也不会发送定位分组。

9)t5到期,把标志位flag复位。并重复以上步骤。

2.Sink节点流程 (www.xing528.com)

Sink节点流程较为简单,具体如下。

978-7-111-40722-5-Chapter10-10.jpg

图10-5 移动节点流程图

1)节点初始化。

2)侦听信道,判断有无信号需要接收。

3)当侦听到空间有信号时,接收并判断包类型号,如为移动节点发来的数据报,则调用UARTrtsctsC模块,并回复嵌有控制命令的ACK包。

3.无线通信模块在TinyOS系统下的实现

在节点流程模块在TinyOS平台下实现时生成的组件连接图中,ACMAC为主程序,它通过调用CC1100RadioC来收发数据包;通过调用RadomLfsrC来产生随机退避数;通过调用Msp430TimerC来提供ms级时钟;通过调用UartC来进行串口通信;通过调用KeyLampC来完成电量指示和报警按键驱动。如图10-6所示。

978-7-111-40722-5-Chapter10-11.jpg

图10-6 无线通信模块在TinyOS平台下的实现

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈