电子开发网

电子开发网电子设计 | 电子开发网Rss 2.0 会员中心 会员注册
搜索: 您现在的位置: 电子开发网 >> 电子开发 >> 梯形图实例 >> 正文

西门子plc的FOR-NEXT循环指令 梯形图实例

作者:佚名    文章来源:本站原创    点击数:    更新时间:2023/4/17

FOR-NEXT循环指令

1、FOR-NEXT 指令用于重复执行程序段,FOR 指令和 NEXT 指令之间的指令为循环体。FOR指令标记循环的开始,NEXT指令为循环体的结束指令。

2、每条 FOR 指令需要有一条 NEXT 指令与之成对出现。

3、可以嵌套,嵌套深度为 8 层。

 

 

其中:

  • INIT,FINAL分别定义起始值和结束值。
  • 使能输入EN有效,循环体开始执行,执行到NEXT指令时返回,每执行一次循环体,当前值计数器INDX增1,达到终止值FINAL时,循环结束。
  • 使能输入无效时,循环体程序不执行。每次使能输入有效,指令自动将各参数复位。

注意:使用 FOR 和 NEXT 指令可在重复执行分配计数的循环中执行程序段。每条 FOR 指令需要一条 NEXT 指令。

应用例程

For Next 简单循环编程实例

 

图5.For Next 循环循环程序图

使用状态表监控程序的运行如下图所示

 

图6.状态监视图

如上表所示,VW100值为4, INDEX大于终止值,循环终止。

5个变量进行求和后取平均值实例

通过 FOR-NEXT 指令,对 5 个变量:VW100、VW102、VW104、VW106、VW108 进行求和,求和结果放到 VW200 中,计算的平均值存放在 VD210 中 。

 FOR-NEXT_求和及求平均数 FOR-NEXT.smart

以上为关于指令使用的例程,仅供参考,使用前请先自行测试!此示例程序在STEP 7-MicroWIN SMART V2.0版本下生成

常问问题

FOR-NEXT指令的循环次数如何计算

答:FOR-NEXT工作过程:启用FOR-NEXT指令,首先将 INIT( 初始值) 复制到 INDX(当前循环次数);每执行一次,INDX (当前循环次数) 加1; 如 果 INDX 大于 FINAL (终止循环次数),终止循环。

比如: INIT=1 FINAL=10,则循环体被执行10次,然后退出循环, 退出循环后INDX=11

INIT=0,FINAL=10, 则循环体被执行11次,然后退出循环,退出循环后INDX=11

FOR-NEXT指令执行时,主程序是否执行,对扫描周期的影响

答:程序自上而下循环扫描,当FOR-NEXT指令启用后,则循环体被循环执行,直至循环次数到达,循环结束,程序继续向下执行。即在一个扫描周期内执行循环完毕后才会向下执行,循环次数越多,会导致扫描周期时间延长越多。如果循环次数过多或者出现死循环,会导致扫描周期时间超过看门狗时间,报出看门狗超时的致命错误,CPU停机并且SF/DIAG灯红灯常亮。

如何在FOR-NEXT执行循环过程中,退出循环?

答:您可以在FOR/NEXT 指令处于循环过程中时,在循环体中修改FINAL (终止循环次数)数值。
Tags:循环指令,循环,西门子plc,梯形图实例  
责任编辑:admin
请文明参与讨论,禁止漫骂攻击,不要恶意评论、违禁词语。 昵称:
1分 2分 3分 4分 5分

还可以输入 200 个字
[ 查看全部 ] 网友评论
推荐文章
最新推荐
关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 在线帮助 - 文章列表
返回顶部
刷新页面
下到页底
晶体管查询