6SL3210-5BE31-8UV0授權代理
| 更新時間 2024-11-23 08:00:00 價格 請來電詢價 品牌 西門子 型號 PLC 西門子 代理商 聯系電話 18717946324 聯系手機 18717946324 聯系人 占雪芬 立即詢價 |
6SL3210-5BE31-8UV0授權代理
1 SFC 51簡介
1.1 程序功能介紹
通過系統功能SFC 51 "RDSYSST" (讀取系統狀態),可以讀取系統狀態列表或部分系統狀態列表,例如指示燈狀態,序列號,從站狀態等等。
調用SFC 51時,通過將值“1"賦給輸入參數REQ來啟動讀取。如果可以立即讀取系統狀態,則SFC將在BUSY輸出參數中返回值0。如果BUSY包含值1,則尚未完成讀取功能。
2 讀取CPU指示燈
可以通過SFC 51讀取CPU的指示燈狀態,使用的SSL_ID參數為16#74(16#19)讀取全部指示燈狀態 或者16#174(16#119)讀取單個指示燈狀態
2.1 編程
首先需要創建一個數據塊,用來存放讀取出來的指示燈狀態結果
圖1 創建DB1,存放讀取結果
打開OB1,在OB1的臨時變量區創建一個變量length,類型設置為Struct(結構)
圖2 創建名為length的結構變量
雙擊length變量,進入結構變量成員定義,創建兩個word類型的變量,本例中分別為size和number:
圖3 創建length的結構變量的兩個word成員
編寫SFC51程序:
CALL "RDSYSST"
REQ :=TRUE
SZL_ID :=W#16#74 //讀取全部指示燈狀態
INDEX :=W#16#0
RET_VAL :=MW0
BUSY :=M2.0
SZL_HEADER:=#length
DR :=P#DB1.DBX0.0 BYTE 500 //結果輸出到DB1數據塊中
DB1存放的結果即為模塊的指示燈狀態,每個指示燈有4個字節的長度來描述。
前兩個字節表示燈的類型(見表二),表示是SF燈還是BF燈等等。
第三個字節表示燈是亮還是滅,如果為1則燈亮,如果為0則燈的狀態是滅。
第四個字節表示燈是否閃爍,0表示不閃,1表示正常閃爍(2hz),2,表示慢閃(0.5hz)
燈的類型列表如下(不同的CPU會有不同數目的指示燈):
關于系統功能SFC51的更多詳情請參閱STEP 7的在線幫助,或者通過Start > SIMATIC > DOCUMENTATION選擇手冊“System Software for S7-300/400 System and Standard Functions"
3 讀取Profibus DP從站 狀態
3.1 編程
首先需要創建一個數據塊,用來存放讀取出來的狀態結果
圖4 創建DB1,存放讀取結果
打開OB1,首先在OB1的臨時變量區創建一個變量length,類型設置為Struct(結構)
圖5 創建名為length的結構變量
圖6 創建length的結構變量的兩個word成員
SZL_ID :=W#16#294 //讀取從站是否存在
INDEX :=W#16#1
在本例中,P#DB1.DBX0.0 BYTE 500中為每個DP從站(16 x 8 = 128)保留一位,地址為Address 1的DP從站的狀態保存在第三個字節的Bit 1位中, 地址為Address 3的DP從站的狀態保存在第三個字節的Bit 3位中,依次類推。如果從站對應的位未被置位,則表明那個DP從站沒有通信上或不存在。
舉例:從DB1.DBW2開始,每個位對應一個bit,例如3號站對應的位是DB1.DBX2.3 ,站點存在的位為1,不存在的為0。
注意事項:
關于系統功能SFC51的更多詳情請參閱STEP 7的在線幫助,或者通過Start > SIMATIC > DOCUMENTATION選擇手冊“System Software for S7-300/400 System and Standard Functions
聯系方式
- 電 話:18717946324
- 聯系人:占雪芬
- 手 機:18717946324
- 微 信:18717946324