品牌: | 西門子 |
型號: | 6ES72411CH301XB0 |
產的: | 成都 |
單價: | 178.00元/件 |
發貨期限: | 自買家付款之日起 天內發貨 |
所在地: | 廣東 廣州 |
有效期至: | 長期有效 |
發布時間: | 2023-12-19 07:01 |
最后更新: | 2023-12-19 07:01 |
瀏覽次數: | 215 |
采購咨詢: |
請賣家聯系我
|
西門子CB1241信號板通訊模塊RS485,西門子CB1241,西門子信號板通訊模塊RS485,西門子RS485CB1241,CB1241價格,CB1241參數
V1.0版本:GATHER_BLK指令是將Bool數組合并成位序列(Byte、Word、DWord)數組。LAD需要在下拉框選擇輸出數組OUT的類型(Byte、Word、DWord),COUNT_IN的類型(USInt、UInt、UDInt),SCL無需選擇。IN是待合并的Bool數組起始元素,COUNT_IN是合并后的位序列數組元素個數,OUT是位序列數組起始元素。
V1.1版本:IN除Bool數組之外,可以是Struct、UDT類型的變量,變量內是連續的Bool變量,IN處填寫Struct、UDT類型內的接收的Bool起始變量。
注意:
1. 當COUNT_IN超過了位序列數組元素個數,將不執行指令。如果激活指令的ENO功能,則ENO=False。
2. 當所需的Boo數量超過了已有的Bool數量,將不執行指令,如果激活指令的ENO功能,則ENO=False。
使用舉例,如圖14-15所示:
1. 將"DB69".Static_2,從第1個Bool元素開始合并成"DB69".Static_1,從第3個元素開始的2個Byte變量
2. 將"DB69".Static_4,從Struct第1個元素開始合并成"DB69".Static_3,從第1個元素開始的2個Byte變量
西門子CB1241信號板通訊模塊RS485,西門子CB1241,西門子信號板通訊模塊RS485,西門子RS485CB1241,CB1241價格,CB1241參數
①:初始POS=0,指針指向數組第0個元素
②:執行Deserialize,轉化了12個字節,POS的輸出=0+12=12,指針指向數組第12個元素
Serialize:POS的初始輸入作為轉化后的Byte數組的起始元素,指令結束后,POS的輸出=初始輸入+SRC_VARIABLE占據的字節數
也可以看做指針,初始指針指向Byte數組所在的POS位置,轉化后,指針移動了SRC_VARIABLE占據的字節數。
注意:POS>=0,當POS=0時,為Byte數組的第一個元素,建議Byte數組使用Array[0..x] of Byte,這樣Byte數組下標可以和POS對應上。
例子參考圖5:
①:初始POS=0,指針指向數組第0個元素
②:執行Serialize,轉化了12個字節,POS的輸出=0+12=12,指針指向數組第12個元素
2. TIA 博途 V14開始,S7-1200 V4.2支持V2版本
功能與V1版本不同的是
(1)標準Byte數組可以是優化數據塊的數組
(2)Deserialize的SRC_ARRAY支持Array[*] of Byte
使用舉例:
編寫FC,實現清零各種DB塊的變量
思路:
1. 將需要清空的DB塊內所有變量放入Struct/UDT,或者將需要清空的數據塊建立成UDT類型生成的DB,使用Deserialize(反序列化)指令清空。
2. 用于清空的Byte數組可以使用M區。對于S7-1211C與S7-1212C有4kB的M區,對于S7-1214C、S7-1215C、S7-1217C有8kB的M區,通常不會用到很多,這樣可以利用其中靠后不常用的區域,例如2kB來清空*多2kB的DB塊。
3. 有多個不同的結構的DB,都可以先后清空。
編寫的FC、DB及調用,如圖6-8所示。