(1) 对状态进行编程处理,必须使用步进接点指令STL,它表示这些处理(包括驱动、转移)均在该状态接点形成的子母线上进行。 (2)与STL步进接点相连的触点应使用LD或LDI指令,下一条STL指令的出现意味着当前STL程序区的结束和新的STL程序区的开始。 RET指令意味着整个STL程序区的结束,LD点返回左侧母线。每个STL步进接点驱动的电路一般放在一起,最后一个STL电路结束时(即步进程序的最后),一定要使用RET指令,否则将出现“程序语法错误”信息,PLC不能执行用户程序。 (3)状态编程顺序为:先进行驱动处理,再进行转移处理,不能颠倒。驱动处理就是该状态的输出处理,转移处理就是根据转移方向和转移条件实现下一个状态的转移。 (4)初始状态可由其他状态驱动,但运行开始时,必须用其他方法预先作好驱动,否则状态流程不可能向下进行。一般用控制系统的初始条件,若无初始条件,可用M8002或M8000进行驱动。 M8002是一个初始脉冲,它只在PLC运行开关由STOP→RUN时有电一个扫描周期,故初始状态S0就只被它“激活”一次,因此,初始状态S0就只有初始复位的功能。M8000是运行监视,它在PLC的运行开关由STOP→RUN后一直有电,直到PLC停电或PLC的运行开关由RUN→STOP,故初始状态S0就一直处在被“激活”的状态。有的时候还用其他触点进行组合来驱动S0。 本文来自www.eadianqi.com (5)STL步进接点可以直接驱动或通过别的触点驱动Y、M、S、T等元件的线圈和应用指令。驱动负载使用OUT指令时,若同一负载需要连续在多个状态下驱动,则可在各个状态下分别输出,也可以使用SET指令将负载置位,等到负载不需要驱动时,用RST指令将其复位。负载的驱动或状态转移的条件也可能是多个,要视其具体逻辑关系,将其进行串、并联组合。 单流程状态转移图及指令表 (6)若为顺序不连续转移(即跳转),不能使用SET指令进行状态转移,应改用OUT指令进行状态转移。 非连续转移状态转移图 (7)由于CPU只执行活动步对应的电路块,因此,使用STL指令时允许双线圈输出,即不同的STL触点可以驱动同一软元件的线圈,但是同一软元件的线圈不能在同时为活动步的STL区内出现。在有并行流程的状态转移图中,应特别注意这一问题。另外,状态软元件S在状态转移图中不能重复使用,否则会引起程序执行错误。 (8)在步的活动状态的转移过程中,相邻两步的状态继电器会同时ON一个扫描周期,可能会引发瞬时的双线圈问题。所以,要特别注意如下两个问题: 本文来自www.eadianqi.com 一是定时器在下一次运行之前,应将它的线圈“断电”复位后才能开始下一次的运行,否则将导致定时器的非正常运行。所以,同一定时器的线圈可以在不同的步使用,但是同一定时器的线圈不可以在相邻的步使用。若同一定时器的线圈用于相邻的两步,在步的活动状态转移时,该定时器的线圈还没有来得及断开,又被下一活动步起动并开始计时,这样,导致定时器的当前值不能复位,从而导致定时器的非正常运行。 二是为了避免不能同时接通的两个输出(如控制异步电动机正反转的交流接触器线圈)同时动作,除了在梯形图中设置软件互锁电路外,还应在PLC外部设置由常闭触点组成的硬件互锁电路。 (9)并行流程或选择流程中每一分支状态的支路数不能超过8条,总的支路数不能超过16条。 (10)STL步进接点右边不能紧跟着使用MPS指令。STL指令不能与MC、MCR指令一起使用。在FOR、NEXT结构中、子程序和中断程序中,不能有STL程序块,但STL程序块中可允许使用最多4级嵌套的FOR、NEXT指令。虽然并不禁止在STL步进接点驱动的电路块中使用CJ指令,但是为了不引起附加的和不必要的程序流程混乱,建议不要在STL程序中使用跳转指令。 本文来自www.eadianqi.com (11)需要在停电恢复后继续维持停电前的运行状态时,可使用S500~S899停电保持状态继电器。 |