电子开发网

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

西门子PLC 200Smart 编程中如何用FOR循环指令轻松实现多个数据按顺序排列?

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

西门子PLC梯形图编程时,当一个或者多个指令(程序)需要重复执行多次(次数可知)时,可使用FOR循环指令,从而提高编程效率。

西门子plc的FOR循环指令 

FOR指令表示循环的开始。

EN为循环控制输入端;

INDX为设置指针或当前循环次数的计数器;

INIT为计数初始值;

FINAL为循环计数终值。

 

NEXT指令表示循环的结束。FOR和NEXT必须成对出现。

在循环控制输入端有效且逻辑条件INIT小于FINAL时,系统反复执行FOR和NEXT之间的循环体程序,每执行一次循环体,INDX自增1,直至当前循环计数值大于终值时,退出循环。

如下图所示程序为将VW0~VW18按照从大到小的顺序排列。

 西门子PLC的FOR循环指令用法

按下I0.0循环开始,循环体中的程序将执行9次。

 西门子plc的MOV_DW数据移位指令

这里用的是间接寻址,建立两个指针,分别指向vw0和vw2的地址。

 西门子plc的FOR循环指令

嵌套内循环开始。

 

相邻的两个数比较,如果前面的数比后面的数小则两个数交换。在第一轮比较的是VW0和VW2中的数值。

 

指针偏移,下一轮比较的就是VW2和VW4中的数值。

 

内循环结束。

 

外循环第一轮结束,比较出了最小的数,并且存放在VW18中,所以外循环第二轮只需比较八次就可以了。同理下一轮比较都要比前一轮少比较一次。

在项目中我们需打开数据块给VW1006赋初始值9。

外循环结束。

Tags:smart,西门子plc,for循环  
责任编辑:admin
请文明参与讨论,禁止漫骂攻击,不要恶意评论、违禁词语。 昵称:
1分 2分 3分 4分 5分

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