曹利波
(中煤科工集团重庆研究院有限公司,重庆 400039)
在国内煤矿行业,运行着数以千计的安全监测监控系统[1],以及其它各类监控系统,由于是各个制造厂各自设计各自生产,没有统一的设计要求,功能各异,也没有统一的通信接口和软件协议,造成类型众多,接口不一,使得系统复杂,维修不便,是目前数据难以融合和共享的主要障碍。
针对目前监控分站的现状,设计了一种基于现场可编程(PLC)的监控分站,其能够方便的接入各类传感器,并将传感器的数据上传至主站。又能够根据现场需要,编制数据处理和控制流程,实现分布式PLC[2]控制,也能够根据上位机指令实行远程控制。
分站的微处理器采用STM32F427[3],其处理速度快、程序空间和数据空间足够大,能够满足程序解释执行PLC语句的需要。硬件结构和接口图如图1。
图1 硬件结构和接口图
分站有8/16个开关量型或脉冲信号型和频率型信号接口,使用时通过属性设置,使其成为开关量接口、脉冲频率接口或者累加量接口,以适应不同传感器要求[4-5]。接口用光电隔离,能抑制现场干扰。
分站能接入16个传感器类设备的RS485信号,信号通过一个隔离式RS485口接入。传感器通过地址编码识别,通过监控分站轮询来传输数据[6]。每个传感器分站支持4个数据量,这样使得分站数据量大幅增加。同时,可加入1个或多个执行分站,远程执行监控分站下达的控制指令,实现远程控制。
分站具有8个控制量隔离输出,用于控制执行器,通过内部PLC设置,实现诸如风电瓦斯闭锁、风机排瓦斯自动控制、水仓水位的控制等功能。
分站有1个RS485和以太网接口[7],用于与主站的通信,满足各类通信要求。分站有声光报警。
1)模块1:开关量和频率量采集模块。该模块以6N137高速光耦作为隔离器件,以2.5万次/s的采样速率采集输入接口的信号变化,根据接口属性将数据存入对应变量单元。根据奈奎斯特采样定理[8],2.5万次/s的采样速率能保证1.2万次信号变化不失真,保证了采样精度的实现。经过实测,在10 kHz下,监控分站能够实现稳定的采样,不丢失1 Hz数据。目前煤矿使用频率型信号的传感器主要为200~1 000 Hz,也有 200~2 000 Hz,个别的也有 10 kHz,足以满足此类传感器的需要。
2)模块2:智能传感器RS485接口模块。该模块用隔离RS485电路,保证主电路与传感器电路的电气隔离,并保证数据能够互通。软件采用监控分站轮询方式对传感器进行数据采集[9],采集到的数据放置到对应的数据单元。
3)模块3:输出控制模块。该模块在电路上对输出信号进行光电隔离后输出到接口,保证与主电路的电气隔离。在核心软件监控分站内部PLC运算结果输出后,接口能够驱动外部设备,比如执行器,用于控制相应设备。
4)模块4:显示和键盘接口。本监控分站使用128×64点阵的液晶显示数据,汉字英文均可显示。监控分站使用遥控器发出键盘操作指令,红外方式接收键盘指令后驱动显示模块显示相关数据,所有采集的数据均可实现原码和实时数据的就地显示。
5)模块5:RS485与以太网的主站通信[10]模块。模块可以接收主站的数据采集指令,输出返回数据;可以接收主站的指令控制对应设备,实现远程闭锁。同时根据生产需要可以改变监控分站的PLC设置,实现监控分站的远程维护[10]。
6)模块6:电源模块。监控分站使用18 V直流本安电源,隔离开关电源DC/DC,通过2路分别供向主电路5 V和其它传感器以及控制电路(含有电流限制路)。
7)模块7:PLC模块[11]。该模块是监控分站的核心模块,PLC模块数据结构图如图2。
图2 PLC模块数据结构图
PLC模块数据接口定义主要有:①部计数器:00-T99;②内部信号寄存器:01-x99;③信号数据:对于8信号频率、开关输入型监控分站定义为A,信号1~信号11为开关量或频率量,信号12~信号19为输出控制量,B1为智能1号传感器的第1模拟量,B2为智能1号传感器的第2模拟量,以下类推……,C1为智能2号传感器的第1模拟量,C2为智能2号传感器的第2模拟量,以下类推。
PLC的基本语句格式为:逻辑指令寄存器或继电器操作符操作数据或状态。
逻辑指令:求分站PLC执行的动作。要有6种,D、AND、OR、XOR、OUT、END。
操作符:要对寄存器或继电器进行的比对、赋值等操作。主要有 6,即=、≠、≤、<、≥、>。
定值:V1~V20。
风电甲烷闭锁的要求如下:①当甲烷浓度达到1.5%时,分站应能通过断电执行器切断动力电源并闭锁,同时发出声、光报警信号;②当甲烷浓度达到1.0%时,分站应能通过断电执行器切断动力电源并闭锁,同时发出声、光报警信号;③当甲烷浓度达到0.5%时,分站应能通过断电执行器切断动力电源并闭锁,同时发出声、光报警信号;④当甲烷浓度达到3.0%时,分站应能通过断电执行器切断动力电源并闭锁,同时发出声、光报警信号;⑤当局部通风筒信号断开时,分站应能通过断电执行器切断动力电源并闭锁。
完成这些功能的PLC执行程序如下:
第1行 LD A4 >= 中间变量 V1
第2行 OR X34 = 立即数 1
第3行 OUT Z12 = 立即数 1
第4行 OUT A12 = 立即数 0
第5行 LD A4 < 中间变量 V2
第6行 AND X34 = 立即数 0
第7行 OUT Z12 = 立即数 0
第8行 OUT A12 = 立即数 1
第9行 LD A5 >= 中间变量 V3
第10行 OR X35 = 立即数 1
第11行 OUT Z13 = 立即数 1
第12行 OUT A13 = 立即数 0
第13行 LD A5 < 中间变量 V4
第14行 AND X35 = 立即数 0
第15行 OUT Z13 = 立即数 0
第16行 OUT A13 = 立即数 1
第17行 LD A6 >= 中间变量 V5
第18行 OR X36 = 立即数 1
第19行 OUT Z14 = 立即数 1
第20行 OUT A14 = 立即数 0
第21行 LD A6 < 中间变量 V6
第22行 AND X36 = 立即数 0
第23行 OUT Z14 = 立即数 0
第24行 OUT A14 = 立即数 1
第25行 LD A6 >= 中间变量 V7
第26行 OR X36 = 立即数 1
第27行 OUT A15 = 立即数 0
第28行 LD A6 < 中间变量 V8
第29行 AND X36 = 立即数 0
第30行 OUT A15 = 立即数 1
第31行 LD A8 = 立即数 0
第32行 OUT A16 = 立即数 1
第33行 LD A8 = 立即数 1
第34行 OUT A16 = 立即数 0
第35行 LD A9 = 立即数 0
第36行 OUT A17 = 立即数 1
第37行 LD A9 = 立即数 1
第38行 OUT A17 = 立即数 0
第39行 LD Z12 = 立即数 1
第40行 OR Z13 = 立即数 1
第41行 OR Z14 = 立即数 1
第42行 OUT A20 = 立即数 1
第43行 LD Z12 = 立即数 0
第44行 AND Z13 = 立即数 0
第45行 AND Z14 = 立即数 0
第46行 OUT A20 = 立即数 0
第47行 END
设计了具有分布式PLC通用功能的监控分站,它既能够采集开关和脉冲数据,也能够通过RS485接口采集智能传感器的数据;并将这些数据进行组合,用于通过监控分站控制开关量;分站融合了几类传感器的数据接入,满足了数据共享的需求。