基于ZigBee的室内空气质量感知系统的设计

2021-12-22 13:18张林静
计算机测量与控制 2021年12期
关键词:室内环境线性无线

叶 贵,张林静

(安徽警官职业学院 信息管理系,合肥 230031)

0 引言

随着物联网、大数据、人工智能技术的快速发展,诞生了各种应用产品应用在人们的日常生活中。现在社会中出现了很多关于智能家居的产品,其中包括了各种家电,常见的有智能电视、音响、空调、冰箱、电灯等,都会给我们带来很多的便利。根据调查显示,人们每天在室内的生活时间,大概占到一天总时间的90%以上。根据世界卫生组织报告,人类感染疾病与室内环境质量有密切相关。文献[1]研究,发现了关于室内环境的污染源预测,室内环境对人们身体健康影响极大,因此对室内环境质量的研究具有重要意义。该系统是一款智能硬件设备,采集数据、数据传输、数据的融合与分析,利用无线传感器网络节点的部署到室内,并通过传感器采集室内的环境物理信息[2-3],进而对数据进行相应的处理和分析,最后可以实时得出室内环境的动态变化情况,并且可以预测出一天中每个时间段的环境信息的变化情况,并将其分析结果实时反馈给用户,提醒用户当前的室内环境状况。很好地给用户掌握室内环境的各物理信息的指标,从而极大地提高了室内的环境质量[4-7],保证了人们的身体健康。

实时获取室内环境信息,并对得到的多元数据进行融合处理并通过多元线性回归算法分析和预测,将当前的室内环境空气质量实时显示给用户,从而大大降低了室内环境对人们造成的身体危害程度,保证了人们在室内有一个舒适健康的环境指标。因此,对该课题的研究具有重要的意义。

1 系统架构与原理

该系统的设计主要包括3部分:无线传感器节点、协调器和多元数据融合算法模块。该系统的设计系统架构如图1所示。该系统采用ZigBee无线通信技术用于系统的组网和通信基础,并利用各类传感器进行室内环境数据的采集,将各类数据经过无线传感器网络节点进行数据传输到协调器,最后传回到云端,在云端进行数据处理和多元数据的融合,将几种数据进行融合分析,最终得到对室内环境的评价指标。

图1 系统结构图

通过与蓝牙、wifi等相关的无线通信技术对比,选择ZigBee做为本系统的设计基础,因为其具有以下几种优点:

1)抗干扰力强:采用基于IEEE802.15.4的通信协议,ZigBee收发模块使用的是2.4G直序扩频技术,具有更好的抗干扰能力;

2)传输距离:传输距离相对于蓝牙和wifi具有较远点的距离;

3)低功耗:无线模块自动每隔一段时间,如果没有收到网关指令,就进入休眠状态;

4)组网灵活:ZigBee是自组网方式进行组网,可以是树状、网状、星状不同形式;

5)传输速度快:ZigBee传输数据主要是采用短帧传送方式,因此,传输数据速度快,实时性强;

6)鲁棒性高:ZigBee组网容易且灵活,如果某一个节点断电或损坏,整个网络可以自动恢复组网方式。

该系统主要分为无线传感器节点、协调器、数据融合3部分。

1)无线传感器终端节点:该无线传感器节点采用开源的ZigBee通信技术[8],并使用是德州仪器的Z-Stack半开源的协议栈[12-14],对其应用层进行相应的开发,我们知道ZigBee具有一些优点,其中包括传输距离远、低功耗、节点的组网灵活。其中传感器包括了PM2.5传感器、VOCs传感器及DHT11温湿度传感器。这些传感器都与终端相连,并由终端的CC2530芯片对其进行控制。PM2.5传感器采集室内的细微颗粒的浓度。

VOCs传感器是采集室内有机气体的浓度;温湿度采集室内温度和湿度情况。该CC2530芯片对和传感器的连接方式[9-11]如图2所示。

图2 节点硬件示意图

2)协调器:协调器是系统的无线通信网络模块的核心,主要是传输数据和组网的纽带,其组网采用了星型网络拓扑结构,有4个终端与一个协调器进行组网。并将获取到的数据通过协调器和串口线与电脑端的用户软件通信,而无线传感器节点的终端都是采用ZigBee无线通信技术进行通信。在这里,协调器启动必须首先启动,进而各个终端部分开始启动,只用这种方式,系统的组网才是成功的,不然会失败,这是由ZigBee通信协议所决定。

多元数据融合:将4类传感器采集的数据进行融合得到结果。本文考虑到系统的实时性和有效性采用多元线性回归算法对数据进行建模,并对数据进行预测和判别不同显著性因素的影响。

另一方面,将数据进行有效分析处理的用户软件界面应用。其中驱动应用软件,是对CC2530芯片与传感器的相关应用,其中包括对传感器的控制和数据采集的逻辑业务软件。还包括对Z-Stack协议栈的开发,主要是负责对数据的发送和接受相关业务应用的软件。

本系统主要是采集室内4个地方的环境,分别是客厅、卧室、厨房和卫生间,每个场地部署若干个无线传感器终端节点进行室内环境数据的采集。

2 系统硬件与软件算法设计

本章主要对系统的硬件和软件以及在多元数据融合3个方面进行详细地说明。首先,系统的硬件设计主要描述该系统采用的硬件类型,何如设计和工作;其次,软件设计是实现该工程的应用,包括通信协议栈的使用和传感器的程序设计;最后,多元数据融合算法本文从多元线性回归算法[15-19]详细介绍。

2.1 硬件模块设计

系统为了组网灵活和低功耗等特点,选择使用ZigBee无线通信技术作为该系统的通信基础平台,由于目前ZigBee应用在很多无线传感器网络的应用领域中,有着很好的稳定性和鲁棒性。该系统是采用德州仪器公司生产的CC2530的微控制器作为该系统的主芯片。同时,利用Z-Stack半开源协议栈,进行有效地开发相应的应用程序代码,并且可以熟悉掌握该通信技术的方式。根据CC2530芯片手册,对其进行开发和外围电路的设计。该芯片是8-bit微控制器采用的类型是CC2530F256,它是8051内核,具有flash存储为256 KB,RAM为8 KB的容量。

该无线传感器节点的硬件设计如图3所示,其中包括了主控制单元CC2530、时钟电路、电源电路、外围设备电路(提供传感器使用的IO端口)等。

图3 硬件设计示意图

室内环境的物理信息采集通过不同种类的传感器,每一种传感器都是连接到CC2530控制板的GPIO(general-purpose input/output)。通过主控芯片来控制各类传感器的工作、数据采集、传输。对于采集到的不同数据进行对应的编码格式,通过Z-stack协议进行传输。TJAG (joint test action group)接口模块是为了给主控芯片下载和调试程序使用。时钟电路模块是为了让单片机按照一定频率进行工作。电源电路则是为了让每一个模块提供电力,不同模块需要的电路是不一样的,有的需要3.3 V的电压供电,有的需要5 V电压供电。这些电压都是通过稳压芯片进行稳压后才为后续的每个模块使用。传感器模块这部门是按照不同类型的传感器进行与主控板的GPIO端口进行连接,以及根据具体需要提供不同的电源。

2.2 软件模块设计

利用ZigBee无线通信技术原理和传感器技术,对室内的环境信息进行采集,并将获取的数据进行有效的分析。软件设计主要是利用ZigBee通信技术的Z-stack通信协议栈完成的,在该协议栈中,开发出属于本系统的应用功能模块,就可以完成整个系统的功能。主要是对不同传感的的初始化和采集数据以及控制其采集编码方式等。软件的整个伪代码如下所示:

相关软件实现的伪代码

PROCEDUER BeginHW_INIT();Sensor_Init();While(true) doSample_APP();Z_stack_Func();AF_DataRequest();zb_SendDataRequest ();End while;End;

CC2530主控板单片机的通信应用类软件是采用IAR工具进行程序编写、编译、调试、烧录的。主要是在Z-stack通信协议栈进行的应用程序的开发,其中就包括各种传感器的初始化、数据采集的相关代码的实现,最终由协议栈完成数据的路由与发送到协调器,然后协调器连接到电脑端,通过串口进行传输采集到的数据。

此外,还有另外一部分软件是对数据处理、分析以及训练的代码,该部分的代码在后序进行详细介绍。

2.3 多元线性回归算法

对于n维特征的样本数据,使用多元线性回归,那么对应的模型可以用公式(1)的形式表示:

Hθ(x1,x2,…,xn)=θ0+θ1x1+θ2x2+…+θnxn

(1)

可以把公式(1)简写成下公式(2):

(2)

其中:x0=1。对于样本采集的数据可以用矩阵X表示维度为m×n,参数θ表示维度为n×1,则公式(1)可以采用Hθ(X)=X*θ代替。在使用该模型的时候,其损失函数一般采用均方误差作为损失函数,这样可以有效地求解出模型的最优解。

损失函数可以用公式(3)表示:

(3)

同理,可以将公式(3)表示为矩阵的形式,如公式(4)所示:

(4)

在计算最优解采用梯度下降法或者采用最小二乘法来求解多元线性回归的解,梯度下降法其优化函数如公式(5)表示:

θt+1=θt-αXT(θX-Y)

(5)

其中:α为学习步长也被称为学习率。最小二乘法优化函数如公式(6)表示:

θ=(XTX)-1(XT-Y)

(6)

3 实验结果与分析

3.1 实验平台部署和数据采集

通过4类不同的传感器对室内环境数据采集,分别采集温度、湿度、PM2.5、VOCs 共4种不同的室内空气环境的数据信息。实验地点分别在客厅、卧室、厨房和卫生间,各放置3个无线传感器终端节点,每一个终端节点都具备4种物理信息的采集、发送功能,经过一个月时间的采集收集,并对数据进行有效的分析处理。同时,采用多元线性回归算法对数据进行拟合,求出最优解,最终可以得出多元线性回归模型并预测得到室内环境的信息。

对于数据的采集如图4所示,分别是客厅、卧室、厨房、卫生间的平均值的分布,每20分钟采样记录一次当前的数据。图中显示的是计算的是每小时内采集的3次的平均值,再对室内的每个位置的3个终端节点采集的温度、湿度、PM2.5、VOCs的数值平均。

由图4可以观察到,其中厨房的VOCs的指标变化幅度比较大,对于卫生间的湿度变化且平均值较高,卧室的温度较稳平稳,客厅的各项指标都有所变化。这些指标也正说明了人们生活在室内的生活习惯。做饭时厨房的VOCs和PM2.5指标会明显增加,使用卫生间时其湿度变化就会较为明显。

图4 不同场所的各项指标的均值分布

3.2 实验平台部署和数据采集

本文通过设计一套无线传感器网络的系统,对室内的各个位置的室内物理信息的采集进行数据分析,通过多元线性回归算法对室内的环境变化进行模型的搭建和训练,得到的模型可以预测出室内各项指标的情况。

在数据分析过程中,系统主要是采用机器学习框架Scikit-learn包[20-22],并使用python语言实现代码。其中对于室内不同的位置进行了不同的多元线性回归的模型构建,最后将整个室内的数据进行多元线性回归算法的模型构建。

多元线性回归的模型构建过程,将不同时间段作为预测用Y表示,各项指标的在不同时间段内的平均值用X表示,这样就可以采用多元线性回归模型进行有效的构建,其中在一个月中的数据很多是噪声数据和冗余数据,因此在数据处理之前做一些数据预处理的过程采用归一化处理,这里采用Z-score标准化的方法,可以使得模型学习的收敛速度更快,并提高精度。在使用机器学习框架Scikit-learn包中,用到的主要工具包接口进行简单介绍如表1所示。

表1 Scikit-learn框架接口

由表1可以看到,在使用Scikit-learn工具包使用主要用到了两个API (application programming interface)。其中,用到的一个是train_test_split接口,这是将数据分割为训练集和测试集两个部分,这里的test_size参数是测试的所占的比例,这里设为0.1,则说明测试集数据占10%。另一个接口是LinearRegression线性回归,是为了后面数据进行模型的学习。linereg.fit()接口是用来模型训练的。linereg.predict()接口是用来模型测试。

无线传感器节点的部署在4个位置的数据进行多元线性回归拟合,采集得到的不同时间的各项指标的显著性权重和RMSE均方根误差,如表2所示。

表2 不同位置的各项指标通过多元线性回归得到的 显著性参数和拟合出的RMSE

根据采集到的数据进程数据处理、训练,得到对应的模型,用模型进行相应的测试,采用均方根误差作为模型的评价指标。

根据多元线性回归拟合得到的结果在表3中可以看到,各项均方根误差都是5%以下,同时也得到各项指标的显著度因子权重大小的值。

整个室内环境的变化可以将所有数据合并一起再进行多元线性回归的拟合得到如图5所示,每项指标所得到的分类决策平面。

图5 各项指标的分类决策面

实验最终得到的结果如图6所示,通过一个月时间的系统部署所采集的数据。将无线传感器节点部署在室内的4个地方进行采集和实验,对数据进行清洗、整理、处理、训练、最终得到的多元线性回归模型用来做预测,得到的预测值与真实值的拟合结果是比较接近,因此本系统的方法适用于室内环境指标的预测。

图6 拟合得到的预测值结果

通过得到的模型应用于该系统。将无线传感器节点部署在室内4个场所,并采集的空气环境的各项物理信息进行预测处理,得到的结果与实际采集到的数值进行对比,能够较好地对室内各项空气指标的预测。

4 结束语

该系统采用无传感器节点对室内空气环境的四类重要指标进行数据采集,并采用多元线性回归算法对数据进行分析和拟合。该系统是自组网,低功耗,同时具有较好的稳定性和鲁棒性,并且系统的组网方式多样,具有自组网能力,传输距离远、体积小、方便使用的优点。

该系统可以实时获取室内多种物理信息,并能够可视化地展现出来,能够智能化的提醒用户,某项环境信息不达标。通过多元线性回归算法拟合得到的RMSE最大为0.049 5,所有采用该方法能够很好地拟合出室内的各项因素的预测。

猜你喜欢
室内环境线性无线
浅析GB50325-2020与GB/T18883-2002关于室内环境污染物检测法的区别
点光源环境下室内环境灯光多参量控制仿真
《无线互联科技》征稿词(2021)
关于非齐次线性微分方程的一个证明
无线追踪3
水元素在室内环境设计中的应用与发展
非齐次线性微分方程的常数变易法
线性耳饰
无线追踪
无线充电器