加入收藏 在線留言 聯系我們
        關注微信
        手機掃一掃 立刻聯系商家
        全國服務熱線13185520415
        公司新聞
        西門子GetError 與 GetErrorID 指令的使用
        發布時間: 2024-03-15 20:35 更新時間: 2024-11-23 08:00
        觀看西門子GetError 與 GetErrorID 指令的使用視頻

        GetError 與 GetErrorID 指令的使用

        在 STEP7 11 中,可以通過GetError (獲取本地錯誤信息)或者GetErrorID (獲取本地錯誤ID )指令查詢塊內出現的錯誤。

        請注意:GetError 和 GetErrorID 均支持塊內的錯誤處理。當在程序塊中調用GetError 或GetErrorID 指令后,如果該程序塊發生錯誤,CPU則將忽略任何預定義的系統響應。也就是說CPU 會忽略此錯誤,而且CPU 的Error 燈(紅色)也不會亮,CPU 也不會停機。所以說該指令在某種程度上也起到了抑制程序錯誤的作用,同時有一定的風險存在。

        建議該指令在程序塊中的Zui后一個網絡中調用, 這樣可以診斷整個程序塊中的錯誤,如果在程序中間調用該指令,則后面的程序如果有錯誤,CPU 也會忽略錯誤,不會停機,也沒有相關報錯,將不利于問題的診斷。

         1.GetError 與 GetErrorID 的調用 

        在編程界面下, 點擊右側 “指令-> 基本指令-> 程序控制操作” 中可以找到GetError及GetErrorID 兩個指令。(見下圖1)

        圖片

        2. GerError 指令的使用

        GetError :使用“獲取本地錯誤信息”指令,可以查詢塊內出現的錯誤。如果在塊執行期間出現錯誤,則發生的第一個錯誤的詳細信息將保存在輸出 ERROR 中。消除第一個錯誤后,該指令會在Error 處輸出下一個錯誤的信息。僅當使能輸入 EN 的信號狀態為“1”且顯示了錯誤信息時,才置位“獲取本地錯誤信息”指令的使能輸出 ENO。

        GetError 指令的輸出參數Error 的數據類型為:ErrorStruct(見圖2),請注意:常規的變量類型中并未包含此類型。

        圖片

        定義Error 變量的步驟:

        1. 需要創建一個全局數據塊并定義變量,例如變量名為Error,在DB 塊中手動輸入" Errorstruct ",該變量類型無法通過下拉列表選擇(見圖3)。

        圖片

        通常輸入“ E ” 時就可以看見該變量類型,可以直接點選。(見圖4)

        圖片

        定義后的Error 結構如下:(見圖5),詳細的參數介紹請參考該指令的幫助文件。(選中塊, 按鍵盤上功能鍵 F1 ) 

        圖片

        3. 定義完成后可以直接在引腳輸入所創建的DB 塊的名稱,即可在下拉框中找到所定義的Error 變量( 見圖6)。

        圖片

        直接選擇Error 即可完成輸出參數的定義

        圖片

        可以通過打開DB 塊,監控Error的狀態判斷程序是否報錯。詳細報錯信息請參考該塊的幫助(選中塊, 按鍵盤上功能鍵 F1 ) 


        例如: 在FC1 中編程調用一個不存在的地址 DB1.DBX0.0,此時GetError 指令執行, cpu 運行正常, 沒有error 燈亮,診斷緩沖區也不會報錯

        圖片

        注意:在TIA Protal v11 中,如果程序中使用了未定義的變量或未創建的變量,編譯將會報警,但程序可以下載, 未定義變量不能通過變量分配,見下圖

        圖片

        此時監控DB 塊中Error 變量的狀態, 根據監視值查詢幫助可以知道 FC1 中調用的全局數據塊 DB1 中,偏移地址0 不存在

        圖片

        3. GetErrorID 的使用

        GetErrorID:使用“獲取本地錯誤 ID”指令(見圖11),可以查詢塊內出現的錯誤。如果在塊執行過程中系統信號出錯,會將發生的第一個錯誤的 ID 保存在輸出 ID 的變量中。ID 輸出中只能指定 WORD 數據類型的操作數(見圖12)。消除第一個錯誤后,該指令才會輸出發生的下一個錯誤的ID。僅當“獲取本地錯誤 ID”指令的輸入的信號狀態為“1”且顯示了錯誤信息時,才置位該指令的輸出。

        圖片圖片

        下表列出了GetRrrorID 指令的輸出參數 ID 可以輸出的值對應的報錯信息。(GetError 指令輸出結構變量中的ErrorID適用于下表)  

        圖片圖片圖片

        聯系方式

        • 電  話:13510737515
        • 聯系人:董海波
        • 手  機:13185520415
        • 微  信:13185520415