研选课堂
HOME
研选课堂
正文内容
plc编程for 三菱plc编程,FOR循环指令详解
发布时间 : 2024-10-12
作者 : 小编
访问数量 : 23
扫码分享至微信

三菱plc编程,FOR循环指令详解

当一个或者多个指令(程序)重复多次(次数可知)时,可使用FOR指令。FOR为有限次循环指令。

程序的执行过程主要分为3个步骤,输入检测、程序扫描、输出刷新。这是plc一个工作周期的工作顺序,在扫描的时候某些程序段需要执行多遍,这个时候我们可以使用FOR指令。让程序中的某一段反复执行多遍,然后再往下扫描。

那么,在哪些地方用到它呢。下面我们来看2个应用案例。

程序的0到9步,触发X0的上升沿信号,把M0导通,Z0、D10全部清空;第9到23步,是一段循环指令,FOR K10表示这段程序循环10遍。

第一遍,由于变址寄存器Z0里面的数字为0,D0Z0这个地址变为D0(具体参考变址寄存器的用法),ADD D10 D0Z0 D10,这条指令把D10加D0的数据放到D10里面了,由于在程序上面用了D10,所以一开始D10保存的数据为0,经过加法指令,D10里面保存数据就是D0,然后通过INC Z0加一指令,让Z0自加1,等于1.然后进入循环第二遍.

第二遍,Z0里面的数据为1,D0Z0这个地址变为D1,ADD D10 D0Z0 D10这条指令把D10(经过第一遍扫描,D10里面保存了D0)加D1的数据放到D10里面了,那么 D10里面的数据变为D0+D1,然后通过INC Z0加一指令,让Z0自加1,等于2.然后进入循环第三遍。

… …

第10遍,Z0里面的数据为9,D0Z0这个地址变为D9,ADD D10 D0Z0 D10这条指令把D10(经过第9遍扫描,D10里面保存了D0+D1+… +D8)加D9的数据放到D10里面了,那么 D10里面的数据变为D0到D9里面全部数据的总和,然后通过INC Z0加一指令,然后退出循环,进入下一步。

M8000常通触点段开M0,当进入PLC下一个工作周期时,由于循环指令里面的程序都是由M0常开触点触发的,这是就不会再触发了,也就是,经过一个PLC的工作周期,就把D0到D9里面的数据加起来,放到了D10里面了。

当然,我们也可以写程序来做一些其他的计算。下面我们来看下另外一个应用案例:

有54个X点,对应启动54个Y点,需要保持自锁,当按下按钮M0时所有输出停止。

面对这样一个要求,在没有学习循环指令之前,你可能会一段一段的写,需要写54段程序,今天,我们来尝试下用FOR指令来写,如下图:

每次进行扫描都会先把Z0清0,然后进入循环(54次),第一遍Z0=0,这时X000Z0的地址是X000,Y000Z0的地址是Y000,X000触发Y000线圈并形成自锁,通过INC指令Z0自加1;第二遍,Z0等于1,这时X000Z0的地址是X001,Y000Z0的地址是Y001,X001触发Y001线圈并形成自锁,通过INC指令Z0自加1;… …

这样的话,就把本来很冗长的一大段简化成了一小段,节省程序步数的同时减少了编程的时间。

关于FOR指令,除了以上两种,大家平时还有什么用法?

#三菱plc# #循环指令# #工控自动化#

举例说明PLC循环体FOR指令的参数及用法

使用 FOR 和 NEXT 指令可重复循环体内的程序段,来解决批量计算或重复执行的程序,这将简化程序的长度和复杂性。

一、FOR指令的参数说明

以下图说明了三个参数的作用

INDX: 它在FOR刚开始工作时,也就是在第一次循环时,使INIT的值传送给INDX(VW10)。

每在执行程序后INDX 值递增1,并将结果与最终值进行比较。 如果 INDX 大于最终值,则循环执行终止。

因此【当前循环次数】INDX最后的结果值,一定是比【循环终止值】FINAL大1,如上图,INDX的最终值为13

循环的总次数= 循环的终止值-循环的起始值+1,如上图 循环的总次数=12-0+1=13次。

FOR-NEXT 循环最大嵌套深度为八层

举例说明:循环起始是0,终止是12时,VW10最终值是13.

循环的总次数=12-0+1=13次

举例说明:循环起始是5,终止是15时,VW10最终值是16.

循环的总次数=15-5+1=11次

举例说明:循环起始是1,终止是20时,VW10最终值是21.

循环的总次数=20-1+1=20次

因此搞清三个参数的关系和含义,对以后工作有很大帮助。

切记:FOR与NEXT一定是成对出现。

建议:用FOR指令时,最好循环起始值从1开始,终止值是多少如n,则循环次数就多少(也是n),当前循环次数的最终值总比终止值大1,就是n+1。

结合间接寻址举例说明应用。

要求找到VW0到VW20中的最大数,存入VW100中,编程如下

最后可看出找到的最值是VW12中的数据456,存入VW100中。

相关问答

三菱plc中FOR命令怎么用?

1、在三菱plc的主页中,需要通过梯形图输入来确定LDX0。2、下一步如果没问题,就继续确定FMOVK6D0K3。3、这个时候等完成上述操作以后,直接选择测试按钮进...

S7-200的循环指令FOR怎么用?能否举一实例?

FOR循环的循环次数实在一个循环周期内完成的。FOR和NEXT指令可以描述需重复进行一定次数的循环体。每条FOR指令必须对应一条NEXT指令。For--Next循环嵌套(一...

plc中for语句什么时候用?

PLC中FOR语句的用法是在已知要循环的次数的时候,可以使用FOR循环。当一个或者多个指令(程序)重复多次(次数可知)时,可使用FOR指令。FOR为有限次循环指令。在扫...

西门子plcfor…to循环的用法?

您好,西门子PLC的循环用法可以通过使用循环指令来实现。循环指令可以在程序中重复执行一段代码,直到满足某个条件为止。常见的循环指令有以下几种:1.FOR循...

三菱plcfornext指令用法?

三菱PLC的FORNEXT指令是一种循环指令,用于执行重复的程序块。它的用法如下:FORNEXT指令由三个部分组成:FOR、NEXT和程序块。FOR指定循环的起始值和结束值,NEX...

plc有类似for的指令吗?

有的,SCL语言可以识别for循环语句有的,SCL语言可以识别for循环语句

plc为什么可以用for循环控制多个气缸?

PLC是一种可编程逻辑控制器,可以用for循环控制多个气缸是因为PLC的程序语言支持循环结构和条件语句,可以灵活控制气缸的运动。在循环中可以通过修改变量的值...

电脑关机时总显示程序错误-ZOL问答

打开开始菜单→运行→输入cmd→回车,在命令提示符下输入下面命令for%1in(%windir%\system32\*.dll)doregsvr32.exe/s%1回车。完成后,在输...

plc简答?

2、PLC为什么采取集中采样、集中输出的工作方式?这种工作方式对输入、输出的响应产生怎样的影响?答:采取集中采样、集中输出的工作方式可减少外界干扰的影响...

PLC如何实现批量控制?

首先在做程序前要规划好I/O已及内部中继,数据寄存器这是做批量控制的前题。第二要全用PLC的数据处理指令,逻辑门指令,还有FOR循环指令,这两类是做批量处理常...

 打开音乐之门  周海媚电影 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2024  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

在线咨询真诚为您提供专业解答服务

热线

188-0000-0000
专属服务热线

微信

二维码扫一扫微信交流
顶部