威纶通定时循环操作宏_一文带你轻松学会PLC主程序结束,程序循环与程序传送等指令...

本文详细介绍了PLC编程中的关键指令,包括主程序结束(FEND)、警戒时钟(WDT)、循环开始与结束以及传送比较指令。通过实例解析,阐述了这些指令在程序中的应用,帮助读者掌握如何确保程序正常扫描、处理循环逻辑以及数据比较的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

为了让大家掌握更多PLC指令,所以本章仍旧为大家介绍PLC功能指令的使用方法。

主程序结束:

该指令的指令代码,助记符,操作数如下表:

9915c3ca390c8b6ff708404bf2425453.png

这条指令的使用主要是区分主程序和子程序的关系

8862c5e24e41dd47df8d5403337af73e.png

FEND表示主程序结束,与END一样,进行输入输出处理或者警告定时刷新后,程序返回第0步,在一个程序中可以多次使用FEND指令。子程序或者是程序中断必须要写在FEND与END之间,然后以IRET或SRET结束

警戒时钟指令:

该指令的指令代码,助记符,操作数如下表:

10ea9074dfd433212f4d04bd2b52754b.png

指令应用方法:在PLC中如果一个程序扫描周期超过200ms时,那么这个程序就不能正常进行,所以为了能够让这个程序得到正常的扫描,我们就要在这个程序之间插入WDT程序。因为WDT能够对PLC的监视定时器进行刷新。

程序示例:

5eca567ca359a087afde1b916c21dcc0.png

比如在这个程序中,程序从D0步开始,执行到WDT的时候,它内部的程序监视定时器刷新,然后又从D0步开始直到END结束。这样子PLC内部的监视定时器就可以分为两个部分来记,这样子这个240ms的程序就可以扫描完。当然我们还可以用另一个方法:

PLC恒扫描方法:

54b9971af104b2067035a9371c852033.png

我们可以修改特殊寄存器D8000,把K300移入到D8000里面,那么这个程序的扫描时间就变成了300ms,同样也可以解决这个问题。

循环开始和循环结束指令:

该指令的指令代码,助记符,操作数如下表:

8bb58202a13156bcf27a29d19d68705d.png

指令格式:

845fc885447317490ac526ab859d790e.png

程序中用了两个FOR与NEX,A一个为循环,B为一个循环。

使用案例:

57fd34a617e50612ff90616d1cc32d7a.png

当我们接通X0后,程序跳转指令起作用,程序跳转到P0位置,中间的循环程序被跳过,所以D0的值为0。当我们断开X0后,先执行外围的循环程序4次,中间的循环程序5次,最里面的循环程序5次,因为程序在每执行一次D0加1,所以D0=5X5X4=100,在循环了这100次后,才跳出程序。

传送比较指令

传送比较指令包括数据比较,传送,交换和变换:共10条指令代码从FNC10~FNC19.这部分指令是属于基本的应用指令,使用非常普及。

比较指令:

该指令的指令代码,助记符,操作数如下表:

c593f38b122eb8b04f9f067070a5b1cf.png

S1,S2源操作数,都是字元件。D为目标操作数。程序步在16位运行的时候为7步,在32位运行的时候为13步,可以为连续执行,也可以为脉冲执行。

程序案例:

628d612a27b726ea4d9fe4adaf3c9504.png

当我们接通X10后,C10的当前值与K100进行比较,比较的结果通过M10,M11,M12来进行表示。当K100大于C10的当前值的时候,M10接通。当K100等于C10的当前值的时候,M11接通。当K100小于C10的当前值的时候,M12接通。但是我们要注意程序在执行的时候只会接通其中一个,而且只有一个是接通的。

喜欢更多PLC知识,关注小编不迷路噢!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值