2024年4月26日发(作者:)

Computer Engineering andApplications ̄["算机工程与应用 

◎网络、通信、安全◎ 

ZigBee 线网关在MODBUS通信中的应用 

邢伟伟,白瑞林,孟伟 

XING Weiwei,BAI Ruilin,MENG Wei 

江南大学轻工过程先进控制教育部重点实验室,智能控制研究所,江苏无锡214122 

Key Lab of Advanced Process Control for Light Industry(MoE),Institute of Intelligent Control,JiangIlal1 University,Wuxi, 

Jiangsu 214122,China 

XING Weiwei,BAI Ruilin,MENG Wei.Application of ZigBee wireless gateway in MODBUS communication.Computer 

Engineering and Applications,2011,47(29):81—84. 

Abstract:In order to solve the communication cable in the industrial site equipment against assembly and maintenance,Zig- 

Bee gateway iS used to assemble alI equipment into a wireless network to realize wireless communications.The protocol data 

is trnsferred by tahe application layer of ZigBee protocol stack.Based on address mapping table the match is completed be— 

tween MODBUS station number and wireless network address.Gateway functions are realized among MODBUS and wireless 

network.Data transparent transmission is completed.The actual test is made to prove that the transmitted power,accept sensi— 

tiviy,conununication distatnce,mistaken package rate,speed of wireless module meet industrial application of real-time securi— 

ty demands.The improved network performance compared to traditional network greatly ascends.The gateway has been印- 

plied in practical PLC communication and parameter configuration,and can replace the traditional way to communicate. 

Key words:wireless gateway;address mapping;industrial bus 

摘要:为了解决工业现场设备通信电缆不利于组装和维护,提出了利用ZigBee网关将所有设备组成无线网络实现无线通信。 

利用ZigBee协议栈应用层完成协议数据转换,基于地址映射表完成MODBUS站号和无线网络地址的匹配,实现MODBUS和无 

线网络的网关功能,完成数据透明传输。实际测试表明,无线模块的发射功率、接受灵敏度、通信距离、误包率、速度满足工业应 

用的实时性安全性要求,改进网络性能比传统网络大大提升,已应用于实际PLC通信和参数配置中,可代替传统通信方式。 

关键词:无线网关;地址映射;工业总线 

DOI:10.3778/j.issn.1002.8331.2011.29.022 文章编号:1002.8331(2011)29.0081-04 文献标识码:A 中图分类号:TP393 

1前言 

ZigBee无线通信是一种新兴的短距离、低速率、低功耗、 

低成本的无线网络技术u 。目前工业设备主要采用电缆通信, 

现MODBUS设备之间无线通信,采用消息命令缓存,实现多 

主多从通信,提高系统通信效率。经测试本网关硬件链路预算 

达100 dB,可靠通信距离达到150 m,通信速度达到250 kb/s, 

误包率控制在0.1%,实时性和可靠性达到工业监控的要求,具 

有一定的应用前景。 

传统通信方式有不易组装、抗干扰性能差、不易移动等缺点, 

且同一网络只能有唯一主设备发送命令,通信效率低。 

针对无线有线融合传输目前提出了—些解决办法。文献[2] 

针对工业无线通信和工业以太网提出一种ZigBee/I ̄以太网网 

2系统分析 

传统的工业控制网络中所有设备通过总线连接,网络拓 

扑往往只能是主从模式,同一时间只能有一个设备向网络中 

其他设备发送命令,通信效率低。本文提出改进的网络结构 

图如图1所示,所有工业设备通过嵌入式ZigBee网关接入无 

线网络,通过网关转发消息和命令,由于无线网络可以分布范 

围很广,可以实现同时有多个设备向其余设备发送命令,在接 

收端采用命令缓冲,解决同时接受到多个命令的冲突,提高了 

系统通信效率。 

关的设计,但是并没有实现多主多从同网络通信,对网络通信 

效率没有质的改变。文献[3]提出了一种MODBUS报文有线/ 

无线混合传输的方案,但是仅仅在理论上分析可能性,没有实 

际使用效果对比。文献[4]提出将ZigBee IEEE地址和MOD。 

BUS站号绑定,完成设备的数据传输,但是由于IEEE地址和 

站号都是唯一不变的,不利于网络状态改变的时候很快恢复。 

本文提出将MODBUS和ZigBee协议融合使用,利用在传 

统网络中嵌)kZigBee无线网关,将工业设备接入无线网络,实 

基金项目:国家自然科学基金(the National Natural Science Foundation of China under Grant No.60804013)。 

作者简介:邢伟伟(1987一),男,硕士研究生,主要研究方向为嵌入式无线传感理论与应用;白瑞林(1955一),男,教授,博导;孟伟(1986一),男, 

硕士研究生。E—mail:sytu

xww@yahoo.tom.ca 

_

收稿日期:2011—03—28;修凹日期:2011-05.30;CNKI出版:2Ol1—5—19;http://www.cnki.net/kcms/detaiV11.2127.T: l10804.1604.034.html 

82 2011,47(29) ComputerEngineering andApplications计算机工程与应用 

3.2.1 ZigBee协议栈 

ZigBee目前的最新协议规范是ZigBee联盟2007年发布 

的ZigBee-Pro版本协议,Pro版本协议和旧版本相比在路由协 

议、地址分配方式上面做了很大改进,所以本网关选择最新的 

Pro协议。由于本网关硬件采用了TI的SoC芯片CC2530,网 

关的zigBee协议栈采用TI针对Cc253O提供的ZigBee完整协 

图1改进网络结构图 

3系统方案 

3.1硬件方案 

系统硬件架构如图2所示,整体由以下五部分组成。 

图2系统硬件结构图 

主控模块:主控模块选择TI公司针对ZigBee协议标准推 

出的SoC芯片,内部集成了增强型8051内核的MCU和2.4 GHz 

收发—体RF射频模块。 

状态输出模块:利用CC2530的GPIO控制LED闪烁显示 

模块运行的不同的状态,主要涉及通信状态、无线链路质量指 

示、电源状态以及错误状态指示。 

配置输入模块:利用四个拨码开关选择模块的运行的不 

同参数,主要涉及配置参数有设备类型选择、网络状态保持、 

测试模式选择等。 

主设备连接模块:本模块 寸夕 同的接口,主要有UART、 

SPI等,可用于连接不同使用M0DBus协议的工业设备。 

射频匹配模块:此模块为影响系统性能的主要模块,利用 

巴伦电容电路完成射频的平衡不平衡转换,并完成天线阻抗 

的匹配,用于增加系统的射频转换效率,使得模块的发射的功 

率和接受灵敏度达到最大,增加了系统可靠性。 

3.2软件方案 

系统软件主要完成有线网络到无线网络数据转发功能, 

实现网关功能,主要软件架构如图3所示,包括zigBee协议 

栈、地址表维护、协议数据处理、命令响应缓存等部分组成。 

图3软件架构图 

议栈——z—Stack 2.4.0。Z-Stack 2.4.0协议栈实现了ZigBee-Pro 

的MAC、PHY、NWK、APS等层功能,该协议中具有基于OSAL 

(操作系统抽象层)的消息驱动型的操作系统,提供完善消息、 

事件等机制帮助用户完成复杂的应用功能嘲。 

3.2.2地址表维护 

MODBUS通信中用于区别不同设备的是MODBUS站 

号,而在zigaee网络通信中用于区别不同设备的是ZigBee网 

络地址,现在需要将两者结合起来使用,就需要一个机制使 

MODBUS站号和ZigBee网络地址绑定匹配。如图4所示,本 

系统在无线网关内部维护地址映射表,将整个网络中的所有 

设备的MODBUS站号和与其对应的无线网关的网络地址、协 

议端口记录在映射表中。实际通信过程中将通过查询表格得 

到对应的MODBUS站号和ZigBee网络地址。 

站号 地址 端口 

l 0x0001 20 

2 O) 0o2 2l 

3 Ox1234 20 

4 0x143E 20 

X N M 

图4地址映射表 

无线网关没有采用IEEE地址和站号匹配。由于也EE地址 

是唯一不变的,但是实际通信中系统中有的设备可能会断电, 

网络地址将会改变,所以应该以网络地址为准,在网络地址改 

变之后会及时广播新的地址给网络中的所有设备,可以保证 

每个设备中地址映射表中的地址是最新且可以直接通信的地 

址,提供了通信成功率。 

由于嵌入式设备内存有限,故不采用将所有设备的信息 

以表格的形式储存,采用链表形式储存实际的表格,通过插入 

删除对应项可以完成地址链表的更新。 

单个地址链表结构为: 

typedef struct

_

MapNode{ 

uint8 StationNum; 

uint8 NetAddr[8]; 

Uint8 POrt: 

struct

MapNode next; 

_

}MapNode; 

3.2.3数据处理 

系统处理数据命令算法流程如下: 

(1)等待接受无差错的MODBUS命令帧或者从RF接受 

无线命令帧转(2)。 

(2)从地址表查询转发地址和端口。 

(3)如有,则将MODBUS.PDU数据封装成ZSTACK-PDU 

数据或将zsTlAcK.PDU数据封装成MODBUS.PDU数据并放 

入命令缓存等待处理,如无转(5)。 

(4)数据处理单元读取缓存中需要处理的命令和数据并 

执行转发,转(7)。 

邢伟伟,白瑞林,孟伟:ZigBee ̄ 网关在MODBUS通信中的应用 

4.1.1输出功率测试 

(5)向zi譬Bee网络中的所有设备广播也b 命令,转(6)。 

(6)如得到地址回复,插入地址表,转(2),如超时重发次 

数累加,如超过重发次数则清除重发次数转(7),否则转(5)。 

(7)检测命令缓存是否有命令,如有转(4),否则清除缓 

存,转(1)等待命令。 

协议中有两种网络数据格式:一种是MODBUS协议数据 

MODBUS.PDU,还有一种是Z.Stack协议数据ZSTACK—PDU。 

其中MODBUS.PDU向ZSTACK-PDU数据格式的转换过程如 

测试时候主要通过上位机设定信道和发射能量,然后通过 

电缆将模块的天线输出直接连接到频谱仪得到实际的发射功 

率和频率进而可以评估模块的射频发射和阻抗匹配的质量。 

网关硬件模块发射频谱如图7所示,模块的发射功率可以 

达 ̄lJ+2 dB,通常电缆有1 ̄2 dB的信号衰减,故实际发射功率 

可以达N+3 dB~+4 dB,测试设定频率为2 405 Mnz,实际测量 

频率为2 404.89MHz,则频偏为110kHz,只要同一批的产品频 

图5所示 

站号J MODBUS-PDU 

查询网络地址 . 

地址表 

盛J站号J MO删s帕u 

c头4网络头』噩蕴f站号J MODBUS-rDu 

图5数据转换图 

O O 0 0 0 0 

首先提取MODBUS.PDU中的站号,根据提供的地址映射 

表维护提供的查询地址服务在地址表中查询本次命令的无线 

网络地址,如地址不存在则发起地址请求,将网络地址附加在 

MODBUS。PDU帧前端组成新的数据,通过ZigBee协议栈加 

入网络头和MAC头将得到ZSTACK—PDU。可以启动一次发 

送过程将ZSTACK.PDU数据发送至目的设备的无线网关。无 

线网关将接受到ZSTACK.PDU经过上面相反的过程得到 

MODBUS.PDU数据发送至与之相连MODBUS设备完成一次 

命令的接受。其余数据格式转换可类比。 

3.2.4命令应答缓存 

由于设计的网络中存在多个主设备,不可避免发生同一 

时间有多个主设备向同一个从设备发送命令,不做特殊处理, 

在对第一条命令处理的同时会丢弃后续的命令,产生错误。 

本网关中在每个无线设备内部添加了命令和应答缓存,缓存 

是基于FIFO原理,可以同时储存四条命令。当MODBUS设 

备的处理速度够快,可以同时响应多个设备的命令不产生错 

误,提高系统通信效率。命令应答缓存结构如图6所示。 

命令4 应答4 

命令3 应答3 

命令2 应答2 

命令1 应答1 

图6命令应答缓存 

4系统测试 

本模块主要应用于工业控制现场,所以在设备的链路预 

算、通信可靠性、电磁抗干扰方面要求比较严格。 

4.1链路预算测试 

当评估802.15.4或ZigBee应用时,链路预算是极重要的 

考虑因素,链路预算越高就越好。接收灵敏度和输出功率的 

绝对数值之和被称为链路预算。故此部分测试分为输出功率 

测试和接受灵敏度测试。 

偏在同一等级则不影响实际通信。其他通道测试数据如表1 

所示。 

I 

| \ 

/ 

』J^ … f\ j. 

I 

I下 ”… 『 k 』‘lJ I

l f} l I II f I。I ’ l 

 O O 0 0 

~1 l l。。l 0 

Center 2.404887821 GHz 50kHz/ Span 500 kHz 

图7模块在l1信道的发射频谱 

表1发射功率测试结果表 

4.1.2接受灵敏度测试 

接收灵敏度测试主要通过特定的2.4 GHz信道发生器直 

接发射标准频段的信号通过电缆直接发射到接收模块,然后 

通过统计100次的误包率,通常误包率在1%以下表明接受正 

常。测试结果如表2所示。 

表2接收灵敏度测试结果表 

由测试结果可以看出模块的输出功率可达+2 dB,接收灵敏 

度可以达到一98dB,则链路预算可达100dB,满足实际使用。 

4.2实际通信测试 

通信测试主要测试网络复杂度对通信成功率的影响以及 

传统网络通信效率和采用网关接入无线改进型网络的通信效 

率的对比。 

4.2.1通信成功率测试 

影响通信成功率的主要匿蓍有节点之间的距离、网络拓 

84 2011,47(29) ComputerEngineering andAppBcations计算机工程与应用 

扑的复杂度、运行环境等。 

网络复杂度对通信成功率的影响主要通过网络负载来实 

际模拟,其中控制干扰源发送数据的流量达到模拟不同实际 

环境的效果。实际测试拓扑图如图8所示。 

图8测试网络拓扑图 

测试主要分为背景无流量、较轻流量、轻流量、中流量、重 

流量五种测试,其中干扰源不发送数据为无流量,50 ms发送 

帧数据为较轻流量,25 ms发送一帧数据为轻流量,10 ms发 

送一帧数据为中流量,1 ms发送一帧数据为重流量。误包率 

结果分为双向通信和单向通信两种,其中单向通信为发送源 

发送数据,接收源接受到数据则成功,双向通信则接收源在接 

受到数据包之后将数据包发送回给发送源。 

由表3可以得出随着系统的背景流量的加重,系统的误包 

率也逐渐加大,同样背景流量情况下,双向通信比单向通信的 

误包率大。本系统在节点比较多的应用环境可靠性会打折 

扣,不过由于工业控制一般不会频繁通信,MODBUS设备个 

数也不会超过255,所以不影响网关在工业控制场合的使用。 

表3背景干扰程度和误包率的关系表 

4.2.2通信效率测试 

本网关在实际PLC通信中得到测试验证,测试过程中以 

传统的连接通信方式和无线网络互联的通信方式的通信效率 

对比得出网络的性能参数。如图9所示为24个PLC通过网关 

连接在无线网络中完成各自的通信和控制功能。测试结果如 

图10所示,图10中给出了lO个节点至200个节点的测试结 

果。由图l0中可以看到在网络中节点较少的时候两者差异不 

大,但是当节点增多无线网关改进型网络的优势就体现出 

来。从测试结果可以看到在200节点的网络中通信效率可达 

传统网络的7倍左右。 

由于传统的网络同一时间只能有一个主设备向网络中发 

送命令,所以设备的增加不能使整个网络效率增加,而采用 

ZigBee网关改进的网络由于无线网络发送数据速度(250 kb/s) 

比串口网络速度(19 kb/s)要快得多,所以在宏观上可以看做 

多个主设备同时发送命令,这样在网络中节点增加的同时提 

升了系统的网络通信效率。 

图9 PLC测试现场图 

网络节点 个 

图1O网络通信效率对比图 

5结论 

测试结果表明本网关发射功率达到+2 dB,接收灵敏度达 

到一98 dB,链路预算达100 dB,正常通信距离可达200 m,可 

靠通信距离为150 m,通信速率达250 kb/s,通信误包率控制在 

0.1%,用于工业设备接入无线通信和监控方面,通信延时小、 

误包率低、安全性好,且改进了传统主从模式通信,使得多主 

多从通信成为可能。但是目前还有不足仍然需要改进,比如 

大数据的通信、网络节点负载加重时候的通信延时和网络管 

理等问题都是目前研究的热点。对于工业控制行业,利用无 

线实现设备间的信息交互将是—个趋势,能够有效地利用Zig- 

Bee无线传感网通信技术,将会优化整个组装过程,从而提高 

生产力,降低成本。 

参考文献: 

【1]Yu Chengbo,Liu Yanfei,Wang Cheng.Researeh On ZigBee wirol ̄ 

s0nsors network based On Modbus protocol[I].Wireless Sens0f 

Network,2009,1:1-60. 

[2】许洪华,刘科.基于Modbus ̄的ZigBe ̄TAI,以太网网关设计【J】. 

微计算机信息,2009,25(6/2):281.283. 

[3]刘桂臣,阳宪惠.Modbus报文有线,无线混合传输的实现cJ】.清华大 

学学报,2008,48(¥2):1844.1847. 

【4]涂煊,彭瑜,周怡颞,等.Modbus通信协议的紫蜂无线传输网络的 

研究【J].自动化仪表,2007,28(7):10-13. 

[5]ZigBee Alliance.ZigBee-speeiifeaifon[EB/OL],(2005-06).h ̄://www. 

zigbee.org. 

[6]Willig A,Matheus K,Wolisz A.Wireless technology in industrial 

networks[J].Proceedings of the IEEE,2005,93(6).