公司联系方式

深圳地址

深圳福田区滨河大道5003爱地大厦西座21A

0755-83975718 83762660

武汉地址

武汉市汉阳区经开未来城B栋903-904室

027-84797336 18128857586

您当前的位置:首页 > 技术园地 > 西门子S7-200

S7-1200 间接寻址指令的应用

时间:2017-04-09 12:14:30  来源:  作者:

   S7-1200的间接寻址需要通过数据块中的数组来实现。指令FieldRead通过索引(又称为下标)变量从数组中读取数值,指令FieldWrite 通过索引变量向数组中写数值,使用这两条指令可以实现间接寻址。

   索引变量是间接寻址中的地址指针,它的值是要读写的数组元素的索引值。地址指针就像收音机调台的指针,改变指针的位置,指针指向不同电台。改变地址指针中的索引值,指针“指向”数组不同的元素。间接寻址的优点是可以在程序处理期间,通过改变指针的值动态地修改指令中的地址。

   首先生成一个名为“数据块1”的全局数据块DB2,在数据块中生成名为“数组1”的数组Array[1..10] of Int,其元素的数据类型为Int。

   这两条指令没有列入指令列表和高级指令列表,编程时将收藏夹中的空逻辑框插入程序,点击其中红色的“??”,打开下拉式列表框,可以看到列表框底部的指令FieldWrite或FieldRead。点击生成的指令框中的“???”,用列表设置要写入或读取的数据类型为Int(见下图)。两条指令的参数MEMBER的实参必须是数组的第一个元素“数据块1”.数组1[1]。

   指令的输入参数索引值“INDEX”是要读写的数组中的元素的下标,数据类型为DINT(双整数)。参数“VALUE”是要写入数组元素的值或要读取的数组元素的值。

   下图中的FieldWrite指令将常数25写入数组1中的元素“数组1[3]”。FieldRead指令读取数组元素“数组1[3]”的值,将它保存到MW20。改变INDEX的值,可以读写别的数组元素的值。

2011314103444935.jpg

联系我们

地址 Add : 深圳福田区滨河大道5003爱地大厦西座21A

电话Tel:0755-83975718 83762660

传真Fax:(86) 0755-83975718

luyunfeng@szrunning.com

粤ICP备17024453号    ;Copyright © 2015深圳市朗助机电有限公司 保留公司所有权利