1.条件跳转指令
CJ和CJP指令用于跳过顺序程序中的某一部分,这样可以减少扫描时间,并使“双线圈操作”成为可能。
在图4-7所示的例子中,当X0为ON时,程序从第1步跳到第36步(标号P8的下一步)。如果X0为OFF,跳转不执行,程序按原顺序向下执行。跳转时,被跳过的那部分的指令不执行。
即使触点状态变化,线圈的状态也不变,见表4-3。
表4-3 图4-7示例中跳转前后触点、线圈状态
注:1.Y1成了双线圈,其操作由X0的ON/OFF状态决定,即X0OFF时,
Y1由X1驱动;X0ON时,Y1由X12驱动。双线圈中,一个在跳转
程序之内、一个在跳转程序之外是不允许的。
2.对积算型定时器及计数器的RESET指令在跳转程序中时,即使跳转生效,RESET指令仍会被执行。
3.定时器T192~T199、高速计数器C235~C255一经驱动,即使处理指令被跳过,也会继续工作,输出触点也能动作。
图4-7 条件跳转示例
在程序中,两条跳转指令使用相同的指针号时(见图4-8a),执行情况如下:
1)如果X20为ON,第一条跳转指令生效,从这一步跳到标号P9。如果X20为OFF,而X21为ON,则第二条跳转指令生效,程序从这里开始跳到标号P9处。
2)一个标号只能出现一次,如出现多于一次,则会出错。
标号可以出现在跳转指令之前,如图4-8b所示。但这时如X22ON的时间超过100ms,会引起警戒时钟出错。
图4-9所示为无条件跳转,因为PLC运行时M8000总为ON。用CJ(P)指令时,跳转仅在X22由OFF变为ON时生效。(www.xing528.com)
图4-8 条件跳转
图4-9 无条件跳转
在图4-9所示程序中,使“CJP7”指令仅在X23由OFF变为ON后执行一个扫描周期。用这种方法,“CJP7”和标号P7之间设置输出的程序执行完后,在以后的扫描周期中就被跳过(设置初始化条件时很有用)。
标号的编程方法如图4-10所示。
图4-10 标号的编程方法
2.跳转与主控区
图4-11所示为跳转与主控区的例子。
1)跳过整个主控区(MC~MCR)的跳转不受限制。
2)从主控区外跳到主控区内时,跳转独立于主控操作,CJ KP1执行时,不论M0状态如何,均作ON处理。
3)在主控区内跳转时,如M0为OFF,跳转不可能执行。
4)从主控区内跳到主控区外时,M0为OFF时,跳转不可能执行;M0为ON时,跳转条件满足可以跳转,这时MCR被忽略,但不会出错。
5)从一个主控区内跳到另一个主控区内时,当M1为ON时,可以跳转。执行跳转时不论M2的实际状态如何,均看作ON。MCR N0被忽略。
图4-11 跳转与主控区例
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。