如何在 STEP 7 (TIA Portal) 中使用符号方式按位,字节,或字访问非结构数据类型?

描述
为了按字节、字和双字数据类型访问变量,需要:

  • 对于S7-1200(固件V2.0及以上)需要 STEP 7 (TIA Portal)V11+SP1+Update 2 (或更高版本)
  • 对于S7-1500需要 STEP 7 (TIA Portal) V12 (或更高版本)

将存储区( 例如 Byte 或Word ) 划分为更小的存储区 ( 例如 Bool )也称为存储器分片。图 01 所示使用符号方式对操作数按位、字节、字进行访问。

如何在 STEP 7 (TIA Portal) 中使用符号方式按位,字节,或字访问非结构数据类型?
图.1

使用片访问可以提供更高的编程效率并且无需在变量表里进行额外的声明。

下例所示使用符号方式按位访问。"x"代表在字或字节中按位访问并且其后的数字表示相关位的偏移量。

如何在 STEP 7 (TIA Portal) 中使用符号方式按位,字节,或字访问非结构数据类型?
图. 2

图 03 为按字节访问的例子。 这里"b"代表按字节访问并且其后面的数字表示相关字节的偏移量。

如何在 STEP 7 (TIA Portal) 中使用符号方式按位,字节,或字访问非结构数据类型?

图. 3

"w" 代表按字进行访问并且其后的数字表示相关字的偏移量。

如何在 STEP 7 (TIA Portal) 中使用符号方式按位,字节,或字访问非结构数据类型?图.4

在某些技术应用上,只需要一个字节变量的前4位或前6位(分别对应于位0至位3或位0至位5)的值用于转换字节数据类型到一个实数数据类型的值。例如,一个二进制数(二进制编码字节)转换成十进制数(实数)。字节的最低位代表数值2-5。这不是小数点后的位数,但是可以自动计算出十进制数据。

位5 位4 位3 位2 位1 位0
1 1 0 0 1 0
20 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

总计= 1.5625.

如下SCL程序的前两行将不需要的位设为“false”。然后,根据变化得到2-5 进行数据类型转换后的数值。

如何在 STEP 7 (TIA Portal) 中使用符号方式按位,字节,或字访问非结构数据类型?
图.5

注意
从STEP 7 (TIA Portal) V13 以后,语法规则从 "Variable.X0" 改为 "Variable.%X0"。如上所述示例中输入"inByte.X0" 后,STEP 7 (TIA Portal) V13 之后的版本会自动修改为"inByte.%X0"。

更多信息

  • 在 STEP 7 (TIA Portal) 中可以使用关键字“AT”进行变量覆盖。相关信息参考条目号:57132240.

创建环境
此 FAQ 相关的图片使用STEP 7 (TIA Portal) V13+SP1+Update 7 创建。

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc322825.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年11月5日
下一篇 2021年4月12日

相关推荐

发表回复

登录后才能评论