FOR循环语句应用一
1.)FOR循环语句介绍
说明
使用“在计数循环中执行”指令,重复执行程序循环,直至运行变量不在指定的取值范围内。
也可以嵌套程序循环。在程序循环内,可以编写包含其它运行变量的其它程序循环。
通过指令“复查循环条件”(CONTINUE),可以终止当前连续运行的程序循环。通过指令“立即退出循环”(EXIT) 终止整个循环的执行。
有关运行次数和运行变量的信息:
程序运行时无法更改运行次数。
出于性能缘由,应在块接口的“Temp”部分中声明运行变量。在循环中,该运行变量无法更改。
因此,以下示例程序将生成一个语法错误且无法编译:
FOR #i := 1 TO 10 DO
#i := #i + 1;
END_FOR;
FOR循环指令参数表如下:

FOR循环正确语法示例:
FOR<执行变量> := <起始值> TO <结束值> BY<增量>DO<指令>
END_ FOR;
2.)FOR循环语句应用案例之数组与数组的数据交换:
建立一个数据DB块及FB块声明一个临时变量:


编写SCL程序(无字长度)

在线监控:

编写有字长度的FOR循环:

在线监控:

它除第一个数据对应外,开始的第二个数据就隔一个对应一个,也就是说数组B的第二个触发,数组A的第二个是收不到数据的,这个取决于我们设置BY后面的数值。
今天的FOR循环就简单的介绍到这,由于时间关系及笔者水平有限,难免文章有介绍错误的地方,望广大朋友,专家,高手多多指导!
© 版权声明
文章版权归作者所有,未经允许请勿转载。
相关文章
您必须登录才能参与评论!
立即登录



比如for循环1to20 是一个扫描周期内执行完吗?
是的
可以这么说,案例时10个数,执行完毕后跳出来继续执行,若只需要循环一轮,必须加上一个结束语句 NEXT,它就不再执行循环。要等所以的程序段都扫描完毕后继续新一轮(PLC总程序)扫描。
记错结束语的写法了,应该是EXIT。
这个能看懂,但是换个就不行虽然我也用scl有些还是不熟练
写得不够详细
收藏了,感谢分享