說明
指令“將位序列解析為單個位”用于將數(shù)據(jù)類型為 BYTE、WORD、DWORD 或 LWORD 的變量解析為單個位,并保存在 ARRAY of BOOL、匿名 STRUCT 或僅包含有布爾型元素的 PLC 數(shù)據(jù)類型中。
說明 多維 ARRAY of BOOL 使用“將位序列解析為單個位”指令時,不支持多維 ARRAY of BOOL。 |
說明 ARRAY、STRUCT 或 PLC 數(shù)據(jù)類型的長度 ARRAY、匿名 STRUCT 或 PLC 數(shù)據(jù)類型中包含的元素數(shù)目必須恰好等于位序列指定的數(shù)量。 例如,如果數(shù)據(jù)類型為 BYTE,則 ARRAY、STRUCT 或 PLC 數(shù)據(jù)類型中必須恰好包含 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 數(shù)據(jù)類型中包含的 BOOL 元素數(shù)目不足。
參數(shù) | 聲明 | 數(shù)據(jù)類型 | 存儲區(qū) | 說明 | |
---|---|---|---|---|---|
S7-1200 | S7-1500 | ||||
IN | Input | BYTE, WORD, DWORD | BYTE, WORD, DWORD, LWORD | I、Q、M、D、L | 所解析的位序列 這些值不得位于的 I/O 區(qū)域或工藝對象的 DB 內(nèi)。 |
OUT | Output | ARRAY[*] of BOOL、STRUCT 或 PLC 數(shù)據(jù)類型 *:8、16、32 或 64 個元素 | ARRAY[*] of BOOL、STRUCT 或 PLC 數(shù)據(jù)類型 *:8、16、32 或 64 個元素 | I、Q、M、D、L | 保存 |
ARRAY 的使用示例
在塊接口中創(chuàng)建以下變量:
變量 | 區(qū)域 | 數(shù)據(jù)類型 |
---|---|---|
SourceWord | Input | WORD |
DestinationArray | Output | ARRAY[0..15] of BOOL |
以下示例說明了該指令的工作原理:
SCL |
---|
SCATTER(IN := #SourceWord, |
OUT => #DestinationArray); |
下表將通過具體的操作數(shù)值對該指令的工作原理進行說明:
參數(shù) | 操作數(shù) | 數(shù)據(jù)類型 |
---|---|---|
IN | SourceWord | WORD(16 位) |
OUT | DestinationArray | 操作數(shù)“DestinationArray”的數(shù)據(jù)類型為 ARRAY[0..15] of BOOL。其中包含 16 個元素,因此與待解析 WORD 的長度相同。 |
數(shù)據(jù)類型為 WORD 的操作數(shù) #SourceWord 解析為單個位 (16),并將其分配給操作數(shù) #DestinationArray 的各個元素。
PLC 數(shù)據(jù)類型 (UDT) 的使用示例
創(chuàng)建以下 PLC 數(shù)據(jù)類型“myBits”:
在塊接口中創(chuàng)建以下變量:
變量 | 區(qū)域 | 數(shù)據(jù)類型 |
---|---|---|
SourceWord | Input | WORD |
DestinationUDT | Output | “myBits” |
以下示例說明了該指令的工作原理:
SCL |
---|
SCATTER(IN := #SourceWord, |
OUT => #DestinationUDT); |
下表將通過具體的操作數(shù)值對該指令的工作原理進行說明:
參數(shù) | 操作數(shù) | 數(shù)據(jù)類型 |
---|---|---|
IN | SourceWord | WORD(16 位) |
OUT | DestinationUDT | 操作數(shù)“DestinationUDT”為 PLC 數(shù)據(jù)類型 (UDT),其中包含 16 個元素,因此與待解析 WORD 的長度相同。 |
審核編輯:湯梓紅
-
plc
+關(guān)注
關(guān)注
5016文章
13390瀏覽量
465582 -
cpu
+關(guān)注
關(guān)注
68文章
10908瀏覽量
213111 -
指令
+關(guān)注
關(guān)注
1文章
611瀏覽量
35837 -
數(shù)據(jù)類型
+關(guān)注
關(guān)注
0文章
236瀏覽量
13667 -
SCL
+關(guān)注
關(guān)注
1文章
240瀏覽量
17182
原文標題:博途SCL指令SCATTER:將位序列解析為單個位
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應(yīng)用】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
![](https://file.elecfans.com/web2/M00/AE/05/pYYBAGSXFG6AL-r1AAQtk6PpUvE255.png)
IIC軟件協(xié)議的操作序列
西門子博途SCL編程:滾動數(shù)據(jù)記錄
![西門子<b class='flag-5'>博</b><b class='flag-5'>途</b><b class='flag-5'>SCL</b>編程:滾動數(shù)據(jù)記錄](https://file.elecfans.com/web1/M00/D7/CE/pIYBAF_pMiOAT1fpAACZjjmYlEw903.png)
位序列的組合與分解
西門子博途S7-1200使用SCL語言實現(xiàn)雙重循環(huán)
用中文編寫的博途SCL程序
![用中文編寫的<b class='flag-5'>博</b><b class='flag-5'>途</b><b class='flag-5'>SCL</b>程序](https://file1.elecfans.com/web2/M00/88/C8/wKgaomR0AFmAb8hIAAAnNZrgxGk456.png)
西門子博途SCL的GOTO跳轉(zhuǎn)指令
西門子博途:SCL:TOF:關(guān)斷延時
![西門子<b class='flag-5'>博</b><b class='flag-5'>途</b>:<b class='flag-5'>SCL</b>:TOF:關(guān)斷延時](https://file1.elecfans.com/web2/M00/8C/69/wKgZomSr3LyAKA_XAAAaMBn34_M734.png)
西門子博途SHL左移指令詳解
![西門子<b class='flag-5'>博</b><b class='flag-5'>途</b>SHL左移<b class='flag-5'>指令</b>詳解](https://file1.elecfans.com/web2/M00/8C/72/wKgaomSswPaATI80AAAayMPfU8A449.png)
西門子博途SCL:REGION:構(gòu)建程序代碼的步驟
西門子博途SCL:ROR:循環(huán)右移的方法
![西門子<b class='flag-5'>博</b><b class='flag-5'>途</b><b class='flag-5'>SCL</b>:ROR:循環(huán)右移的方法](https://file1.elecfans.com/web2/M00/8E/67/wKgZomTHClGAaM1mAAAfJhn4q5I306.png)
評論