荀 磊
(江苏工程职业技术学院,南通 226007)
实验室作为教学、科学研究与创新的重要基地,在培养人才的过程中发挥着重要的作用。随着国家对实验室投入的逐年增加,实验室的规模和数量快速提升,这些变化对实验室的管理,尤其是实验室的安全管理提出了更高要求。[1]根据相关媒体报道,仅2021 年国内就有多起实验室安全事故发生,比如3 月份北京某化学研究所实验室爆炸造成1 人死亡,7 月份南方某大学实验室火灾造成1 人烧伤,10 月份南京某大学实验室发生爆燃造成2 死9 伤。因此,研究保证实验室安全管理的举措刻不容缓。分析近几年的实验室安全事故可以发现,管理人员没能及时掌握实验室环境的变化是事故发生的重要原因[2],究其根源还是缺乏适合的监测系统作为支撑,不能实时、可靠地监测到实验室运行环境数据。因此,本文根据实验室安全运行相关要求,设计了一个基于窄带物联网技术的可在线远程监测实验室环境的系统。[3-6]
为了方便管理人员实时远程监测实验室运行环境,本文设计的监测系统由“云”“管”“端”3 部分组成,系统架构如图1 所示。[7-8]“云”指的是云平台,主要实现数据的接收、存储、可视化和下行控制管理等。“管”指的是网络,主要实现“云”与“端”之间数据的传输控制。“端”指的是监测终端,主要实现实验室环境数据的监测、显示、处理和上传等。
图1 实验室环境监测系统架构
实验室环境监测系统硬件部分由“端”中的环境监测模块和“管”中的通信模块组成。环境监测模块主要功能是对实验室中的温湿度、烟雾浓度等情况进行监测、显示、上报、异常报警和处理,主要电路有电源电路、单片机最小系统电路、温湿度监测电路、火灾监测电路、显示电路、报警电路、阈值设置电路和执行器驱动电路。通信模块主要功能是接收环境监测模块中的数据并上传至OneNET云平台,再转发云平台命令至环境监测模块,主要电路为M5311 电路。系统硬件结构如图2 所示。
图2 硬件结构
系统工作需要5 V 和3.3 V 两种电压,5 V 电压由电源适配器直接提供,3.3 V 电压则要通过ASM1117芯片经5 V 降压才能得到。电源电路见图3。
图3 电源电路
单片机最小系统电路如图4 所示,电路由STM32F103C8T6 芯片、复位电路、晶振电路和串行调试接口电路组成。
图4 单片机最小系统电路
阈值设置电路通过3 个按键(分别为KEY1、KEY2、KEY3)对温度、湿度和烟雾浓度的阈值进行设置,其中 KEY1 为“SET”键,KEY2 是“+”键,KEY3 是“-”键,电路图见图 5。
图5 阈值设置电路
显示电路采用OLED 显示屏,该显示屏有7 个外接引脚,点阵数是128 列×64 行,接口采用SPI 串口、控制驱动器是SH1106G,其7 个外接引脚和主控芯片相关引脚的连接如图6 所示。
图6 显示电路
采用DHT11 模块监测温湿度,DHT11 模块是温湿度复合传感器,采用单线制串行接口,有4 个外接引脚,4 个外接引脚和主控芯片相关引脚的连接如图7 所示。
图7 温湿度监测电路
火灾监测电路根据烟雾浓度和火焰情况来判断是否有火灾,由有4 个外接引脚的MQ-2 烟雾传感器模块和有3 个外接引脚的红外火焰传感器模块来实现此功能。火灾监测电路中只使用了这两种传感器模块的开关量输出功能。火灾检测电路见图8。
图8 火灾监测电路
报警电路由三极管、电阻和有源蜂鸣器组成,通过主控芯片的PB2 口控制三极管对蜂鸣器进行驱动,其电路如图9 所示。
图9 报警电路
执行器驱动电路如图10 所示,电路由二极管、三极管、电磁继电器和电阻组成。系统初始化后成功连接OneNET 云平台,采集温湿度、烟雾浓度和火焰相关数据,判断数据是否超过阈值。如果温湿度值高于阈值,执行器驱动风扇工作;如果烟雾浓度高于阈值或者存在火焰,执行器驱动喷水装置工作。
图10 执行器驱动电路
M5311 是一款高性能、低功耗的NB-IoT 无线通信模组,满足中国移动蜂窝物联网通用模组技术规范。M5311 的电路由 NB 模组电路(图 11)、NanoSIM 卡电路(图 12)、贴片SIM 卡电路(图 13)和UART 电平转换电路(图14)组成。
图11 NB 模组电路
图12 NanoSIM 卡电路
图13 贴片SIM 卡电路
图14 UART 电平转换电路
实验室环境监测系统的主控芯片STM32F103C8T6 通过主控的串口和M5311 模组进行通信,M5311 模组将实验室环境数据上传至中国移动OneNET 云平台,接收云平台下发的操作命令。嵌入式代码通过STM32CubeMX 生成HAL库工程文件,以KEIL 作为软件开发环境进行开发。
系统通电后,完成主控芯片的初始化设置和M5311 模组连接中国移动OneNET 云平台的设置。通过按键设置温湿度和烟雾浓度阈值,然后通过传感器监测实验室环境数据。如果监测到火灾,则立即报警并启动喷水装置,并将异常数据上传到云平台;如果收到OneNET 读环境数据请求则回复请求,如果监测到温湿度超过阈值则启动风扇工作,定时10 min 后把最新监测到的环境数据更新至云平台。系统的主程序流程如图15 所示。
图15 主程序流程图
主控芯片初始化设置包括GPIO、串行口和定时器相关设置,其中GPIO 相关设置包括连接温湿度、烟雾、火焰、OLED 屏、报警器、阈值设置和执行器驱动的相关GPIO 初始化设置。串行口初始化设置包括串口1 和串口2 相关参数设置。定时器相关设置包括TIM3 中相关寄存器参数的设置。
M5311 模组连接中国移动OneNET 云平台设置包括云平台侧设置和M5311 模组侧设置。其中,云 平台侧设置包括创建LwM2M 产品、创建LwM2M 设备和设备管理界面相关设置。M5311 模组侧设置包括模组初始化及驻网、创建设备实体、资源订阅中Object 和Resource 配置、发起登录和OneNET 数据收发。
OneNET 数据收发包括数据上传和命令下发,其中数据上传即将实验室环境数据通过MIPLNOTIFY指令上传至云平台,其流程见图16。命令下发即云平台下发读操作指令,M5311 模组接收到指令后通过串口转发给主控芯片STM32F103C8T6,读取实验室环境数据并上传最新数据至云平台,其流程见图17。
图16 数据上传流程
图17 命令下发流程
为验证系统设计是否可靠,选择某大学的实验室进行系统的软硬件测试,该实验室是模拟电子技术实验室,实验室里主要仪器设备有示波器、信号发生器、毫伏表、实验箱等。
在OneNET 云平台应用管理选项中通过应用编辑器View 2.0 实现数据的可视化及发布,通过点击更新最新数据按钮可以获取最新的环境监测数据,①链接地址是https://open.iot.10086.cn/view/main/index.html#/share2d?id=61c93021f743fc00358d7453。OneNET 云平台监测到的环境数据如图18 所示。
图18 实验室环境监测数据
进一步测试系统的运行效果,设置温度阈值为26℃,湿度阈值为75%,烟雾浓度阈值为5%,采用恒温恒湿试验箱、打火机、烟等模拟不同的温湿度、火焰和烟雾场景,记录系统运行情况并与实际情况进行对比,测试记录见表1。经过现场测试,整个系统运行稳定,相关传感器将监测到的实验室环境数据上传至OneNET 云平台所需时间约2 s,响应速度快,数据传输准确率高,当火灾发生时,系统判断准确,报警器和执行器能及时工作。
表1 系统测试记录表
“云-管-端”架构的实验室环境监测系统可以实时监测实验室环境中温湿度、烟雾浓度等数据。实验室管理人员可以在计算机端或者手机端输入链接地址随时随地查看实验室环境数据,及时消除安全隐患,能实现实验室的安全高效管理。