在 S7-1200/1500 中如何通过变量索引实现数组访问?
(2017-02-23 11:08:44)
标签:
plc培训电气设计培训工控老鬼启程自动化培训西门子plc |
分类: 启程PLC培训 |
下面的语法用于命名为"Quantities"的数组元素的索引寻址,"Quantities"数组在数据块"Data_DB"中进行声明:
-
"Data_DB". Quantities ["i"]
(一维数组) -
"Data_DB". Quantities ["i"]
(一维结构体数组) -
"Data_DB". Quantities ["i", "j"]
(多维数组) -
"Data_DB". Quantities ["i", "j"].a
(多维结构体数组)
组成部分 | 描述 |
Data_DB | 用于存储数组变量的数据块的名称 |
Quantities | 数组类型的变量 |
i , j | PLC用于指针的整数形变量 |
a | 结构体其他的可变变量 |
图.01 中展示了对位于数据块中的数组元素进行寻址的程序代码。在此把SIMATIC S7-1200/S7-1500和 S7-300/400做了个比较。在SIMATIC S7-300/400控制器中数组变量的起始地址必须已知,并且在使用地址寄存器时索引寻址也必须完成。
-
S7-300/S7-400
https://support.industry.siemens.com/cs/images/67598676/s7_1500_array_addressing_01_e.pngS7-1200/1500中如何通过变量索引实现数组访问?" />
图. 01 -
S7-1200/S7-1500 in STL
https://support.industry.siemens.com/cs/images/67598676/s7_1500_array_addressing_02.pngS7-1200/1500中如何通过变量索引实现数组访问?" />
图. 02 -
S7-1200/S7-1500 in SCL
https://support.industry.siemens.com/cs/images/67598676/s7_1500_array_addressing_03.pngS7-1200/1500中如何通过变量索引实现数组访问?" />
图. 03
下面列出了SIMATIC S7-1200/S7-1500 控制器寻址的优势:
- 使用现有的数据块和数组变量的名称
- 数组的基地址对于指针的生成不是必需的
- 程序代码更为简单和易读
- 编译器生成优化的程序代码
为了实现最高的性能,可遵从下面的关于在博途中寻址和存储器命令的编程建议:
- 用作数组索引的变量应该声明为DINT, UDINT (32位)
- 中间结果和数组的索引应该存储在本地临时数据区。
说明
免责声明:本文系网络转载或改编,版权归原作者所有。如涉及版权,请联系删除!
涉及版权请联系admin@qichengplc.com 谢谢!
启程自动化培训
中国领先的自动化培训服务提供商
自动化项目实施
系统集成服务
培训项目:PLC
系统集成+运动控制+机器人+机器视觉