欢迎来到西安翔宇测控仪表厂西北工控技术的首选西安plc控制柜价格专业,已累计设计2000多台西安plc配电柜,陕北石油使用西安电控柜技术安全
打开客服菜单

新闻中心

contact us

联系我们

西安plc配电柜 > plc编程入门 > plc循环程序怎么写
plc循环程序怎么写
编辑 :

西安轩seo

时间 : 2018-04-25 15:22 浏览量 : 41

plc在控制系统中经常遇到需要重复执行若干次相同任务的情况,这时可以使用plc循环程序FOR指令表示循环开始,NEXT指令表示循环结束,并将堆栈的栈顶值设为1。驱动FOR指令的逻辑条件满足时,反复执行FOR与NEXT之间的指令,在FOR指令中,需要设置DX(索引值或当前循环计数器)、初始值INIT和结束值 FINAL,

单重循环

图4-29是计算异或校验码的循环程序。在105的上升沿,求VB10VB13这4个字节的异或值,用VB14保存。首先将保存运算结果的vB14清0,用 MOV DW指令设置要累加的存储区地址指针AC1的初始值。本节的程序见随书光盘中的例程“程序控制指令”。

第一次循环将指针AC1所指的vB10与VB14异或,运算结果用VB14保存。然后将地址指针AC1的值加1,指针指向vB11,为下一次循环的异或运算做好准备

FOR指令的INIT为1, FINAL为4,每次执行到NEXT指令时,INDX的值加1,并将算结果与结束值FNAL比较。如果INDX的值小于结束值,返回去执行FOR与NEXT之间的指令。如果INDX的值大于结束值,则循环终止。本例中FOR指令与NEXT指令之间的指令将被执行4次。如果起始值大于结束值,则不执行循环。

图4-31是显示循环指令执行结果的状态表。VB10~VB13同一位中1的个数为奇数时,VB14对应位的值为1,反之为0

2。多重循环

 允许循环嵌套,即 FORNEXT循环在另一个FOR/NEXT循环之中,最多可以嵌套8层。

这时可以使用plc循环程序FOR指令表示循环开始,NEXT指令表示循环结束

 在图4-30中I0。1的上升沿,执行10次标有1的外层循环,如果此时10。2为ON,每执行一次外层循环,将执行彳8次标有2的内层循环。每次内层循环将VW6的值加1,执行完后,Vw6的值增加80(即执行内层循环的次数)。FOR指令必须与NEXT指令配套使用

S7-200编程注意要求:
1)如果启动了FOR/NEXT循环,除非在循环内部修改了结束值,循环就一直进行,直到循环结束。在循
环的执行过程中,可以改变循环的参数。
2)再次启动循环时,初始值INIT被传送到指针
INDX中。
3)循环程序是在一个扫描周期内执行的,如果循环次数很大,循环程序的执行时间很长,可能使监控定时器(看门狗)动作。循环程序一般在信号的上升沿时调用。


cache
Processed in 0.006966 Second.