系统总体架构
系统总体架构如图1所示,主要包括:终端模块、网关模块和远程服务器三部分。在一个局部范围内采用ZigBee的无线数据传输技术,将各个电表通过通信口与Zigbee RFD(简化功能设备))模块进行有线的连接通信,构成一个终端模块,根据路由算法选择最优的通信路径,把电表数据收集到一个ZigBee/GPRS网关中,然后借助GPRS的远程无线通信技术,把获得的数据信息送到远程的服务器,同时,远程的服务器可访问和控制任何一个ZigBee网络中的设备,来实现远程控制的功能。
图1 系统架构图
硬件设计
1 终端模块设计
终端的处理器模块和无线通信模块采用一片CC2430芯片。CC2430是TI公司生产的新一代2.4GHz射频系统单片机,片内整合了RF收发器,增强型8051MCU、64KB的Flash内存、8KB的RAM、2个USART等大量电路,只需极少的外围电路即可实现信号的收发功能。其硬件图如图2所示。电路中的非平衡变压器由电容C4和电感L1、L2、L3以及一个PCB微波传输线(两个等效的λ/2电阻)组成,整个结构满足RF输入/输出匹配电阻(50Ω)的要求。系统只需外接一片MAXIM公司的MAX3485芯片,进行UART和RS-485的电平转换,以完成和电表的通信。
图2 终端模块硬件原理图
注意,系统使用3V纽扣电池供电,功耗很低(接收数据时为27mA,发送数据时为25mA)。MAX3485也是低功耗芯片,和CC2430的电压等级兼容。
2 网关节点设计
网关节点主要芯片包括一片CC2430和一片MC35i。MC35i是西门子公司生产的新一代GSM/GPRS双模模块,支持数据、短信、语音和传真业务,采用低功耗设计,支持电压范围3.3~4.4V,电流消耗仅为3.0mA(睡眠)/10.0Ma(闲置)/300mA(通话,最高2.0A)/100μA(掉电),特别是MC35i的GPRS永久在线功能,提供了最快的数据传输速率。
CC2430完成Zigbee网络中数据的收集、存储。MC35i通过GPRS网络把数据发送到远程服务器上,同时,接收和解析从远程服务器上传来的命令信息,来控制整个Zigbee网络。网关节点还扩展了一片128×64点阵的LCD液晶模块来完成网络中信息的显示。根据需要,还可以外扩一定容量的Flash以满足存储程序和数据的需要。外接的RS232接口,支持程序的下载和调试。其硬件框图如图3所示。
图3 网关节点硬件框图
由于系统的整体硬件原理图较大,在此省略。
软件设计
ZigBee网络具有自组织和自管理的功能。网络中的节点采用的是动态地址分配的机制。软件设计主要包括终端模块的嵌入式软件部分、网关节点软件部分以及服务器的管理软件。1 终端节点程序流程
终端节点的主要功能就是加入现在的网络中,读/写电表的数据,接收ZigBee网络传来的数据和命令,然后根据命令去操作电表。终端设备平时处于“休眠”状态,只有硬件中断能够唤醒它进入工作状态。硬件中断分为三类,分别为管理信息中断、数据信息中断和底层硬件中断,系统判断出不同的中断类型,转去执行对应的工作,执行完后又进入“休眠”状态。如图4所示。
图4 终端节点流程图
2 网关节点程序设计
网关设备是整个ZigBee网络的核心,一方面担任起网络协调器的角色,另一方面还要完成与Web服务器的通信。
首先系统开始启动,然后初始化所有的硬件和软件,并组织以自己为协调器的网络,初始化网络的深度等网络有关的信息,然后定时发送信标帧。随后进入中断的循环检测和处理过程,查看是否有中断信息的到来,如果是来自网络中某一节点发送的数据中断,则对此数据进行整理,然后发送给GPRS模块,通过GPRS网络发送到远程的服务器端,并且给网络中源节点确认信息。如果这个中断是来自网络中管理信息的中断,例如,一个节点申请加入到该网络当中,则根据整个网络的容量,给出相应的应答信息给此节点。
注意网关模块与远程服务器的通信模式:网关模块要把数据发送到远程的服务器,先是通过串口用AT命令集把数据发到GPRS模块,有GPRS模块完成数据的发送。当GPRS模块接收到数据,会通过串口,以中断的方式告知。通知控制器来处理数据。
3 服务器端接收数据
服务器从指定端口的TCP SOCKET接收电表数据,按照网关设备终端确定的应用层数据格式从各数据报中提取电表数据,最后把接收到的电表数据保存到数据库的DeviceData字段中。服务器数据库选用的是SQL Server2000。
低功耗设计
从两个方面进行了低功耗设计,即本质低功耗设计和控制低功耗设计。
本质低功耗设计是指所使用的电子元器件都采用低功耗类的元器件,其特点是低电压供电。本系统采用的CC2430、MC35i以及MC3485等都采用的是低功耗芯片。
控制低功耗设计是指在系统工作时通过控制各部分的供电来降低系统总功耗。本系统的终端节点在初始化完毕后即进入休眠状态,只有在外中断唤醒它时才进入工作状态,数据发送完毕后又进入休眠状态。网关节点由定时器控制定时发送信标帧进行网络动态管理,接收网络的中断信号进行相应的操作,除此之外的其他时间网关节点也进入休眠态。通过对程序的仔细设计,系统可以有80%以上的时间处于休眠态,因此也极大地降低了功耗。
实验原型系统测试,ZigBee网络通信成功率98.12%,电池在系统测试运行1个月后几乎没有降低,实际使用时可以保证9个月以上的寿命。
结束语
介绍了一种基于ZigBee和GPRS无线网络的远程电力抄表系统。利用ZigBee协议简单、成本低、距离近、动态组网以及GPRS网络瞬间上网、永远在线、按量计费、数据传输量大的特点,以一个楼道或一栋建筑物为单元组建一个无线局域网,再利用ZigBee/GPRS网关转换,通过GPRS网络发送给数据电力公司的抄表中心,较好地解决了现行抄表系统节点众多、布线复杂、维护不便的问题。终端节点和网关节点所选用的CC2430和MC35i均为行业最具代表性的芯片,功能强大、集成度高且均为低功耗芯片,同时在程序中注重了“休眠”低功耗设计。原型系统通信可靠、耗电极低、抗干扰能力强,其推广应用前景十分远大。