基于单片机的温湿度控制系统设计

2021-06-22 03:13任卫红史君诚
机械与电子 2021年6期
关键词:玻尔兹曼隐层温湿度

任卫红,史君诚

(1.新疆铁道职业技术学院,新疆 乌鲁木齐 830011;2.机科发展科技股份有限公司,北京 100044)

0 引言

随着自动化技术不断发展,温湿度控制系统日趋完善。一般情况下,温湿度控制系统往往由若干个传感器和数模转换器组成。与人工测量和调整方法相比,先进的温湿度控制系统可快速完成温湿度检测而且控制精度较高[1-2]。温控系统可在很大程度上降低劳动强度,提高相关行业的智能化水平。但是在实际操作过程中,一些特殊工况会导致系统可靠性降低、稳定性变差进而影响检测精度,如仪器平稳性差、灵敏度不高、灰尘和振动等。大多数温湿度系统采用热敏电阻和湿敏电容,这种模拟式温湿度传感器均需要信号调理电路,同时校验和标定过程十分复杂,因此测量精度很难保证[3-5]。除此之外,模拟式温湿度传感器还要解决线性度、重复性和互换性等问题。为解决此问题,可采用集成式温湿度传感器和单片机设计一种温湿度控制系统。温湿度信号通过总线传送到单片机并进行处理,单片机会根据处理结果得到相关控制信号,然后发送到执行模块实现相应控制;同时会将温湿度检测数值发送到LCD设备并显示;如果涉及到复杂算法,可将初步处理结果传送到上位机,由上位机进行处理[6-8]。

结合温湿度传感器和单片机设计一种温湿度控制系统,结合智能控制算法实现温湿度高精度控制,通过实验验证所述系统的可行性和有效性。

1 硬件系统设计

温湿度控制系统总体结构如图1所示。总体来说,该系统设计主要包括硬件系统设计和软件系统设计2部分。由图1可知,温湿度控制系统由DHT11传感器模块、液晶显示模块、驱动和执行模块、单片机主控模块、无线通信模块和上位机等组成。

图1 温湿度控制系统总体结构

温湿度传感器可实现温度、湿度的实时采集,并将其发送到主控单片机模块。选用的温湿度传感器型号为DHT11,它是一种数字型温湿度传感器,其应用专用的数字模块采集技术和温湿度传感技术,可确保产品具有比较高的可靠性和稳定性。DHT11传感器包含1个NTC测温元件和电阻式感湿元件,可灵活方便地与单片机连接。DHT11采用单排引脚封装,具有稳定性好、误差小、响应快和抗干扰能力强等优势。

主控模块选用8位ATmega16单片机,其各项性能指标比较理想。整体来说,该芯片的指令集比较丰富,功耗比较低,数据吞吐率高。全静态工作方式可确保数据的完整性。因此,该芯片能够在比较复杂的环境中稳定运行。

考虑到需要显示的内容并不是很多,系统的液晶显示模块采用低功耗LCD1602液晶显示屏即可。

无线通信模块则基于无线收发芯片CC2500PA进行设计。CC2500PA功能强大、通信距离远、稳定性高,在工业控制领域的应用十分广泛。

驱动模块可实现执行模块按照信号要求的相关操作。执行模块包括加湿装置、除湿(通风)装置、加热装置和降温装置,可以实现温度和湿度的调节[9-13]。系统主电路如图2所示。

图2 系统主电路

2 温湿度控制器

2.1 算法设计

可选用智能控制算法实现温湿度控制。众所周知,在实际运行过程中,需要采集大量温湿度数据并及时处理,以判断和预测温湿度变化趋势。参考深度学习原理,采用深度学习网络来实现温湿度原始数据处理。目前,使用比较广泛的深度学习网络主要包括多个受限玻尔兹曼机(RBM)和单个BP神经网络。

受限玻尔兹曼机是深度学习网络的基本组件,包含2层神经元,即:显层,可作为输入用于训练数据;隐层,可用于特征提取。

假设受限玻尔兹曼机网络结构的显层节点数目为m;隐层节点数目为n,具体如图3所示。定义显层偏置向量为r=(r1,r2,…,rm)T,隐层偏置向量为s=(s1,s2,…,sn)T。

图3 受限玻尔兹曼机网络结构

受限玻尔兹曼机是基于能量的模型(EBM),需要为其定义一个能量函数,并利用能量函数引入一系列相关的概率分布函数。对于给定某一状态(r,s),可定义能量函数为

(1)

ri为第i个显层神经元的偏移量;sj为第j个隐层神经元的偏移量;u为显层状态向量;v为隐层状态向量;wij为显层和隐层节点的权重系数。

定义隐层神经元vj的激活概率为P(vj|u),其计算公式为

(2)

同理,可定义显层神经元ui的激活概率为P(ui|v),其计算公式为

(3)

如上所述,深度学习网络往往包含多个受限玻尔兹曼机,所用深度学习网络包括2层受限玻尔兹曼机和1层BP神经网络,结构如图4所示。

图4 深度学习网络结构

由图4可知,上一层受限玻尔兹曼机通过学习得到特征数值并输出,该输出可作为下一层输入,这样每层就可以很好地获取上一层特征。顶层BP神经网络以最后一个受限玻尔兹曼机输出作为输入,并对输入特征进行分类、预测。

受限玻尔兹曼机的层数和各层节点数对模型预测性能的影响比较大。大量实验表明,隐层节点过少会导致预测效果偏差;隐层节点过多会导致系统泛化能力降低,出现“过拟合”现象。

2.2 软件设计

软件设计主要包括2部分,即温湿度检测部分和系统控制部分。

温湿度检测流程可描述为:系统开始运行后,首先执行系统初始化操作;如果系统运行正常,蜂鸣器就不会发出报警声;LCD液晶显示屏初始化完成后,先显示预设值然后显示传感器实时采样值;DHT11温湿度传感器实时采集工作点位的温湿度值,并通过数据转换,传送给ATmega16单片机;ATmega16单片机根据实时温湿度数值进行判断并将温湿度数据传送至上位机;上位机根据智能算法预测温湿度发展趋势。如果温湿度数值超过预设值,蜂鸣器会报警同时继电器吸合,执行加热、降温、除湿和加湿等操作。

系统控制流程可描述为:根据实时温湿度数据,单片机会判断当前温湿度是否超过预设值;上位机则会判断温湿度的发展趋势,并得到相关控制信号发送给单片机。单片机通过内部处理,实现继电器吸合控制,即加热、降温、除湿或加湿。如果温湿度数值恢复到预设范围之内,单片机就会关闭相关继电器。如此,不断开启和关闭继电器就可以实现整个环境的温湿度控制。

温湿度系统控制流程如图5所示。

图5 温湿度控制流程

3 实验研究

为验证所述控制系统的可行性和有效性,进行了相关实验研究。

实验场所为一个面积约200 m2的温湿度大棚,在实验场所设定10个数据采集点,实时采集温湿度数据并显示。实验过程中,记录实际温湿度数值以及系统恢复稳定状态所需时间。

作为对比,设置2组实验,第1组使用普通PID控制,温度提高5 ℃,湿度提高5%,分别记录温湿度采样值和稳态时间;第2组使用本文控制算法,温度提高 5 ℃,湿度提高5%,同样记录温湿度采样值和稳态时间。实验结果如表1和表2所示。

表1 PID控制实验结果

表2 深度学习控制实验结果

从表1和表2可以看出:如果仅仅采用PID控制,如果取绝对值,温度偏差最大值为1.90 ℃,温度偏差平均值为1.52 ℃,湿度偏差最大值为2.6%,湿度偏差平均值为2.28%,稳态时间平均值为16.13 min;采用深度学习控制方法,如果取绝对值,温度偏差最大值为0.5 ℃,温度偏差平均值为0.3 ℃,湿度偏差最大值为0.9%,湿度偏差平均值为0.6%,稳态时间平均值为5.72 min。

实验结果表明,采用所述温湿度控制方法可提高温度和湿度控制精度,提高系统响应速度,降低系统达到稳态所需时间。整体来说,控制系统的性能得到了大幅提升,具有一定的使用价值和借鉴意义。

4 结束语

以温湿度控制为研究对象,基于单片机设计了一种温湿度控制系统。给出了基于ATmega16单片机和DHT11温湿度传感器的硬件和软件设计方法。为进一步提高温湿度控制精度,设计了一种基于深度学习的温湿度控制器。实验结果表明,所设计控制系统具有较高的控制精度和稳定性,系统整体性能大幅提高,具有一定的推广价值。

猜你喜欢
玻尔兹曼隐层温湿度
基于RTD可编程逻辑门的n变量函数实现算法
基于四参数随机生长法重构土体的格子玻尔兹曼细观渗流研究
温湿度控制器在回收砂冷却系统中的应用
非对称弯道粒子惯性迁移行为的格子玻尔兹曼模拟
改进软位势的齐次玻尔兹曼方程柯西问题解的适定性
基于BP神经网络学习算法的图像压缩技术研究
基于DSP的多路温湿度监测系统
基于RDPSO结构优化的三隐层BP神经网络水质预测模型及应用
基于温湿度控制的天气预测装置
代价敏感正则化有限记忆多隐层在线序列极限学习机及图像识别应用