使用 FB125 程序來判斷系統中的錯誤,FB125 可以診斷總線上站點的各種故障信息。FB125 是一箇中斷驅動功能塊,它可以檢測到從站的組態,掉站等故障,並且給出詳細的報錯信息。使用 FB125 來診斷故障必須在 OB1, OB82 和 OB86 中調用FB125。
組態軟件和硬件:
所用軟件:STEP7 V5.2
所用硬件:
1.PROFIBUS-DP 主站 S7-400 CPU414-3
2. PROFIBUS-DP 從站 IM 153-2 (redundant) 、ET 200S / CPU、Diagnostic Repeater。
3. MPI 網卡 CP5611
4.PROFIBUS 電纜及接頭
配置完畢的系統組態圖如下:
下面通過 FB125 來診斷系統中的各種故障
首先,插入功能塊 OB82、OB86。在 Step 7 界面下選中 Blocks,在右側空白區域點擊鼠標右鍵,在下拉菜單中選擇 Insert New Object-〉Organization Block,插入所需的 OB82 和 OB86 組織塊,如下圖所示。
由於在程序中要使用 DB125 存儲故障信息,所以按照添加 OB 塊的步驟添加 OB125。
分別打開 OB1,OB82 和 OB86,在其中調用 FB125 和 DB125,輸入程序,例子程序如
下:
程序為診斷信息分配了存儲空間,下面對每條語句的診斷功能做進一步的說明。
以下參數從 1-8 均為輸入量
1、DP_MASTERSYSTEM (INT)表示配置的 DP 主站系統的個數,在本例中為 1。
2、EXTERNAL_DP_INTERFACE(BOOL):=0,CPU 主站的集成 DP 接口;=1,外部接口,如 CP/IM。
3、MANUAL_MODE (BOOL):=0,自動模式,此模式下不支持單個從站的診斷;=1,手動模式,可以進行單個從站的診斷。
4、SINGLE_STEP_SLAVE (BOOL):轉到下一個出錯的 DP 從站。
5、SINGLE_STEP_ERROR(BOOL):轉到正在顯示的 DP 從站的下一個錯誤。
6、RESET (BOOL):=1,復位,初始化系統。
7、SINGLE_DIAG (BOOL):只在手動模式下(MANUAL_MODE=1)有效。=1,讀 DP 從站的診斷。可在 SINGLE_DIAG_ADR 配置該從站的站號。
8、SINGLE_DIAG_ADR (BYTE):只在手動模式下(MANUAL_MODE=1)有效。與 SINGLE_DIAG 配合使用,在其中設置單獨診斷的從站的站號。
以下參數 9-25 均為輸出量。
9、ALL_DP_SLAVES_OK (BOOL):=0,系統中從站存在故障;=1,系統中從站運行正常。
10、SUM_SLAVES_DIAG (BYTE):出錯的 DP 從站的數目。
11、SLAVE_ADR (BYTE):出錯的 DP 從站的站號。
12、SLAVE_STATE (BYTE)
13 、SLAVE_IDENT_NO (WORD):與 SLAVE_ADR 有關。
14、ERROR_NO (BYTE):與當前 SLAVE_ADR 參數指示的從站相對應的錯誤編號,每個編號都有一個與之相對應的故障信息。
15、ERROR_TYPE (BYTE)
16、MODULE_NO (BYTE):與當前 SLAVE_ADR 參數指示的從站相對應的模塊編號,指示出錯的從站對應的槽或模塊。
17、MODULE_STATE (BYTE):與當前 SLAVE_ADR 參數指示的從站相對應的模塊狀態。
18、CHANNEL_NO (BYTE):與當前 SLAVE_ADR 參數指示的從站相對應的故障模塊的通道編號。
19、CHANNEL_TYPE (BYTE):與當前 SLAVE_ADR 參數指示的從站相對應的模塊中出錯通道的類型。
20、CHANNEL_ERROR_CODE (INT):與當前 SLAVE_ADR 參數指示的從站相對應,每一個錯誤的通道都明確地給出了錯誤信息,每條信息對應著一個標號,具體標號對應的故障信息參見手冊 P4-P8 表格。
21、CHANNEL_ERROR_INFO_1(DWORD):與當前 SLAVE_ADR 參數指示的從站相對應,故障通道上的位錯誤信息,不同的錯誤信息對應不同的錯誤類型(ERROR_TYPE)。
22、CHANNEL_ERROR_INFO_2(DWORD):與當前 SLAVE_ADR 參數下,與上文中 ERROR_TYPE 中的編號 4(S7 診斷)相對應,提供了滿足 S7 模塊 DS0 數據記錄的特殊錯誤信息,詳見手冊 P11 表格。
23、DIAG_COUNTER (BYTE):顯示的診斷 DP 從站的總數。
24、DIAG_OVERFLOW (BOOL):同時接受診斷的總數大於 32 個,從站超過了 FB125 可以處理的上限,需要執行RESET 復位。
25、BUSY (BOOL):FB125 正在診斷 DP 系統。DB125 的功能:在程序中,用到了數據塊 DB125,其作用如下:
下圖為從站編號的分配表。
通過以上兩個表格,可以判斷出系統中從站的狀態,下面通過一個例子來說明。
在編程界面下選擇菜單欄中 PLC->Monitor/Modify Variables。
在 23 欄中,起始地址為 1176 字節,已組態的從站為 3,4,5,6 和 16 號從站。
在 24 欄中,起始地址為 1192 字節,已檢測到的從站為 3,4 和 16 號從站。
在 25 欄中,起始地址為 1208 字節,檢測不到的從站為 5,6 號從站。
在 26 欄中,起始地址為 1224 字節,沒有故障從站。
在 27 欄中,起始地址為 1240 字節,受影響的從站為 5,6 號從站。
可以看到,通過 FB125 可以獲得一個詳細的診斷結果,從故障站點,故障模塊,故障通道,逐步明確故障的發生地點;根據故障信息,有助於找出故障原因,從而排除故障。同時數據存儲區可以做為接口被其它程序讀取和調用(如 WINCC),更直觀的找出故障從站和錯誤信息。
閱讀更多 榮久科技 的文章