基于IEEE1451的靶场分布式无线传感器网络构建方案
2019-12-02刘康丽1朱元元吴晓晔1硕1
刘康丽1,朱元元,吴晓晔1,毕 硕1,谷 静
(1.北京航天测控技术有限公司,北京 100041; 2.北京航天长征飞行器研究所,北京 100076)
0 引言
兵器试验靶场目前急需解决“异常弹”和散布大的弹箭的弹着点定位问题,因此急需研制出实用化靶场分布式测试微型无线传感器网络系统,满足靶场试验找弹、靶场安全的需要,提升靶场网络化、数字化试验能力的目的。
无线网络技术具有自组织、部署灵活、成本低等优势,使其应用范围越来越广,搭载于无线网络的传感器网络便是其中重要的应用场景。为了实现网络化智能传感器的智能性,IEEE提出了IEEE1451协议族,IEEE 1451作为业内公认的通用接口标准对无线传感器网络传输中通讯命令、寻址方式、数据结构和接口都做了相应的规定,实现了智能化传感器的兼容性、互换性以及互操作性。其中1451.5专门针对无线通讯网络提出了无线通信与变送器电子数据表格式(Wireless Communicationand Transducer Electronic DataShee(TEDS)Formats)。本文在目前通用协议栈(TI STACK协议栈)基础上,完成了TEDS表格,实现了传感器网络的智能识别。
为保证无线传感器网络链路的高效可靠及传感器数据采集中信息传输规范化问题,本文采用了基于ZigBee、WiFi、TCP/IP多种通信协议的异构分簇网络构建方法,重点研究ZigBee与IEEE 1451标准相结合,完成了基于IEEE 1451.5 TEDS格式的网络参数电子数据传送,为系统的未来扩展和与其他网络的兼容提供条件和基础。
1 系统总体结构
鉴于传感器节点数量众多,为避免出现网络拥堵和无线射频干扰,系统采用了异构分簇的系统网络结构,以便实现网络进行分时控制以及系统维护,进而保证无线通信顺畅。
靶场分布式测试微型无线传感器网络系统结构如图1所示。系统主要由传感器节点,簇头节点、网关以及监控终端组成。在上位机终端安装网络监测程序,可实时监测和配置网络的工作状态。终端通过以太网连接至网关,网关与10个簇头之间通过WiFi连接。每个簇头连接20个传感器节点,通过Zigbee进行网络连接,传感器节点接口符合IEEE 1451网络接口协议。
图1 异构分簇无线传感器网络结构图
2 网络构建方案
作为无线传感网络的通讯载体,当前主流的无线通信技术主要为:Zigbee、Wifi、蓝牙三种。结合传感器网络中涉及的通信速度、网络容量、传输距离以及网络结构等参数对比,总结出Wi-Fi适用于短距离、多点、大数据量通信;Zigbee在传输速率以及传输距离方面做了均衡,适合中长距离传输,且网络容量较大,适合节点数量众多的场合。同时,Zigbee节点还具有功耗低,成本低,控制能力突出的优势,一定程度上有利于大规模运用。
因此,本系统在无线网络构建中引入了Zigbee协议和WiFi通讯协议。将基于WiFi通讯协议的节点设计为簇头节点,由簇头节点组成的骨干数据传输网络承担了回收各簇节点数据的任务,其数据传输速度高,解决了大规模非异构网络中的数据拥塞问题。测试子网由大量性能较低的测试节点组成,每个测试节点采用Zigbee协议。该协议能够确保无线设备在低成本、低功耗和低数据速率网络中的互操作性。
ZigBee网络搭建在Chipcon公司推出的CC2530 Zigbee开发套件和Z-STACK协议栈基础上,实现1个簇头和20个节点的星形无线传感器网络传输,在通讯命令、寻址方式、数据结构和接口等方面需符合1451标准。实现设计节点工作模式,包括主动发送模式、触发模式、空闲模式[4-10]。
为避免簇头之间、传感节点之间的无线干扰,子网(簇头)之间采用频分多址的方案,每个子网指定一个唯一的频率通道,根据Zigbee模块CC2530有16个频率通道可选的特性,CC2530频率载波可以通过编程位于FREQCTRL.FREQ[6:0]的7 位频率字设置。支持载波频率范围是2 394 MHz 到2 507 MHz。以MHz 为单位的操作频率fc 由下式表示:fC = 2394 + FREQCTRL.FREQ[6:0]) MHz,以1 MHz 为步长,是可编程的。IEEE802.15.4-2006 指定16 个通道,它们位于2.4 GHz 频段之内。步长为5 MHz,编号为11~26。具体方案为十个簇头01~10号分别采用11~20频率通道。具体的根据簇头CC2530协调器PAN ID进行设计,簇头01~10的PAN ID分配如表1所示。
表1 簇头资源分配表
每个子网内部,传感节点采用时分多址的方式,每个传感节点分配唯一指定的时隙与簇头间进行信息交互。网络拓扑结构为星型连接。
3 硬件电路设计
3.1 簇头节点设计
簇头节点的功能框图如图2所示。
图2 簇头节点的功能框图
无线传感器网络簇头节点的硬件结构主要包括:MSP430微处理器、FPGA、GPS模块、Zigbee模块、Wi-Fi模块、电源模块、功率放大器、天线等,其总体设计方案如图3所示。
图3 簇头节点硬件结构框图
微处理器选用MSP430超低功耗16位单片机主要是出于降低簇头节点功耗的考虑,MSP430F1611采用1.8~3.6 V低电源电压供电,工作电流仅为μA级,提供5种低功耗工作模式,唤醒时间小于6 μs,16位RISC结构,125 ns指令周期。其片内资源丰富,拥有10K RAM,48K Flash,6个八位并行I/O口,12位AD转换器,16位定时器,硬件乘法器,以及SPI、I2C、UART接口等[11]。
GPS模块的主要功能是为了获取簇头节点的定位信息,以及接收GPS输出的秒脉冲信号,利用其自身的精确授时功能,通过时钟触发的方式获取同步信息,保证多个簇头节点分时有序地工作。
基于IEEE 802.11无线通信子规范,采用Wi-Fi模块实现簇头节点与网关之间的无线通信,所有簇头节点将数据汇聚到网关后,再通过网关与上位机进行数据交换。由于簇头与网关之间的距离相对较远,正常条件下Wi-Fi模块的传输距离不足百米,难以满足长距离传输的设计要求,因此采用借助功率放大器和架高天线来实现Wi-Fi模块的远距离通信。
基于Zigbee无线通信子规范,选用Zigbee芯片以及功放芯片设计出Zigbee收发模块。该模块主要用于簇头节点与分布式传感器节点之间的无线通信,其最远传输距离需要达到上千米,而普通Zigbee模块的传输距离为100米左右,因此同样需要增加功放来提高传输距离来满足设计要求。
考虑到整个无线传感器网络的低功耗设计要求,簇头节点的电源模块由太阳能电池板进行供电,其供电电路的原理框图如图4所示。
图4 供电电路的原理框图
此外,为了保证天线信号的接收效果,需要将GPS模块天线、Zigbee模块天线以及Wi-Fi模块配套的天线都架设在一个金属杆支架上,以实现无线信号的远距离传输。
簇头节点电路板实物如图5所示。
图5 簇头节点电路板实物
3.2 网关节点设计
网关节点主要用于将远端控制室通过LAN传来的信号转换成Wi-Fi无线网络信号,广播给簇头节点,同时收集每个簇头节点上传的数据,最终转发给远端控制室。其功能框图及硬件结构如图6所示。
图6 网关功能框图
其硬件组成主要由网卡芯片,处理器,Wifi模块构成。其中网卡芯片与微处理器采用SPI总线通信,微处理器与Wifi模块之间采用了串口通信方式。其硬件结构如图7所示。
图7 网关硬件结构框图
网关节点电路实物如图8所示。
图8 网关节点样机的电路板实物
3.3 结构设计
簇头节点移动站各个单元集成在一个铝合金手提箱内,具体封装结构如图9所示。其中太阳能电池板内嵌在手提箱盖子的内壁上,当需要正常工作时,打开手提箱盖子,将电池板暴露在太阳光下,电池板将不断地对铅酸蓄电池进行充电,直至蓄电池电量饱和,此时充电保护电路将切断充电线路,停止对蓄电池充电。为了方便外置天线的架设,在手提箱内特别设计了一块控制面板,面板上设有电源开关、GPS天线接口、Wi-Fi天线接口、Zigbee天线接口、电池充电接口、PC设置接口、以及多个状态指示灯等,整体布局如图所示。在控制面板的正下方是PCB电路板,方便各种接口的接线以及状态显示。鉴于铅酸电池体积比较大、重量大,故将电池安装在箱体的底部,保证整个箱体稳固。
图9 簇头节点移动站封装结构示意图
图10 簇头节点移动站控制面板效果图
4 IEEE标准实现
本系统中实现了IEEE1451标准中定义的8种TEDS格式中的Meta TEDS、Channel TEDS和Calibration TEDS,其逻辑格式和内容遵照1451标准中的TEDS规范。TEDS中包含传感器节点属性信息描述,存储于传感器节点微处理芯片内,并可以按照要求上传给服务端或者由用户直接进行修改、存取和校正操作。
对于IEEE 1451协议的实现,是基于TI提供的Z-STACK协议栈实现。IEEE 1451协议的最终实现形式如图11所示。其中应用层、应用支持层、网络层、媒体访问层、物理层都是直接应用TI的ZIGBEE解决方案,IEEE1451是作为Z-STACK中的一种应用实现。
图11 IEEE1451协议的实现形式
对于系统的软件设计已经在以上章节已经给予了说明,在系统的200个节点和10个簇头端都需要按照IEEE1451智能接口标准设计,在服务器端通过TCP/IP协议可以查看到10个簇头和200个节点的TEDS信息,并且可以查看到节点上的数据信息。对于系统的软件设计而言,节点端Z-STACK是整个软件系统的核心,在Z-STACK系统平台下设计驱动程序实现各传感器的控制和读写,存储TEDS信息以完成IEEE1451智能接口标准设计。簇头端也有Z-STACK系统,它主要是完成Zigbee协议,实现和节点之间的通信,也存储有TEDS信息。簇头端还利用TCP/IP协议实现与服务器端的通信,同时还具有一些其他应用,例如GPS同步。簇头端的主要作用是实现信息的转换和传递。在服务器端主要是设计应用程序实现可视化操作,信息存储,Wifi通信,以及一些其他辅助功能。服务器端可以实现簇头和节点信息的查看和修改,通过调用TCP/IP协议实现与簇头之间的WIFI通信。
图12 软件平台的系统框架
5 服务终端界面设计
上位机终端程序采用Python进行开发,Python作为一种面向对象、模块、线程、异常和内存自动管理的编程语言具有简单、易学、轻便可移植、可扩展、具有多种内建数据类型、开源等优势。同事软件采用了多线程编程技术开辟了多个可以同时运行的线程,以提供在多任务系统中进行多任务处理的能力。
上位机终端软件作为人机交互端口主要是实现整个无线传感器网络的监测与控制功能,包括以下几方面:
1)网络状态监测,负责监测网络中各节点的在线状态,包括10个簇头节点的在线状态以及各簇头节点下20个传感器节点的在线状态,通过online以及offline显示出其相应状态。
2)网络参数监测,该功能主要是针对传感器节点的TEDS属性,可显示指定节点的TEDS数据。
3)网络数据管理,该功能主要实现对传感器节点测试数据的管理。
4)网络节点控制,该功能主要实现对簇头节点、传感器节点的工作模式切换以及相应参数控制。
上位机终端软件设计框图如图13所示。服务端通过TCP/IP协议实现与无线传感器网络中数据进行交互,网络数据包括无线传感器网络中的簇头端的数据和节点数据。网络数据最终存入数据库,需要进行数据库的管理调度,而中间的操作和服务分别由数据存储、节点控制和状态检测三个子模块来实现。
图13 软件设计框图
6 实验验证
6.1 簇头组网
打开上位机软件,打开簇头3和节点4,待簇头节点的wifi模块红灯亮,点击上位机软件LINK->Add Ip->输入对应簇头的IP地址(簇3:192.168.4.13)、端口号8080->link,status显示簇头组网信息(On Line);如图14所示。
图14 有节点入网时簇头状态显示
点击STATUS,界面右端显示Cluster及Node状态,如图15。
图15 网络状态显示界面(4号节点在网)
6.2 节点入网、离网监测
打开节点2,上位机网络状态监测程序中,新增加该节点相关信息;
节点2关闭电源,上位机刷新后显示该节点未进入网络;
节点开机后,上位机刷新后应显示该节点再次进入网络。
6.3 TEDS信息请求与更新
点击左侧工具栏中的TEDS,并在其窗口中输入待观测的簇头、节点序号,即可进行相应的TEDS信息写入与读出操作。实验中分别读取了3号簇头下节点4的PHY_TEDS信息和META_TEDS信息和Channel_TEDS信息。间隔一段时间后,读取信息一致。写入新的TEDS信息后,读取结果与更新信息一致。
7 结束语
本文主要完成大规模无线传感器网络的异构分簇网络构建、各节点硬件设计、网络参数数据格式与传送方式的标准化以及服务端网络状态监控工作,基于IEEE1451协议的网络电子数据表格式标准化为系统的整体扩展与其他应用网络 兼容提供了重要保证;服务端网络状态监控可以有效观察参与定位节点的工作状态,进而剔除问题节点对定位精度的干扰,确保系统的可靠性。
另外,本文研究成果具有通用性,可以推广到其他无线传感器网络应用场景中,特别是在对时间敏感的工业系统应用中,必将创造更大的经济效益。