新闻中心

EEPW首页>嵌入式系统>设计应用> 基于Zigbee的船舶状态监控系统的设计与实现

基于Zigbee的船舶状态监控系统的设计与实现

作者: 时间:2016-09-12 来源:网络 收藏
基于Zigbee的船舶状态监控系统的设计与实现

4 系统软件设计

硬件的设计的只是完成了协议栈中物理层的一些功能,而物理层以上的功能单独依靠硬件则是不能实现的,它还需要软件的驱动才能实现。本系统软件使用IAR Embedded

Workbench作为开发平台,并在Z—Stack协议栈的基础上进行应用软件的开发。Z—Stack是TI公司的基于标准的协议栈,包含了标准描述的各层功能组件模块,向开发人员提供了一系列的API接口,通过调用这些接口来实现不同的功能。整个应用程序运行时可以自动形成一个网络,终端设备节点能够主动发现路由节点或协调器节点(上级节点),并且一旦加入网路,能够自动建立绑定。

4.1 组网及协调器节点程序设计

网络的建立和维护不论多复杂,都从建立网络开始。当协调器启动以后,此时协调器会在应用指定一个的网络信道范围内进行能量扫描,通过监听获得各个信道上的能量值,并把能量值进行排序,列出信道上的干扰值,抛弃超过最大允许的能量值的信道,在已存在网络最少的信道上建立网络,若信道上的存在网络数一样,则在冲突和干扰最少的信道上建立网络。当选定网络信道以后,会进行一系列的参数设置,包括网络地址、PAN标识以及扩展PAN标识等。当这些参数都设置好后,网络就基本建立起来了,只等待其它节点的加入。

组建一个Zigbee网络主要由Zigbee协议栈的网络层实现,协调器节点工作的软件部分包括初始化并组建网络、允许子节点加入网络以及传输数据三大部分构成。在协调器节点启动后,Zigbee协议栈会按照上节所介绍的组网流程去组建一个Zigbee网络,首先在系统初始化之后,扫描并选择合适的信道后对网络参数进行设置,并最后确定网络是否组建成功,如没有组建成功,则协调器节点重新执行上面的步骤,直至网络成功组建。组网成功以后还不算真正的Zigbee传感网络,协调器还需要监测是否有入网请求并允许有请求的子节点加入网络,并成功分配给自己点相应的网络地址后,才算组网成功,这只是协调器的部分任务。

上面的组网阶段完成以后,协调器在正常工作的过程中,不断的检测有无数据传送。其实,当协调器检测到有数据的传送时,程序会自动进入中断接收状态,在此过程中,数据会被暂时存放在指定的区域,其它外部程序以指针的形式调用这些数据。随后,协调器会判断数据的来源,若是上位机通过串口发来的数据,则认为是命令,之后对命令会进行相应的处理;若是传感数据,则又会启动相应的数据处理程序,并更新存储区内的数据,之后通过串口传送至上位机进行进一步的处理。图4所示是其程序流程图。

基于Zigbee的船舶状态监控系统的设计与实现

路由节点程序除了一些配置和协调器节点不同之外,其它基本一致。

4.2 终端设备节点程序设计

终端设备节点要将收集到的温度信息送到路由器或协调器,终端设备节点首先要加入网络,与此同时,该节点还要将自己绑定到第一个响应的协调器节点或路由节点。终端设备节点通过函数ZDO_StartDevice0自发的加入网络,并通过函数zb_BindDevice0发出绑定请求,绑定成功后终端设备节点程序循环调用SendData0函数周期性的发送采集到的温度信息,采取端到端确认的发送模式。函数zb_SendDataConfirm0可以作为指示应答,如果协调器节点或路由节点没有指示应答,终端设备节点会自动解除本次绑定,重新寻找网络并进行绑定。图5所示为其程序流程图。

基于Zigbee的船舶状态监控系统的设计与实现

5 系统测试

5.1 通信测试

用IAR把相应的程序分别下载到各节点。通过串口接入电脑,在对串口进行相应设置后,程序运行时,便可在PC机的终端中查看到经过处理后的的温度数据信息(为方便测试,终端设备节点只进行温度的采集)。利用串口调试助手接收到的温度数据如图6所示。在此过程中,用标准温度计对同一空间进行温度测量,测量结果显示和本实验结果只有极小误差,可以满足大部分测量需求。同时进行了通信距离测试,在没有路由节点的情况下进行点对点的测试,测试环境为实验室楼并有墙壁阻挡,测试结果如表1所示。数据表明,无线网络完全可以覆盖大部分中小型船舶机舱环境。如果需要还可以添加功放芯片CC2591,经测试,传播距离会成倍数增加。

基于Zigbee的船舶状态监控系统的设计与实现

5.2 功耗测试

温度传感节点的功耗问题直接影响了系统的寿命,在传感节点每发送一次数据后就进入休眠状态,在完成一次数据的采集和发送后,传感节点会自动进入休眠低功耗状态;在休眠状态结束时,传感节点就会重新进入到工作过程,可有效降低功耗。温度传感节点采用两节5号电池供能,休眠状态下电流为0.4μA,工作状态下电流为243 mA。经测试,两节5号电池的正常工作时间在6个月左右,完全符合低功耗的性能需求。

6 结束语

根据船舶内部的实际情况,以片上系统芯片为核心设计了一个完整的Zigbee无线船舶状态监控网络。它能有效解决有线监控网络布线难、扩展性差等问题,并具有可靠性强,组网灵活性高以及自愈能力强等特点,基本能满足对中小型船舶机舱一些重要设备、环境参数的无线监控。


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭