基于ZigBee无线网络和CC2430芯片实现电源电压实时监控系统的设计

描述

引言

传统电源监控系统多采用有线连接方式。当监控节点较多时,就存在着安装困难、布线繁琐及维护不便等问题。采用基于ZigBee 技术的无线传感器网络来组建这种电源监控系统,即可解决上述种种问题。现介绍ZigBee 技术的工作原理及实时监控系统的设计。

ZigBee 协议栈结构由物理层、MAC 层、网络层和应用层组成。ZigBee 标准规定,所有的ZigBee网络节点分为Coordinator、Route、End Device 这3种类型。不论ZigBee 网络采用何种拓扑方式,网络会自动按照ZigBee 协议算法选择较好的路由路径作为数据传输通道,以提高通讯效率。

1 监控系统设计

1.1 系统结构设计

基于ZigBee 无线网络的电源电压监控系统框图如图1 所示。

电源

图1 系统结构框

终端节点通过采集/保护模块采集电源设备0~30 V 的电压数据,通过路由器节点发送给协调器节点,同时还要接收协调器的控制命令并作相应处理;路由器节点在系统中的主要任务是数据中转,确保协调器节点与终端节点间的数据交换正确,增加了ZigBee 网络的覆盖范围;协调器节点一方面接收终端节点采集到的电源电压数据,并把该数据通过串口发送给上位机,另一方面接收上位机的命令信息,然后发送给对应的终端节点;上位机实现对监控设备状态信息的管理,包括系统配置、实时状态显示、节点控制、数据处理及数据查询等。

1.2 网络拓扑选择

ZigBee 网络具有3 种拓扑形式:星形拓扑、树形拓扑、网状拓扑。文中设计的监控系统选择网状拓扑作为系统拓扑结构。

2 ZigBee 监控系统的硬件设计

监控系统主要由路由器节点和终端节点组成。

终端节点的硬件结构框图如图2 所示。

终端节点模块由采集和控制两部分组成。电源采用DH1718G-4 型直流稳压电源。将电源电压0~30 V使用1/10 电阻分压变为CC2430 片内AD 采集0~3 V电压;保护模块又包括继电器和蜂鸣器电路两部分,继电器用于切断或恢复电源与负载设备的连接,起到过压保护的作用,蜂鸣器在电源过压时响起,起报警作用。其中,在继电器驱动电路里加入二极管用于在继电器断电瞬间将继电器线圈产生的较大的反向电动势释放掉,起到保护三极管的作用。

电源

图2 终端节点的硬件结构框

3 ZigBee 监控系统的软件设计

3.1 Z-Stack 的软件架构及定制

ZigBee 无线网络节点的软件开发平台采用IAREmbedded Workbench V7.30B for 8051 ( IAR EW)集成开发环境。ZigBee 无线模块的软件系统协议栈采用操作系统的思想来构建,采用“事件轮询”机制,当各层初始化之后,系统进入低功耗模式。当事件发生时,唤醒系统,开始进入中断处理事件,结束后继续进入低功耗模式。如果同时有几个事件发生,判断优先级,逐次处理事件。整个Z-Stack 的主要工作流程大致分为:系统启动,驱动初始化,OSAL初始化和启动,进入事件轮询阶段。

3.2 协调器节点的软件设计

协调器在系统中的作用是,建立并管理ZigBee网络,自动允许其他节点加入网络的请求,收集终端节点传来的电压数据,并通过串口将数据发送给上位机,同时接收上位机的控制命令,再将命令发送给终端节点控制其采取相应的处理措施。协调器建立网络并处理节点请求的程序流程如图3 所示。

电源

图3 协调器建立网络流程

3.3 路由器节点软件设计

路由器节点在系统中的作用是路由选择和数据转发。ZigBee 设备有两种类型的地址。一种是64位IEEE 地址(也称为MAC 地址或扩展地址);另一种是16 位网络地址(也称为逻辑地址或短地址)。

ZigBee 使用一个分布式的编址方案来分配网络地址。该方案确保了所有被分配的网络地址在整个网络中是唯一的。路由器建立网络的程序流程如图4 所示。

电源

图4 路由器建立网络流程

3.4 终端节点软件设计

终端节点在系统中的作用是采集电源电压数据,并通过与协调器建立“绑定”将电压数据发送给协调器,同时接收协调器发来的控制命令,控制采集/保护模块中的继电器和蜂鸣器做出相应的操作。在终端节点以终端的身份启动并加入网络后,即开始与协调器建立绑定。一旦一个绑定被创建,终端节点就可以在不需要知道明确的目的地址的情况下发送数据。其与协调器建立绑定及电压数据传递的完整程序流程如图5 所示。

电源

图5 建立绑定及电压数据传递流程

4 上位机的软件设计

4.1 界面总体设计

本系统的上位机软件采用 NI 公司推出的面向测控领域的LabWindows/CVI 软件作为开发平台。

它实现的主要功能有:通过串口接收ZigBee 无线网络传来的被监控电源的电压数据,将该数据分别以文本及波形图的方式实时显示出来;设置电压警戒值及控制方式等,实现电源电压无线监控系统的自动或手动控制;通过连接后台数据库,将电压及报警信息储存在数据库中,方便在上位机界面上对报警记录的查询和日后对监控数据信息的管理等[8]。

界面的总体设计如图6 所示。

电源

图6 上位机界面总体效果

4.2 界面数据库功能的设计

本系统为上位机软件加入数据库功能。这里采用微软的Access 数据库作为后台数据库,对监测数据进行记录和管理。LabWindows/CVI 提供了数据库的工具包LabWindows/CVI SQL Toolkit.工具包里包含了一个用来完成一般数据库任务的高级函数集。

5 系统运行测试

将各个模块连接好,分别间隔10 m 放置好后,首先打开电源设备,随后终端节点开始采集电源电压数据,并每隔1 s 将数据经ZigBee 网络发给上位机软件。当电压低于10 V 时,界面显示如图7 所示。

此时监测数据已实时地存入后台数据库中,当需要查询以往保存过的报警记录时,点击界面上的“数据库记录查询”标签,在下方输入想查询数据的日期,点击确定后,查询结果即会以表格形式显示出来。

电源

图7 电压安全状态时界面显示

6 结语

文中给出了一种针对电源监控系统的ZigBee 无线传感器网络的软硬件设计方案,解决了有线网络存在的布线、维护和扩展性等众多问题。系统把以CC2430 芯片为核心的ZigBee 无线模块作为节点,具有协议简单、成本低、功耗小、组网容易等优点。

经试验证明,系统可以很好的完成电源数据的采集、传输、处理和记录任务,并完成对电源的断电保护工作,具有很高的应用价值。

 

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

全部0条评论

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

×
20
完善资料,
赚取积分