基于STM32 的智能控制型消毒系统*
2021-12-04陈洪宋丽涵陈莉莉陈羽颀黄禄强沈佳慧
陈洪,宋丽涵,陈莉莉,陈羽颀,黄禄强,沈佳慧
(莆田学院机电与信息工程学院,福建莆田 351100;福建省高校现代精密测量与激光无损检测重点实验室,福建莆田 351100)
2020-01,新型冠状病毒席卷全球,由于其可通过空气及物体进行传播,使得中国乃至全世界深受困扰。人民日报在2020-02 指出紫外线和热敏感能够影响到冠状病毒,因此提出猜想:可以利用紫外线消毒灯对教室、房间、客厅、会堂等一些场所进行消毒从而杀死新型冠状病毒。另外,社会发展迅速,所带来的环境变化、废气污染物排放等诸多问题也会造成中国的空气质量不断恶化和下降,从而使得中国各种慢性呼吸病的患者死亡率越来越高。虽然现在很多家庭以及多人流动场所都针对空气质量问题采取了防范与补救措施,但所使用的方式大都不科学,所以很难起到作用。于是,“智能控制型消毒系统”应运而生。该系统运用STM32 为控制中枢,通过各个模块的辅助,初步实现了对环境温湿度的实时监控,以确保环境温湿度是否处于人体适宜范围内,且用户进入环境前可通过遥控端开启紫外消毒灯对环境消毒,大大降低了环境病毒的存活率,从而实现防范作用。
1 系统的硬件设计
以电子系统为核心的消毒系统是未来智能消毒的发展趋势[1],硬件电路设计分为主控芯片STM32 控制器、三个传感电路、远程遥控系统及液晶显示电路。系统硬件电路总体设计原理如图1 所示。
1.1 STM32 控制器
STM32 处理器主要由微处理器、复位电路、存储电路组成[2]。该处理器具有性能高、体积小、功耗低、成本低等优点[3]。其主要特性如下:①兼容5 V 的I/O 管脚;②优异的安全时钟模式;③内部RC 振荡器;④最高工作频率72 MHz。
课题采用的STM32F103 处理器不同于初代单片机,其内部含有12 位A/D 转换,是一种高效微处理器。
1.2 Wi-Fi 通信模块
ESP8266 是一款串口型Wi-Fi 通信器,其能通过串口与单片机通信;这款模块简单易学,体积小,便于嵌入式开发。通过AT 指令配置,与单片机的串口进行传输通信,再利用Wi-Fi 远程遥控传输数据。可将用户的硬件设备与Wi-Fi 无线网络进行连接,进行互联网或局域网通信,从而实现远程通讯功能。引脚连接如图2 所示。
图2 ESP8266 原理图
在使用时,需要利用指令配置系统参数,ESP8266 设置指令格式如表1 所示。
表1 ESP8266 功能指令表
1.3 传感器模块
1.3.1 温湿度传感器模块
温湿度传感器模块所使用的传感器为DHT11,它的工作原理是由于湿敏元件和温敏元件存在的电气特性,它们会根据环境温湿度的变化而变化,从而进行温湿度的测量。OUT 引脚与主控板B13 引脚相连,VCC 与GND 分别接3.3 V 电源与地,实物及原理图如图3 所示。
图3 DHT11 温湿度传感模块实物与原理图
1.3.2 人体红外感应模块
在众多识别人体的传感器模块中选择了人体热释电感应模块。该模块具有以下特点:①热释电红外传感器使用了划分检测区明亮和黑暗区域的菲涅尔透镜[4];②热释电红外传感器对人体运动引起的红外辐射变化十分敏感[5]。
图4 是人体热释电感应的实物图,元器件安装位置如图所示,工作原理是热释电探头根据热释电效应检测到人体后由处理电路对信号进行处理,最后产生高电平数字信号输送给主控器。图中V 脚和G 脚接5 V 电源正负极,IN 脚接主控器A8 脚。
图4 人体红外感应模块实物与原理图
热释电效应的公式是:
式(1)中:ΔV为电压变化量;A为热释电元件的表面积;R为电路中的电阻;Ps为自发式极化强度;P为热释电系[6]。
1.3.3 紫外线强度传感器
ML8511 是紫外线传感器,其可用于获取室内外的紫外线密度,内部配有放大器,可根据紫外线的强度将光电流转换为电压,从而来检测紫外线强度[7]。AD 引脚与主控板B1引脚相连,OUT 引脚与主控板B2 引脚相连,VCC 与GND分别接3.3 V 电源与地,其实物图与原理图如图5 所示。
图5 ML8511 模块实物与原理图
1.4 液晶显示设计
液晶显示屏上实时显示当前温度和湿度以及紫外线强度,当紫外线强度后的数值为01 时表示连接成功,00 则表示连接失败。消毒灯与房间灯光皆可以手机APP 远程遥控,0 为未开启,1 为开启。液晶显示如图6 所示。
图6 液晶显示界面图
1.5 硬件实物图
硬件实物图主要有STM32 主控电路、电源供电电路、Wi-Fi 模块电路、OLED 液晶显示电路以及三个传感电路组成,如图7 所示。
图7 硬件实物图
2 系统的软件设计
2.1 软件设计流程图
利用温湿度和紫外线传感器对房间环境进行检测,将采集到的数据通过A/D 转换发送给主控板;利用通信模块向STM32 主控板发送指令,最终实现对硬件设备的无线控制;利用液晶显示屏将各部分数据显示出来。通过上述模块间连接,从而实现智能家居的控制。软件代码采用linkboy 进行开发,该开发软件具有仿真功能,有利于代码的开发和调试,在调试完成后烧录至主控板中运行。
系统程序所使用的编写语言为图像化编程语言,通过主要函数辅以子函数从而实现各模块的功能。
主程序流程图如图8 所示。该系统采用STM32 单片机作为主控板来控制各个模块间的数据交互,利用红外人体传感器模块、温湿度传感器以及紫外线传感器来进行信息采集,采集的信号经由信号处理电路处理后传输给主控器;Wi-Fi 模块负责传输数据和远程控制,采集的指令经过信号处理电通过串口通讯方式传输给软件。使用者可以通过软件控制整个系统。
图8 主程序流程图
2.2 登录界面显示功能
登录界面的功能包含用户名、密码以及登录,在输入用户名和密码后点击登录,当用户信息填写错误时,在登录按钮上方会出现提示,账户密码都无误时,即进入后台操作界面。登录界面如图9 所示。
图9 登录界面图
2.3 数据采集
数据采集主要通过温湿度传感器获取温度与湿度数据,紫外线传感器获取紫外线强度数据,由STM32 主控将紫外消毒灯以及LED 灯的状态以及传感器获得的数据上传至软件,如图10 所示。软件设有高温报警系统,当温度数据高于30 ℃时,软件报警。在后台操作页面可设置高温报警阈值,通过邮件方式发送,如图11 所示。
图10 数据采集界面图
图11 高温报警设置图
2.4 远程控制界面功能
通过登录界面输入正确账号密码后进入后台操作界面,操作界面显示由传感器获取主控电路上传的数据,温湿度与紫外线强度显示为实时数据,紫外消毒灯与LED 灯的状态是:0 关闭,1 开启。数据下方为4 个操作按键。前两个为控制紫外消毒灯按钮,后两个为控制LED 灯按钮。如图12所示。
图12 远程控制界面图
3 硬件与软件调试
硬件与软件的连接通过Wi-Fi 实现,连接后在手机上打开软件进行调试。接通实物的电源开关后等待实物连接上Wi-Fi,之后通过观察温湿度和紫外线强度的数据是否变化来检验硬件是否正常传输。观察的数据如图13 所示,由此可以得出数据传输正常。接着测试软件是否能够控制硬件,分别点击“开启紫外线消毒灯”和“开启led”按键,发现如图14 所示硬件上的两盏灯开启并且液晶屏上显示“正在消毒”和“房间灯光已开启”。当人体传感器检测到人体后,硬件运行状态从图14 变为图15 所示的状态图。测试高温报警时,将报警条件设为大于等于30 ℃,将温度升高到45 ℃后触发了报警,软件如图16 所示向邮箱发送了高温通知。
图13 温湿度与紫外线强度数据图
图14 紫外消毒灯与LED 灯开启图
图15 感应到人体后运行状态图
图16 高温报警图
通过测试可以得出该设计能够通过Wi-Fi 实现远程控制,以达到建立智能控制型消毒系统的目的。
4 结论
经过反复实践证明,使用STM32 为主控板的智能控制型消毒系统运行较为稳定。采用ESP-8266(Wi-Fi 远程控制模块)、DHT11(温湿度传感器)和ML8511(紫外线强度传感器)等数据采集模块,SH1106(液晶显示模块)等主要的功能模块,构成了所设计的智能控制型消毒系统。该系统具有远距离操控、高温报警及智能控制等功能,适用于小型家居场所和医疗场所。