工控编程吧
标题:
如何在 STEP 7 (TIA Portal) 中使用符号方式按位,字节,或字访问非结构数据类型
[打印本页]
作者:
baikhgmv
时间:
2016-9-17 12:14
标题:
如何在 STEP 7 (TIA Portal) 中使用符号方式按位,字节,或字访问非结构数据类型
如何在 STEP 7 (TIA Portal) 中使用符号方式按位,字节,或字访问非结构数据类型
对于S7-1200 和 S7-1500,可以按1位,8位,16位和32位的长度访问已经声明的变量。
描述
按字节、字和双字数据类型访问变量需要
对于S7-1200(固件V2.0及以上)需要 STEP 7 (TIA Portal)
V11+SP1+Update 2 (或更高版本)
对于S7-1500需要 STEP 7 (TIA Portal)
V12 (或更高版本)
将存储区( 例如 Byte 或Word ) 划分为更小的存储区 ( 例如 Bool )也称为存储器分片。图 01 所示使用符号方式对操作数按位、字节、字进行访问。
(, 下载次数: 5)
上传
点击文件名下载附件
图 01
使用片访问可以提供更高的编程效率并且无需在变量表里进行额外的声明。
下例所示使用符号方式按位访问。"x" 代表在字或字节中按位访问并且其后的数字表示相关位的偏移量。
(, 下载次数: 5)
上传
点击文件名下载附件
图 03 为按字节访问的例子。 这里 "b" 代表按字节访问并且其后面的数字表示相关字节的偏移量。
(, 下载次数: 4)
上传
点击文件名下载附件
"w" 代表按字进行访问并且其后的数字表示相关字的偏移量。
(, 下载次数: 4)
上传
点击文件名下载附件
在某些技术应用上只需要一个字节变量的前4位或前6位(分别对应于位0至位3或位0至位5),用于转换字节数据类的值到一个实数数据类型的值。例如,一个二进制数(二进制编码字节)转换成十进制数(实数)。字节的最低位代表数值2-5。这不是小数点后的位数,但是可以自动计算出十进制数据。
位5
位4
位3
位2
位1
位0
1
1
0
0
1
0
2
0
2
-1
2
-2
2
-3
2
-4
2
-5
1,0
0,5
0,25
0,125
0,0625
0,03125
1*1,0=1,0
1*0,5=0,5
0*0,25=0
0*0,125=0
1*0,0625=0,0625
0*0,03125=0
Sum = 1.5625.
如下SCL程序的前两行将不需要的位设为“
false”。然后进行数据类型转换,根据所有的幂
(2-5, 2-4, 2-3, ...)
之和,
计算出确切数值
。
(, 下载次数: 5)
上传
点击文件名下载附件
注意
从STEP 7 (TIA Portal) V13以后,语法规则从 "Variable.X0" 改为 "Variable.%X0"。如上所述示例中输入"inByte.X0" 后,STEP 7 (TIA Portal) V13 之后的版本会自动修改为"inByte.%X0"。 程序中片访问的变量地址是无法使用交叉参考的方式搜索到的。
欢迎光临 工控编程吧 (https://www.gkbc8.com/)
Powered by Discuz! X3.4