西门子博途:片段访问

科技   2024-09-02 20:17   吉林  


对于 S7-1200/1500 控制器,可以访问 Byte、 Word、 DWord 或 LWord 数据类型变量的存储区。将一个存储区域(如 byte 或 word)划分为一个较小的存储区域(如Bool)也称为片段。下图显示了对操作数的 bit、 byte 和 word 的访问。

• 编程效率高。
• 在变量声明中不需要额外的定义。
• 易于访问(例如控制位)。
• 使用 AT 结构的片段访问,而不是访问操作数中的某些数据区域。

通过片断访问对变量区域进行寻址

可以选择包含所声明变量的特定地址区域。可以访问宽为 1 位、8 位、16 位或 32 位的区域。将存储器区域(如,BYTE 或 WORD)拆分为一个较小的存储器区域(如 BOOL),又称为“分段”。

无法使用访对覆盖 AT 的结构、常量和变量进行寻址。

语法

下列语法用于寻址:

<Tag>.X<Bit number>

<Tag>.B<BYTE number>

<Tag>.W<WORD number>

<Tag>.D<DWORD number>


该语法包含以下部分:



部分

说明

<Tag>

访问的变量。该变量的数据类型必须为“Bit string”或“Integer”。

在 SCL 中,如果禁用 IEC 检查,则只能对数据类型为“Integer”的变量进行访

X

B

W

D

访问宽度为“位(1 位)”的 ID

访问宽度为“字节(8 位)”的 ID

访问宽度为“字(16 位)”的 ID

访问宽度为“双字(32 位)”的 ID

<BIT number>

待访问 <tag> 内的位号。编号 0 表示访问最低有效位。

<BYTE number>

待访问 <tag> 内的字节号。

编号 0 表示访问最低有效字节。

<WORD number>

访问的 <tag> 内的字号。

编号 0 表示访问最低有效字。

<DWORD number>

访问的 <tag> 内的双字号。

编号 0 表示访问最低有效双字。


访示例

以下示例说明了位、字节、字和双字模式下片段的寻址方式:



寻址

说明

"Engine".Motor.X0

"Engine".Motor.X7

"Motor" 为全局数据块 "Engine". 中数据类型为 BYTE、WORD、DWORD 或 LWORD 的变量

X0 将寻址位地址 0,X7 则寻址 "Motor" 中的位地址 7。

"Engine".Speed.B0

"Engine".Speed.B1

"Speed" 为全局数据块 "Engine". 中数据类型为 WORD、DWORD 或 LWORD 的变量

B0 将寻址字节地址 0,B1 则寻址 "Speed" 中的字节地址 1。

"Engine".Fuel.W0

"Engine".Fuel.W1

"FUEL" 为全局数据块 "Engine". 中数据类型为 DWORD 或 LWORD 的变量

W0 将寻址字地址 0,W1 则寻址 "Fuel" 中的字地址 1。

"Engine".Data.D0

"Engine".Data.D1

"Data" 为全局数据块 "Engine". 中数据类型为 LWORD 的变量

D0 将寻址双字地址 0,D1 则寻址 "Data" 中的双字地址 1。





机器人及PLC自动化应用
机器人技术讲解,PLC程序分析讲解,PLC机器人自动化培训. 以工业自动化培训为主.也会有些个人喜爱的军事和休闲.
 最新文章