APP下载

基于S7-1200 PLC的材料实验室环境监测物联网系统的设计

2022-02-21赵彤轩王钰涌张慧翔

工业仪表与自动化装置 2022年1期
关键词:联网实验室传感器

杨 帆,赵彤轩,王钰涌,张慧翔

(西北工业大学 a.伦敦玛丽女王大学工程学院;b.自动化学院;c.网络空间安全学院,陕西 西安 710072)

0 引言

材料实验室是高校理工科中非常普遍的研究材料制备、分解、化合以及性能变化等的重要科研创新活动场所。大部分的材料实验涉及到危险化学品、危险废弃物、压力气瓶等,实验过程可能是在高温、高压的设备容器环境下进行,操作中稍有不慎或者实验设备老化,很容易造成有毒有害的化学气体泄漏,从而危害实验科研人员的身体健康,甚至当实验反应异常且操作过程不当时,很容易发生火灾、爆炸[1]。

近年来,实验室安全事故时有发生。如2021年3月31日中国科学院化学研究所发生一起实验室安全事故,造成1人死亡;2018年12月26日北京交通大学实验室突发爆炸,致3名学生遇难;2017年3月28日复旦大学化学实验室发生爆炸,一名学生手被炸伤。这些实验室通常依靠实验规章制度来约束实验科研人员遵守实验规范,忽略或者忽视了实验过程中非人为因素导致的设备故障异常的发生,造成了实验人员的生命受到极大的威胁,给高校安全和稳定带来很大的创伤。

随着当今微电子MEMS传感器技术、先进网络功能PLC控制技术、物联网远程控制技术等高新技术的快速发展,国内外很多专家学者提出研究建设智慧校园,其中高效、智能、环保、安全的数字实验室是高校信息化建设必不可少的重要组成部分[2]。可编程逻辑控制器(Programmable Logic Controller,简称PLC)是一种具有微处理器的用于自动化实时控制的程序逻辑控制电子装置,它可以在高温高压环境下稳定运行,能够适应恶劣场所所需的可靠的自动化测控需求[5]。S7-1200是Siemens公司推出的体积小、速度快、标准化且具有网络通信能力的高性能PLC,目前在冶金、化工、矿山等危险作业场所有着广泛的应用。物联网(Internet of Things,简称IoT)是指通过各种微电子传感器实时采集目标物体状态测量值,同时经由各类有线或者无线网络媒介进行信息传输,实现物与物、物与人的泛在连接和交互[3]。

该文采用现代传感器技术、通信技术、PLC自动控制技术等构建一个实验室环境监测物联网系统,使得当实验环境中有害气体、可燃气体超标后,能及时发生预警并采取应急安全措施,最大程度地确保实验人员与实验设备安全。

1 材料实验室理想模型的设计

高校材料学科实验室因仪器种类多及设备复杂等因素,增加了安全管理的难度。材料学科实验室内比较昂贵的设备一旦发生火灾或气体泄漏,都会造成很大的经济损失。调研发现,大部分材料学科实验室完成的实验大都属于有机化学反应、无机化学反应、化工工艺合成、加热冷却制备等属性[2]。虽然材料学科实验室通常都配有排气风扇,但目前基本靠实验人员主观嗅觉、实验制度、实验常识等来决定是否开启或者关闭风扇,这造成很大的隐患,很可能会造成实验室无味有害气体浓度过高[4]。有的实验室材料合成设备本身自带通风设备,但这些设备没有跟实验室整体环境关联控制。

综合大部分材料实验室的现有任务功能、设备配置、硬件设施,材料实验室理想模型可以抽象成一个七元组模型:Material Laboratory=,其中T表示Temperature,即实验室中的环境温度;H表示Humidity,即实验室中的环境湿度;G1表示Flammable Gas,表即实验室中可燃气体的浓度;G2表示Toxic Gas,即实验室中有毒气体如一氧化碳(CO)、二氧化硫(SO2)、氮氧化物(NOx)等气体综合浓度;F表示Exhaust Fan,即实验室中为了确保实验人员的健康当可燃或者有毒气体浓度高时,需要的排气扇将它们排到室外,考虑到排气扇为实验室安全运行的关键设备,通常需要两个排气扇:主排气扇与备用排气扇;A表示Alarm Buzzer,表即实验室中当发生危险时的声光警报器提醒实验人员迅速撤离;P表示Power Electronic Switch,表即实验室中当发生危险时的系统可以自动切断主电源。

该实验室理想模型中的实验装置如加热炉、化学气体容器或实验过程如材料制备、有机工艺合成等产生或泄漏可燃气体、有毒有害气体,其产生的体积与浓度是动态随机不确定的,需要采取有效措施合理控制应对,才能确保人员生命与实验设备安全。文章后续的物联网系统测量与控制硬件与软件设计都是基于该理想模型。

2 材料实验室物联网测控硬件结构设计

根据材料学科实验室室内环境监测的基本要求,材料学科实验室必须健康舒适,实验操作过程中可能造成的可燃气体泄漏、材料制备实验过程中仪器因反应而排放到室内的有毒有害气体必须时刻处于安全范围。该文结合物联网模型组成的基本理论,设计出基于校内LAN/4G/5G的材料学科实验室智能监控物联网系统,其硬件结构如图1所示。系统从下至上分为4层:感知执行层、控制汇聚层、服务操作层、终端应用层,这4层之间通过网络传输层相连接。

图1 材料实验室理想模型结构图

2.1 感知执行层

感知执行层位于整个物联网系统架构的最底层,它包含有室内温度T传感器、可燃G1气体传感器、有毒有害G2气体传感器、室内湿度H传感器,通过4~20 mA信号将这些传感器数据输入到控制汇聚层的S7-1200 PLC A/D模块上。感知执行层还包含风扇F执行器、警报A声光执行器、电源P电子开关执行器,风扇F由主排气扇与备用排气扇组成,接收执行控制汇聚层的S7-1200 PLC D/A模块4~20 mA输出信号。警报A与电源P接收并执行控制汇聚层的S7-1200 PLC DO模块24 V开关控制信号。

物联网模拟量输入传感器原理如图2所示,由感知电路、信号调理、采样保持和变送转换组成[6];模拟量输出或者开关量输出原理正好跟输入相反。

图2 物联网模拟量输入传感器原理图

为了提高系统的可靠性与稳定性,系统的传感器与执行器采用市场上成熟的标准化电子产品,选型时要求跟S7-1200 PLC输入输出信号电气特性相匹配。

2.2 控制汇聚层

控制汇聚层为系统的核心逻辑算法控制单元,采用目前自动化市场上成熟稳定的德国西门子公司S7-1200 PLC,它以微处理器为核心,是将信号采集技术、计算机控制技术、网络通信技术融为一体的新型电子控制装置。系统中S7-1200 PLC包含CPU DI/DO单元(型号6ES7 214-1BG40-0XB0)、2块4点模拟量输入AI单元(型号6ES7 231-4HD32- 0XB0)、1块4点模拟量输出AQ单元(型号6ES7 232-4HD32-0XB0),需要在TIA Portal开发环境中设置其硬件组态。

S7-1200 PLC自带RJ45以太网口,它支持标准的Modbus TCP协议和S7-Prodave DLL与上层上位机通信,一个PLC站点可以同时连接若干个主站查询或者控制指令[7]。控制汇聚层实时采集材料实验室中所有环境传感器数据并进行数字滤波处理,采用安全阈值逻辑控制算法与PID控制算法对实验室的警报器、电源电子开关及风扇的快慢进行实时有效控制;另外接收来自上层的请求,将实时采集数据转发到服务操作层上位计算机。

2.3 服务操作层

服务操作层为实验室物联网系统本地人机交换HMI中心与数据存储服务器,物理上它是一台高性能的工业控制计算机(Industry Control Computer,简称IPC)。服务操作层实现了将通过以太网直接连接而实时获取的下层S7-1200 PLC中的实验现场环境数据直观地显示在工艺仿真画面上,同时将实时数据存储到本地关系型MySQL数据库上,供后期查询、分析、决策使用。

服务操作层还为上层合法授权用户的手机APP提供数据来源,并在权限许可的前提下接受移动终端控制指令并下发给下位PLC执行。

2.4 终端应用层

终端应用层方便了高校师生远程查看材料实验室的实时环境参数。终端应用层的设计使得实验室管理人员无需长时间现场值守查看就可以高效安全地管理实验室,极大地降低了实验室管理人员的劳动强度。

考虑到Android系统的开放性以及IOS系统的封闭性,该APP只支持安卓手机的硬件环境。

2.5 网络传输层

网络传输层实现各基本层之间的通信连接。网络传输层1通过4~20 mA,24 V I/O直接信号传输,将控制汇聚层与感知执行层连接起来;网络传输层2通过Ethernet基带直接网络传输,将控制汇聚层与服务操作层连接起来;网络传输层3通过路由器或者交换机实现LAN/4G/5G网络传输,将服务操作层与终端应用层连接起来。

3 材料实验室物联网测控系统软件设计

由前述可知,该系统除了感知执行层采用标准成熟的市场选型电子器件,其他各基本层都需要设计对应的软件。

3.1 控制汇聚层软件设计

控制汇聚层软件主要为S7-1200 PLC程序设计,S7-1200 PLC采用扫描工作方式执行程序。根据系统的可靠性要求,程序内部需要设计对感知执行层硬件电路等故障实现检测和判断,当由干扰引起故障时,能立即将当前重要信息加以封存,禁止任何不稳定的读写操作,一旦正常后,便可恢复到故障发生前的状态,继续原来的工作。图3所示为S7-1200 PLC共享数据块循环程序设计模块结构图。

图3 S7-1200 PLC共享数据块循环程序设计模块结构图

主要包含的子程序描述如下:

(1)S7-1200 PLC主调度控制循环程序Main OB该OB程序为PLC软件主调度程序,它通过队列定时轮询的方式及动态优先级的方式扫描系统出现的事件而执行相应的FB或FC。

(2)感知数据采集函数FC

该FC函数扫描输入开关量或模拟量端口,获取数据后将其放入共享数据组织块DB临时缓冲区中。

(3)测量数据滤波函数FC

考虑到环境干扰与冲击噪声,提高系统控制的精准性以避免误动作或者误报警,需要采用一定的算法将采集到的临时缓冲区的数据进行数字滤波。

(4)故障诊断处理函数FC

系统运行过程中,如果发生I/O信息、A/D信息输入及上位通信故障时,进行局部隔离处理而不影响全局。

(5)开关逻辑控制函数FC

系统收到的传感器数据跟用户设定阈值上限值进行比较,如果超出范围,则立即发出报警并关闭实验室电子开关。

(6)排气扇PID控制函数FB

当系统收到可燃气体或有毒有害传感器数据,即跟用户设定值进行PID运算,动态输出D/A控制风扇的转速。

(7)通信响应处理函数FC

该FC根据Modbus协议响应服务操作层上位机请求数据或者执行其用户操作指令。

(8)S7-1200共享数据组织块DB

该DB为PLC软件中存放用户设定上下限幅参数、PID调控参数、调度优先级参数、通信参数等信息以及各FC内部通信参数。

为了提高PLC程序的可靠性、精确性与稳定性,需要用到数字滤波算法、 PID调节算法、动态优先级算法、Modbus通信响应算法等[8]。限于篇幅,该文只介绍递推平均值滤波算法(Recursive Average Filtering Algorithm,RAFA),它采用先进先出原则,对周期性干扰有良好的抑制作用,滤波后平滑度高,非常适合实验室环境传感器数据滤波。

RAFA算法主要思想如下:在程序中创建一个遵循FIFO原则的队列,队列的长度固定为N,系统周期性的每一次测量getADVal(),将得到的结果VN放入该队列队尾中,同时淘汰掉队首的V1,这样就形成了始终有N个“最新”V1,V2,...,VN数据的队列数组,计算滤波值时,只要把队列中的N个数据进行算术平均,就可以得到新的滤波值,这样每进行一次测量,就可以计算得到一个新的递推平均滤波值。该算法数学表达式如式(1)所示:

(1)

RAFA算法采用C语法描述如下:

#define N 10 /*定义滤波长度*/

float V[N]; /*定义缓存区数组*/

int k=0; /* 定义当前某次滤波*/

float RecuFilter()

{ int fnum; /* 循环控制变量*/

int fsum=0; /* 周期内累计和*

V[k++] = getADVal(); /*采集*/

if (k == N ) k = 0;

for (fnum=0; fnum

fsum+ = V[fnum];

return fsum/N; /*返回本次滤波结果*/ }

系统排气扇与可燃气体、有毒气体连锁控制采用传统PID控制算法,其一般的流程如图4所示[9]。

图4 排气扇与可燃有毒气体连锁控制PID控制流程

其算法数学表达式如式(2)所示:

(2)

其中:Kp为比例系数;Ti为积分时间常数;Td为微分时间常数;e(t)为偏差,它为设定值sv(t)与测量值pv(t)的差值;mv(t)为控制量。

3.2 服务操作层软件设计

服务操作层是系统主要的人机操作界面,通过它可以实时查看实验室所有开关量与模拟量信号、历史数据以及设置物联网控制参数。服务操作层软件模块流程如图5所示。

图5 服务操作层软件模块流程图

(1)服务操作层任务调度模块:该模块为服务器程序的主控调度程序,主要处理调度后台通信中断事件与软件画面用户操作事件发生后执行相应处理模块。

(2)实验用户登录模块:系统基于角色的访问机制RADBC为合法的用户提供本地服务操作。

(3)网络通信处理模块:依据Modbus协议处理下位机与PLC的实时通信,以及响应上层移动终端APP查询,采用多线程(Multi-Thread)架构设计。

(4)传感数据存储模块:将采集到的传感器模拟量数据与开关量数据存储到后台MySQL数据库中,供后续查询决策或者分析故障使用。

(5)实验室主画面模块:该模块为系统人机界面的主模块,它将实验室所有的采集数据以虚拟仿真图形化的方式显示出来。

(6)动态曲线显示模块:将采集到的传感器数据以动态曲线的方式直观显示出来。

(7)报警查询存储模块:对实验室运行过程中曾经发生的传感器报警数据信息提供查询服务。

(8)参数查询设置模块:提供一个接口供用户查询,或者设置传感器上限阈值以及PID风扇调控参数等。

3.3 终端应用层软件设计

终端应用层软件主要是Android移动Client程序设计,主要由APP主控调度模块、远程用户登录模块、网络通信采集模块、实验室虚拟画面模块、报警查询显示模块、参数查看设置模块、动态趋势曲线模块等组成,其功能及流程图与服务操作层软件设计类似。

4 系统开发实现

运行该文设计的物联网架构理论,在Microsoft Windows10 OS下,采用面向对象的UML设计工具以及OOP开发环境进行实际的编程,并分别进行分层实现。

S7-1200 PLC采用Siemens公司的TIA PORTAL V15.0集成开发环境设计出梯形图LAD程序与指令SCL算法控制程序。其排气扇与有毒气体浓度连锁PID调节程序开发画面如图6所示。

图6 TIA PORTAL排气扇与有毒气体连锁PID程序图

服务操作层软件后台数据库采用MySQL 5.6,前台页面采用Embarcadero公司Delphi XE 10.3 Community Edition VCL开发工具,系统实现的实验室主画面如图7所示。

图7 服务操作层服务器软件实验室主画面

终端应用层软件为Android手机APP采用Embarcadero公司的Delphi XE 中的FireMonkey开发工具。手机APP开发中采用网络Socket技术,需要创建IdTCPClient组件与服务层的IdTCPServer进行连接。曲线显示采用TChart中创建TLineSeries动态显示Server返回的实验室各传感器数据。一般情况下,整个系统手机Client需要跟服务层Server在同一个LAN中,如果手机在4G/5G环境中访问服务器,需要在服务器中安装内网穿透软件花生壳(https://hsk.oray.com/)或者NAT123(http://www.nat123.com/)提供动态TCP解析服务。Android移动客户端系统实现的系统登录与动态曲线实际运行画面如图8所示。

图8 Android移动客户端系统实现的系统登录与动态曲线

5 结论

材料学科实验室物联网远程监控系统的设计可以最大程度地确保实验人员与实验设备安全。首先需要在材料学科实验室布置标准的可燃气体传感器、有毒有害气体综合传感器、温湿度传感器、排气风扇执行器、警报执行器、电子开关执行器等;然后通过Siemens公司S7-1200 PLC中I/O,A/D,D/A模块实时感知采集现场环境数据或者控制执行器,并通过以太网直接连接到实验室本地服务计算机进行人机对话与操作;最后通过校园LAN/4G/5G连接到手机APP可以远程测量与控制。

该系统充分利用S7-1200 PLC的高度成熟、稳定可靠、抗干扰强等特性及物联网分层理念,将复杂的问题分而治之并逐层解决实现。该系统为国内其他类似的实验室远程物联网监控提供了非常好的模板,具备较好的实用推广价值。

猜你喜欢

联网实验室传感器
“身联网”等五则
《物联网技术》简介
《物联网技术》简介
康奈尔大学制造出可拉伸传感器
简述传感器在物联网中的应用
物联网下的智控萌宠屋
“传感器新闻”会带来什么
跟踪导练(三)2
电竞实验室
电竞实验室