于跃,张峰,张士文
(上海交通大学 电子信息与电气工程学院,上海 200240)
基于ZigBee技术的电力设备远程监控系统
于跃,张峰,张士文
(上海交通大学 电子信息与电气工程学院,上海 200240)
为了提高电力设备状态监控的可靠性和便捷性,针对传统的有线网络采集布线复杂和成本高的缺点,设计了一种基于ZigBee无线网络的电力设备远程监控系统。利用TI公司片上系统CC2530芯片作为ZigBee网络的路由器,通过RS485-RS232协议转换器将电表数据读入ZigBee网络,再利用片上系统CC2538芯片作为ZigBee网络的协调器,接收底层模块的数据并将数据上传至上位机以实现数据监控。采用了一种协调器单次问询,从设备周期性回复的通信方式,并在协调器中实现了数据存储、问询判断、掉线重发等功能以使整个系统协同,高效的工作。
ZigBee;电力设备;监控系统;CC2530;CC2538
随着现代工业的发展,电力设备在线监测系统对监控数据的传输实时性和安全性都提出了较高的要求。传统的有线网络控制系统由于存在现场布线难度大,施工周期长,安全性低等缺点,其局限性也越来越突出[1]。因此,构建一个可靠的无线数据传输网络已经成为电力设备在线监控的一个急迫的需求。ZigBee技术作为短距离、低功耗的无线通信技术,以其硬件成本低、能耗性能高、数据传送安全可靠[2]且组网便捷灵活[3]等优点,在传感和控制领域展现了深厚的发展潜力。本文将设计基于ZigBee无线网络协议的在线监控系统,实现电力设备在线监控的无线化需求。
如图1所示,无线电力设备远程监控系统由上位机监控设备,协调器(网关节点),路由器(采样节点)和电表组成。上位机负责问询数据和接收协调器数据,协调器负责初始通信信道,组建网络并接受子节点加入网络,路由器负责设备之间的关联,实现电表数据的采集和节点之间数据包的转发。另外,ZigBee网络中通常还存在一种终端节点,终端节点相比路由节点,其优点在于可以实现低功耗工作,缺点是无法转发其他节点的信息,在本系统中,无线模块的供电都从变电柜中引出,无需在低功耗模式下工作,而变电柜之间又存在距离远,信号隔离强的缺点,使用终端节点可能会导致部分位置偏僻的节点无法加入到网络中,故系统中的功能节点全部使用路由器节点。
图1 系统总体构架
2.1 电表协议以及RS485-RS232转换器
变电柜中采用的测量仪表为珠海派诺电子有限公司的三相网络电力仪表,三款电表均可以提供电压、电流、有功功率、无功功率、功率因数等电参数的组合测量,其外部扩展了RS485/MODBUS总线通信,可对仪表进行组网管理。其提供的MODBUS-RTU[4]通信协议包含八位数据位,一位停止位,无校验位。每帧数据包裹都包含地址域、功能码域、数据域和校验域。其具体的通信格式如表1和表2所示。
表1 读寄存器格式 表2 电表回复格式
此外,为了实现电力设备监测无线化的需求,需要舍弃RS485双绞线的有线通信方式,利用MAX485芯片将RS485总线输出的差分电平数据转换成为TTL电平数据然后直接读入ZigBee无线模块,图2所示即是利用MAX485芯片将电表和路由器串行通信接口连接起来的框图。
图2 485电平转TTL电平电路
2.2 路由器模块
路由模块是基于Texas Instruments公司的CC2530F256芯片进行开发的,CC2530是一颗真正的系统芯片(SoC)CMOS解决方案,配备了8051CPU内核和兼容IEEE 802.15.4标准的RF控制器,可实现无线设备之间的通信。其包含的串行通信接口外设,为接收和发送数据提供了双缓冲,以及硬件流控制,适合于高吞吐量的全双工应用[5],可以方便的从电表中读出数据。其与电表之间连接的电路如图2所示。
2.3 协调器模块
协调器模块是基于Texas Instruments公司的CC2538SF53芯片进行开发的,相比路由器使用的CC2530芯片,其配备了功能更加强大的ARM Cortex-M3内核并将RAM扩大至32KB,其中协调器的硬件结构连接图如图3所示。此外,为了保证通信的高效性,在程序设计中,协调器在接收到上位机的问询指令并下传至路由器后,路由器便会周期性的采集数据并上传至协调器,此时协调器需要较大的RAM用于不断更新并存储传回的数据,以便上位机下一次问询时能够将数据送回。由此可见,拥有32KB RAM大小的CC2538芯片成为了系统设计的不二之选。
图3 协调器硬件结构连接图
3.1 Z-Stack协议栈和OSAL操作系统
Zstack协议栈是TI公司为ZigBee提供的一个解决方案,ZigBee体系构架如图4所示,Zstack协议栈内部包含了ZigBee协议所规定的基本功能,这些功能大部分是通过函数的形式实现的,为了便于管理这些函数集,Zstack协议栈中加入了实时操作系统OSAL,OSAL操作系统在运行的过程中,首先会更新时钟信息和询检串口、定时器,随后会依次询检ZigBee协议中的MAC层,网络层,硬件抽象层,MT层,APS层和ZDO层是否有任务要执行,如果存在任务则会通过指针调用相应的事件处理函数处理,如果系统本身没有事件需要处理,则会在最后询检用户自己添加的任务,并调用自己添加的任务处理函数实现功能[6]。
图4 ZigBee 协议体系架构
3.2 路由器程序设计
路由器的程序设计是建立在Zstack协议栈之上的,协议栈中的物理层、MAC层和网络层的内容是无需修改的,用户在开发时只需要在APP层添加相应的用户任务,并对APP层中的硬件部分进行配置,例如完善串口回调函数,以实现整个系统协同工作。本文的图5和图6即利用框图从串口和用户任务两个模块描述了路由器是如何工作的。其功能和工作流程可概括如下:
(1)路由模块上电后会自动加入协调器建立的网络,随后会将查询电表ID的事件置1,模块在检测电表ID时先发送从站地址为0的问询码到电表,然后等待电表回复,如果串口接收到回复则将电表ID已获得标志位置1,如果没有收到回复则不进行处理。50 ms后将查询电表ID的事件会再次置1,如果此时电表ID已经获得,则将查询电表ID的事件清空,并将轮询电表数据的事件置1,否则将从站地址加1的问询码发送到电表以等待串口的数据回复,并循环下去直到检测到电表ID。
(2)每个路由器在程序中都为其对应的电表创建了10个问询码的存储空间,每当射频接收事件被置1后,路由器都会查询协调器是否发送了新问询码,如果是则将其储存,如果协调器是想取消哪个问询码,程序则将其对应的存储空间清空。在询问过电表ID后,路由器会以150 ms为周期依次询问存储空间中的10个问询码,当问询码存在时则将其通过串口发送至电表,当检测到此问询码为空则在150 ms后对下一个问询码的问询,从而保证每1.5秒钟可以将所有问询码轮询一次。
(3)程序中为每个问询码的回复数据创建了4个字节大小的时间戳,在询检串口任务时,如果发现有数据从电表传回,则首先要判断是哪个问询码的回复数据,然后将其对应的时间戳加1后连同数据一起发回协调器。
图5 路由器用户任务置1流程图
图6 路由器询检串口流程图
3.3 协调器程序设计
采用无线通信与传统的有线通信,在采集数据的效率上有很大的区别,传统的电力设备监控系统的双向通信只需要上位机发送问询码给电表,电表回复数据到上位机即可。而若采用ZigBee无线通信实现电力设备的远程监控,如果依旧采用传统的双向通信方式,则上位机先要把问询码发送给协调器,协调器将问询码发送到路由后,路由再将其发送到电表,电表接收到问询码后回复数据给路由器,路由通过无线通信发送给协调器后,协调器将数据通过串口回送到上位机。当串口的传输波特率和无线通信速率一定的时候,数据在传输的过程中会浪费大量的时间。因此如何提高数据的传输效率成为设计的关键。
基于此本系统设计了一种协调器单次问询,从设备周期性回复数据的通信方式,使得协调器在收到上位机的问询码后,不仅可以通过对问询码的判断将问询码选择性的下发,还可以立即调出缓存中存储的回复数据将其传回给上位机。此外,为了使系统更加高效可靠地工作,在协调器中还增加了从设备掉线判断,上位机问询码停发检测等功能,图7和图8分别利用框图从串口和用户任务两个模块描述了协调器是如何工作的。其功能和工作流程可概括如下:
(1)协调器在上电后会组建无线网络,等待从设备加入,当接收到从设备的数据时射频接收事件会被置1,如果接收到的数据是电表的ID及其短地址,协调器会开辟数组空间将其存储。如果用户想知道网络中设备的连接结构,也可以通过触发按键事件通知从设备上传地址信息并从串口传输到上位机查看。
(2)协调器根据电表ID为每个从设备建立了一个结构体,其中包括10个问询码和10个回复数据,还包括每个问询码对应的问询更新信号、路由回复未更新计数器和上位机问询未更新计数器。当上位机发送问询码时,协调器首先要检查网络中是否存在问询码中所指明的设备,不存在则舍弃,存在则在此设备的结构体中查询此问询码是否已经存在,存在则将此问询码的问询更新信号置1,并将此结构体中的存储的回复数据传回给上位机,不存在则将此问询码存储并向从设备下发。
(3)协调器接收到从设备的回复的问询数据时射频接收事件会被置1,随后协调器会查询是否存储过此设备的ID,存储过则会将从设备回复的数据记录下来。此外,从设备每次回复数据时协调器都会查询对应此回复数据的问询更新信号是否置1,如果不为1则将上位机问询未更新计数器加1,当计数器达到一定数值后,则判断上位机停止问询并将这一问询码清空。
(4)从设备在回复数据时会在数据结尾加上了4字节长的时间戳,协调器每次回复数据给上位机的时候都会记录下对应的时间标志,当回复数据时会将当下的时间戳与上次记录的作对比,如果没有变化则将路由回复未更新计数器加1,当此计数器达到一定数值时,则判断对应的从设备已经不再回复此问询码的数据,因此将程序中该设备的此问询码清除,并等待上位机再次询问时向从设备下发问询码。
图7 协调器询检串口流程图
图8 协调器用户任务置1流程图
设备号父节点及路由级别问询码1访问寄存器个数有效回复率问询码2访问寄存器个数有效回复率问询码3访问寄存器个数有效回复率设备1协调器(1级)2399.7%5100%13100%设备2协调器(1级)3299.8%1100%9100%设备3设备1(2级)4099.0%设备4设备1(2级)12100%1299.8%16100%设备5设备2(2级)20100%10100%10100%设备6设备3(3级)4099.4%3099.5%设备7设备4(3级)3099.8%2099.8%13100%设备8设备4(3级)18100%14100%8100%设备9设备5(3级)3699.9%4100%设备10设备5(3级)2100%26100%12100%
本文上位机开发的软件会轮询用户设置好的问询码,经过串口向协调器发送一条问询码后,当接收到回复数据时会自动发送下一条。在测试超过2小时后实验结果如表3所示,实验证明当路由深度为3层,网络从设备总数为10个且每个设备设置1-3个问询码时,从设备回复的数据的有效率超过99%,也未曾出现设备掉线的情况,可实现1.5秒内对所有电表进行一次数据查询。对于个别的通信失败,究其原因应该是由于变电站现场强大的电磁干扰,导致传输的数据部分丢失。
本文针对电力设备远程监控系统的应用需求,指出了传统有线方式的缺点,阐述了ZigBee技术的特点及优势,并通过硬件和软件设计,经实验得出了ZigBee技术完全符合电力设备在线监测系统升级的要求。它不仅解决了电力设备监控系统现场布线难度大,施工周期长,安全性低等缺点,而且避免了无线通信中经常出现的数据碰撞和丢失的问题,具有非常好的推广前景。
[1] 吕镇庭,曹建.ZigBee技术在电力设备在线监控系统中的应用[J].电子测量技术,2008,31(2):191-194.
[2] 李勇,柳建.基于ZigBee的无线电力监测系统[J].信息技术,2012,36(11):137-139.
[3] 袁辉建.基于ZigBee的电力设备红外测温系统[J].科技创新与应用,2014,4(3):12-13.
[4] 张波,许平.Modbus协议在温湿度监控系统中的实现[J].国外电子测量技术,2006,25(1):58-60.
[5] 丁家峰,曹建. 一种新型分布式电力设备在线监测通信网络的设计[J].电气应用,2006,25(7):68-71.
[6] 陈雨青,沈承舒,彭晓珊. 基于ZigBee无线传感器网络的楼宇电力节能管理系统设计与实现[J].电子测量技术,2013,8(4):52-58.
A Remote Monitoring System for Electric Power Equipment Based on ZigBee Technology
Yu Yue, Zhang Feng, Zhang Shiwen
(College of Electronic Information and Electrical Engineering, Shanghai Jiao Tong University, Shanghai 200240, China)
To improve the reliability and convenience of electric power equipment state monitoring, this paper designs a remote electric power equipment monitoring system based on ZigBee wireless network, against the shortcomings of complex collection and wiring as well as high cost of traditional wired networks. Having TI’s SoC CC2530 as ZigBee router, electric meter data is read into ZigBee network through RS485-RS232 protocol converter. Then, SoC CC2538 is used as ZigBee network’s coordinator to receive data from the underlying module and upload it to the upper computer for data monitoring. This paper adopts a special communication mode which makes the coordinator ask one time and the routers will repeat periodically. Furthermore, the coordinator can perform such functions as data storage, enquiry judgment and retransmission in case of lost connection to enable the whole system to work in a collaborated highly efficient way.
ZigBee;electric power equipment; monitoring system; CC2530; CC2538
10.3969/j.issn.1000-3886.2017.02.013
TM712;TP393.03
A
1000-3886(2017)02-0041-04
于跃(1992-),男,天津人,硕士生,从事电工理论与新技术,嵌入式技术应用等研究。 张峰(1968-),男,江苏人,博士,教授,博士生导师,从事电工理论与新技术、轨道交通设备检测理论分析等研究。 张士文(1976-),男,黑龙江人,硕士,讲师,从事电工理论与新技术、计算机控制技术等方面的教学与研究工作。
定稿日期: 2016-09-28