基于ZigBee的远程环境监测人机交互系统设计

魏鑫+韦海成



摘 要: 针对传统的室内环境监测系统传输距离短、采集到的数据形式单一且需要进行人工处理的缺陷,设计并实现了一个基于ZigBee的远程环境监测人机交互系统。系统采用模块化的设计方案,整个系统由数据采集终端、ZigBee无线传感网和LabVIEW人机交互界面三部分组成。数据采集终端以STM32微控制器为主控芯片,连接各传感器采集环境数据。数据采集终端通过ZigBee无线传感网和USB转串口模块与上位机通信,上位机通过LabVIEW人机交互界面将数据采集终端测得的环境数据以仪表和折线图的形式显示出来。实验表明,系统稳定性和可扩展性较强、传输距离较远,且无需人工处理即可将每天测得的环境数据以折线图形式直观展现出来,具有一定的科研意义和实用价值。
关键词: ZigBee无线传感网; LabVIEW人机交互界面; 环境监测; STM32
中图分类号: TN915?34; TN98; X859 文献标识码: A 文章编号: 1004?373X(2017)18?0156?05
Design of ZigBee?based human?computer interactive system for remote
environment monitoring
WEI Xin, WEI Haicheng
(School of Electrical and Information Engineering, Beifang Univesity of Nationality, Yinchuan 750021, China)
Abstract: The traditional indoor environment monitoring system has some defects that its transmission distance is short, and the collected data is in a single form and needs to be processed manually. In order to resolve the defects, a ZigBee?based human?computer interactive system for remote environmental monitoring was designed and implemented. The modular design scheme is used in the system. The entire system consists of three parts: data acquisition terminal, ZigBee wireless sensor network and LabVIEW human?computer interactive interface. The data acquisition terminal takes STM32 microcontroller as the main chip to connect sensors and collect environmental data, and communicates with the host computer through ZigBee wireless sensor network module and serial module connecting with USB. The host computer displays the environment data acquired by the data collection terminal in the forms of instrument and broken line graph via LabVIEW human?computer interactive interface. The experiment results show that the system has high stability, perfect scalability and long transmission distance, and can display the measured?daily environmental data without manual processing in the form of line chart, which has certain scientific significance and practical value.
Keywords: ZigBee wireless sensor network; LabVIEW human?computer interactive interface; environmental monitoring; STM32
随着我国城市建设的不断发展,各种大型公共场所(电影院、大会堂、舞厅等)也越来越多。伴随着人们健康意识的提高,在各种大型公共场所参加活动的同时,人们越来越关心自己所处场所的环境质量是否合格[1]。目前市面上流通的室内环境监测系统大都利用WiFi进行数据传输[2],传输距离较短(0~50 m)且大都只是简单地将某时刻的环境数据以数字形式显示出来[3]。也有少量室内环境检测系统采用ZigBee无线传感网进行数据传输,但其上位机只是简单显示某时刻的环境数据[4],不能显示环境数据的变化情况。后续还需要对数据进行人工处理与分析,造成了劳动力资源和时间的浪费。
针对这一现状,设计并实现了一个基于ZigBee的远程环境监测人机交互系统。
1 系统总体设计
系统采用模块化的设计方案,整个系统由数据采集终端、ZigBee无线传感网和LabVIEW人机交互界面三部分组成。数据采集终端以STM32微控制器为主控芯片,连接各传感器采集环境数据,并在OLED显示屏上实时显示。数据采集终端通过ZigBee无线传感网和USB转串口模块与上位机通信,上位机通过LabVIEW人机交互界面将数据采集终端测得的环境数据仪表以折线图的形式显示出来。系统的总体结构框图如图1所示。

图1 系统的总体结构框图
2 系统的硬件设计
系统的硬件设计主要包括数据采集终端、ZigBee模块和USB转串口模块的硬件设计。
2.1 数据采集终端的硬件设计
数据采集终端硬件由主控模块、各传感器模块和显示模块组成。数据采集终端的硬件框图如图2所示。

图2 数据采集终端硬件框图
2.1.1 主控模块
选用意法半导体公司的基于ARM Cortex?M3内核的STM32微控制器STM32F103RBT6为数据采集终端的主控芯片。该芯片为LQFP64封装,内部有128 KB FLASH和20 KB SRAM,最高支持主频72 MHz,拥有2个SPI接口、2个USART接口、1个USB接口、2个I2C接口和7个定时器[5]。STM32微控制器与电源电路、晶振电路、复位电路、A/D转换电路、调试接口、串行通信接口等电路构成STM32最小系统。STM32最小系统即为数据采集终端的主控模块,主要完成与数据采集终端的各传感器模块和显示模块的通信以及对各功能模块的控制。主控模块首先根据DHT11数字温湿度传感器的单总线传输机制完成与温湿度传感器的数据通信,接着按照I2C总线的通信机制完成与BH1750FVI数字光照度传感器的数据通信,然后对于MQ?135有害气体传感器检测到的环境中有害气体浓度的值进行A/D量化处理,再对于灰尘传感器检测到的灰尘浓度进行A/D量化处理,最后将采集到的环境数据在OLED显示屏上实时显示。
2.1.2 各传感器模块
(1) 温湿度传感器模块。对环境中的温度和湿度的检测选用DHT11数字温湿度传感器模块。其精度为温度±2 ℃,湿度±5%RH,量程为湿度20%RH~90%RH,温度0~50 ℃。DHT11温湿度传感器模块采用单线制串行接口,具有响应快速、抗干扰能力强、性价比高等优点[6]。
(2) 光照度传感器模块。对环境中的光照强度的检测选用BH1750FVI光照度传感器模塊。该传感器是一种采用I2C总线接口的传感器,可以根据收集的光线强度数据来进行光照度的检测,支持较大范围(1~65 535 lx)的光照强度变化[7],系统将光照传感器设置为H分辨率模式,分辨率为1 lx。
(3) 有害气体传感器模块。对环境中有害气体的检测选用MQ?135有害气体传感器模块。该传感器对氨气、硫化物、苯系蒸汽的灵敏度高,对烟雾和其他有害气体的监测也较理想,是一款适合多种应用的低成本传感器[8]。当传感器所处环境中存在污染气体时,传感器的电导率随空气中污染气体浓度的增加而增大。
(4) 灰尘传感器模块。对环境中的灰尘浓度的检测采用夏普公司的GP2Y1010AU0F灰尘传感器模块。该传感器内部的红外二极管,可以输出一个跟灰尘浓度成线性关系的电压值,通过该电压值即可计算出空气中直径大于 0.8 μm 灰尘颗粒的含量[9]。
2.1.3 显示模块
选用采用7针的 SPI接口、分辨率为 128×64的 0.96 寸 OLED 显示屏作为数据采集终端的显示模块。OLED显示屏具有自发光、分辨率高、厚度薄、视角广、反应速度快等优异特性。
2.2 ZigBee模块的硬件设计
系统的ZigBee模块包括ZigBee终端和ZigBee协调器,两者的硬件设计相同,均选用TI公司的CC2530核心板。CC2530核心板主要包括CC2530单片机、天线、晶振及I/O扩展接口,CC2530核心板的主控芯片是CC2530单片机。CC2530单片机是一款完全兼容8051内核,同时支持IEEE 802.15.4协议的无线射频单片机[10]。天线部分采用巴伦匹配和外置高增益SMA天线,接收灵敏度高、发送距离远、空旷环境最大传输距离可达1 000 m。ZigBee终端与数据采集终端通过串口进行通信,其通信示意图如图3所示。
2.3 USB转串口模块的硬件设计
使用USB转串口模块将传统的串口设备变成了即插即用的USB设备,方便只有USB接口的计算机与串口设备进行通信,提高了系统的通用性。模块采用英国进口的原装USB转串口芯片FT232RL,集成度高,性能也较国产芯片更优良。USB转串口模块与ZigBee协调器以及上位机之间的通信示意图如图4所示。
3 系统的软件设计
系统的软件设计包括三部分:数据采集终端的软件设计、ZigBee无线传感网的软件设计、LabVIEW人机交互界面的软件设计。
3.1 数据采集终端的软件设计
数据采集终端以STM32F103RBT6为主控芯片,连接各传感器采集环境数据,利用STM32芯片的内部定时器,每隔2 s采集一次环境数据,并将采集到的数据在OLED显示屏上实时显示。在接收到上位机通过ZigBee无线传感网发来的上传采集数据指令后,开启串口中断,将环境数据以字符串形式,且按照温度、湿度、光照强度、有害气体浓度、灰尘浓度的顺序,通过串口发送到ZigBee终端。数据采集终端程序流程图如图5所示。
3.2 ZigBee无线传感网的软件设计
系统建立的ZigBee网络由一个ZigBee协调器和多个ZigBee终端组成。每个ZigBee终端对应一个数据采集终端,两者通过串口通信。ZigBee协调器以广播的形式向多个ZigBee终端发送指令,指令内容为某数据采集终端的编号。ZigBee终端收到ZigBee协调器发来的指令后以单播的形式向ZigBee协调器发送对应编号的数据采集终端采集到的环境数据,各ZigBee终端之间不进行通信。ZigBee无线传感网的组网示意图如图6所示,ZigBee无线传感网程序流程图如图7所示。
3.3 LabVIEW人机交互界面的软件设计
系统的上位机界面是采用NI(National Instruments)公司的LabVIEW集成開发环境设计的。LabVIEW是一个使用图形符号来编写程序的编程环境,使用图形编程语言能够极大地提高编程效率[11]。LabVIEW人机交互界面实现的主要功能为:串口通信、数据存储和数据显示。LabVIEW人机交互界面前面板如图8所示。
3.3.1 串口通信
上位机是通过串口与ZigBee协调器进行通信的,在LabVIEW中利用仪器编程标准I/O应用程序接口VISA实现串口通信[12],主要包括串口配置、串口发送和串口接收。本系统通过VISA配置串口函数,设置的串口波特率为9 600 b/s,数据比特为8 b,无奇偶校验位,1位停止位。串口发送利用的是VISA写入函数,串口接收利用的是VISA读取函数。LabVIEW人机交互界面利用函数VISA写入函数以字符串形式将数据采集终端编号通过串口发送给ZigBee协调器,通过VISA读取函数接收ZigBee协调器上传的环境数据。
3.3.2 数据存储
数据存储利用了LabVIEW的写入文本文件和创建路径两个函数。利用创建文件函数先创建一个空白文件,再利用写入文本文件函数将采集到数据按照序号、温度、湿度、光照强度、有害气体浓度、灰尘浓度、当前时间的顺序从左到右写入到该文本文件,方便后续对这些环境数据的查看。
3.3.3 数据显示
系统将采集到温度、湿度、光照强度、有害气体浓度、灰尘浓度通过LabVIEW里面的仪表选板和波形图选板展现出来。LabVIEW上位机每隔6 min向ZigBee协调器发送一次数据采集指令,每小时采集10次数据,每天采集240次数据。同时,LabVIEW前面板上还实时显示当前时间,这样公共场所某区域每天的环境数据就通过仪表和折线图直观地展示出来。
4 系统测试
对系统各部分的基本功能进行了测试,并对系统的实时性和稳定性进行了验证。
4.1 数据采集终端的功能测试
在北方民族大学智能建筑实验室对数据采集终端进行了测试。系统上电运行后,数据采集终端的主控芯片STM32F103RBT6能够实时接收到各传感器采集的相关环境数据,并将这些数据每隔2 s在OLED显示屏上显示1次。
4.2 ZigBee传感网通信距离测试
在北方民族大学校园空旷地带对ZigBee无线传感网的通信距离进行了测试,实测本系统采用的ZigBee终端和ZigBee协调器点对点通信距离可达342 m,与通常家庭使用的利用WiFi(传输距离为20~50 m)的路由器相比,传输距离有显著提高。
4.3 LabVIEW人机交互界面功能测试
在北方民族大学智能建筑实验室对LabVIEW人机交互界面进行了测试。LabVIEW上位机每隔6 min通过串口发送1次数据采集指令,1天发送240次指令,每发送1次指令就接收1次环境数据,并在LabVIEW上位机前面板上用仪表和折线图的形式直观地将环境数据显示出来,同时在生成的文本文档中可以查看已经采集的环境数据。
5 实验结果与分析
5.1 实验结果
图9~图11分别为从2016年7月25日0点0分—2016年7月26日0点0分采集到的室内温度和湿度数据变化折线图、光照强度数据变化折线图以及灰尘浓度和有害气体浓度数据变化折线图。
5.2 实验结果分析
从图9可看出,在2016年7月25日室内温度,在4点左右达到最低温度21 ℃。在16点左右达到最高温度34 ℃。温度从4点开始逐渐升高到16点达到最高,然后逐渐下降到4点达到最低。相对湿度在5点左右达到最高78%RH,在17点左右达到最低28%RH。湿度从5点开始逐渐降低到17点达到最低,然后逐渐升高到5点达到最高。从图10可以看出,在2016年7月25日室内光照强度从5点开始增大,在13点左右达到最大值273 lx,之后一直减小,直到18点左右开启日光灯,光照强度由75 lx突变到165 lx,随着时间的推迟,自然光的光照强度越来越低,室内的光照强度也越来越低,到21点左右室内光照强度稳定在95 lx,23点关闭实验室内日光灯,光照强度骤降为2 lx。
从图11可以看出,在2016年7月25日室内的有害气体浓度在6点最低为9 ppm,在13点最高为22 ppm。从0—1点升高在1点为17 ppm,从1—6点持续降低,从6—13点持续升高,之后开始下降到15点为15 ppm,从15—19点持续升高,在19点达到18 ppm,19点以后持续降低到第二天0点为15 ppm。灰尘浓度在6点最低为52 μg/m3,在14点最高为86 μg/m3。从1—6点持续下降,从6—14点大体维持上升趋势,从14—17点持续下降为65 μg/m3,在17—19点持续上升为76 μg/m3,从17—22点保持下降趋势为66 μg/m3,从22—1点持续上升为77 μg/m3。
6 结 语
本文系统将价格相对低廉的STM32微处理器、技术相对成熟的ZigBee无线传感网和数据处理能力强大的LabVIEW相结合。以STM32为主控芯片连接各传感器和OLED显示屏设计了数据采集终端,进行环境数据的实时采集与显示,采用ZigBee无线传感网传输环境数据,利用LabVIEW强大的图形显示和数据处理功能实现环境数据的仪表和波形图显示。实验表明,该系统的数据采集终端采集数据较准确,传输距离较远,测得环境数据无需人工处理直接转化为仪表和折线图显示,满足大型公共场所环境信息监测的需求。同时,系统所有硬件均采用模块化设计,可以根据不同场合需求增加或更换不同的传感器模块,具有较强的可扩展性。系统还具有组网快、稳定性高等优点,有一定的科研意义和应用价值。
参考文献
[1] 张晓芳.基于室内环境检测的探讨[J].自然科学,2016(8):113.
[2] 刘红义,赵方,李朝晖,等.一种基于WiFi传感器网络的室内外环境远程监测系统设计与实现[J]计算机研究与发展,2010,47(z2):361?365.
[3] 韦海成,王淼军,魏鑫,等.基于STM32的室内空气质量监测自适应调节系统[J].现代电子技术,2016,39(8):130?134.
[4]. 朱恒军,张玉龙,靳展,等.基于ZigBee的室内空气环境监控系统设计[J].电子技术应用,2015(2):86?88.
[5] 程小辉,康燕萍.基于STM32的RFID手持式阅读器的研究与设计[J].电子技术应用,2013(8):130?133.
[6] 倪天龙.单总线传感器DHT11在温湿度测控中的应用[J].单片机与嵌入式系统应用,2010(6):60?62.
[7] 云中华,白天蕊.基于BH1750FVI的室内光照强度测量仪[J].单片机与嵌入式系统应用,2012(6):27?29.
[8] 胡晓芳.基于AVR单片机的室内环境检测系统[J].自动化技术与应用,2014(7):117?119.
[9] WANG Y, LI J, JING H, et al. Laboratory evaluation and calibration of three low?cost particle sensors for particulate matter measurement [J]. Aerosol science & technology, 2015, 49(11): 1063?1077.
[10] 朱琎,杨占勇.基于CC2530的无线振动监测传感器节点设计[J].仪表技术与传感器,2012(8):56?58.
[11] 王晓兰,刘徽.基于LabVIEW的风力机模拟装置上位机监控系统设计[J].电气自动化,2012(2):28?30.
[12] 郭洁,王召巴.基于LabVIEW的串行通信接口设计与实现[J].机械工程与自动化,2008(5):57?59.