1.循环指令
(1)指令格式
程序循环结构用于描述一段程序的重复循环执行。由FOR和NEXT指令构成程序的循环体。FOR指令标记循环的开始,NEXT指令为循环体的结束指令。指令格式如图3-38所示。
图3-38 FOR/NEXT指令格式
在LAD中,FOR指令为指令盒格式,EN为使能输入端。
INDX为当前值计数器,操作数为:VW,IW,QW,MW,SW,SMW,LW,T,C,AC。
INIT为循环次数初始值,操作数为:VW,IW,QW,MW,SW,SMW,LW,T,C,AC,AIW,常数。
FINAL为循环计数终止值。操作数为:VW,IW,QW,MW,SW,SMW,LW,T,C,AC,AIW,常数。
工作原理:使能输入EN有效,循环体开始执行,执行到NEXT指令时返回,每执行一次循环体,当前值计数器INDX增1,达到终止值FINAL时,循环结束;使能输入无效时,循环体程序不执行。每次使能输入有效,指令自动将各参数复位。
FOR/NEXT指令必须成对使用,循环可以嵌套,最多为8层。
(2)循环指令示例(如图3-39所示)
当I0.0为ON时,1所示的外循环执行3次,由VW200累计循环次数。当I0.1为ON时,外循环每执行一次,2所示的内循环执行3次,且由VW210累计循环次数。
图3-39 循环指令示例
2.跳转指令及标号
(1)指令格式
跳转指令在使能输入有效时,把程序的执行跳转到同一程序指定的标号(n)处执行;使能输入无效时,程序顺序执行。JMP与LBL(跳转的目标标号)配合实现程序的跳转。跳转标号n:0~255。指令格式示例如图3-40所示。(www.xing528.com)
必须强调的是:跳转指令及标号必须同在主程序内或在同一子程序内,同一中断服务程序内,不可由主程序跳转到中断服务程序或子程序,也不可由中断服务程序或子程序跳转到主程序。
图3-40中,当JMP条件满足(即I0.0为ON时)程序跳转执行LBL标号以后的指令,而在JMP和LBL之间的指令一概不执行,在这个过程中,即使I0.1接通也不会有Q0.1输出。当JMP条件不满足时,则当I0.1接通时Q0.1有输出。
(2)应用举例
图3-40 跳转指令示例
JMP、LBL指令在工业现场控制中,常用于工作方式的选择。如有3台电动机M1~M3,具有两种起停工作方式:
1)手动操作方式:分别用每个电动机各自的起停按钮控制M1~M3的起停状态。
2)自动操作方式:按下起动按钮,M1~M3每隔3s依次起动;按下停止按钮,M1~M3同时停止。
根据控制要求可知:该控制需要一个转换开关控制手动和自动;当自动时,需要起动和停止按钮;当手动式,每台电动机需要起动和停止按钮。共要控制3台电动机,接触器KM1、KM2和KM3分别控制这3台电动机,其I/O分配见表3-14。
表3-14 I/O分配表
PLC控制的外部接线图如图3-41所示,梯形图分别如图3-42所示。从控制要求可以看出,需要在程序中体现两种可任意选择的控制方式,所以运用跳转指令的程序结构可以满足控制要求。如图4-42所示,当操作方式选择开关闭合时,I0.0的常开触点闭合,跳过手动程序段不执行;I0.0常闭触点断开,选择自动方式的程序段执行。而操作方式选择开关断开时的情况与此相反,跳过自动方式程序段不执行,选择手动方式程序段执行。
图3-41 PLC接线图
图3-42 PLC梯形图
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。