公司主营:西门子数控,S7-200CN.S7-200smart.S7-300.S7-400.S7-1200.6ES5 ET200 人机界面,变频器,DP总线,MM变频器,6SE70交流工程调速变频器6RA70等系列产品。
产品简介
详细介绍
西门子屏6AV2124-1DC01-0AX0
5.4.1 Variant 指针数据类型
Variant 数据类型可以指向不同数据类型的变量或参数。 Variant
指针可以指向结构和单独的结构元素。 Variant 指针不会占用存储器的任何空间。
表格 5- 40 Variant 指针的属性
长度( 字节) | 表示 | 格式 | 示例输入 |
0 | 符号 | 操作数 | MyTag |
DB_name.Struct_name.element_ name | MyDB.Struct1.pressure1 | ||
操作数 | %MW10 | ||
DB_number.Operand Type Length | P#DB10.DBX10.0 INT 12 |
5.4.2 访问一个变量数据类型的“片段"
可以根据大小按位、字节、或字级别访问 PLC 变量和数据块变量。访问此类数据片段的语法如下所示:
● "<PLC 变量名称>".xn(按位访问)
● "<PLC 变量名称>".bn(按字节访问)
● "<PLC 变量名称>".wn(按字访问)
● "<数据块名称>".<变量名称>.xn(按访问)
● "<数据块名称>".<变量名称>.bn(按字节访问)
● "<数据块名称>".<变量名称>.wn(按字访问)
双字大小的变量可按位 0 - 31、字节 0 - 3 或字 0 - 1 访问。一个字大小的的变量可按位 0
- 15、字节 0 - 1 或字 0 访问。字节大小的变量则可按位 0 - 7 或字节 0
访问。当预期操作数为位、字节或字时,则可使用位、字节和字片段访问。
说明
可以按片段访问的有效数据类型有:
Byte、Char、Conn_Any、Date、DInt、DWord、Event_Any、Event_Att、Hw_Any、Hw
_Device、HW_Interface、Hw_Io、Hw_Pwm、Hw_SubModule、Int、OB_Any、OB_Att
、OB_Cyclic、OB_Delay、OB_WHINT、OB_PCYCLE、OB_STARTUP、OB_TIMEER
ROR、OB_Tod、Port、Rtm、SInt、Time、Time_Of_Day、UDInt、UInt、USInt 和
Word。 Real 类型的 PLC 变量可以按片段访问,但 Real 类型的数据块变量则不行。
示例
在 PLC 变量表中,“DW"是一个声明为 DWORD 类型的变量。在以下示例中,显示了按位、字节和字片段的访问:
LAD | FBD | SCL | |
按位访问 | IF "DW".x11 THEN ... END_IF; | ||
按字节访问 | IF "DW".b2 = "DW".b3 THEN ... END_IF; | ||
按字访问 | out:= "DW".w0 AND "DW".w1; |
5.4 数据类型
借助 AT
变量覆盖,可通过一个不同数据类型的覆盖声明访问访问块中已声明的变量。例如, 可以通过 Array of Bool 寻址数据类型为 Byte、Word 或 DWord 变量的各个位。
声明
要覆盖一个参数,可以在待覆盖的参数后直接声明一个附加参数,然后选择数据类型“AT"
。编辑器随即创建该覆盖,然后选择将用于该覆盖的数据类型、结构或数组。
示例
在本例中,显示一个访问 FB 的输入参数。字节变量 B1 将由一个布尔型数组覆盖:
另一个示例是 DWord 变量由一个 Struct 覆盖,其中包括字、字节和两个布尔值:
块接口的“偏移量"(Offset) 列中显示与原始变量相关的被覆盖数据类型的位置