图3 网关软件设计架构
软件执行流程图如图4 所示,底层的硬件初始化包括时钟的设置、GPIO 的管理、串口的配置、以太网接口MII 的配置以及PHY 芯片的设置等,然后CC2520 的初始化配置无线通信模块符合ZigBee 协议标准,CC2520 初始化设置后,模块即可以实现透明串口传输,与ARM 处理器进行数据交互。为适应短帧实时和确定性通信发展趋势,以太网通信采用UDP/IP 协议启动linux 内核多任务调度管理,进行串口数据的收发、UDP 的接收与发送以及嵌入式WebServer 等任务。
图4 软件执行流程
3 ZigBee与以太网协议转换软件设计
TCP/IP 协议使用MAC 地址进行硬件地址的识别并使用ARP 协议进行硬件地址到IP 地址的解析因此必须完成ZigBee 到ARP 地址的转换,才能保证正常通讯ZigBee 中每个节点都有自己的MAC 地址,格式由64 位长地址和16 位短地址组成文章设计实现了ZigBee协议中适配层和ARP,完成ZigBee 中MAC 地址到以太网IP 地址的映射工作流程图如图5 所示当网关接收到一个正常发往本地IP 的以太网数据包后,经过协议判断送往上层UDP(TCP)处理,最后到网关的应用程序处理网关应用程序经过分析判断,确定需要转发给ZigBee 网络中的哪个节点,经过ZigBee 端的ARP 地址解析出对应的ZigBee 中的节点MAC地址,将相应的数据包送至该节点,完成一次数据通讯。
同理,当ZigBee 端收到数据包后,通过同样的解析将数据包送至对应节点或设备通过内嵌的WebServer 用户可实现ZigBee 节点的实时访问、修改、组态等。
图5 网关协议工作框图
4 结束语
在网关中内嵌WebServer,可通过以太网随时访问或修改现场仪表的数据,实现远程控制,远程诊断等该产品有效的解决了工业现场短距离ZigBee 无线通讯连接以太网的问题,以全新的方式向物联网靠拢.