基于Arduino与LabVIEW的智能化学实验室安防系统
2020-06-12曾晓楠熊丹韦鑫王春伟徐俊
曾晓楠 熊丹 韦鑫 王春伟 徐俊
(1.合肥工业大学宣城校区计算机与信息学院 安徽省宣城市 242000)
(2.合肥工业大学宣城校区电气与自动化工程学院 安徽省宣城市 242000)
(3.合肥工业大学宣城校区机械工程学院 安徽省宣城市 242000)
化学实验室是化学教学和研究的重要基地,是新时代下培养高素质化学人才,创造高水平研究成果的重要场所。而化学实验室药品试剂不仅种类繁多,而且特性也各不相同,一旦保存不当,易发生爆炸、有毒气体泄漏等严重事故,因此保证实验室的安全是第一要务。本文主要提出一种新型智能安防系统,利用LabVIEW虚拟仪器的特点,通过VISA配置相关参数,将下位机采集到的化学实验室温湿度、气体浓度等环境数据以图形化分析方法直观的显示在上位机界面,形成一个针对化学实验室环境的数据分析处理网。实验室管理员可在PC端查看数据处理结果,也可借助ESP8266连接物联网平台实现远程数据访问。当发生火灾、气体泄漏、入窃等安全隐患时,下位机会以蜂鸣器报警,GPRS无线通讯系统也将向实验室管理员发送紧急预警短信,实现对实验室的安全监控,从而减少事故发生所造成的损失。
1 系统总体设计方案
安防系统由硬件和软件两部分组成。硬件部分主要有火焰传感器、温湿度传感器、烟雾传感器、光敏传感器、人体近红外模块、OpenMV摄像头、蜂鸣器、SIM800C、APC220、ESP8266模块;软件部分分为上位机LabVIEW软件编程和下位机Arduino编程,上位机与下位机之间通过无线数据传输模块APC220进行通信。
整个系统由五部分组成,分别是环境感知系统、显示系统、防盗系统、数传系统、LabVIEW上位机。图1为控制系统整体结构图。
(1)环境感知系统主要负责采集化学实验室环境的相关数据,包括测量实验室的温湿度、气体浓度、光照强度等信息,为微处理器Arduino Mega 2560 控制提供依据。主要使用了火焰、温湿度、烟雾、空气质量等传感器。
(2)防盗系统主要负责对化学实验室来访人员进行记录,对陌生人闯入进行报警,主要由OpenMV摄像头、人体近红外模块等构成。
(3)显示系统负责对单片机处理过的数据进行显示,以便清晰地了解实验室环境,将数据动态显示在显示屏上,主要模块包括LCD显示屏,指示灯等。
图2:下位机软件系统流程图
(4)数传系统是实验室管理员和下位机之间连接的桥梁,能够传输实验室环境数据,若有灾情发生以GPRS短信发送的方式告知管理员,实验室管理员也可通过访问第三方物联网平台实时查看实验室数据,及时做出反馈,这一部分主要由SIM800C、ESP8266以及无线传输模块APC220组成。
(5)LabVIEW上位机是整个控制系统的关键部分,主要负责以图表、曲线的形式清晰的将化学实验室相关环境数据展现在PC端,从而远程监控实验室的环境变化。
2 系统硬件设计
2.1 APC220模块
图3:LabVIEW上位机界面
这款模块嵌入高速单片机和高性能射频芯片,配合1个USB转换器可以实现电脑与单片机之间通讯,具有优良的抗干扰性能,在空旷地带其传输距离可以在1000米以上,可以满足安防系统无线传输数据的要求。
2.2 SIM800C模块
这是一款四频GSM/GPRS模块,性价比高,可实现远距离通信,当发生紧急情况时,Arduino单片机通过串口对GPRS模块发送AT指令,装有SIM卡的SIM800C会给预先设定的应急联系人拨打手机号码或发送短信,从而及时对化学实验室发生的灾情报警。
2.3 气体传感器
负责化学实验室气体检测的传感器主要是烟雾传感器(MQ-2)和空气质量传感器(MQ-135),二者均为MQ系列传感器,该系列传感器多采用半导体类气敏材料,如采用二氧化锡半导体气敏材料的MQ-2型烟雾传感器会随着烟雾浓度的增大而输出更大的模拟信号。而MQ-135气体传感器对氨气、硫化物、苯系蒸汽的灵敏度高,对烟雾和其它有害气体的监测也很理想,因而非常适合应对化学实验室内的复杂情况。
2.4 OpenMV机器视觉模块
OpenMV是一个功能强大的开源机器视觉模块,集成了OV7725摄像头芯片,内置Micro Python解释器,可以用其完善的机器视觉算法进行图像处理,还可以通过Haar算子快速进行人脸识别,从而对实验室来访人员进行拍照记录。
2.5 ESP8266
选取的通讯模块为ESP8266系列中的NodeMCU模块,通过对其固件的烧录、透传等操作使其与贝壳物联、阿里云、百度智能云等公共物联网平台进行Webconfig配置,使该设备自动与平台连接,进行数据的传输交互。实验室管理员若想远程查看化学实验室的相关数据,便可通过Web浏览器进入第三方物联网平台进行数据访问。
3 系统软件设计
3.1 下位机Arduino软件设计
下位机为微控制器Arduino Mega 2560,该型号单片机拥有54路数字输入/输出端口,16路模拟输入端口,4路UART串口,资源丰富,可以满足安防系统的设计要求。由于化学实验室使用的化学危险试剂很多都是易燃易爆有毒物品,实验过程中操作不当或环境因素变化都很容易造成安全事故。故在下位机软件设计时,给相应的环境参数设立一定阈值,一旦超过设定的阈值,系统便会报警,从而达到安防的目的。下位机软件系统流程图如图2所示。
3.2 上位机LabVIEW界面设计
为能够在LabVIEW界面上清晰地反映数据,需通过编程的方式将LabVIEW和传感器采集的数据联系起来。LabVIEW的主程序框架由事件结构、顺序结构以及While循环结构组成。首先添加配置串口函数VISA Configure Serial Port,并设置4个数值常量,参数值分别为9600(波特率)、8(数据位)、0(校验位,无奇偶)、1(停止位),再把缓冲区中的字节数读取到属性节点中,然后程序进入While循环和事件结构,不断地监测是否有事件得到相应并执行。通过两个布尔类型的变量来控制实现不同的条件结构,在前面板显示的是读取和写入按钮控件,用户可根据自己的需求按下不同的按键来选择发送还是接收数据。在VISA读取函数中,将不同意义的数据进行分类,数据便可以波形图表、仪表等形式展现在前面板。主界面将安防系统监测到的数据整体显示在一个界面上,方便化学实验室管理员清晰地查看实验室环境数据。LabVIEW上位机界面如图3所示。
4 结语
在Arduino与LabVIEW的基础上设计的智能化学实验室安防系统经实践后,成功搭建了实验室环境监测与预警平台,实现了对温湿度、气体浓度、光照强度等环境数据的实时采集、记录,并图形化显示在上位机LabVIEW界面上,从而帮助实验室管理员清晰地掌握实验室数据,及时采取相应措施,最大程度地减小化学实验室发生安全事故的可能性。