0 引言
ZigBee数传技术是一种应用于短距离、低传输数据速率下的新一代无线通信技术。它具有功耗低、数据传输可靠、网络容量大,兼容性、安全性强,实现成本低等特点,而被广泛应用于监控领域。通用分组无线业务(GPRS)是一种基于GSM系统的无线分组交换技术,具有充分利用已有网络、资源利用率高、始终在线、传输速率高、资费合理等特点。
GPRS通信模块可应用于远程数据监测系统、远程控制系统、无线定位系统等。近年来,随着无线传感器网络技术的迅猛发展以及人们对环境保护和环境监督提出的更高要求,越来越多的企事业单位研究环境监测系统的无线传感器网络技术。
本文采用无线传感器网络技术,使用铅尘检测装置检测空气中的铅含量,借助于ZigBee无线模块无线通信技术,传输和收集局部区域多点铅含量数据,利用移动通信网络GPRS,将局部区域的检测数据实时传输至监测中心,构建了城市空气铅尘含量的无线实时监测系统。
1 系统概述
基于ZigBee与GPRS的无线铅尘监测系统是通过高精度的铅尘传感器,采集空气中的有害物质铅,自动分析其含量;利用高速存储器将这些数据存储起来,再利用ZigBee无线模块通信技术将采集的数据传到一个集中控制点;通过数据汇总分析,形成高质量的监测数据,结合一定的有害物质指标控制数据自动报警;使系统在无人值守的条件下实时监控,逐步替代人工取样的检测方式。
2 系统分析
基于ZigBee与GPRS的无线铅尘监测系统实现了区域铅尘含量ZigBee数据采集、数据传输、监控中心数据管理与分析等功能,改进了Pro部分协议,增强了通信的稳定性,延长了ZigBee无线模块的在网时间。该系统结构见图1。
图1 基于ZigBee的铅尘无线监测系统总体结构图
其中区域ZigBee数据采集模块负责小范围区域的铅含量检测、数据汇总,而ZigBee数传模块模块将区域数据传到监控中心,同时也负责监控中心向区域传送数据。监控中心接收所有区域数据采集模块发送的数据,并能向它们发送一定的控制指令,同时还向用户提供一定的铅尘信息;它能够在无人值守情况下可靠运行,在污染严重的情况下告警。
2.1 区域数据采集模块
区域ZigBee数据采集模块主要实现检测有害物质分布较多的子区域有害物质含量的功能。本系统用于整个城市的铅尘检测,铅尘污染通常分布在城市的部分区域(例如大型冶炼厂附近)。根据污染企业分布,将城市划分为若干个污染区域,在每一个区域内设置若干个ZigBee数据采集模块;每个模块检测本区域的铅尘含量,并收集、存储相关数据。
区域数据采集模块包括大量的铅尘传感器以及ZigBee无线模块,它的稳定运行对系统来说是至关重要的,其结构如图2所示。
图2 区域采集模块结构图
图2中网状纹路的节点是由ZigBee无线模块和铅尘传感器构成的;铅尘传感器负责检测节点附近区域的铅尘,形成一定的数据量,保证稳定、不失真地传输数据;而ZigBee无线模块则负责将铅尘传感器采集的数据传送到其他地方。通过在厂区以及厂区周边布设若干个这样的节点,能够监测厂区及其附近的环境。因铅尘传感器的检测范围非常有限,为了提高检测精度,通常在小范围内布设多个铅尘传感器。
ZigBee数传模块的最远通信距离只有70 m,为了延长ZigBee数传模块通信距离,在采集节点的边缘区域再布设一个只负责传送数据而不负责采集数据的ZigBee数传模块。对某个小范围采集区域而言,该节点通常只设置一个起到数据路由作用的路由节点,图2中的空心节点就是路由节点。为了延长ZigBee传送距离,可以再布设更多的路由节点,不断增强它的传送能力,图2中虚线连接的节点便是这样的节点,通过布设这些节点,基本上满足了厂区及其周边环境铅尘的检测需求。图2中虚线连接的节点不仅起到延长传输距离的作用,而且保证了信号传输的可靠性。这里采用网状结构,将路由节点两两连接,任意两个路由节点之间都存在通路,只要采集区域中的路由节点能够接入路由网络,那么,它必能通过路由网络将数据传到目的地。只要有少数几个路由节点正常工作,路由网络便可保证采集数据的正常传输。另外,采用网状结构也给数据传输提供了若干条通道,避免出现单路传输拥塞、数据丢失等现象,也提高了通信线路的使用率和分时复用率,在一定程度上提高了通信效率和检测频率。
节点数据经过采集节点采集、路由节点传输,汇集到区域数据采集模块的核心位置即协调节点,图2中的黑色实心节点为协调节点。协调节点汇集了区域各采集节点的所有数据,经简单处理后,发至监控中心。协调节点数据处理能力是有限的,只对数据进行一定的裁剪、装帧发送。协调节点直接与外部网络连接,其他节点只在本区域模块中使用,和外部没有联系,因此,协调节点是与其他模块连接的关键。它协调其他节点,为其他节点提供安全管理、网络建立等服务。
2.2数据传输模块
ZigBee数传模块仅适于检测厂区及其周边环境的铅尘。为了满足远距离通信需求,需要加入数据传输模块。数据传输模块由GPRS模块以及GPRS网络构成。GPRS网络是中国移动公司提供的无线通信网络,本系统仅使用了它的网络传输功能。只有通过GPRS网络,区域采集数据才能高速、安全地传到监控中心。如果没有该网络,GPRS无线模块将无法工作。
GPRS模块是该系统的关键部件,区域数据在协调节点汇总后,通过GPRS模块转发至监控中心。GPRS模块转发的是某个区域的所有检测数据,这些数据只是单个区域数据的汇总,如果将这样的数据直接发至监控中心,则监控中心无法区分数据来自哪个区域模块。为了区分不同区域的数据,在发往监控中心之前,对数据进行汇总、装帧处理。
在数据帧中添加帧头、帧尾、帧长和区域标识,以便区分数据来自哪个区域。考虑数据传输的可靠性,还可在数据帧中加入帧序、时间戳等,以便在数据传输出现延迟时重传数据。
GPRS无线模块可以采用短消息方式和数据链路方式传输数据。短消息方式又分为传统的短信和承载在GPRS网络之上的彩信业务两种方法,为了保证实时传输数据,本文采用彩信传输方法。单次采集的数据可以一次发送完毕,这样既可消除因多次发送数据出现的误码现象,降低数据重传的概率,也便于监控中心对区域一次数据的处理。
2.3监控中心模块
监控中心模块是系统的集中控制中心,它包括数据服务器以及由路由器、集线器构建的功能子网,它的功能结构如图3所示。
图3 监控中心结构图
监控中心模块主要负责收集各个区域的数据,并分析、处理收集的数据,同时,也能设置通信模块参数、区域ZigBee无线模块及铅尘传感器的参数。数据采集器负责收集各区域监测数据,并将收集的数据存储到SQL SERVER数据库中。它与GPRS模块直接相连,数据采集频率较高,为了保证数据采集的实时性,它只具有数据采集及存储功能。
就数据采集而言,数据采集程序需要专门设置一个线程,以单独实现采集功能;采集频率要控制在秒级以下,防止因数据采集频率过低而丢失数据。对于采集器程序来说,除了采集线程、存储线程外,不要开辟过多的线程,以免影响采集线程。
另外,在系统的起初设计阶段,监控中心只需要一个GPRS模块,所有的区域数据通过这个GPRS模块传输数据;这将造成数据采集的负担,容易引起数据丢失。为了消除这种现象,可以在监控中心增加多个GPRS模块,将GPRS模块划分为若干个子模块,实际上增加的GPRS模块只是逻辑上的模块,监控中心的一个GPRS模块对应一个逻辑模块。这样可以减轻单个GPRS模块的压力,提高数据采集效率。
该部分设计可由图4说明。监控中心数据采集程序控制m个GPRS无线通信模块,这m个模块负责传输采集点区域模块采集的数据。每一个区域模块包含若干个采集区域,例如,区域模块1包含区域A、B、C,模块2包含区域D、E、F;与之对应的是监控中心模块1负责与区域模块1通信,即区域A、B、C的数据发到模块1。这样划分,监测的26个区域分别由监控中心的m个模块负责,分区域传输数据,提高了传输效率。但要注意,划分监测区域后,发送数据时,数据帧格式需要附加逻辑模块标识,以保证各模块数据之间的协调性。在采集监测区域数据后,数据采集器可采用原始数据存储方式存储这些数据。
图4 通信模块绮构图
另外,由于监控中心要向监控区域下发控制指令,而传输下发指令仍然要使用GPRS模块,需要该程序具有下发指令功能。可将控制指令分发在数据库中,附加相应的标识,让采集程序判断是否需要下发指令数据,如果需要下发则自动下发。数据采集器主要负责检测数据的采集、控制指令的自动下发,而数据分析控制器主要负责采集数据的分析以及控制指令的生成。数据分析主要是实时显示区域数据,以便直观地看到污染数据,当实时数据超过指标控制阈值时,立即告警。另外,它还可汇总实时数据,绘出污染的阶段曲线。数据采集器、数据分析控制器的稳定运行有赖于数据服务器。数据服务器主要存放系统使用的数据库。该数据库主要包含实时数据、统计数据以及控制指令。另外,也需要重视数据库的日常管理,特别是告警的使用。
为了能够远程地使用该系统,监控中心还设置了其他计算机及网络互联设备,所有接入监控中心服务器的计算机都可以浏览监控信息,并发送一定的控制指令,但对于数据浏览以及控制指令下发需要严格控制,需要设计用户权限,以便合理控制。
3 系统实现
本系统主要分硬件、软件两部分。硬件部分采用铅尘传感器及ZigBee无线模块,主要完成接口电路设计、ZigBee协议修改任务和实现通信模块串口控制、铅尘数据监测等功能;软件部分实现区域、城市数据采集及分拣、数据分析及显示等功能。铅尘数据监测及节电控制选用韩国SYHITECH的DSM501粉尘传感器。该款传感器采用粒子计数原理,输出PWM脉宽调制信号,可灵敏地检测直径1um以上的粒子,如香烟、灰尘、霉菌、孢子等。
铅尘数据监测依赖于被检信号,本系统使用传感器提供的PWM信号,通过检测PWM信号获得铅尘含量数据。
通过检测占空比即检测正负脉冲时间,实现PWM信号检测功能。考虑到节电效果,需要在指定时间开启/关闭传感器,在开启传感器时间段内测量占空比。占空比测量过程见图5,等待正跳变到来时开始记录时间,直到负跳变到来时停止记录正脉冲时间;等下一个正跳变到来时停止记录单周期时间。用正脉冲时间除以单周期时间即得占空比。
图5 铅尘监测流程图
一般一个周期为30 S,为了增强测量的准确性,测量多个周期的占空比。将检测数据装帧并发至服务器端的协调器,数据帧格式及说明见表1。
表1 数据帧格式及数据说明
系统通过配置ZigBee协议,实现硬件节电控制。ZigBee协议中主要设置预编译选项POWER_SAVING以及将f8wConfig.cfg中的RFD_RCVC_ALWAYS_ON设置为FALSE。另外,需要设置预编译NV_RESTORE,让终端能够记录网络状态,防止断网再次重新搜索。系统通过ZigBee的IO口继电器实现传感器的通断电功能。
3.1 区域数据采集及分拣
通过与串口连接的多个协调器采集区域数据,传感器终端通过路由或直接将数据通过ZigBee协议传至协调器,协调器通过串口将数据传至计算机。
区域数据采集模块首先为每个串口开辟线程,轮询访问串口,读缓冲;如果有数据则按照字节接收数据,按照上报数据帧格式处理数据。解析格式正确的数据帧,并存至数据库中。详细流程如图6所示。
图6 区域数据采集及分拣流程图
3.2 区域数据分析及显示
该部分实现了实时显示监测数据及告警功能,也能查询历史数据的图形界面,可以灵活配置相关图形。实时监测界面如图7所示。
图7 区域数据分析及显不
3.3 区域数据上报及城市数据接收与分拣
该部分通信利用GPRS网络,相应成本较高,只选择上报告警数据。将多个告警数据依次装帧,在不突破短信限制的前提下,尽量装入同一帧,以减少通信成本。主要技术有手机初始化配置、短信接收提醒、短信接收、短信发送等。手机初始化设置包括移动信号检测、短信模式设置、存储位置设置、短信中心号码设置、新短信体型模式设置等。数据接收部分需要开辟线程,接收新短信提醒。如有新短信到达,开始读短信,并解析短信数据帧,将数据正确入库
。
图8 GPRS接收端界面
数据上报部分同样需要开辟线程,定时判断是否有新的告警数据。如有,将告警数据装帧,并通过短信发至服务端。相关程序截图如图8所示。城市数据分析及显示与区域数据分析及显示部分相似,在此不再赘述。
4 结束语
本文利用传感器技术与ZigBee无线模块技术,研究了无线监测系统。采用ZigBee数传模块和网状拓扑布设传感器节点,实现了某高污染企业厂区及其周边环境的ZigBee数传采集监测功能;利用GPRS技术,综合无线监测了多个企业厂区及其周边环境,实现城区环境污染的无线监测功能;采用实时远程监控,提高了工作效率,节省了人力资源;采用无线方式,增强了数据传输的可靠性;采用ZigBee无线模块通信方式,扩大了监控范围,降低了能耗,节约了能源。
本系统可实现无线远程监测高污染企业及其周边环境的功能,为环保部门治理环境提供了技术支持。使用结果表明,系统运行稳定、操作简便,提高了铅尘监测工作效率,具有重要的推广应用价值。