在TIA STEP7 V16版本中,可以通過相應的診斷指令去實現對S7-1200 CPU(固件版本V4.4)和擴展模塊的診斷操作。讀取LED狀態的操作。(LED)讀取診斷信息的操作。(GET_DIAG)讀取數據記錄的操作。(RDREC)接收中斷的操作。 (RALRM)生成用戶診斷報警的操作。 (Gen_UsrMsg)常見問題本文將詳細介紹上述各個指令的使用。讀取LED狀態1. 讀取LED狀態指令的調用,如圖1所示。圖1. 讀取LED狀態指令2. 讀取LED狀態指令的使用。說明:可以使用“LED”指令,讀取CPU上面LED的狀態。通過LADDR參數,可以尋址CPU。通過LED參數,可以選擇要通過該指令讀取當前狀態的模塊LED指示燈。調用該指令時,RET_VAL參數將輸出所選LED的狀態。根據所選的LED,將僅顯示指定的狀態信息。如表1所示:表1 "LED"指令的參數參數聲明數據類型說明LEDInputUINTLED 的標識號:1:STOP/RUN2:ERROR3:MAINT(維護)5:Link(綠色)6:Rx/Tx(黃色)RET_VALReturnINTLED 的狀態:0 = LED 不存在或狀態信息不可用1 = yongjiu關閉2 = 顏色 1(例如,對于 LED STOP/RUN:綠色)yongjiu點亮3 = 顏色 2(例如,對于 LED STOP/RUN: 橙色) yongjiu點亮4 = 顏色 1 將以 2 Hz 的頻率閃爍5 = 顏色 2 將以 2 Hz 的頻率閃爍6 = 顏色 1 和 2 將以 2 Hz 的頻率交替閃爍7 = LED 正在運行,顏色 18 = LED 正在運行,顏色 29 = LED 不存在或狀態信息不可用示例:下面的示例中,顯示了如何讀取CPU上面的LED狀態。在全局DB中創建兩個變量,用來保存數據,如圖2所示:圖2. 在全局DB中創建變量在OB1中調用"LED"指令,并連接參數,其中參數LADDR指向CPU的硬件標識符(在"PLC變量->系統常量"中,名稱為"Local~Common"),如圖3所示:圖3. 在OB1中調用"LED"指令通過參數LED("LED")指向待監視CPU的LED。示例一中參數LED("LED"=1)表示查詢CPU的LED(STOP/RUN)狀態。如果CPU的操作模式從STOP轉入RUN,則在輸出參數RET_VAL("ReturnValue")中的值為"6"(綠色和橙色交替閃爍)。如圖4所示:圖4. "LED"指令執行結果(示例一)通過參數LED("LED")指向待監視CPU的LED。示例二中參數LED("LED"=2)表示查詢CPU的LED(ERROR)狀態。如果CPU中發生錯誤,則在輸出參數RET_VAL("ReturnValue")中的值為"4"(紅色閃爍)。如圖5所示:圖5. "LED"指令執行結果(示例二)讀取診斷信息1. 讀取診斷信息指令的調用,如圖6所示。圖6. 讀取診斷信息指令2.讀取診斷信息指令的使用。說明:GET_DIAG指令可以用來讀取硬件組件的診斷信息。例如:讀取S7-1200 CPU的診斷信息。通過LADDR參數,來選擇硬件組件。通過MODE參數,可以選擇要讀取的診斷信息。通過DIAG參數,根據不同的MODE參數,輸出不同的診斷信息。如表2所示:表2 GET_DIAG指令的MODE參數和DIAG參數對應關系MODE說明DIAGCNT_DIAG0以 DWORD 格式輸出硬件組件所有支持的診斷信息,其中位 X=1 表示支持模式 X。DWORD 數據類型的位:位 0 = 1:支持 MODE 0。位 1 = 1:支持 MODE 1。位 2 = 1:支持 MODE 2。位 3 到 31:不相關MODE=0 時,S7-1200 CPU 將忽略參數 LADDR。01輸出所尋址硬件組件的診斷狀態。結構 DIS:MaintenanceStateComponentStateDetailOwnStateIOStateOperatingState02輸出所尋址硬件對象中所有從屬組件的狀態。結構 DNN:SubordinateStateSubordinateIOStateDNNmode0當參數MODE=1時,參數DIAG以結構 DIS 輸出診斷信息。此時,在變量聲明中輸入系統數據類型“DIS”作為數據類型。結構DIS的內容如表3所示:表3 結構DIS中各參數的含義參數數據類型值說明參數構成規則MaintenanceStateDWORD枚舉MaintenanceState 取決于 ComponentStateDetail。0良好ComponentStateDetail 的位 15 始終為 1。ComponentStateDetail 的位 11 到 14 的值可以是 0 或 1。ComponentStateDetail 的位 3 可以是 1。ComponentStateDetail 的所有其它位均為 0。1硬件組件已禁用。如果 ComponentStateDetail 的位 16 為 1如果 ComponentStateDetail 的位 17 為 12--3--4--5需要維護如果 ComponentStateDetail 的位 4 為 16要求維護如果 ComponentStateDetail 的位 5 為 17錯誤如果 ComponentStateDetail 的位 6 為 18上一級硬件組件的狀態為“未知/錯誤”如果 ComponentStateDetail 的位 11 到 14 的值為 3如果 ComponentStateDetail 的位 7 到 10 的值為 3 或 49--10輸入/輸出不可用。如果 ComponentStateDetail 的位 11 到 14 的值為 2如果 ComponentStateDetail 的位 7 到 10 的值為 1 或 2如果 ComponentStateDetail 的位 18 為 1如果 ComponentStateDetail 的位 19 為 1ComponentStateDetailDWORD位數組狀態:位 0 到 15:硬件組件的狀態位 16 到 31:CPU 的狀態-0 到 2(枚舉)其它信息:0:無其它信息1:不允許傳送-3位 3 = 1:至少一個合格診斷可用-4位 4 = 1:至少一個通道或組件需要維護-5位 5 = 1:至少一個通道或組件需要維護-
- 怎樣進行西門子PLC調試 2024-11-22
- 實例西門子S7-1200 “ 運動” 控制,插入工藝對象“ 軸” 2024-11-22
- 西門子S120變頻器的硬件配置 2024-11-22
- 西門子PLC控制系統中PROFIBUS-DP從站掉站的故障分析及處理 2024-11-22
- 如何設置西門子CPU系統執行時間 2024-11-22
- 如何實現西門子S7-1500F安全PLC和 S120 的安全通信 2024-11-22
- 西門子S7-1200通過PROFINET,控制G120變頻器的啟停和輸出頻率 2024-11-22
- 西門子PLC模擬量抗干擾處理 2024-11-22
- 西門子SCL編程實例:1200/1500PLC不定長數組選擇排序的運用編程 2024-11-22
- 西門子S7-1500/ET200MP 熱電偶補償方式及組態配置 2024-11-22
- 神級匯總,西門子PLC中斷指令及例程 2024-11-22
- 利用西門子PLC實現簡單的搬運動作,非常方便 2024-11-22
- 西門子S7-200smart程序的監控與調試 2024-11-22
- 如何用西門子串口軟件調試變頻器 2024-11-22
- 圖解西門子PLC與Wincc間的通訊方式 2024-11-22
聯系方式
- 電 話:13510737515
- 聯系人:董海波
- 手 機:13185520415
- 微 信:13185520415