基于ZigBee和4G的空气质量远程监测系统设计
2019-03-06李锦龙李晓根于运渌邓小宝
李锦龙,李晓根,于运渌,邓小宝
(北方工业大学 现场总线技术及自动化北京市重点实验室,北京100144)
无线传感器网络由分布在工作区域内的大量传感器监控节点组成,通过无线通信方式形成自组织网络系统[1]。 ZigBee 技术[2]具有低功耗、高度扩充性、自组织网络功能、网络自愈功能[3],可嵌入各种设备中;无线传感器网络便于扩展,无需布线,非常适合应用于环境中的多点监测[4]。 现阶段远程监测系统在多个领域有着较广泛的应用,科研方面对此也有较高要求。
目前,高等院校相关专业开设的实验多为单一性实验,只针对于某一方面进行实验设计,造成学生缺乏系统综合试验的思路和能力。 在此,综合运用嵌入式、无线传感器网络和4G 网络,设计了一种可用于教学实验的空气质量远程监测系统。 该系统以STM32 芯片为MCU(microcontroller unit),建立了基于ZigBee 技术的Mesh 网[5],实现了各监测点的空气质量数据采集[6],由网络协调器通过4G 传输方式将数据统一发送到云平台,空气质量远程监测软件通过Internet 读取云平台的数据。 通过该实验系统,学生可对无线传感网络加深理解,同时可提高学生的综合试验及创新能力。
1 系统整体设计
所设计的空气质量远程监测系统由空气质量探测器、网络协调器[7]和空气质量远程监测软件等三部分组成。 空气质量探测器负责采集现场的PM2.5 和PM10 数据;网络协调器部分由ZigBee 协调器和4G 通讯模块组成, 负责将位于各监测点的空气质量探测器采集到的数据通过4G 通讯方式发送至云平台;空气质量远程监测软件通过Internet 访问云平台进行数据的读取,完成数据的解析,将处理后的数据显示在监测界面上,同时存储在SQL Server 数据库中, 并显示PM2.5 及PM10 数据曲线及报警数据曲线[8]。 系统的整体结构如图1 所示。
图1 系统整体结构Fig.1 System overall structure
2 系统硬件设计
2.1 空气质量探测器
MCU 采用STM32F103[9],支持多种调试模式,丰富的资源满足空气质量探测器的需要。 显示部分选用尺寸小、分辨率高的龙丘24.4 mm(0.96 英寸)OLED 显示屏。 ZigBee 通信模块使用Digi 公司的XBee 和XBee PRO 模块。该模块按照固件类型分为协调器、路由器和终端,通过对模块烧写不同的固件可以实现不同的功能。 其中,协调器负责组建无线Mesh 网, 路由器和终端上电后自动连接到该网络。XBee 模块可以自组网,方便扩容;XBee PRO 模块的使用方法与XBee 模块相同, 但传输距离可达1.5 km。 ZigBee 通信模块的原理如图2 所示。
图2 ZigBee 通信模块原理Fig.2 Schematic of ZigBee communication module
PM2.5 和PM10 传感器使用SDS011,能够测得空气中0.3~10 μg 大小的悬浮颗粒物浓度。 该传感器采用激光散射原理,当激光照射到通过检测位置的颗粒物时,会产生微弱的光散射,通过不同粒径的波形分类统计及换算公式可以得到不同粒径的实时颗粒物浓度数据。 空气质量探测器硬件结构如图3 所示。
图3 空气质量探测器硬件结构Fig.3 Air quality detector hardware structure
2.2 网络协调器硬件部分
ZigBee 协调器组建无线Mesh 网[10],在各个空气质量探测器所包含的ZigBee 路由器模块加入到该网络后,可查询各监测点采集到的空气质量数据[11],集中处理后通过RS232 串口传输给4G 通讯模块。4G 通讯模块采用映翰通公司的IR900 模块,该模块所提供的4G 无线网络和多种宽带服务, 以及较完善的互联网接入等功能满足网络协调器部分的需要。 4G 通讯模块从ZigBee 协调器获得空气质量数据,通过4G 通讯方式将该数据传输至云平台。
3 系统软件设计
3.1 空气质量探测器下位机软件
空气质量探测器下位机软件使用C 语言进行编程。 系统工作原理如下:
空气质量探测器周期性采集PM2.5 和PM10 数据,并显示在OLED 显示屏上。 判断PM2.5 和PM10的值是否超过报警值, 超过报警值则进行声光报警。空气质量探测器等待接收来自ZigBee 协调器的查询命令数据帧[12],对该数据帧进行校验无误后,向ZigBee 协调器发送监测到的PM2.5 和PM10 数据。空气质量探测器下位机软件主流程如图4 所示。
图4 空气质量探测器下位机软件主流程Fig.4 Air quality detector lower machine software main flow chart
3.2 空气质量远程监测软件
各监测点的空气质量数据通过4G 通讯模块上传至云平台, 空气质量远程监测软件通过Internet获得云平台上各监测点的PM2.5 和PM10 数据,并显示在监测界面的相应区域内,还可完成PM2.5 和PM10 报警值的设定。PM2.5 和PM10 数据达到报警值时显示报警时间及报警点。 空气质量远程监测软件功能结构如图5 所示。
图5 空气质量远程监测软件功能结构Fig.5 Functional structure diagram of air quality remote monitoring software
空气质量远程监测软件主要分为5 个模块:①管理员登录及通讯设置模块主要完成管理员注册、登录和通信设置;②数据查询及曲线显示模块主要负责启动PM2.5 和PM10 数据的查询, 以及历史曲线和报警曲线的显示;③空气质量数据显示模块主要完成将多个监测点的PM2.5 和PM10 数据显示在监测界面上[13];④报警值设定模块可显示和设置PM2.5 和PM10 数据的报警值; ⑤网络通讯模块主要显示当前建立网络连接的IP 地址以及端口号信息。 空气质量远程监测软件主界面如图6 所示。 数据为实验室实际采集数据,有些采集点位于无人走动的安静区域,有些位于正常工作区域,个别采集点附近人为“制造”了一定粉尘。
图6 空气质量远程监测软件主界面Fig.6 Main interface of air quality remote monitoring software
在SQL Server 数据库中建立对应的管理员信息数据以及每个监测点的历史数据和报警数据。利用管理员数据可以保证使用监测软件的安全性,只有通过管理员验证的人员才能使用该监测软件。各监测点采集到的实时数据统一通过4G 模块发送到云平台, 空气质量远程监测软件通过Internet 读取云平台上的数据并存储在数据库中,通过存储的数据实现历史曲线及报警曲线功能,便于更好地分析数据。 各监测点数据表包含PM2.5 报警值、PM2.5 实时值、PM10 报警值、PM10 实时值及监测时间数据,2 号监测点的部分空气质量数据如图7所示。
图7 监测点空气质量数据Fig.7 Monitoring point air quality data
4 结语
所开发的基于ZigBee 和4G 的空气质量监测系统使用ZigBee 技术组建无线Mesh 网, 将多个空气质量探测器采集到的PM2.5 和PM10 数据通过4G通讯的方式传输到云平台上,空气质量远程监测软件通过Internet 读取云平台上的数据。 该系统具有成本低、无需布线、监测灵活等优点;从底层数据采集、数据传输到监测软件显示分析,构成了整套远程监测实验系统;可使学生对远程监测系统进行综合实验, 既能帮助学生更好地学习和理解嵌入式、无线传感网络及上位机软件设计,又可增强学生的系统开发能力和综合创新能力。