多种无线通信方式自组网及自愈特性测试分析
集成ZigBee技术和增强型8051内核的SOC芯片CC2530,配合相应的软硬件,构建了一个无线测控网络。对WiFi、ZigBee、433MHz无协议3种无线通信方式的自组网及自愈特性进行了测试研究。
0 引言
无线传感器网络(WSN,Wireless Sensor Network)由分布在有效区域内具有通讯功能的大量传感器节点组成,通过无线方式自组织形成网络系统,节点采集信息并通过无线网络逐级传送到监控中。ZigBee是一种介于IEEE 802.11无线局域网与蓝牙技术之间的无线通信网络协议,是基于IEEE 802.15.4无线标准研制开发的有关组网、应用和安全方面的通信技术[1]。ZigBee为用户提供了一个低成本、低功耗、低复杂度、适中的数据传输速率、高容量以及短距离通信等特性的技术平台。依据该平台,客户通过创造性的研发工作,根据具体任务要求设计硬件系统和配备相应的软件,就可以出色完成很多任务。
1 承载信息获取
通过通信信道和设备互连起来的多个不同地理位置的数据通信系统,要使其协同工作实现信息交换和资源共享,它们之间必须具有共同语言。交流什么、怎样交流及何时交流,都必须遵循互相都能接受的规则,这个规则就是通信协议。
无论何种协议,本质上都是一种人为的规定,在计算机科学中,需要通过代码将这些协议实现并编译烧进通信模块中。WiFi模块的主芯片中烧写了WiFi协议栈以及TCP/IP栈的二进制代码,ZigBee模块上的CC2530烧写了ZigBee协议栈(也就是Z-Stack协议栈),而433MHz无线节点的主芯片上没有烧写任何协议相关内容,所以称之为无协议通信模块。无协议通信模块只是简单地将要发送的字节调制到通信模块的无线电频道上(本实验设置就是433MHz),与此同时,将周边无线电环境中433MHz这个频率上承载的信息解调获取。
2 自组网与自愈网性质
自组网是一种移动通信和计算机网络相结合的网络,网络的信息交换采用计算机网络中的分组交换机制,用户终端是可以移动的便携式终端,自组网中每个用户终端都兼有路由器和主机两种功能。作为主机,终端需要运行各种面向用户的应用程序,如编辑器、浏览器等;作为路由器,终端需要运行相应的路由协议,根据路由策略和路由表完成数据分组的转发和路由维护工作,要求节点实现合适的路由协议。自组网路由协议的目标是快速、准确和高效,要求在尽可能短的时间内查找到准确可用的路由信息,并能适应网络拓扑的快速变化,同时减小引入的额外时延和维护路由的控制信息,降低路由协议开销,以满足移动终端计算能力、储存空间以及电源等方面的限制。自组网在同种类型的通信(包括无线和有线)模块完成了初始化的角色定位后,无需再确定从属关系便可自动形成通信网络的性质。
对于不同模块有不同的角色分配,WiFi模块有AP和Client之分,ZigBee模块有协调器、路由器和终端节点之分,433MHz模块有主机和从机之分。自愈性就是当一个原本健全的通信网络中,通信主机(WiFi网络的AP点,ZigBee网络中的协调器和433MHz网络中的主机)挂掉时,原本接入该主机的从机是否具备自己检测到问题并及时连入周边其它主机的能力。本实验中,将对比这3种无线通信模块的自组和自愈性能。
3 无线通信网络测试
3.1 WiFi网络的自组自愈性测试
数据发射模块的工作频率为315M,采用声表谐振器SAW稳频,当环境温度在-25℃~+85℃之间变化时,频飘仅为3ppm/度,特别适合多发一收无线遥控及数据传输系统[3]。声表谐振器的频率稳定度仅次于晶体,而一般的LC振荡器频率稳定度及一致性较差,即使采用高品质微调电容,温差变化及振动也很难保证已调好的频点不会发生偏移。
发射模块未设编码集成电路,而增加了一只数据调制三极管Q1,这种结构使得它可以方便地和其它固定编码电路、滚动码电路及单片机接口,而不必考虑编码电路的工作电压和输出幅度信号值的大小。比如用PT2262或者SM5262等编码集成电路配接时,直接将它们的数据输出端第17脚接至数据模块的输入端即可。
数据模块采用ASK方式调制,以降低功耗。当数据信号停止时,发射电流降为零,数据信号与发射模块输入端可以用电阻或者直接连接,不能用电容耦合,否则发射模块不能正常工作。数据电平应接近数据模块的实际工作电压,以获得较高的调制效果。
发射模块最好能垂直安装在主板的边缘,应离开周围器件5mm以上,以免受分布参数影响。模块的传输距离与调制信号频率及幅度、发射电压及电池容量、发射天线、接收机的灵敏度及收发环境有关。一般在开阔区最大发射距离约800m,在有障碍的情况下,距离会缩短。由于无线电信号传输过程中的折射和反射会形成一些死区及不稳定区域。因此,不同的收发环境会有不同的收发距离[4]。
在进行WiFi网络测试时,把客户端(Client)接入某个WiFi网络(某个AP点),实验中必须为其制定WiFi网络的SSID,如果该WiFi网络设置了加密规则的话,还要配置正确的密码才能最终接入该WiFi网络,所以,WiFi协议或者说WiFi模块是不支持自组网的。
自愈性测试中,若两个WiFi网络的SSID或者密码不同的话,Client无法将两个WiFi接入,所以WiFi网络的自愈性只能在一种情况下实现,就是将两个WiFi网络的SSID和密码配置相同。同理,将节点上的WiFi模块配置为SSID和密码均相同的AP点,将节点1的WiFi模块设置为接入该SSID的Client节点。首先只为节点和节点1上电,当节点1的WiFi模块正确接入网络后,若使用LED进行效果测试,则WiFi模块上的LED呈现慢闪状态(闪动间隔大概1s),此时将节点3断电,为节点上电,此时的节点1因为失去了WiFi网络,LED3开始快闪,此时记录时间,观察LED再次慢闪时的时间间隔(也就是它再次接入节点2的WiFi网络时的整个间隔)。
3.2 433MHz无协议无线通信网络自组自愈测试
首先将两台PC分别与相关节点接口相连,并分别将相关的节点上电。打开两台PC机上的串口调试助手,通过ModBus指令可以分析出节点的地址和传感器类型,确定此时节点上需要的正确指令。例如节点上安插的是结露传感器,根据“ModBus指令”可以确定头6个十六进制字节分别是“06 03 00 2E 00 01”,接着打开配套光盘\应用程序\串口调试及CRC软件\\CRC_16校验工具.exe CRC校验工具,将6个字节填入空白区,点击计算获得CRC校验码[5],结果是“06 03 00 2E 00 01 E5 B4”。
在一台PC机上以十六进制发送上述字符串,观察两台PC机上的返回情况,根据返回情况分析无协议433MHz通信模式的自组网和自愈性特性。解析:正确的效果是PC1上发送了获取数据的指令后,PC1自然会获取到传感器的返回指令。与此同时,PC2可以通过串口分别获取PC1的发送指令和传感器的返回指令,只是因为这个433MHz网络中根本没有什么组网的概念,所有模块只要工作在同一频率上,它便会接收到这个频率载波上的所有信息。
3.3 ZigBee网络的自组自愈性测试
将两台PC机通过串口线和相关设备的ZigBee协调器(带有液晶显示屏的ZigBee节点)旁的串口相连,注意将开关拨至位置“上”,并为两个协调器节点上电。再打开某台实验箱上的任意一个ZigBee节点,根据“ModBus 指令举例”的介绍,确定该节点的读取信息字符串。从两台PC机上分别发送该字符串,观察返回数据并分析此时的组网情况。
解析:当电路正确联通时,应该只有一台PC机上有数据返回,因为ZigBee终端节点只会连入两个协调器中的一个。可以反复进行这个操作(关闭打开3个ZigBee节点),观察ZigBee终端节点是否会始终连入其中一个ZigBee协调器,据此分析ZigBee网络的自组网性能。
当两个协调器和一个ZigBee终端节点同时打开时,ZigBee终端节点只会连入其中一个协调器(称之为协调器A),此时关闭协调器A,并且重启ZigBee终端节点,在与协调器B相连的PC机上发送读取字符串,观察是否有数据返回,据此分析ZigBee网络的自愈性。
注意:进行ZigBee网络自愈性实验,有一个重启ZigBee终端节点动作,这时,不要误以为一定要重启终端节点它才会去寻找新的网络。ZigBee终端节点在什么时候去寻找新的ZigBee网络是由软件定义的某个判断机制控制的,这个机制可能是多长时间没有收到上位机数据,或者返回的数据多长时间没有应答。本实验中,笔者将这个判断机制定义为重启节点。
4 结语
文中分析了ZigBee协议体系结构各层主要功能,以及ZigBee网络中两种拓扑结构,研究了WiFi、ZigBee、433MHz以及自组网、自愈组网的协议测试过程,实现了网络的自组网和自愈功能。本文方法在远程测控、场地监控、小区智慧管理、矿井安全检测、路灯遥测遥控以及环境监测等无人值守领域,都有着非常好的应用前景和显著的社会经济效益。
作者:于博 鲍巍 来源:软件导刊 2015年9期
上一篇:无线通信网络的优化
下一篇:5G与未来通信网络