公司主營:西門子數控,S7-200CN.S7-200smart.S7-300.S7-400.S7-1200.6ES5 ET200 人機界面,變頻器,DP總線,MM變頻器,6SE70交流工程調速變頻器6RA70等系列產品。
產品簡介
詳細介紹
西門子組態6DD16810AF4銷售
不在質保范圍內,、仿貨、二手翻新貨,一律不做。UFILL_BLK:不可中斷的存儲區填充
說明
可以使用“不可中斷的存儲區填充"(Fill block uninterruptible) 指令,用 IN 輸入的值填充一
個存儲區域(目標范圍)。該指令不可中斷。從輸出 OUT 的地址開始填充目標范圍。
可以使用參數 COUNT 操作的重復。執行該指令時,輸入 IN 中的值將
到目標范圍,重復由參數 COUNT 的值。
僅當源范圍和目標范圍的數據類型相同時,才能執行該指令。
說明
此操作不會作的其它任務打斷。這也解釋了在執行“不可中斷的存儲區填充"
指令期間,CPU 響應的原因。
如果下列條件之一,則使能輸出 ENO 的狀態為“0":
● 使能輸入 EN 的狀態為“0"。
● 變更元素的值為 ARRAY 或結構中的元素個數。如果的數據超過 OUT 輸出中
的元素,則將返回一個意外結果。
當 ARRAY of BOOL 時,溢出的使能輸出 ENO 將設置為“1",直至超出 ARRAY 結
構的字節。如果 COUNT 輸入的值超出了 ARRAY 結構的字節,則使能輸出 ENO
將復位為“0"。
說明
ARRAY 的使用
該指令讀取源范圍中所選元素的內容,并從索引開始將該內容向目標范圍 n 次(n
= 取決于參數 COUNT 的值)。
可以使用“不可中斷的存儲區填充"指令多 16 KB 大小的數據。注意:CPU 對此
有特定。
指令
4.1 指令
對 PLC 進行編程
編程和操作手冊, 10/2018 923
填充結構
與 ARRAY 中的元素相同,也可為結構(STRUCT、PLC 數據類型)中多個元素填充相同
的值。待填充元素的結構中包含元素的元素數據類型必須相同。而且,該結構也可嵌入到
其它結構中。
參數
下表列出了“不可中斷的存儲區填充"指令的參數:
參數聲明數據類型存儲區
說明
S7-1200 S7-1500
EN Input BOOL BOOL I、Q、M、
D、L 或常量
使能輸入
ENO Output BOOL BOOL I、Q、M、
D、L
使能輸出
IN Input 二進制數、整
數、浮點數、
定時器、
DATE、
CHAR、
WCHAR、
TOD
二進制數、整
數、浮點數、
定時器、
DATE、
CHAR、
WCHAR、
TOD、LTOD
I、Q、M、
D、L、P 或
常量
用于填充目標
范圍的元素。
COUNT Input USINT、
UINT、
UDINT
USINT、
UINT、
UDINT、
ULINT
I、Q、M、
D、L、P 或
常量
操作的重
復
OUT Output 二進制數、整
數、浮點數、
定時器、
DATE、
CHAR、
WCHAR、
TOD
二進制數、整
數、浮點數、
定時器、
DATE、
CHAR、
WCHAR、
TOD、LTOD
D、L 目標范圍中填
充的起始地
址。
有關有效數據類型的更多信息,請參見“另請參見"。
指令
4.1 指令
對 PLC 進行編程
924 編程和操作手冊, 10/2018
ARRAY 的使用示例
以下示例說明了填充 ARRAY 時該指令的工作原理:
?????????????????????? ????????????????????????????
??????????????????????
??????????????????
??????
???? ??????
??????????
????
?????????????????? ?????????????????? ????????????????
下表將通過具體的操作數值對該指令的工作原理進行說明:
參數操作數值
IN FillValue 該操作數的數據類型為 INT。
COUNT Tag_Count 3
OUT TargetArea 操作數 TargetArea 的數據類
型為 ARRAY[1..5] of INT。
它包含 5 個 INT 數據類型的
元素。
如果操作數“TagIn_1"和“TagIn_2"的狀態為“1",則執行該指令。該指令從操作數
從個元素開始,將 #FillValue 的值到 #TargetArea 輸出變量中三次。此操作
不會作的其它任務打斷。如果成功執行該指令,則將 TagOut 和“ENO"使能輸出
的狀態置位為“1"。
該結構的使用示例
以下示例說明了填充結構時該指令的工作原理:
可使用以下元素創建一個全局數據塊:
Data_block_1 數據類型
MyStruct1 STRUCT
Member_1 INT
Member_2 INT
Member_3 INT
Member_4 INT
MyStruct2 STRUCT
指令
4.1 指令
對 PLC 進行編程
編程和操作手冊, 10/2018 925
Data_block_1 數據類型
SubArray ARRAY[1..2] of STRUCT
SubArray[1] STRUCT
NestedStruct STRUCT
Member_1 INT
Member_2 INT
Member_3 INT
Member_4 INT
SubArray[2] STRUCT
Nested
Struct
STRUCT
Member_1 INT
Member_2 INT
Member_3 INT
Member_4 INT
生成以下程序代碼,尋址 MyStruct1 變量:
??????????????????????????????
????????????????????
????????????????
??????
??
??????????????????
??????
???? ??????
??????????
????
????????????????
生成以下程序代碼,尋址 MyStruct2 變量:
??????????????????????????????????????????????????
??????????????????????????????????????????????????
????????????????
??????
??
??????????????????
??????
???? ??????
??????????
????
????????????????
在這兩個示例中,參數 IN 的值 10 將從 Member_2 開始 OUT 參數中兩次。即,值 10
將到元素 Member_2 和 Member_3 中兩次。另外兩個元素 Member_1 和 Member_4
保持不變。如果該指令成功執行,則 TagOut 操作數的狀態將置位為“1"。
下一篇:西門子博途軟件6AV2107-0UP00-0BB0設置