最新新闻
我要投稿
联系电话:027-87592219/20/21转188
投稿邮箱:tb@e-works.net.cn
您所在的位置:首页 > 智库 > 智能装备

基于西门子PLC的参数化控制编程

发布时间:2013-07-31 作者:陈权权  来源:万方数据
关键字:参数化 控制 编程 西门子 PLC 
本文用具体的工程实例阐述了西门子PLC在参数化控制系统中的应用。为对众多数量设备进行顺序控制,作者提出参数化的逻辑控制,以西门子PLC为核心控制器,以参数化逻辑编程为载体,实现对整个生产系统的良好控制。

1 引言

  西门子S7—200/300为可编程逻辑控制器,具有丰富的指令强大、运行稳定特点,广泛的应用于工业控制。本文将西门子S7—200/300组合,共同构成一个完整的控制网络,该系统应用于一种药品的生产流程控制,其涉及众多反应罐和控制设备,程序设计中进行参数化处理,发掘控制逻辑共性,使整个控制系统逻辑清晰、易于修改。

2 控制系统软硬件环境

  2.1 硬件

  上位监控计算机两套,下位西门子s7—300PLC-套,s7—200PLC若干套,以及反应釜、阀、泵、变频器等需要被控制的设备。

  2.2 软件

  上位使用组态王6.5开发和监控软件, 下位为Step7和Step7Micro/Win编程软件。

3 控制对象参数化处理

  3.1 控制参数化和流程和配方的概念

  流程是一个反应罐生产所进行所有操作,包含每一步所要控制的设备及控制顺序,固化在S7-200PLC中,更改需重新下载。配方是操作人员用上位组态王通过S7-300控制器经DP总线发送到指定200PLC中,配方中包含所有流程步、被执行的顺序及加料量等参数,可以根据工艺修改。

  3.2 流程和配方中涉及的参数化处理

  (1)流程步参数化:将流程进行排序用流程序号指向对应流程,这在程序的执行中对流程步调用起到指针的作用。(2)设备参数化:将整个流程中所有设备进行编号。规则:0表示空设备,1为泵,2为底阀,3为排污阀,4为总阀,5-14为阀1~10。(3)控制参数化:为解决设备启停连锁先后顺序,引入一个字节开关掩码:低4位开掩码,高4位关掩码。由高到低对应设备编号定义的被控设备,1关联,0不关联。如开关掩码为0010 0110,高四位0010为设备1的关掩码,四位所对应的设备号从高到低4321,表明设备l关闭前提是设备2先关;低四位01l0为设备1的开掩码,表明设备1打开的前提条件是设备2和设备3都打开。

  3.3 S7- 200参数化控制编程

  (1)读取配方参数:考虑生产需求,配方的执行由人工按钮启动,步执行以后按该步序号读取VB 1200中的流程参数,放到从VB319起始的6个临时内存中。

  程序代码(斜体表示):
  LD启动步:IO.2
  //启动按钮按下
  EI 7
  CALL指针计算:SBR1 1,&VB1200,10,当前步:VB312,0,
  #Point:LD0
  //计算出存放配方参数的地址
  BMB #Point: LD0,配方序号:VB319,6
  //存储配方控制参数

  (2)执行流程参数:配方执行(V31 8.24升沿),以内存VB1200中读取的流程序号(已经存储在VB320后单元中)为指针,从VB2000中读取流程控制数据,包括设备编号,开关掩码等,放到从VB300起始内存中。

  程序代码:
  LD步启动:V318.2
  EU
  CALL指针计算:SBR1 1,&VB2000,15,执行流程:VB320,1,#Point:LD1
  //计算出存放流程参数的地址
  BMB #Point: LD10,流程类:VB300,9

  (3)输出逻辑控制指令。下面以设备1的启停控制为例说明该逻辑控制的实现。如下面代码所示,其中

  控制1:V310.0置1贝0打开设备1,否则关闭。
  设备1启动控制代码:
  LD步执行:V318.3
  //流程步执行中,步执行为1
  LD状态2:V309.1
  设备2状态与其开掩码常闭触点进行或运算
  ON开掩码12:V305.1
  ALD
  LD状态3:V309.2
  ON开掩码13:V305.2
  ALD
  LD状态4:V309.3
  ON开掩码14:V305.3
  ALD
  S控制1:V310.0,
  //输出逻辑控制指令
  设备1停止控制代码:
  LDN步执行:V3l8.3
  LDN状态2:V309.1
  //设备2状态常闭触点与其开掩码常闭触点或运算
  ON 关掩码12:V305.5
  ALD
  LDN状态3:V309.2
  ON关掩码13:V305.6
  ALD
  LDN状态4:V309.3
  ON关掩码14:V305.7
  ALD
  R控制1:V310.0,
  //输出逻辑控制指令

  从控制代码中可以看出:设备1的控制与其它三个设备状态以及开关掩码有关,状态1,状态2,状态3,状态4为三台设备的状态值,开关掩码直接决定设备1的控制指令是否与该设备的状态有关。

  以上就是该控制系统中S7-200的参数化编程每一步的代码实现。

本文为授权转载文章,任何人未经原授权方同意,不得复制、转载、摘编等任何方式进行使用,e-works不承担由此而产生的任何法律责任! 如有异议请及时告之,以便进行及时处理。联系方式:editor@e-works.net.cn tel:027-87592219/20/21。