- {{item.name}}
在 S7-1200/1500 中如何通过变量索引实现数组访问?
- 0
- 2278
- 907
对于数组元素的索引地址,应该使用整数数据类型的变量作为索引。
描述
对于SIMATIC S7-1200/S7-1500控制器的数组元素的寻址,除了常量外,还可以指定一个整数类型的变量作为索引值,这里允许长达不超过32位的整数。
在SIMATIC S7-S7-1200/1500中此种类型的寻址方式适用于所有的编程语言。
在“源”和“目标”数据块中声明的名为“data”的数组元素的索引寻址使用以下语法:
- "Data_DB". Quantities ["i"] (一维数组)
- "Data_DB". Quantities ["i"] (一维结构体数组)
- "Data_DB". Quantities ["i", "j"] (多维数组)
- "Data_DB". Quantities ["i", "j"].a (多维结构体数组)
元素 | 描述 |
---|---|
源, 目的 | 数组变量所在数据块的名称 |
data | 数组数据类型的变量. |
i, j | 用作指针的整型数据类型的PLC变量 |
a | 结构的其它子变量 |
表 1
下面的截图展示了对位于数据块中的数组元素进行寻址的程序代码。本文把SIMATIC S7-1200/S7-1500和 S7-300/400做了个比较。在SIMATIC S7-300/400控制器中数组变量的起始地址必须已知,并且在使用地址寄存器时索引寻址也必须完成。
- S7-300/S7-400
图. 01 - S7-1200/S7-1500 在 LAD 中
图. 02 - S7-1200/S7-1500 在 SCL 中
图. 03
下面列出了SIMATIC S7-1200/S7-1500 控制器寻址的优势:
- 使用现有的数据块和数组变量的名称
- 数组的基地址对于指针的生成不是必需的
- 程序代码更易于创建和阅读
- 编译器生成优化的程序代码
为了实现最高的性能,在TIA Portal中可遵从下面的关于寻址和存储器命令的编程建议:
- 用作数组索引的变量应该声明为DINT, UDINT (32位)
- 中间结果和数组的索引应该存储在本地临时数据区。
说明
更多关于SIMATIC S7-1200/S7-1500间接寻址的信息请参考STEP 7 (博途 ) 在线帮助。
该 FAQ 相关截图由 TIA Portal V15 创建。
您可以前往全球资源库查看此文档:https://support.industry.siemens.com/cs/cn/zh/view/67598676
剩余80%未阅读,请登录后下载/查看文档
- 评论
-
分享
扫码分享
- 收藏 收藏
- 点赞 点赞
- 纠错 纠错
- 如何通过工业以太网CP在S7-300与/或S7-400之间组态TCP连接以实现数据交换?
- 如何通过工业以太网CP在S7-300与/或S7-400之间组态ISO传输连接以实现数据交换?
- 如何通过工业以太网CP在S7-300与/或S7-400之间组态ISO-on-TCP传输连接以实现数据交换?
- 在WinCC (TIA Portal) 中如何通过控制器实现画面的切换?
- B.Data中如何通过邮件自动发送报表
- 在画面中如何通过一个按钮来执行登录/退出?
- 如何通过USS协议实现S7-1200 与MM440变频器的通信
- 如何通过Modbus协议实现 S7-1200与S7-200通讯
- 如何通过USS协议实现S7-1200 与G120变频器的通信
- 如何通过Modbus RTU协议实现S7-1200 与PAC3200的通信
{{item.nickName}}