介绍 CODESYS 编程软件中的变量-CODESYS资源下载区-酷德网 - CoDeSys软件教程下载,CoDeSys工控资讯门户 

酷德网

HSC6490-cn中国制造,中国芯~
查看: 791|回复: 0

介绍 CODESYS 编程软件中的变量

[复制链接]
  • TA的每日心情
    开心
    2017-11-20 22:07
  • 签到天数: 2 天

    [LV.1]初来乍到

    发表于 2024-9-6 08:57:25 | 显示全部楼层 |阅读模式

    引言

    在 PLC 编程中,变量是构建自动化控制程序的基础。CODESYS 作为一种强大的 PLC 编程软件,提供了多种变量类型和管理方式,使得编程更加灵活和高效。本文将详细介绍 CODESYS 中的变量,包括变量的定义、类型、局部变量和全局变量、掉电保持变量、结构变量等内容。
    1
    什么是变量
    在编程中,变量是一种用于存储数据的命名空间。它们可以保存不同类型的数据,如数值、字符或逻辑值。变量使得程序能够动态处理数据,从而实现复杂的控制逻辑。
    2
    变量的命名规则
    变量命名需要严格按照下面的格式,为了代码的可阅读和规范性,尽量采用统一风格的命名方式,如:匈牙利命名风格,骆驼风格,Pascal 风格,蛇形风格等。
    • 变量只能由字母、数字和下划线组成;
    • 变量首字必须是字母;
    • 变量不能是关键词和操作符;
    • 变量不区分大小写;
    • 变量没有长度限制;
    3
    变量的格式定义
    变量名+冒号+数据类型+初始化(可选)+分号+注释(可选)
    示例:
    [AppleScript] 纯文本查看 复制代码
    VAR
        variables        : INT     := 10   ; //注释
        variables_str    : STRING  := '10' ; (*注释*)
    END_VAR
    • variables 是变量名;
    • 后边加冒号 ( : ) ;
    • INT 是数据类型
    • := 是赋值操作符
    • 10 是初始值
    • 语句结尾要加分号 ( ; )
    • 最后是注释,注释标识符可以是 // 或者 (* *)
    4
    变量的类型
    CODESYS 支持多种变量类型,常见的有以下几种:
    布尔型:
    • BOOL :存储二进制值(0 或 1)。

    整数型:
    • BYTE :8 位无符号整数。(0 to 255)
    • WORD :16 位无符号整数。(0 to 65535)
    • DWORD :32 位无符号整数。(0 to 4294967295)
    • LWORD :64 位无符号整数。(0 to 2^64-1)
    • SINT :8 位有符号整数。(-128 to 127)
    • USINT :8 位有无符号整数。(0 to 255)
    • INT :16 位有符号整数。(-32767 to 32767)
    • UINT :16 位无符号整数。(0 to 65535)
    • DINT :32 位有符号整数。(-2147483648 to 2147483648)
    • UDINT :32 位无符号整数。(0 to 4294967295)
    • LINT :64 位有符号整数。(-2^63 to 2^63-1)
    • ULINT :64 位无符号整数。(0 to 2^64-1)
    实数型:
    • REAL :32 位浮点数。(1.401e-45 to 3.403e+38 )
    • LREAL :64 位浮点数。(2.2250738585072014e-308 to 1.7976931348623158e+308 )
    字符串型:
    • STRING :用于存储字符串。( (n+1)*8 )
    时间:
    • TIME :32 位。( T#0d0h0m0s0ms to T#49d17h2m47s295ms )
    • TIME OF DAY :32 位。( T0D#0:0:0.000 to T0D#23:59:59.999 )
    • DATE :32 位。( D#1970-1-1 to DATE#2106-2-7 )
    • DATE AND TIME:32 位。( DT#1970-1-1-00:0:00 to DT#2106-2-7-6:28:15 )
    5
    局部变量和全局变量
    5.1
    局部变量
    局部变量是在特定的程序块(如函数或功能块)中定义的变量。它们仅在该程序块内部可见和使用,程序块执行结束后,局部变量的值将被释放。这种变量有助于避免命名冲突和数据不一致的问题。
    示例:
    [AppleScript] 纯文本查看 复制代码
    FUNCTION_BLOCK FB_Test
    VAR_INPUT
      button        :  BOOL;
    END_VAR
    VAR_OUTPUT
      out           :  BOOL;
    END_VAR
    VAR
      outState      :  BOOL;
      rise          :  BOOL;
      riseHF        :  BOOL;   
    END_VAR

    5.2
    全局变量
    全局变量是在整个程序中定义的变量,它们可以被程序的任何部分访问和修改。全局变量适用于需要在多个程序块之间共享数据的情况,但需要小心使用,以避免意外修改和复杂的调试过程。
    示例:
    [AppleScript] 纯文本查看 复制代码
    VAR_GLOBAL
      Always0    : BOOL;   //常0
      Always1     : BOOL;   //常1
      test_bool   : ARRAY[0..100] OF BOOL;
      test_       : BOOL;
    END_VAR

    6
    掉电保持变量
    掉电保持变量是一种特殊的变量类型,其值在 PLC 掉电或重启时不会丢失。这类变量适用于需要保存系统状态或重要数据的情况。
    示例:
    [AppleScript] 纯文本查看 复制代码
    VAR_GLOBAL PERSISTENT RETAIN
      
      runTime                : TIME := T#10MS;
      stopTime               : TIME := T#1000MS;  
    
      data                   : ARRAY [0..1000] OF DUT;
    
      Total_running_TIME     : REAL;
      
      p_position_x_start     :  DINT := 333299;
      p_position_y_start     :  DINT := -100525;
    
    END_VAR
    7
    结构变量
    结构变量(Structured Variables)是由多个不同类型的变量组成的集合。它们允许将相关的数据组合在一起,便于管理和访问。
    示例:
    [AppleScript] 纯文本查看 复制代码
    TYPE MyStruct :   //定义结构变量
    STRUCT
        id: INT;
        name: STRING[20];
        value: REAL;
    END_STRUCT
    END_TYPE



    [AppleScript] 纯文本查看 复制代码
    VAR     //使用结构变量
        structVar: MyStruct; // 结构变量
    END_VAR

    总结

    CODESYS 中的变量是 PLC 编程的核心组件。理解和正确使用变量类型、变量的命名规则、变量的格式定义、局部变量和全局变量、掉电保持变量以及结构变量,对于编写高效、可靠的控制程序至关重要。希望本文对您理解 CODESYS 中的变量有所帮助,从而在实际应用中更好地利用这些知识


    +10
    不赞一个?
    打赏鼓励一下!
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

    本版积分规则

    
    顶部qrcode底部
    关注酷德网订阅号,获取更多资讯!

    QQ|Archiver|手机版|小黑屋|酷德论坛 ( 苏ICP备16065247号-1 )|网站地图

    GMT+8, 2026-10-9 16:59 , Processed in 0.132425 second(s), 43 queries .

    酷德网

    © 2001-2013 Hicodesys. 技术支持 by 酷德网

    快速回复 返回顶部 返回列表