摘要:结合实际,谈谈循环扫描电路在plc中的应用。
关键词:循环扫描;plc;节省;降低成本
本人在设计一设备电气控制系统的过程中遇到以下情况:plc(西门子s7—300,cpu为315—2dp)需采集64个数字量报警信号,按照正常的设计思路需要为这64个数字量报警信号需配置64个plc数字量输入点,也就是说这64个数字量报警信号需要2个32点的sm321数字量输入模板(di32×24 vdc)。在进行pie硬件配置时本人发现系统中其它控制部分已经配置了7个输入/输出模板,而西门子s7—300型plc又限制每个机架最多只能安装8个输入/输出模板,常用的解决办法只能增加1个机架,而且需要增加一对im36o,361接口模板或im365接lj模板,这样配置将会增加控制系统造价和电气控制柜内空间的占用。
本人重新分析了所遇到的问题,发现需采集的64个数字量报警信号均有以下特点:
a.所有的报警信号都是继电器的常开触点,属于无源的常on信号;
b所有的报警信号都自带保护动作,如果plc滞后1秒采集不会产生不良后果。基于以上原因本人决定采取循环扫描的方式来完成64个数字量报警信号的采集工作,经过该设备一年半的安全运行,证明这种循环扫描的方式是比较稳定可靠的。循环扫描的信号采集方式就是利用plc的输人和输出点共同完成信号的采集工作,最大特点是可以减少输入/输出模板的数量。在本系统中只需要配置1个32点的sm323数字量输入/输出模板(di16/do16 x 24 vdc/o.5a)即可实现64个数字量报警信号的采集工作,而且只用到了32个输入/输出点中的8个输入点和8个输出点,其余8个输入点和8个输出点可以用作其它用途。循环扫描电路的原理图如图1所示,图中32点sm323数字量输入/输出模板的l和m端子分别连接dc24v供电电源的正极和负极,端子10.0一10.7为8个数字量输入点,端子oo.0~qo.7为8个数字量输出点,ko1~k64为需要采集的64个数字量报警信号。按照原理图所示完成硬件连接,然后开始软件编写:
1启动simatic manager,根据硬件配置完成相应的基本设置和硬件组态,在硬件组态中设置ob35的循环扫描周期为50ms,然后在程序中添加ob35组织块;
2在符号表中建立8个变量q0.0~q0.7,数据类型均为bool,变量名称分别为“扫描输出1”~“扫描输出8”;
3在符号表中建立1个变量ib0,数据类型为byte,变量名称为“扫描输入”;
4在符号表中建立8个变量mb100~mb107,数据类型均为byte,变量名称为“扫描输人1”~“扫描输入8”;
5存符号表中建立64个变量m100.0~m107.7,数据类型均为bool,变量名称分别对应需要采集的64个数字量报警信号;
6打开ob35组织块,编写程序实现00.0~q0.7的8个数字量输出点在每个扫描周期内循环顺序得电,得电的时间长度为1个扫描周期f50ms);
7打开obi组织块,编写程序实现当oo.0得电后延时10 ms用“move”命令将变量ib0赋给变量mb100;
8 在0b1组织块中编写程序实现当00.1得电后延时j0 ms用“move”命令将变量ib0给变量mb101;
9在0b1组织块中编写程序实现当o0.2得电后延时10 ms用“move”命令将变量ib0赋给变量mr102;
10在ob1组织块中编写程序实现当003得电后延时10 ms用“move”命令将变量ibo赋给变量mb1o3;
1 1在ob1组织块中编写程序实现当oo.4得电后延时10 ms用“move”命令将变量ibo赋给变量mb104;
l2在ob1组织块中编写程序实现当o0.5得电后延时10 ms用“move”命令将变量ib0赋给变量mb105;
13在0b1组织块中编写程序实现当qo.6得电后延时10 ms用“move”命令将变量ib0赋给变量mb106;
14在ob1组织块中编写程序实现当o0.7得电后延时10 ms用“move”命令将变量ib0赋给变量mb107。
15程序编写完成,保存并下载至plc。启动plc,开始运行以上程序,符号表中的64个变量m100 0~m107.7即为需要采集的64个数字量报警信号的状态。plc采集滞后时间为50 ms x 8+10 ms=410 ms,这完全在允许范围之内。
上述方法也可以扩展,如l6个输入点和i6个输出点可以最多采集256个数字量输入信号,但plc采集滞后时间将达到50 ms×16+10 ms=810 ms。输入点数量与输出点数量相等时可以最大限度地节省数字量输入,输出点,但输出点数量越大,plc采集滞后时间越长。基于以上原因,在实际应用中如果信号采集量较大,可以考虑分成若干组或少量增加输出点、大量增加输入点的方法来缩短plc采集滞后时间。
结语:plc采用循环扫描的方式采集数字量信号可以大量地节省数字量输入点,降低系统成本,但在实际应用过程中应充分考虑plc采集滞后对系统实时性的影响,适当地调整输入点与输出点地比例关系。