西门子模块6ES7222-1EF22-0XA0使用选型
1. 1 系统工作原理6 g5 G4 [7 G6 E$ g7 T. ~& J
给煤机系统的主要功能就是根据发电功率的要求来调整燃烧所需要的煤量。给煤机主要由输送带和马达组成,从煤仓落至给煤机输送带上的煤通过输送带输送至磨煤机。系统原理如图1所示。系统将两路称重传感器测得重量信号转化得到实际煤重,比较两路重量大小判断称重传感器是否失效,如果没有失效,实际总重量即为两路重量之和;如果失效,实际重量等于密度与容积之积,实际重量与输送带速度的乘积即为实际给煤率,然后根据请求给煤率和实际给煤率的偏差,采用常规PID控制调节给煤机马达转速,终实现系统煤量调节,同时也实现发电功率调节。2 R6 {. k- u/ p' |7 P" \! X
1. 2 系统工作方式
(1)遥控方式是给煤机控制系统主要的工作方式,所谓的“遥控”是相对DCS主控室而言,也就是说给煤机在该工作方式下接受来自DCS主控室的控制信号实现煤量控制,控制信号主要有给煤机的启停信号和请求给煤率信号。当操作人员选择“遥控方式”时,给煤机按用户请求的给煤率实现恒流量控制。
(2)停止方式
使给煤机停止工作,有2种方法: ①主控室发出一个给煤机停止信号; ②在就地控制柜的触摸屏上选择“停止方式”。给煤机的停止方式主要是为了实现在该工作方式下的“校验皮带秤”的工作。当操作人员选择“停止方式”时,给煤机先停止运行,然后用户可以选择“校验皮带秤”等功能进行相关操作。
(3)就地方式
就地方式是一种就地调节给煤机转速的工作方式,在该工作方式下,系统不接受来自DCS主控室的控制信号。当操作人员选择“就地方式”时,给煤机按现场设定的速度运行。该方式作为校验系统转速变频控制功能是否正常的一种方式。
2 控制系统设计
2. 1 系统基本组成 : }2 n( |) U3 K7 e# S$ D/ `2 n, {
该控制装置主要由PLC、NT(工业触摸屏)、变频 器、重量检测机构、给煤机马达转速检测机构及各种执行机构等组成,控制系统组成结构如图2所示。7 m( k) t' H. L4 I! Q
可编程控制器PLC采用日本OMRON 公司的CQM1H,CPU模块为CQM1H - CPU51,该CPU模块自带16个输入点,包括了3个高速计数脉冲输入;另外加1个D I模块CQM1H - ID211, 2个DO模块CQM1H -OC221, 1个4点A /D转换模块CQM1H - AD041, 1个4点D /A转换模块CQM1H - DA021及相应供电模块,以满足输入/输出点数及模拟量输入要求。变频器采用日本安川公司的YASKAWA—Varispeed G7系列3. 7kW变频器,该变频器具有操作简单、体积小、功能全面、抗干扰强、变频效果好等特点。
NT是与PLC配套使用的设备,它具有操作简单、界面美观直接、与PLC通讯良好、抗干扰能力强的特点,是一种取代控制面板和键盘的智能操作显示器,用于设置数据、显示参数、以动画等形式显示自动控制过程;作为PLC的人机界面,一方面扩展了PLC的功能,组成交互式工作界面的独立系统,另外一方面也可以大大减少操作台上按钮、开关仪器等使用数量,使PLC外围电路更简单。本系统选用OMRON公司的NT631C,它与PLC配套使用,实现各种开关量输入、系统参数设定、修改及各种工作状态显示,它通过RS - 232与PLC通讯。
2. 2 PLC程序设计 1 o0 I; C& w; `# d, S
给煤机控制主要有远控方式下的流量PID调节,就地方式下转速调节,停止方式下的给煤机的校验等,根据生产工艺要求,考虑操作方便及安全可靠性,采用模块化程序设计,系统程序结构如图3所示。; z8 {7 ]) j+ r# k8 F4 z/ A
* R+ \; r; @/ i$ @! c$ L) Q
给煤机的流量P ID调节是根据实际给煤率和请求给煤率的偏差进行P ID调节,实际给煤率的计算精度将直接影响到给煤机控制系统的调节精度,因此实际给煤率的计算非常重要。系统称重传感器称重的有效范围是91. 44 cm,也就是说称重传感器检测出的称重信号值是91. 44 cm长度内的重量,如果不加处理进行累加必然出现重复累加,所以必须把91. 44 cm长度内的称重重量先转化为单位长度的重量,然后才进行累加。具体做法是先将每个扫描周期所累计的称重重量除以91. 44 cm所对应的齿轮脉冲数,得出单位脉冲所对应的重量,然后再乘以单位时间所对应的脉冲数即得到实际给煤率。8 B+ W! y$ i) d* [
2. 3 NT设计5 Z! R5 ?3 _5 Q9 X
NT631C是一个小型多功能5英寸的全屏幕显示面板,屏幕为320 ×240点,防水、防振动、防反光,可以在恶劣环境下运行。它通过本身具有的RS -232以直接连接方式与PLC或个人计算机通讯,在计算机上通过它的支持软件NTST3. 3C设计各个控制及说明画面,下载到触摸屏后,再通过与PLC的通信来完成。; N6 n4 {' A) R+ U9 n
0 I5 |$ f; x5 a3 W0 L2 @
屏幕的软件框图如图4所示。2类画面之间的切换由箭头的方向表示,可有2种方式切换: ①设置功能键,两屏幕之间直接切换,不经过PLC; ②设置开关键,由PLC控制切换。
(1)初始画面 显示本控制系统名称;$ c1 l2 q: `" E8 o& p
(2)参数设置 包括就地控制转速、校验挂码重量、P ID调节参数、各报警的时间参数及报警值的设置。在每一个参数设置画面都有输入键盘,每个键盘都为触摸键,用户可直接输入数据,这些数据被放入NT631C的数据表中,通过通信再送至PLC的数据寄存区, PLC程序运行时就会调用这些参数。为了保证系统参数的安全,进入“参数设置”项必须输入密码,密码输入正确才能进入设置或者修改参数,当然密码随时可以修改。5 U- R7 s9 I+ r' S4 x$ {$ @2 r
(3)运行 包括运行操作和运行状态的显示,运行中所有的操作都通过触摸屏完成,其中包括运行方式的切换,系统功能的选择都是通过触摸屏实现;运行操作按钮也同样是设置了密码的权限保护,避免其他人等的误操作。状态显示包括了系统中所有的重要参数,如请求给煤率、实际给煤率、实际转速、给煤机马达电流等。, X1 S, C" Z9 P" Z$ S
(4)报警历史 报警历史可以显示多达256 条报警记录,用于帮助分析系统出现的问题。1 l4 c/ `+ l* B4 E
2. 4 变频器参数设置 " |3 Q4 Q& m6 O9 q
在该控制系统中,变频器接受远方模拟量端子输入控制,也就是说PLC输出模拟量转速控制信号到变频器,由变频器来完成变频控制给煤机马达。其中主要参数设置如表1,其余参数按出厂的默认设置。
3 结语
本系统自2006 年11 月投入运行以来,运行稳定,状况良好,显示、控制功能正确,大大提高系统控制精度和稳定性,为管理人员、操作人员带来了极大的方便。特别是本系统投资少,实用性强,在实际应用中取得了良好的效果。
1 引言
可编程控制器(PLC)是一种以微处理器为核心,带有指令存储器和输入、输出接口,将自动化技术、计算机技术、通信技术融为一体的新型工业控制装置。PLC 具有可靠性高、编程简单、通用性好、功能强大、体积小、功耗低、设计施工周期短等特点,其应用领域已覆盖了所有工业企业。本模拟器中采用日本松下电工株式会生产的输入、输出均为16 路的FP0_C32 型可编程控制器。
大规模数字I/O 扩展是针对被监控系统中由于数字I/O 量非常多,但普通的数字I/O 卡无法满足需求而提出的一种I/O 扩展方法。由于此模拟器的研制需要近千个I/O 通道,因此采用了一种32 路光电隔离多通道数字I/O 板。与FP0_C32 型PLC 配合使用,以指示灯或开关为例,共能采集4096 种开关状态,同时控制1024 个指示灯。
ControX2000 通用监控软件是由北京华富惠通公司开发的一种先进的工业控制用软件,它融过程控制设计、现场操作以及资源管理于一体。该软件功能强大,组态方式灵活,拥有庞大的驱动程序库,支持几百种常用的硬件设备,与PLC 的通信非常方便,在生产过程参数监控和生成人机交互界面中也具有巨大的优势。因此,笔者采用ControX2000 软件与FP0_C32 型PLC 共同完成对本模拟器的监控, 在PLC 和ControX2000中如何编程是本设计的关键所在。
2 系统结构
该模拟器采用安装有ControX2000 软件的工业控制计算机作为系统主控和人机界面显示。由于被监控设备和控制计算机距离较近,因此采用RS- 232 端口和FP0_C32 型PLC 进行实时数据交换。PLC 通过16路输入端口采集数据,同时通过16 路输出端口送出数据。系统结构如图1 所示。
图1 系统结构示意图
下面以读取开关状态和控制指示灯为例简要说明PLC 通过32 路光电隔离多通道数字I/O 板监控设备的原理。在使用PLC 的16 路输出时,将其分为高8位和低8 位,高8 位表示用来输出选中一组设备(8 个灯或8 个开关状态为一组设备)的地址。低8 位用来输出控制指示灯的数据,该数据中的二进制数位为1则该灯亮,为0 则该灯灭,255 表示这一组的8 个灯全亮。如果要使第6 组设备的第5 个灯亮则PLC 输出数据为6×256+8=1544,如果要读取处于第128 组开关设备的状态则PLC 先输出数据128×256=32768,然后通过16 路输入口读取表示该组开关状态的数据,通过对该数据的分析则可知该开关处于什么位置。
3 PLC 的基本工作原理及编程设计
3.1 PLC 的基本工作原理
PLC 的工作方式为循环扫描方式,工作过程大致分为3 个阶段,即输入采样、程序扫描和输出刷新。PLC 重复地执行上述3 个阶段,周而复始。每重复一次的时间称为一个扫描周期。
1.输入采样
PLC 在系统程序控制下以扫描方式顺序读入输入端口的状态(如开关的接通或断开),并写入状态寄存器,此时输入状态寄存器被刷新。接着转入程序执行阶段。在程序执行期间,即使输入状态发生变化,输入状态寄存器的内容也不会改变。输入状态的改变只能在下一个扫描周期输入采样到来时,才能重新读入。
2.程序执行
PLC按照梯形图先左后右,先上后下的顺序扫描执行每一条用户程序。执行程序时所用的输入变量和输出变量,是在相应的输入状态寄存器和输出状态寄存器中取用,运算的结果写入输出状态寄存器。
3.输出刷新
将输出状态寄存器的内容传送给输出端口,驱动输出设备,这才是PLC 的实际输出。
PLC 的工作原理与计算机的工作原理基本一致,都是通过执行用户程序实现对系统的控制。但是在工作方式上两者有很大差别。计算机在工作过程中,如果输入条件没有满足,程序将等待,直到条件满足才继续执行。而PLC 在输入条件不满足时,程序照样顺序往下执行,它将依靠不断地循环扫描,一次次通过输入采样捕捉输入变量。但由此带来的问题是,如果当扫描到来时输入变量在此期间发生变化,则本次扫描期间输出就会有相应的变化。如果在本次扫描之后输入变量才发生变化,则本次扫描周期输出不变,只有等待下一次扫描输出才会发生变化。这就造成了PLC 的输入与输出响应的滞后,甚至可滞后2~3 个周期。尽管这种响应滞后对工业设备来说是完全允许的,但表明只有当输入变量满足条件的时间大于扫描周期,这个条件才能被PLC 接收并按程序执行。这种现象在对PLC 编程设计时应给予高度重视,否则将不能得到正确的输出结果。
3.2 PLC 的参数设置及编程设计
本模拟器采用FP0_C32 型PLC,其通信参数设置如下:
网络类型:RS232 串行端口:COM2
波特率: 9600 bps 数据长: 8 位
停止位: 1 位 奇偶校验:奇
鉴于PLC 的工作原理和本模拟器的实际情况,为消除PLC 的输入与输出响应滞后的影响,保证PLC 输出的实时性和准确性,笔者用符号梯形图在PLC 中编程(部分)如图2 所示:
图2 PLC中的编程
注释:
V1:CT100 为一减计数器,当R9012 继电器接通时其内部计数器数值减1,当减到0 时C100 继电器接通,计数器复位。
2:当EV100=49 时,将输出寄存器的高8 位置128。“128”是一组开关设备的地址,下面的129、130、131 的意义与128 同。
3:当EV100=48 时,将DT0 送至输出寄存器,并将输入寄存器的数值保存在DT128 中。
4:当EV100=47 时,将输出寄存器的高8 位置128。这一步不可省。
5:当EV100=46 时,将DT1 送至输出寄存器。
6:当EV100=45 时,将输出寄存器的高8 位置129。
7:当EV100=44 时,将输入寄存器的数值保存在DT129 中,将输出寄存器的高8 位置130。
8:当EV100=43 时,将输入寄存器的数值保存在DT130 中,将输出寄存器的高8 位置131。
说明:
1、DT0 和DT1 中存贮的是从ControX2000 中获得的表示灯的状态的数据,所有表示灯的状态的数据都通过这两个寄存器由PLC 送出。因此PLC 和ControX2000中的编程应jingque设计,确保DT0 或DT1 中的数据再次变化之前PLC 已经将它们送出,否则将丢失数据。
2、每次PLC 将DT0 或DT1 送往输出寄存器之前必须将输出寄存器的高8 位置128,且地址为128 的设备必须为开关或为空。否则灯的状态将不能正确显示。
3、在电路设计时应尽量使有可能在同一时刻产生状态变化的灯分在同一组设备内,上面的设计可让2 组(16 个)灯在同一时刻发生状态变化。也可跟据需要增加具有DT0 功能数据寄存器的数量。
4、DT128、DT129、DT130 中存贮的是表示开关状态的数据,编程设计应使这些数据在再次变化之前已被ControX2000 取走。
5、如果读取的开关设备组数较多,应在编程中增加将DT0 或DT1 送往输出寄存器指令的次数,以保证灯的状态能实时的发生改变。
4 ControX2000 中的编程设计
在ControX2000 的工程游览窗口的“硬件系统”中新建名为“PLC”的设备,建立与FP0_C32 表1 controx2000的标签变量表
标签类型 变量名 主设备 主地址 扫描周期
开关量 n1-n4 内存
开关量 m1-m4 内存
I/O标签 DT0 PLC DT0 10ms
I/O标签 DT1 PLC DT1 10ms
I/O标签 DT128 PLC DT128 10ms
I/O标签 DT129 PLC DT129 10ms
I/O标签 DT130 PLC DT130 10ms
型PLC 连接,计算机串行口参数设置应与PLC 中的完全一样。建立标签变量如表1 所示。
在图页中建立名为a1 的图页变量,扫描步长为4,在扫描事件中编写如下程序:
{读取开关状态数据并判断}
if (DT128.Value and 1)=1 then n1.Value:=0;
{开关n1 处于关的状态}
if(DT128.Value and 2)=2 then n1.Value:=- 1;
{开关n1 处于开的状态}
if (DT128.Value and 4)=4 then n2.Value:=0;
if (DT128.Value and 8)=8 then n2.Value:=- 1;
if (DT128.Value and 16)=16 then n3.Value:=0;
if (DT128.Value and 32)=32 then n3.Value:=- 1;
if (DT128.Value and 64)=64 then n4.Value:=0;
if (DT128.Value and 128)=64 then n4.Value:=- 1;
if (DT129.Value and 1)=1 then m1.Value:=0;
{开关m1 处于关的状态}
if(DT129.Value and 2)=2 then m1.Value:=- 1;
{开关m1 处于开的状态}
if (DT129.Value and 4)=4 then m2.Value:=0;
if (DT129.Value and 8)=8 then m2.Value:=- 1;
if (DT129.Value and 16)=16 then m3.Value:=0;
if (DT129.Value and 32)=32 then m3.Value:=- 1;
if (DT129.Value and 64)=64 then m4.Value:=0;
if (DT129.Value and 128)=64 then m4.Value:=- 1;
{判断指示灯的状态并给DT0 和DT1 赋值}
if (a1.dvalue0<>n1.Value) or (a1.dvalue1<> m1.Value) then begin
DT0.Value: =- n1.Value*1 - n1.Value*2 - n1.Value*4 - n1.Value*8 - n1.Value*16 - n1.Value*32 - n1.Value*64- n1.Value*128+x*256;
DT1.Value: =- m1.Value*1 - m1.Value*2 - m1.Value*4 - m1.Value*8 - m1.Value*16 - m1.Value*32 - m1.Value*64- m1.Value*128+y*256;
a1.dvalue0:=n1.Value;
a1.dvalue0:=n1.Value; end;
{ a1.dvalue0 和a1.dvalue1 分别用来贮存由开关n1 和m1 控制的灯的状态,这两组灯有可能在同一时刻发生状态改变,如果该灯的状态发生变化则刷新DT0 和DT1 中的数值,x 和y 分别是上面两组灯的地址数据}
5 结论
本模拟器在采用大规模数字I/O 扩展板的基础上,由ControX2000 和PLC 相互配合,共同完成对硬件设备的监控。PLC 完成对硬件设备的数据采集和控制等任务,ControX2000 作为主程序,完成友好的用户界面开发和逻辑运算等工作。运行结果表明,该系统运行稳定、可靠,完全达到了设计规定的性能指标和要求,而且节约了成本,是一种经济、实用、可靠的模拟系统。