什么是顺序控制继电器(S继电器)
顺序控制继电器实际上是一个标志,标志着SCR与SCRE之间的一个程序段。某个顺序继电器为1,例如Sx.y为1,意味着以此为标志的程序段会被激活执行。使用若干顺序继电器配合SCRT跳转指令能够构成一个多个分步可控的控制工程。西门子S7-200PLC和S7-200SMART PLC
通过顺序继电器能够很好的对程序进行组织,将一个完整的动作分为多个子动作执行,类似于C语言的SWITCH语句。顺序继电器也可以进行分支与合并,应用更为为灵活。相对于JMP指令,顺序控制的多个子程序之间关系更加明确,逻辑更加清晰,应用更加灵活。
如何使用顺序控制继电器(S继电器)
收线需要将一个动作过程分解为多个有先后顺序且相对独立的子过程,每个过程之间依靠固定的时间或者逻辑条件进行切换。
例如:一台洗车机工作过程首次清洗,泡沫洗,冲洗和烘干。需要使用五个顺序继电器,分别是:初始等待,首次清洗,泡沫洗、冲洗,烘干。
对应的PLC程序如下:
顺序继电器使用过程的注意事项
1、顺序继电器从激活状态变为不激活状态时,所有的输出将会被复位,包括,线圈、定时器等均会被复位,如果需要保持输出必须使用置位指令。
2、 需要使用上电初始化将其他顺序继电器复位,并置位初始态顺序继电器保证程序从初始状态执行。
3、 不允许使用JMP指令跳出或者跳入顺序控制程序段
4、 顺序控制程序段中不能使用FOR,END指令。
5、 同一个顺序继电器不能用于不同的子程序
前面也已经学习了好些指令了,现在还剩下程序控制指令和表指令没有学习,那么今天就学习一下程序控制指令。程序控制指令有FOR-NEXT循环指令、跳转指令JMP和LBL、顺序控制指令SCR、SCRT和SCRE、子程序返回指令RET、程序结束指令END、转到STOP模式的STOP指令、看门狗复位指令WDR和诊断LED指令DIAG_LED。
我们先看一下FOR-NEXT循环指令,FOR指令必须指定当前循环计数INDX、起始值INIT和结束值FINAL,NEXT指令标记FOR循环的结束。我们要注意的是每条FOR指令都必须对应一条NEXT指令,而循环执行的程序就在FOR-NEXT指令之间的,循环是可以嵌套的,它Zui多可以嵌套8层。
我们要注意FOR指令一般用沿触发,每次触发,INDX会赋以INIT的值。假如INIT为1,FINAL为10,那么每执行一次循环体内的程序,INDX值递增加1,直到大于FINAL值,退出循环。
下面再学习一下跳转指令,跳转指令JMP可以使程序从一个地方跳到一个地方去执行,LBL指令标记的就是跳转的目的地。对于跳转指令我们要注意的是可以在主程序、子程序或中断例行程序中使用跳转指令,不能从主程序跳到子程序或中断程序中去的,跳转必须是跳转到相同的代码段中的。
西门子PLC的JMP和LBL指令用法:
循环指令和跳转指令在我们编程过程中,有时是会要用到的,我们要掌握一下的。那么今天就先学习这两个指令,先消化好再来学习程序控制指令剩下的其他指令。