项新建,王文丽,周跃琪,王辉明
(浙江科技学院 a.自动化与电气工程学院;b.机械与能源工程学院,杭州 310023)
居住环境的好坏与人们的健康息息相关。有数据表明,人每天80%的时间都在室内度过,一旦室内环境受到甲醛、粉尘等污染,人们的身体将在不自知的情况下受到不可预估的危害[1]。甲醛是室内空气污染最主要的有害物质,会导致慢性中毒、呼吸道器官癌变、新生儿畸形等[3]。根据GB50325-2010(2013年版)《民用建筑工程室内环境污染控制规范》要求,Ⅰ类民用建筑工程甲醛质量浓度每立方米不超过0.08 mg,Ⅱ类民用建筑工程每立方米不超过0.1 mg[4]。目前无线通信技术飞速发展,包括传感网技术、近距离通信蓝牙、远程通信GPRS技术及刚刚开始商用的5G通信技术,这些技术不断的更新迭代对物联网领域的发展起着重要的促进作用[4]。王龙等[6]提出了一种基于物联网的汽车甲醛监测系统,采用物联网技术实现对汽车内部甲醛浓度的远程监测。马荣华等[7]针对洁净厂房环境监测系统存在的扩展性差、智能化程度低等问题,设计了无线传感器网络,实现了对厂房内污染程度的监测。目前,大多数室内甲醛浓度检测主要使用标准甲醛测量仪[8],由工作人员携带至现场测量并读取甲醛浓度值,但该方法只能单次检测一个点的浓度值,持续检测时间较长,导致工作人员长时间暴露在较高浓度甲醛环境下,不利于操作者的身体健康。为了解决这些问题,将甲醛检测与浴室取暖、智能换气扇、凉霸等集成吊顶电器相结合,笔者提出一种面向集成吊顶电器的室内甲醛浓度监控系统。该系统采用ZigBee组网技术实现对多位置甲醛浓度的采集,通过WiFi技术上传数据,利用上位机监控端软件进行人机交互。该系统与具有甲醛排放功能的集成吊顶电器结合,不仅实现了对甲醛浓度的检测,而且可以控制集成吊顶电器对超标甲醛进行排放,最后通过大数据分析为用户提供参考。
面向集成吊顶电器的室内甲醛浓度监控系统主要由甲醛检测模块、ZigBee网络协调器、数据中转中心、无线路由器、上位机监控终端组成。甲醛检测模块主要负责采集室内甲醛浓度信息,以及通过对信息的分析来控制集成吊顶电器是否进行甲醛排放,并将采集结果和甲醛排放的开关状态通过ZigBee无线传感网络传送至ZigBee网络协调器进行数据整合,再发送至数据中转中心通过WiFi局域网进行上传;无线通信网络分为两个部分,ZigBee网络协调器负责构建ZigBee无线传感网络,无线路由器负责构建WiFi局域网,甲醛检测模块将甲醛浓度数据通过ZigBee网络进行传输,经过ZigBee网络协调器和数据中转中心的配合将数据通过WiFi网络传送至上位机监控终端;数据中转中心以STM32为核心,以ESP8266为WiFi连接模块,通过串口通信方式与ZigBee网络协调器进行数据交互,最后将协调器整合的数据再次进行处理后发送给监控终端,同时接收控制信息;上位机监控终端使用C++语言在Qt开发平台下设计室内甲醛浓度监控设备管理界面,通过WiFi与下位机网络进行数据交互。该界面不仅可以显示当前室内甲醛浓度测量值和各个集成吊顶电器甲醛排放的开关状态,还可以进行远程甲醛排放控制与历史数据存储。系统框架如图1所示。
图1 系统框架
系统硬件设计主要包括甲醛传感节点和系统无线通信的设计。
甲醛传感节点包括微控制器、甲醛传感器、电源模块和升压模块4部分。
2.1.1 微控制器
微控制器种类繁多,如STC12C5A60S2单片机兼容传统51单片机,开发速度快;ST公司的STM32系列单片机,支持多种通讯方式,具有外部设备接口,性价比高;MSP430是典型的超低功耗单片机,但一般用于小型仪器仪表。CC2530单片机的内核是增强型的51内核,片内资源丰富,内部拥有32 KB到256 KB的闪存块、8路ADC和21个I/O引脚,虽然某些性能不及STM32系列和MSP430,但比起使用其他单片机来建立ZigBee网络需要消耗额外的硬件资源,CC2530的外设本身可以为ZigBee网络的建立提供基础。综合实际检测需求和经济效益,本研究采用CC2530主控实现ZigBee网络的构建和甲醛传感器的驱动,既满足了检测要求又避免了资源浪费。
2.1.2 甲醛传感器
该模块使用ZE07-CH2O甲醛传感器实现对室内空气中甲醛浓度的检测。该传感器利用电化学原理对空气中甲醛浓度进行测量,同时内置温度传感器,对测量结果进行温度补偿,提供通用异步收发传输器(UART)、模拟电压信号(DAC)、脉冲宽度调制(PWM)波形等多种输出方式,其灵敏度高、功耗低、使用寿命长,且具有良好的选择性和稳定性。传感器具体工作参数见表1。
表1 ZE07-CH2O工作参数
2.1.3 电源模块
电源一般有纽扣电池、AA碳性电池、铅蓄电池、镍镉电池、锂电池等。纽扣电池和AA碳性电池一般用于小型超低功耗仪器仪表,不能充电使用;铅蓄电池一般体积较大且自放电现象严重,不适合长期放置;与镍镉电池比较,锂电池能量密度高、充电电流高、充电时间短及自放电现象更低。因此,从体积、充电倍率、自放电效应、电池密度等方面综合考虑,我们设计的电源模块采用单片锂电池作为甲醛测量节点电源,其标称电压、最高电压、最低电压分别为3.7、4.2、3.3 V,容量为1 000 mAh,完全满足供电需要。
2.1.4 升压模块
CC2530单片机电源电压范围为2~3.6 V,而甲醛传感器的工作电压为5 V,每个测量节点采用的锂电池标称电压为3.7 V。虽然CC2530单片机可以直接使用电源经3.3 V稳压芯片供电,但该电压无法满足甲醛传感器正常工作的电压,因此需采用升压模块对电源电压进行升压输出,以满足CC2530单片机和甲醛传感器不同的供电需求。使用PS7516芯片等搭建升压电路(图2),实现从3 V到5 V的升压。
图2 升压电路
WiFi技术是一种短距离无线传输技术,具有组网便捷、传输迅速等特点,广泛应用于井下通信、远程监控、智能家居等领域,且WiFi网络覆盖广,能够承载更大的通信数据与更复杂的加密通信手段[9]。ZigBee技术是一种基于小型无线网络而开发的通信协议标准,主要用于短距离、低功耗、传输速度不高的电子设备之间的数据传输,且具有灵活的网络拓扑结构特点[11]。
因此,我们设计的无线通信采用ZigBee与WiFi协同组网技术搭建信息传输网络。甲醛采集节点间的通信以ZigBee网络协调器为核心组建网络,其他甲醛测量节点都属于该ZigBee网络中的成员,网络成员的测量数据最终被发送至网络协调器。数据中转中心与上位机监测节点的通信在WiFi网络下进行,该网络由路由器构建,数据中转中心与上位机监控终端在该WiFi网络中都是其成员,它们之间通过SOCKET协议通信。
2.2.1 ZigBee网络协调器
ZigBee网络协调器是整个ZigBee网络的核心,ZigBee网络协调器构建的整个网络相当于局域网中路由器的功能。其他的ZigBee节点全部统一连接到ZigBee网络协调器构建的网络上,ZigBee网络协调器为该网络上的每个节点提供唯一的地址,为整个网络的通信提供链路与协议基础。
2.2.2 数据中转中心
图3 数据中转中心结构
数据中转中心包括STM32控制芯片和ESP8266 WiFi模块,其主要功能是将ZigBee网络与WiFi网络连接起来。由于ZigBee网络与Wifi网络的信号频率及通信协议不一样,为了让ZigBee网络中的数据能够传递到外部的WiFi网络,本系统设置了数据中转中心,采用STM32芯片为数据处理核心,负责与ZigBee网络协调器及ESP8266模块的通信。数据中转中心结构如图3所示。
图4 甲醛检测模块软件设计流程
系统软件设计主要包括甲醛检测模块程序设计和无线传感网络设计。
本模块的主要任务是,将甲醛传感器采集的室内甲醛浓度测量值和集成吊顶电器甲醛排放的开关状态,通过ZigBee网络发送至ZigBee网络协调器进行转发,并将当前甲醛浓度测量值与设置的甲醛浓度阈值进行比较,通过对比分析判断是否控制集成吊顶电器进行甲醛排放,同时接收ZigBee网络协调器转发过来的控制信息。本模块初始工作处于休眠模式,通过睡眠定时器比较事件将CC2530切换到主动模式,然后进行信息采集、数据处理、电器控制等。本模块软件设计流程如图4所示。
ZigBee网络中的数据通信主要有广播、单播、组播3种方式[13]。广播通信方式指网络中任一测量节点向网络中发送数据,网络中包括网络协调器的其他所有节点都可以收到该数据;单播通信方式指网络中两个采集节点之间进行单独的数据交互,但是发送方需要知道接收方的网络地址,否则无法发送;组播通信方式指网络的部分或所有节点进行分组后,网络中的任意节点都可以向已知组号的组内所有成员发送数据信息[14]。本系统使用单播与组播相结合的通信方式与协调器进行数据交互。
由主节点即网络协调器创建网络,其他子节点会请求连接网络,如果子节点连接到网络,主节点会分配网络地址给新加入的子节点,因此每个子节点都会有唯一的网络地址。在本系统中,主节点就是ZigBee网络的构建者,所有子节点都会把检测到的数据发送到主节点,而主节点会把各个子节点发送的数据进行整合与处理,以适应上位机的协议,系统采用事件驱动轮询模式,只要有事件发生就会调用相应的事件处理函数。
3.2.1 数据中转中心
图5 数据中转中心工作流程
当系统开始运行后,本系统的数据中转中心会驱动ESP8266连接局域网,并通过SOCKET协议连接到上位机监控端。之后数据中转中心开始不断监测下位机网络发送的数据,经过二次处理与整合,再经由ESP8266将数据发送到上位机监控端。数据中转中心在本系统起着桥梁的作用,将ZigBee网络与WiFi网络这两个协议不一致的的网络连接起来,实现两个网络的通信。数据中转中心工作流程见图5。
3.2.2 上位机监控终端软件设计
上位机监控终端使用Digia公司推出的Qt Creator5.8跨平台集成开发环境进行界面设计与网络编程,采用C/S模式与下位机进行数据传输,同时结合MySQL数据库实现对室内甲醛浓度测量数据的管理与存储。上位机监控终端与下位机都处于同一个局域网中,下位机通过IP地址连接到上位机监控终端,而上位机监控终端始终监听接收下位机的数据,并存储到MySQL。界面主要包含各节点甲醛浓度信息显示、集成吊顶电器甲醛排放开关状态及控制、曲线绘制等,其中甲醛浓度信息和集成吊顶电器甲醛排放开关状态是自动获取,室内甲醛质量浓度标准规定为小于等于0.8 mg/m3,所以阈值设置为0.8 mg/m3。上位机监控终端运行主界面如图6所示。
图6 监控终端主界面
本系统选择低、中、高3种不同质量浓度的甲醛气体样品作为测量对象进行性能测试。以1个测量节点为测试目标,将测量节点与标准甲醛测量仪分别置于具有这3种质量浓度的甲醛样品环境内,在2 min内读取记录3次测量节点的数据与标准甲醛测量仪的数据。将测量节点的数据与标准甲醛测量仪的数据取平均,则测量节点数据取平均后的值为测量值,标准甲醛测量仪数据取平均后的值为相对真值。在此基础上求出最大误差、绝对误差与相对误差。
根据式(1),将样品1~3质量浓度的节点测试平均值作为测量值P,将标准甲醛测试仪检测数据平均值作为相对真值Q。
(1)
式(1)中:pi、qi分别为某样品某质量浓度下节点和甲醛测试仪第i次测量值,1≤i≤5。则样品1~3甲醛质量浓度的绝对误差E与相对误差M分别为
各节点甲醛质量浓度和误差见表2,其中样品1~3分别为低、中、高质量浓度样品。
表2 各节点甲醛质量浓度和误差
图7 A节点甲醛质量浓度曲线
为了测试系统的实际运行效果,将系统节点分布在某小区刚装修完的住宅内,对本系统的功能进行检测。将系统的4个测量节点分别置于房间的4个角落,将系统接入测试房间的局域网,从早上7时开始的12 h内,每隔1 h从上位机监控终端读取一次节点的甲醛质量浓度数据,并绘制成曲线图(图7),从而验证本系统功能的稳定性与完备性。本文中仅列出A节点的甲醛质量浓度曲线,早上室内的甲醛质量浓度最低,随着时间的推移,甲醛的质量浓度不断升高,在下午2时左右达到质量浓度峰值,之后甲醛质量浓度又逐渐下降。
本研究针对室内甲醛检测位置单一、数据统一性差等问题,设计了一种集多点检测、数据存储、甲醛排放控制为一体的面向集成吊顶电器的室内甲醛同步监测系统。该系统采用ZigBee与WiFi协同组网的方式,实现甲醛传感器的节点网络化,并使用上位机软件对采集到的数据进行显示与存储。该系统通过与集成吊顶电器结合,实现对室内多节点的甲醛检排,并记录历史数据绘制甲醛浓度曲线图,为用户监测和控制室内甲醛排放提供参考,促进室内甲醛检测的无线化方向发展。