新闻详情

PLC的条件跳转、子程序调用详解

发布时间: 2024-03-28

条件跳转指令:

指令名称,助记符,指令代码,程序步如下表:

程序步可以是连续执行或者是脉冲执行,cj执行的为3步,cj(p)为1步。

指令格式:

当我们按下x000后,程序跳转指令开始运行,程序所跳转的位置为程序指针所在的位置,也就是标号10,在这里我们要注意程序指针写在左母线的左边。当我们启动跳转指令后,x001这段程序就会被跳过不执行。

当x0为on时,被跳转cj命令到标号之间的程序不子执行。在跳转过程中如果y、m,s被out、set. rst指令驱动使输入发生变化则仍保持跳转前的状态。例如,通过x1驱动输出y10后发生跳转,在跳转过程中即使x0变为on,但输出y10仍有效。

注意:

1、对于t、c,如果跳转时定时器或计数器正发生动作,则此时立即中断计数或停止计时,直到跳转结束后继续进行计时或计数。但是,正在动作的定时器t192~t199与高速计数器c235~ c255. 不管有无跳转仍旧维续工作。

2、功能指令在跳转时不执行,但plsy、 plsr、pww指令除外。

子程序调用与返回指令:

指令名称,助记符,指令代码,程序步如下表:

指令格式:

图中fend表示主程序结束,在fend前面的我们称为主程序,在fend后面的我们称为子程序。sret表示子程序结束,或者叫子程序返回。我们要注意,在fend与sret之间的程序,我们称为第一个子程序,在第二个sret之前的我们称为第二个子程序。当我们按下x001的时候,指针调用到p11,程序开始从p11这个地方从上往下开始执行,当碰到第一个sret的时候,程序又返回到主程序中,但是在这个程序中如果x002被接通,那么程序指针则调用到p12,程序开始从上到下运行,当碰到第二个sret的时候,程序返回到p12这个地方,然后在碰到第一个sret的时候,返回到主程序。因为p12这个程序是嵌套在p11这个程序中的,所以我们要注意,在plc中这种程序嵌套多只能使用5级。

中断指令:

中断指令总共有3条,我们用一个表格来详细说明:

在这里fend前面的为主程序,fend后面的为中断子程序,中断子程序能否进行与中断条件与中断指针有关,所以在这里我们得给大家说说中断指针的格式:
中断指针:

定时中断:

程序示例:

我们先给大家介绍一下这个程序:fend前面的程序表示主程序,后面的表示中断子程序,ei表示允许中断,iret表示中断返回指令,i610指针表示,中断时间为10mm,6表示高中断级别。

当我们按下x000后k1的数据被传送到d1里面去,k255的数据被传送d2里面去,m1被置位接通,中断子程序运行。ramp 表示斜坡指令,表示产生一个数据d3,而d3的变化范围是从d1到d2也就是从1到255,由于这是一个定时中断程序,当m1接通的时候,每隔10ms中断一次程序,k1000表示1000个扫描周期,因为d3的范围是从1变到255,而它所需要的时间为1000个10ms,也就是说从x0接通到d3变成255的时间为1000x10ms=10秒,当d3等于255的时候m8029接通,m1被复位断开,然后中断指令与斜坡指令被断开,然后碰到iret指令程序返回。


展开全文

供应商
广东湘恒智能科技有限公司
联系电话
15915421161
手机号
15903418770
联系人
张经理
所在地
惠州大亚湾澳头石化大道中480号太东天地花园2栋二单元9层01号房
我们的新闻
咨询 在线询价 拨打电话