0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

PLC编程中循环语句FOR和WHILE如何选择

autozhineng 来源:PLC与自控设备 2023-01-30 17:45 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

迭代语句主要用于重复执行的程序,在 CoDeSys 中,常见的迭代语句有 FOR,REPEAT 及WHILE 语句。

FOR 循环

FOR 循环语句用于计算一个初始化序列,当某个条件为 TRUE 时,重复执行嵌套语句并计算一个迭代表达式序列,如果为 FALSE,则终止循环,具体格式如下。

FOR <变量> := <初始值> TO <目标值> {BY <步长>} DO

<语句内容>

END_FOR;

FOR 循环的执行顺序如下:

计算<变量>是否在<初始值>与<目标值>的范围内;

当<变量>小于<目标值>,执行<语句内容>;

当<变量>大于<目标值>,则不会执行<语句内容>;

当每次执行<语句内容>时,<变量>总是按照指定的步长增加其值。步长可以是任意的整数值。

如果不指定步长,则其缺省值是 1。当<变量>大于<目标值>时,退出循环。

示例:使用 FOR 循环实现 2 的五次方计算。

45092f2a-980d-11ed-bfe3-dac502259ad0.jpg

假设 Var1 的初始值是 1,那么循环结束后,Var1的值的为 32。

WHILE 循环

WHILE 循环与 FOR 循环使用方法类似。二者的不同之处是,WHILE 循环的结束条件可以是任意的逻辑表达式。即可以指定一个条件,当满足该条件时,执行循环,具体格式如下。

WHILE <布尔表达式>

<语句内容> ;

END_WHILE;

WHILE 循环的执行顺序如下:

 计算<布尔表达式>的返回值。

 当<布尔表达式>的值为 TRUE 时,重复执行<语句内容>。

 当<布尔表达式>初始值为 FALSE,那么指令<语句内容>不会被执行,跳转至 WHILE 语句的结尾。

451a8af4-980d-11ed-bfe3-dac502259ad0.jpg

注意:

如果<布尔表达式>的值始终为 TRUE,那么将会产生死循环,应当避免死循环的产生。可以通过改变循环指令的条件来避免死循环的产生。例如:利用可增减的计数器避免死循环的产生。

示例:只要计数器不为零,则始终执行循环体内的程序。

4528cae2-980d-11ed-bfe3-dac502259ad0.jpg

在一定的意义上,WHILE 循环比 FOR 循环的功能更加强大,这是因为在执行循环之前,

WHILE 循环不需要知道循环的次数。因此,如果清楚地知道了循环的次数,那么 FOR 循环更好,因为 FOR 循环可以避免产生死循环。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • for
    for
    +关注

    关注

    0

    文章

    44

    浏览量

    16307
  • CoDeSys
    +关注

    关注

    12

    文章

    47

    浏览量

    19579

原文标题:PLC编程中循环语句FOR和WHILE该怎么选呢?

文章出处:【微信号:PLC与自控设备,微信公众号:PLC与自控设备】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    SDRAM工业动态随机存储器在可编程逻辑控制器(PLC)的应用

    在工业自动化控制系统,可编程逻辑控制器(PLC)承担着数据采集、逻辑运算与执行控制的核心任务。随着生产现场对实时性和稳定性的要求不断提高,PLC对内部存储器的性能也提出了更严苛的需求
    的头像 发表于 04-07 14:10 140次阅读

    TIA Portal的WAIT指令如何影响PLC扫描周期

    PLC 编程,我们常常强调扫描周期的重要性,但很多时候它像一个“黑盒子”——我们知道它存在,却很少能直观地感受到它的影响。
    的头像 发表于 04-02 09:54 150次阅读
    TIA Portal<b class='flag-5'>中</b>的WAIT指令如何影响<b class='flag-5'>PLC</b>扫描周期

    如何实现对异地PLC的远程编程调试和上下载程序

    在工业自动化场景,设备遍布全国乃至全球,传统异地PLC维护需工程师频繁出差,成本高、效率低、响应慢。物通博联(WideIOT)工业智能网关凭借“边缘接入+云端穿透+安全运维”的核心能力,可快速搭建
    的头像 发表于 03-31 14:15 229次阅读
    如何实现对异地<b class='flag-5'>PLC</b>的远程<b class='flag-5'>编程</b>调试和上下载程序

    线性化编程与结构化编程的不同点

    线性化编程是将整个用户程序连续放置在一个循环程序块(OB1),按顺序执行的编程范式。这种结构与PLC所代替的硬接线继电器控制类似,CPU逐
    的头像 发表于 03-16 16:58 510次阅读
    线性化<b class='flag-5'>编程</b>与结构化<b class='flag-5'>编程</b>的不同点

    高低温试验箱试验功能全解析:恒温 / 循环 / 可编程怎么选?

    广东宏展科技提供高精度高低温试验箱,覆盖电子、汽车等行业,具备恒温、高低温循环及可编程功能,满足多场景测试需求。
    的头像 发表于 02-04 08:59 4080次阅读
    高低温试验箱试验功能全解析:恒温 / <b class='flag-5'>循环</b> / 可<b class='flag-5'>编程</b>怎么选?

    C语言的编程技巧

    1、宏定义使用do{...}while(0)‌:当宏定义包含多条语句时,使用do{...}while(0)可以避免语句嵌套问题,确保宏的独
    发表于 11-27 06:46

    控制结构介绍

    1. 顺序结构:按照代码的书写顺序,逐行执行程序。这是最基本的程序结构。 2. 选择结构:根据条件判断的结果,选择执行不同的代码块。常见的选择结构有if语句和switch
    发表于 11-24 06:43

    第4章 C语言基础以及流水灯的实现(4.5 4.6)

    4.5while循环语句 在单片机C语言编程的时候,每个程序都会固定的加一句while(1),这条语句
    的头像 发表于 11-06 11:21 513次阅读

    人工智能行业如何使用for循环语句进行循环

    人工智能行业可以使用以下是关于for循环在不同编程语言中的基本用法说明: Python的for循环: 主要用于遍历序列(列表、元组、字符串等) 典型结构:for item in se
    的头像 发表于 09-10 12:55 696次阅读

    Unicore标准NEMA语句GSA及说明

    本文介绍和芯星通的NEMA语句说明。
    的头像 发表于 07-16 11:39 834次阅读
    Unicore标准NEMA<b class='flag-5'>语句</b>GSA及说明

    基础篇3:掌握Python的条件语句循环

    在Python编程语言中,条件语句循环是构成复杂逻辑和数据处理的基石。本篇基础教程将帮助您深入了解Python的条件语句
    发表于 07-03 16:13

    《ESP32S3 Arduino开发指南》第三章 C/C++语言基础

    ,并再次去检查表达式2的值,如此反复,直到表达式2的值为假,结束for语句。这三个循环语句,哪种情况用哪个好呢?如果程序中固定了循环的次数,那么就可以采用for
    发表于 06-10 09:20

    详解TIA Portal SCL编程语言中的IF语句

    IF 语句编程中最基本和最重要的控制结构之一,它的主要作用是根据条件决定程序的执行路径,IF 语句编程实现逻辑判断和决策的基础。
    的头像 发表于 05-24 15:01 2143次阅读
    详解TIA Portal SCL<b class='flag-5'>编程</b>语言中的IF<b class='flag-5'>语句</b>

    PLC数采网关和PLC通信模块如何选择

    在工业自动化系统PLC数采网关和PLC通信模块都是实现数据传输的关键组件,但它们的功能定位和适用场景存在显著差异。以下从技术特性、应用场景、选型要点三个维度进行对比分析,帮助你做出合适的
    的头像 发表于 05-19 15:34 1330次阅读
    <b class='flag-5'>PLC</b>数采网关和<b class='flag-5'>PLC</b>通信模块如何<b class='flag-5'>选择</b>

    深入理解C语言:C语言循环控制

    在C语言编程循环结构是至关重要的,它可以让程序重复执行特定的代码块,从而提高编程效率。然而,为了避免程序进入无限循环,C语言提供了多种
    的头像 发表于 04-29 18:49 2223次阅读
    深入理解C语言:C语言<b class='flag-5'>循环</b>控制