采用ZigBee技术与CC2430设计的需求响应系统

描述

1 引言

需求响应技术通过电力用户接收电力企业发布的用电信息,及时响应用电负荷变化的措施,以达到削峰填谷,减少负荷波动的目的。需求响应的实施可以带来很大的经济和社会效益,我国的一些地区也已经实行了基于峰谷电价的需求响应措施,并取得了一定的效果。但是传统的需求响应系统缺乏自动化响应措施,不能满足实时双向通信的要求,缺乏与用户侧的互动。

电子式电能表由于其优越的性能及易于与通信模块集成,逐步取代了机械式电能表。随着通信技术的发展,深入千家万户的电能表作为通信节点传递信息,并组成网络已经成为现实。按通信信道来划分,电能表的通信主要分为有线及无线方式。有线通信主要包括485 总线及电力载波技术。无线主要包括公网通信及射频通信。485 总线布线及维护困难,电力载波技术抗干扰性能差,公网通信需支付一定的使用费用,构建专有无线通信网络是一种新发展方向。

ZigBee 技术是一种短距离、低复杂度、低功耗、低数据速率、低成本的双向无线通信技术,非常适合构建以电能表为节点的通信网络。本文提出了一种基于ZigBee 技术的需求响应系统构架,并对系统做出了设计。

2 需求响应系统设计

2.1 系统总体方案

与自动抄表系统不同,需求响应系统的目的不是采集用户的用电信息传送到电力公司,而是把电网及用户用电的实时信息传递到用户侧并做出响应。如图1 所示,智能电网AMI 中心通过GPRS 或因特网等通信方式把实时的电网信息传送到用户小区。用户小区中设置的区域集中器接收并存储信息,并作为ZigBee网络的协调器建立网络,把电网及实时电价信息传送到作为路由器的智能电表节点端。需求响应终端通过与智能电表建立连接,获取用户用电信息及由协调器发布的实时电网、电价信息,再根据用户编制的控制程序,控制用户的负荷装置。需求响应终端以节点的方式加入,除接收实时电价等公共信息外,只与其父节点即每户相应智能电表交换信息,保证了用户信息的安全性。

ZigBee

图1 需求响应系统网络结构图

2.2 系统硬件设计

2.2.1 ZigBee 通信节点设计

需求响应系统的通信节点采用TI 的SOC 芯片CC2430.CC2430 内部集成了业界领先的CC2420 射频模块、一个增强的工业级8051 内核、32/64/128 KBFLASH、8KB RAM 以及其它的功能电路,外接很少的电路就可以构建一个ZigBee 节点[3].系统中的节点可以根据实际应用情况的不同,通过软件配置为协调器、与电能表连接的路由器及需求响应终端。

2.2.2 ZigBee 协调器设计

协调器接收来自电网中心的消息,并把电网中心的信息传送到用户端。电网的消息通过GPRS、以太网等方式传送到用户小区,协调器接收经网关处理后的GPRS、以太网信息,并转化为ZigBee 信息再传送出去。当电网信息采用以太网传输时,可以通过PC机作为网关,PC 机接受并处理来自AMI 中心的信息后,通过串口与ZigBee 节点相接。协调器只需在ZigBee 节点外接RS-232 电平转化器即可。图2 为协调器与PC 机接口。

ZigBee

图2 协调器与PC 机接口。

2.2.3 Zigbee 节点与智能电表接口设计

我国的智能电能表采用RS-485 标准串行电气接口并遵循DLT645 规约[4]进行通信。Zigbee 节点采用RS-485 接口与电能表相接,便可以获得电能表内的数据。Zigbee 节点与智能电能表的接口如图3 所示。

CC2430 引脚RXD、TXD、RE/DE 分别为接收、发送与状态转换端。为了保证系统稳定及抗干扰性,分别通过光耦隔离传送至由3.3V电平供电的485 电平转换芯片SP3485,经转化为485 电平后,经由端子#A、#B与智能电表的485 通道相接。R6、R7 分别为上拉及下拉电阻,目的是为了保证在无连接时,输入电平状态为空闲状态。连接于智能电表上的ZigBee 节点可以使用电能表上的电源供电,并作为路由器加入由协调器建立的ZigBee 网络。

ZigBee

图3 ZigBee 节点与智能电能表接口。

2.2.4 需求响应终端设计

需求响应终端与用户进行交互,显示电网信息及用户用电信息,并对用户的用电设备进行控制。需求响应终端作为ZigBee 节点中的终端节点,采用电池供电,可以方便设备的移动。响应终端主要有液晶显示、按键及外接控制端口3 个部分。

液晶模块采用RT 公司生产的12232f,是一种内置8192 个16*16 点阵汉字库和128 个16*8 点ASCII字符集的图形点阵液晶显示器,可以显示7.5×2 个(16×16 点阵)汉字,与外部CPU 接口采用并行或串行方式控制。模块的供电电源电平根据用户要求有3V/5V 的型号,本设计中选用3V 供电的模块,以与CC2430电平匹配。本设计中CC2430 采用串行方式与12232f相连以节省CC2430 的IO 端口。CC2430 与液晶模块的接口如图4 所示。其中LCD_CS、LCD_SID、LCD_CLK 分别为液晶选中、数据传输、时钟信号引脚。LCD_CON 控制液晶背光的开启与关闭。

4 个按键分别与4 个IO 端口相接,可以实现确定、退出、上翻、下翻的功能。

外接控制端口通过继电器来控制外部用电设备的通断,达到负荷控制的目的。如图5 所示,CC2430通过CONTROL 引脚输出高低电平信号便可以控制负荷控制端子的通断。其中P1 为续流二极管,并联于继电器两端,作用是当触点断开时,提供反电势释放回路,防止二次击穿。

ZigBee

图4 液晶与CC2430 接口。

ZigBee

图5 外接控制端口电路。

2.3 系统软件设计

Z-Stack 是TI 公司发布的免费的并经ZigBee 联盟授权的协议栈。Z-Stack 主要分为以下几个部分:应用层、硬件层、MAC 层、网络层、操作系统层、安全层,服务层,ZDO 层。在需求响应系统中有3 种类型的设备,分别是协调器、与智能电表连接的路由器以及需求响应终端。在设计中,只需针对硬件层做出相应的修改,并定义相应设备的网络类型,然后构建基于不同设备的应用层程序即可。TI Z-Stack 嵌入了一个基于任务轮转查询的操作系统[5].上电后,系统在进行一些初始化工作后,便由操作系统来处理协议栈各层的任务。当有事件发生时,先处理优先级高的层的事件,再处理优先级低的事件。当处理完当前优先级最高的事件后,系统重新开始轮询。需求响应系统中操作系统中各个设备的任务处理的流程如图6 所示。

ZigBee

图6 任务处理流程。

由于各个ZigBee 设备具有一定的通用性,在协议栈中,MAC 层、网络层、硬件层、监控层、应用帧层、设备事件层都可以通用。下文中对各个设备的具体描述,只是详细介绍设备的应用层程序设计。

2.3.1 协调器软件设计

协调器在电源接通后,开始建立网络。协调器接收到的电网中心信息经处理后,按一定的周期发送至电网消息群组。电网消息群组为接收电网及实时电价信息的群组。协调器软件流程如图7 所示。

ZigBee

图7 协调器软件流程图。

2.3.2 与电表连接ZigBee 节点软件设计

网络协调器启动并建立网络后,与电能表相连的ZigBee 节点以路由器的形式加入网络。当用户希望接收到电网信息时,选择加入电网消息接收群组,并把接收到的电网消息存储在本节点中或备份于智能电表中。当节点收到需求响应终端对智能电能表内部数据请求的消息后,本节点通过RS-485 接口读取智能电能表内部的数据。数据请求帧采用满足DL645-2007 协议的帧格式,得到电表响应数据后,把相应接收数据发送给作为终端节点的需求响应终端。本路由器节点的软件流程图如图8 所示。

ZigBee

图8 路由器软件流程图。

2.3.3 需求响应终端软件设计

根据需求响应终端的应用要求,需要获取并显示电价信息、网络信息、当前用电信息、历史用电信息、电网消息等,并针对用户提出的控制方案对家庭用电设备进行自动化控制。为了与用户实现更好的交互,需求响应终端使用菜单界面。菜单分为3 级,配合终端的4 个按键,可实现菜单的上翻、下翻、进入、退出及参数设置功能。本设计定义了菜单的数据结构如下:

Typedef Struct Menu

{

void *DataAddr; //菜单数据地址指针

unsigned char FatherMenuNumber; //父菜单索引值

unsigned char ChildMenuNumber; //子菜单索引值

unsigned char LastBrotherMenuNumber; //兄菜单索引值

unsigned char NextBrotherMenuNumber; //弟菜单索引值

void (*UpFun) ( ); //按"上"键处理程序指针

void (*DowmFun) ( ); //按"下"键处理程序指针

void (*OkFun) ( ); //按"确定"键处理程序指针

void (*ExitFun) ( ); //按"退出"键处理程序指针

} SystemMenu;

通过在程序中构建相应的菜单表,菜单项中父子兄弟4 个索引值构造了一个树状的菜单结构。在菜单的数据结构中还包含有指向当前菜单相应执行程序的指针,可以方便可以实现一个易维护、易扩展的菜单。

由于程序中设定的索引值数据类型为无符号字符型,因此菜单最大项只能达到256 项。当系统的菜单项大于此值时,可以用整型数据替代。

为了减少网络的通信负荷量,智能电表终端不主动发送更新数据信息至需求响应终端。只有在用户需要获取某数据信息时,需求响应终端才主动向智能电表端请求数据。当需求响应终端采用源绑定的方式获取智能电表的信息时,由于每条信息均通过协调器间接寻址并由协调器转发信息,会增加网络中协调器处理信息的负担。

本设计中采用直接寻址的本地绑定的方式来实现终端节点与电能表节点的通信。终端节点通信流程图如图9 所示。

ZigBee

图9 终端节点通信流程图。

当需求响应终端加入网络后,根据是否已知匹配的智能电表节点MAC 地址,分为2 种绑定方式。如果已知MAC 地址, 需求响应终端发送请求NWK_addr_req 请求原语来获取网络中对应MAC地址器件的网络地址。需求响应终端在收到NWK_addr_rsp回应信息时,便是找到了目标网络地址。MAC 地址未知时,需求响应终端则发送Match_Desc_req 请求原语来获取网络中输入、输出簇匹配设备的网络地址。

当网络中存在多于一个的簇匹配的设备时,用户可以通过设置设备描述信息匹配,筛选出目标设备地址。

当获取目标网络地址并存储后,需求响应终端设备通过调用应用层数据请求指令便可获取用户智能电表节点的数据。为了确保需求响应终端的正确寻址,智能电表节点网络地址发生改变时,通知对应的需求响应终端,需求响应终端重启绑定流程。

3 结论

经过测试,本论文所设计的基于ZigBee 的需求响应系统能够实现快速、实时的双向通信。需求响应终端能显示实时电价及用电信息,提醒用户节电,达到削峰平谷的目的;并能通过外接控制端子,根据用户的设置,实现对用户电器的供电的自动控制。本系统实现了电网与用户侧的交互,在智能建筑的建设中,可基于本系统实现电力需求侧能源管理,并能与智能家居系统结合,让用户在享受舒适便利的家庭智能化的同时还能节省能耗开支。随着智能电网的建设及节能减排的实施,此系统具有很好的应用前景。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分