說明
指令“將位序列解析為單個位”用于將數據類型為 BYTE、WORD、DWORD 或 LWORD 的變量解析為單個位,并保存在 ARRAY of BOOL、匿名 STRUCT 或僅包含有布爾型元素的 PLC 數據類型中。
說明 多維 ARRAY of BOOL 使用“將位序列解析為單個位”指令時,不支持多維 ARRAY of BOOL。 |
說明 ARRAY、STRUCT 或 PLC 數據類型的長度 ARRAY、匿名 STRUCT 或 PLC 數據類型中包含的元素數目必須恰好等于位序列指定的數量。 例如,如果數據類型為 BYTE,則 ARRAY、STRUCT 或 PLC 數據類型中必須恰好包含 8 個元素(WORD = 16、DWORD = 32、LWORD = 64)。 |
說明 該指令的可用性 該指令可用于固件版本為 V4.2 及以上版本的 S7-1200 系列 CPU 和固件版本為 V2.1 及以上版本的 S7-1500 系列 CPU。 |
例如,通過這種方式您可以解析狀態(tài)字,并使用索引讀取和改變單個位的狀態(tài)。使用 GATHER,可再次將各個位組合為位序列。
如果滿足下列條件之一,使能輸出 ENO 將返回信號狀態(tài)“0”:
使能輸入 EN 的信號狀態(tài)為“0”。
ARRAY、STRUCT 或 PLC 數據類型中包含的 BOOL 元素數目不足。
參數 | 聲明 | 數據類型 | 存儲區(qū) | 說明 | |
---|---|---|---|---|---|
S7-1200 | S7-1500 | ||||
IN | Input | BYTE, WORD, DWORD | BYTE, WORD, DWORD, LWORD | I、Q、M、D、L | 所解析的位序列 這些值不得位于的 I/O 區(qū)域或工藝對象的 DB 內。 |
OUT | Output | ARRAY[*] of BOOL、STRUCT 或 PLC 數據類型 *:8、16、32 或 64 個元素 | ARRAY[*] of BOOL、STRUCT 或 PLC 數據類型 *:8、16、32 或 64 個元素 | I、Q、M、D、L | 保存 |
ARRAY 的使用示例
在塊接口中創(chuàng)建以下變量:
變量 | 區(qū)域 | 數據類型 |
---|---|---|
SourceWord | Input | WORD |
DestinationArray | Output | ARRAY[0..15] of BOOL |
以下示例說明了該指令的工作原理:
SCL |
---|
SCATTER(IN := #SourceWord, |
OUT => #DestinationArray); |
下表將通過具體的操作數值對該指令的工作原理進行說明:
參數 | 操作數 | 數據類型 |
---|---|---|
IN | SourceWord | WORD(16 位) |
OUT | DestinationArray | 操作數“DestinationArray”的數據類型為 ARRAY[0..15] of BOOL。其中包含 16 個元素,因此與待解析 WORD 的長度相同。 |
數據類型為 WORD 的操作數 #SourceWord 解析為單個位 (16),并將其分配給操作數 #DestinationArray 的各個元素。
PLC 數據類型 (UDT) 的使用示例
創(chuàng)建以下 PLC 數據類型“myBits”:
在塊接口中創(chuàng)建以下變量:
變量 | 區(qū)域 | 數據類型 |
---|---|---|
SourceWord | Input | WORD |
DestinationUDT | Output | “myBits” |
以下示例說明了該指令的工作原理:
SCL |
---|
SCATTER(IN := #SourceWord, |
OUT => #DestinationUDT); |
下表將通過具體的操作數值對該指令的工作原理進行說明:
參數 | 操作數 | 數據類型 |
---|---|---|
IN | SourceWord | WORD(16 位) |
OUT | DestinationUDT | 操作數“DestinationUDT”為 PLC 數據類型 (UDT),其中包含 16 個元素,因此與待解析 WORD 的長度相同。 |
審核編輯:湯梓紅
-
plc
+關注
關注
5006文章
13109瀏覽量
461465 -
cpu
+關注
關注
68文章
10805瀏覽量
210847 -
指令
+關注
關注
1文章
606瀏覽量
35617 -
數據類型
+關注
關注
0文章
236瀏覽量
13596 -
SCL
+關注
關注
1文章
239瀏覽量
17025
原文標題:博途SCL指令SCATTER:將位序列解析為單個位
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應用】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論