新闻中心

EEPW首页 > 设计应用 > 基于ZigBee的自来水监测网络系统设计与实现

基于ZigBee的自来水监测网络系统设计与实现

作者:时间:2016-10-10来源:网络收藏

摘要:基于ZigBee的自来水水质监测系统利用传感器采集数据,用ZigBee网络传输数据,通过无线网络和USB基站长距离传送到上位机。通过对自来水水质进行实时的监控,存储水质参数和数理统计,以及超阈值报警提示等功能。相比于传统的人工监测,能有效节省人工,且更能保证水质监测的实时性,有效性,连贯性。

本文引用地址:http://www.eepw.com.cn/article/201610/306133.htm

关键词;;;

随着我国经济的高速发展,水质的污染和破坏问题日趋严重,着眼于社会所需,我们研究了基于ZigBee的水质监测系统,为水质保驾护航。

水质污染问题刻不容缓,城市饮水主要是通过自来水,其中的安全隐患不容忽视,所以需要一种能随时监测水质变化的设备系统。论文探讨构建基于ZigBee技术的自来水监测网络物理结构,重点是ZigBee转wifi和转USB的协议转换。上位机监控功能中,实现了数据实时接收、显示以及历史数据查询,对超阈值数据,报警提示。

1 物联网ZigBee技术简介

ZigBee技术具有自组网,低功耗,延时小,多跳的特点,适用于长时间组网监测。在ZigBee网络中有3种设备,协调器(Co_ordinator) 为全功能节点(FFD),负责建立网络,一个ZigBee网络只能有一个协调器,相当于蜂群结构中的蜂后,当网路建立完成后,协调器的功能相当于普通路由器(Router)。路由器负责数据的路由跳转,能够将消息发给其他节点设备。终端节点(End device)负责数据的采集与发送。以上3种设备可以分为全功能节点(FFD)和半功能节点(RFD)。

每个节点具有两个地址:

1)IEEE MAC地址

这是一种64位的地址,这个地址由IEEE组织进行分配,用于唯一的标识设备,全球没有任何两个设备具有相同的MAC地址。在ZigBee网络中,有时也叫MAC地址为扩展地址。

2)16位短地址

16位短地址用于在本地网络中标识设备,和在网络中发送数据,所以如果是处于不同的网络中有可能具有相同的短地址。当一个节点加入网络的时候将由它的父节点给它分配短地址,协调器的短地址是0。

ZigBee网路的拓扑结构主要为星状(star),树状(Cluster_tree),网格(mesh),其中星状网络不支持ZigBee路由器。不同的网络拓扑结构适用用于不同的使用环境。

2 系统体系结构

基于ZigBee的水质监测系统可以对水质进行实时的监控,整个系统由下位机监测网和上位机软件组成,下位机监测网负责数据的采集,和数据在ZigBee网络上的传输。上位机软件负责对来自监测网数据的存储,数理统计,水质参数超标实时报警,和设备运行状况的检查。系统结构如图1所示。

a.jpg

3 的下位机

下位机部分由一个ZigBee转WiFi或一个ZigBee转USB基站,2个PH采集节点,一个温度采集节点组成。

所有节点内嵌ZigBee通讯模块,在节点的通讯模块中,烧写了ZigBee协议栈的移植版,所有节点上电即进行自组网,进行数据的采集和传输。通过AT 命令来指定协调器,路由器,和终端节点,以及节点的相关参数。当掉电时,能进行参数的保存。其下位采集器采用STM32,该款CPU采用的是ARM的 cortex-M3内核。其具有出色的实时性能、优越的功

效、高级的创新型的外设、最大的集成性。CPU工作频率最高达到72 MHz。AD采集精度为12位,充分保证了采集传感器的精度。

ZigBee通信具有通信稳定的优点。增加的无线功率放大器PA可以一定意义上克服ZigBee通信距离短的问题,使得节点通信距离可以达到几千米,最大限度的保证了通信的稳定可靠和通信距离。图2和图3分别描述了ZigBee节点接收和发送数据的流程图。

b.jpg

在下位机与PC机的衔接部分,笔记本可以用WiFi网关或ZigBee转USB基站来接收数据,对于台式机可以直接用ZigBee转USB基站来接收。

4 的上位机

上位机界面采用C#编程,开发工具为vs2012,数据库为SOL Server。

4.1 WIFI网关接收模式

当启用WIFI网关接受模式时,网络协议采用TCP,相比UDP稳定,用socket套接字来连接PC机与WIFI网关。

当上位机软件启动时,上位机首先创线thwatchport=new Thread(listening);用来监视,WiFi网关是否与PC机相连,若没有,则继续监听。当连接完成时,软件创建另一线程threcive=new Thread(autorecive),用于接收WiFi网关发来的数据,并随时将数据存入数据库中。

由于第一个线程不断循环查询,当WiFi网关断开,能保证WiFi网关重连时的成功,而不必重启软件。保证了系统的容错率和健壮性。

伪代码描叙如下:

c.jpg

d.jpg

运行结果图:

e.jpg

4.2 ZigBee转USB模式

对于台式PC机,用WiFi网关接收模式固然可行,对于ZigBee网关与上位机物理距离较短时,还有另一种接收模式——ZigBee转USB模模式。只要将USB一端插入台式机的USB口,当上位机软开启时便可以接收数据。

USB接受方式的编程实现,采用的是控件,直接采用事件触发的方式。

伪代码描叙如下:

f.jpg

g.jpg

h.jpg

运行结果图:

i.jpg

线程和事件触发方式,和定时器定时接收方式相比,能保证数据的随到随收,无数据包遗漏现象。

对于数据的处理,可以按时间查询,并将查询到的数据进行普通的数理统计,如计算平均数,超标次数,并且能将数据查询统计结果导出生成Excel文件,方便用户进一步分析调研。

此外,上位机软件具有良好的用户界面,与异常处理,方便用户操作与使用,接收界面使用动态GIF图片制作,如图2,第一个苹果表示等待连接,第二个苹果表示已连接成功,正在接收数据,当WIFI网关掉线时,第二个苹果停止动态显示,方便用户动态感觉数据接收正在进行,当数值超标时,或设备电压不足时,软件亦能及时弹出报警窗口。

5 结论

基于ZigBee的自来水监测网能有效对自来水水质进行实时监测,设计实现了系统的网络结构,完成了传感器数据采集、传输、查询显示以及报警等系统功能。通过网络传输传感器的数据采用两种方式:WiFi网关的socket方式和ZigBee转USB的方式。两种方式都能实现数据的实时传输的实时接收,基于线程的socket,使用了线程轮转循环的方式,能有效防止WiFi网关掉线,并提醒用户。此时接收线程 threcieve终止,监听线程thwatchport依旧循环,等待WiFi网关重新连接。

下一阶段工作的重点,围绕完善系统功能和扩展系统应用展开:

对于下位机网络,采集节点数目不够多,参数种类也不够丰富。在PANID,信道,和数据包一致的情况下,可以不断加入新的节点,增加下位机网络的功能。

对于数据传输,利用GPRS网,通过GPRS短信直接通知水质超标等情况,亦可以将ZigBee网络转为3G或4G网络,使数据传输的方式变得灵活多样。

在上位机功能部分,丰富数据查询统计方式,添加系统日志管理,改进异常情况的友好提示等。丰富客户端的操作平台,延伸至Web方式,以及基于移动终端的App应用。对

于已经采集的数据,可以进行数据挖掘,和大数据运算,研究当地经济,生活的状态。



评论


相关推荐

技术专区

关闭