基于无线网络的定位与通信系统硬软件设计实现
2017-03-21孙凤丽周东红
李 沫,孙凤丽,李 亚,周东红
(中国航天系统科学与工程研究院,北京 100048)
0 引 言
美国商业周刊和MIT技术评论在预测未来技术发展的报告中,分别将无线传感器网络列为21世纪最有影响力的21项技术和改变世界的10大技术之一。随着无线传感器网络的深入研究和广泛应用[1],这一先进技术将深入到人类生活的各个领域[2]。在医疗和医护领域,可以在住院病人身上安装传感器节点,医生利用无线传感器网络就可以随时了解病人的情况,发生异常情况时能迅速抢救[3]。在建筑领域,具有温度、湿度及有害气体浓度探测功能的传感器节点组成的无线传感器网络可搭建在室内,有效地进行温度、湿度的调节和有害气体超标的预警,为居住者提供更便利、更安全、更舒适的环境[4]。无线传感器网络还可应用于交通控制管理[5]、工业控制、油田测控、水文监测等重要领域。由于很多应用领域需要在无人值守的区域里大量部署传感器节点,并且能够可同时获得位置等信息。因此设计具有系统稳定可靠、功耗低、成本低廉、实现无人值守、可快速部署等功能的无线定位与通信网络是十分有意义的。本文结合上述需求设计了5节点无线网络定位与通信系统,并分别从软硬设计做了简要的介绍。
1 系统设计
本系统为基于无线网络的定位与通信系统。它的主要功能是实现对各节点的位置确定,进行信息采集并将信息汇总到主控计算机,从而有效的对各节点的位置和状态进行实时监控。整个系统由一个主节点、四个辅节点和主控计算机显控软件组成。系统节点布局为星型结构,主节点在星型中央作为主机发送命令,四个辅节点以主节点为中心呈放射状在星型四个顶角处。系统工作原理框图如图1所示。主节点和辅节点上均配备GPS定位系统,可以精确、实时的给出主节点及各辅节点的经纬度坐标。主节点舱室控制系统的实时图形显示软件可以进行试验区的场景、态势显示,以及控制辅节点的开、关机时间,从而使辅节点的连续工作时间可控。
图1 系统工作原理框图
主节点中定位与通信模块主要包括:GPS定位模块、艏向测量模块、无线通信模块、嵌入式系统控制模块和主机通信模块,主节点模块原理框图如图2所示。辅节点中定位与通信模块主要包括:GPS定位模块、无线通信模块、嵌入式系统控制模块和设备控制模块,辅节点模块原理框图如图3所示。
图2 主节点模块原理框图
图3 辅节点模块原理框图
2 硬件设计与实现
结合目前模块设计的低功耗和小型化的趋势,嵌入式系统控制模块选用了TI公司的MSP430FG4618单片机作为智能模块的主控芯片,通过GPS模块接收定位信息,用无线通信模块进行通讯,传递定位信息和控制信息。
定位定向模块采用星网宇达公司的XW-ADU3601[6],其定向精度高、噪声小;动态性好、稳定可靠;输出每组数据均为独立计算,无累计误差;系统响应时间短,抗干扰性强。
无线通信模块采用KYL-320H型号数传电台[7],这种高速率无线数传电台,是一种远距离无线数据传输产品,它体积小,金属外壳,屏蔽性能好,抗干扰性强,内部采用集成功放,TCXO 等高可靠性器件,内置看门狗,产品的稳定性及可靠性极高。
以单片机MSP430作为系统核心实现基于无线网络的定位与通信系统的硬件设计。利用该单片机丰富的外围模块,结合部分外扩芯片,根据系统的需要,设计主节点和辅节点的硬件结构。主节点硬件结构框图和辅节点硬件结构框图分别如图4和图5所示。
图4 主节点硬件结构框图
图5 辅节点硬件结构框图
结合上图简述一下主节点和辅节点的硬件实现。首先,在电压源稳定的基础上实现MSP430最小系统的正常工作。利用芯片TUSB3410实现USB到UART的转换,实现PC机与MSP430之间的U口通信。利用芯片MAX3232,对MSP430内置的UART进行RS232电平转换, PC机与MSP430即可用串口进行通信。当然,这里RS232电平转换后与通信设备(数传电台)相连,实现远程通信。利用芯片SC16IS752扩展UART接口,进行正确的配置,将MSP430的SPI通道扩展出两个UART通道,其中一个连接GPS模块,另一个经RS232电平后预留。然后,由MSP430的驱动引脚连接驱动芯片ULN2003,使其驱动继电器实现控制功能[8]。
3 软件设计
3.1 设计思路
系统协议采用询问方式,并将主节点程序编写构造状态机,通过对每一状态的功能实现,使整个系统成为一个封闭自循环系统。结合协议要求设计系统由主节点按照主控端界面提供的辅节点工作状态信息逐次询问辅节点的地址信息,并且在信息中包含对辅节点的继电器工作状态的信息。辅节点收到主节点的信息后,回复当前的地址信息,并且根据信息要求控制继电器的工作状态。用户可以根据需要通过使用主控端界面控制辅节点及辅节点的继电器的工作状态,并且可以通过串口调试助手对GPS定位模块参数进行修改。
3.2 主节点功能和工作流程简述
3.2.1如图6主节点流程图所示,主节点主要有三个功能,功能一:通过GPS定位模块可以实现对自身地址位置的信息采集,提取并保存有用信息,同时可以通过串口调试助手实现对GPS定位模块参数的修改;功能二:实现与辅节点间的数据通信,数据内容包括对辅节点继电器工作状态的控制和接收保存辅节点的地址信息;功能三:实现与主控端界面的数据通信,数据内容包括接收对辅节点和辅节点继电器的工作状态的控制命令,以及将四台辅节点和主节点的地址信息发送给主控端界面。
3.2.2 工作流程
主节点的程序为状态机,通过主节点流程图可以很清晰的看出每一状态的功能。首先接收提取主节点自身的GPS定位信息,然后按照从0号到3号的顺序逐次向辅节点发送信息,在询问前需要根据该辅节点工作状态判断是否需要发送信息,如果辅节点为正常使用状态,则发送信息,如果辅节点为关闭状态,则不发送信息。在询问后等待接收该辅节点的信息,分两种情况:第一,如果接收到信息,判断是否为所询问辅节点反馈的信息,如果是则保存然后继续询问下一个辅节点,如果不是则不保存,在该辅节点信息位置根据协议赋值,然后继续询问下一个辅节点;第二,如果在规定时间内没有接收到辅节点的信息,则在该辅节点信息位置根据协议赋值,然后继续询问下一个辅节点。在保存完3号辅节点信息后,将四台辅节点和主节点的地址信息按照协议格式统一发送给主控端界面。设置GPS的频率为5 Hz,每个循环在0.2 s内可以完成,在下一次GPS数据更新后系统又开始了新的一轮循环,这样就可以实现系统自循环。
3.3 辅节点功能和工作流程简述
3.3.1如图7辅节点流程图所示,辅节点主要有两个功能,功能一:实现与主节点间的数据通信,数据内容包括接收辅节点继电器工作状态的控制信息和给主节点发送自身的地址信息;功能二:控制继电器的工作状态。
3.3.2 工作流程
辅节点接收信息并且判断该询问信息的目的地址是否为自己,如果是则将当前保存的地址信息发送给主节点,同时根据接收到的继电器工作状态信息控制继电器的工作状态。
图7 辅节点流程图
4 显控软件设计
本系统要接收并处理GPS信息并通过无线网络上传至主控计算机,必然需要相应的显控软件。该显控软件可以被认为是图形用户界面的一种。图形用户界面(GUI-Graphics User Interface)是当前用户界面的主流,鉴于此,本系统结合一个5节点无线网络的定位与通信系统显示与监控任务的需求,基于Windows操作系统和Visual C++6.0开发环境,设计并研制了一套显控软件,并通过显示模块、控制模块和串口通讯模块实现了直观醒目显示各节点信息、发送节点控制指令、向终端设备传输信息等多种功能。本系统显控软件的总体设计方案为:在Windows环境下,利用面向对象的程序设计方法、基于Visual C++的单文档多视图、并利用RS232串口接口通信[9]。显控软件总体结构框图如图8所示。
图8 显控软件总体结构框图
其中,通信模块采用串口通信,用于显示实时定位信息和姿态信息;控制模块用于视图变换,同时可向节点发送信息并进行状态控制;显示模块可实时显示主节点和辅节点的位置信息,主节点详细信息以及GPS信息列表。根据以上系统的显控要求和设计方案,提出显控软件设计框图如图9所示。
图9 显控软件设计框图
5 结 语
本系统进行了水库湖试,主控计算机和主节点放置在趸船上,辅节点分别放在堤坝上和油船上进行测试,主节点与辅节点的测试距离为5000 m,数据接收正确,辅节点的开机时间和关机时间可控,系统一切工作正常。该系统由于具有安装方便、易于组网以及可同时获得位置、节点状态等信息,将来可以被广泛应用于无线数据采集、工业控制、油田测控、水纹监测、交通控制管理、医疗医护等重要领域。
[1] 曹纪磊. 无线传感器网络应用的研究与分析[J]. 数码世界, 2017 (3) :82-83.
[2] I.f Akyildiz, Weilian Su, Yogesh Sankarasubramaniam, etal.Wireless Sensor Network: A Survey.Computer Networks[J]. 2002, 38(4):393-422.
[3] P.Johnson.Remote Continuous Physiological Monitoring in the Home[J].Journal of Telemed Telecare,1996,2(2):107-113.
[4] I.A.Essa.Ubiquitous Sensing for Smart and Aware Environments.IEEE Personal Communications[C].October 2000:47-49.
[5] G.J.Pott,W.J.Kaiser Wireless Integrated Network Sensors.Communications of the ACM[C].2000, 43(5):551-558.
[6] XW-ADU3601OM手册.PDF[J] .北京星网宇达科技开发有限公司:7-14.
[7] KYL-320H使用说明书.PDF[J] .深圳科易连通讯设备有限公司:2-3.
[8] 沈建华.MSP430系列16位超低功耗单片机原理与实践[M] .北京航空航天大学出版社,2008:125-241.
[9] 龚建伟,熊光明. Visual C++/Turbo C串口通信编程实践[M]. 北京:电子工业出版社 2005:5-8,46,87,426.