查看: 3244|回复: 12
收起左侧

[教程经验] ST编程结构语句-循环语句

邀请回答

马上注册,享受更多特权

您需要 登录 才可以下载或查看,没有帐号?立即注册   

x
本帖最后由 fengchuiguo 于 2020-2-10 13:09 编辑


本节微课将为大家讲解ST编程结构语句中循环语句,主要包括:
1.介绍FOR语句用法;
2.介绍WHILE语句用法;
3.介绍REPEAT语句用;

1. FOR语句
1.1FOR语句语法

关键字FOR,通过 FOR 循环,可以编写重复处理逻辑。

语法:

注:当Step size为正数时,在执行 Instructions 之前首先要检查,如果 INIT_VALUE 大于  END_VALUE,instructions 不会被执行;

当Step size 为负数时,在执行 Instructions 之前首先要检查,如果 INIT_VALUE 小于 END_VALUE,instructions不会被执行;
FOR语句执行逻辑如下:

需要注意的是:
(1)FOR语句应用于循环次数已知循环场景;
(2)FOR循环次数过大可能导致设备CPU占有率高;

1.2 FOR语句应用

打开InoProShop后台,编写FOR实例

计数器变量从1到5,重复执行五次var3:=var3+2;假设var3初值为1,循环执行结束,var3值应该为11;
程序仿真运行,我们发现变量var3一直在做自加,这是哪里出了问题呢?
原来是程序运行中,FOR循环一直在执行,一个任务周期内执行一次FOR循环,按照实例,一个任务周期中执行五次var3:=var3+2;所以我们看到的var3一直在自加;

2. WHILE语句
1.1WHILE语句语法

关键字WHILE,WHILE 和 FOR 一样,可以处理循环逻辑,但和 FOR 循环不同是WHILE循环条件为任意布尔表达式 ,循环次数不确定。

语法:

WHILE语句执行逻辑如下:

需要注意的是,若Boolean_expression  永远不会为 FALSE, 则Instructions 重复执行不停,这叫做死循环,编程时一定确保不要出现死循环!

2.2 WHILE语句应用

打开InoProShop后台,编写WHILE实例

假设var5初值为1,var4初值为10,程序运行,执行WHILE循环后,VAR5值为16。
即程序运行,第一个任务周期WHILE循环内instruction执行5次,退出循环,之后每个任务周期WHILE循环执行条件不满足;

3. REPEAT语句
3.1REPEAT语句语法

关键字REPEAT,REPEAT 循环条件是在循环指令执行后才检查的,即不管循环条件取值如何,循环至少执行一次;

语法:

REPEAT语句执行逻辑如下:

同样,若Boolean_expression 永远不会为 TRUE, Instructions 重复执行不停,出现死循环,编程时一定确保不要出现死循环!

3.2 REPEAT语句应用

打开InoProShop后台,编写REPEAT实例

假设var6初值为2,一个任务周期REPEAT循环执行后,var6值为11
即程序运行,第一个任务周期REPEAT循环内instruction执行三次,退出循环,之后每个任务周期REPEAT循环内instruction执行一次,退出循环;






上一篇:中型PLC软件入门教程-快速入门篇(1)
下一篇:CNC

已有 0 人打赏作者

回复 邀请回答送花

使用道具 举报

12345 2020-2-20 21:16:04 | 显示全部楼层
    弄懂这些可以简化程序量,赞
回复 送花

使用道具 举报

ggz321642 2020-8-1 16:13:48 | 显示全部楼层
常用的还是FOR 语句
回复 送花

使用道具 举报

xusan 2020-8-27 16:36:12 | 显示全部楼层
谢谢楼主分享
回复 送花

使用道具 举报

yyc99888 2020-9-15 23:31:07 | 显示全部楼层
不错。。。。。。。。
回复 送花

使用道具 举报

17388799318 2021-7-5 11:00:26 | 显示全部楼层
谢谢楼主分享
回复 送花

使用道具 举报

单增过 2021-8-16 16:58:11 | 显示全部楼层
学习,感谢科普
回复 送花

使用道具 举报

liyuan1992 2021-9-4 10:59:55 | 显示全部楼层
怎么没课件
回复 送花

使用道具 举报

kkss 2021-9-4 12:58:22 | 显示全部楼层
ST里很常用 学习
回复 送花

使用道具 举报

mars01573 2021-9-6 13:44:59 | 显示全部楼层
FOR应该是用得多
回复 送花

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册   

本版积分规则

有技术问题,就上汇川技术社区

INOVANCE汇川技术 公众号

汇川控制技术 公众号

全国服务热线:8:30-17:30

4000-300124

苏州地址:江苏省苏州市吴中区越溪友翔路16号

深圳地址:深圳市宝安区留仙二路6号鸿荣源鸿威工业区E栋

Copyright © 2003-2100 汇川技术 Powered by Discuz! X3.4 ( 苏ICP备12002088号 )
快速回复 返回列表 返回顶部