包含有關當前程序信息的結構
該變量可用于評估當前執行的程序相對于提前運行。例如,該變量可用于評估程序中的錯誤,以便能夠使用合適的故障服務功能對其進行響應。
該變量是寫保護的,只能讀取。
$ERR 單獨存在于機器人和提交解釋器中。每個解釋器只能訪問自己的變量。命令解釋器不存在 $ERR。
每個子程序級別都有自己的 $ERR 表示。這樣,一個層次的信息不會覆蓋不同層次的信息,可以同時讀取不同層次的信息。
ON_ERROR_PROCEED 在當前解釋器和當前級別隱式刪除 $ERR 中的信息。
$ERR=Information
Information Type: Error_T
STRUC Error_T INT number, PROG_INT_E interpreter, INT_TYP_E int_type, INT int_prio, line_nr, CHAR module[24], up_name[24], TRIGGER_UP_TYPE trigger_type
ON_ERROR_PROCEED錯誤繼續
ON_ERROR_PROCEED 可用于抑制由以下程序行觸發的運行時錯誤消息。機器人控制器跳過觸發錯誤的語句,并用有關錯誤的信息填充系統變量 $ERR。
ON_ERROR_PROCEED 始終適用于以下行,即使這是一個空行!例外:如果以下行包含語句 CONTINUE,則 ON_ERROR_PROCEED 適用于后面的行。
如果 ON_ERROR_PROCEED 之后的行是子程序調用,則該語句引用調用本身,而不是子程序的第一行。
$ERR 和 ERR_RAISE() 是使用 ON_ERROR_PROCEED 時的重要工具。
函數 ERR_RAISE() 隨后可以生成抑制的運行時錯誤消息。它只能將系統變量 $ERR 或從 $ERR 派生的變量作為 OUT 參數處理。
ON_ERROR_PROCEED 對運動語句沒有影響:
樣條/端線;PTP_SPLINE/ENDSPL INE;點對點;林; 中國保監會;PTP_REL;
LIN_REL; CIRC_REL; ASYPTP;停止;異步;異步取消;
MOVE_EMI
ON_ERROR_PROCEED 對以下控制結構沒有影響:
為/ENDFOR;去; IF/ELSE/ENDIF;循環/ENDLOOP;重復/直到;
跳過/結束跳過;開關/外殼/默認/ENDSWITCH;同時/結束盡管
ON_ERROR_PROCEED with CONTINUE:
ON_ERROR_PROCEED
CONTINUE
$OUT[1]=TRUE
CONTINUE
ON_ERROR_PROCEED
$OUT[1]=TRUE
兩個語句序列的效果是相同的。在這兩個示例中,ON_ERROR_PROCEED 和 CONTINUE 作用于 $OUT[1]=TRUE。
$ERR、ON_ERROR_PROCEED 和 ERR_RAISE() 的示例:
例1
如果您不想抑制所有可能的運行時錯誤消息,而只希望抑制特定的錯誤消息,則可以使用 SWITCH ... ENDSWITCH 進行區分。在此示例中,僅抑制消息 1422。將顯示任何其他運行時錯誤消息。
1 DEF myProg ()
2 DECL E6POS myPos
3 INI
4 ON_ERROR_PROCEED
5 myPos = $POS_INT
6 SWITCH ($ERR.NUMBER)
7 CASE 0
8 CASE 1422
9 ;如果需要,程序故障服務功能
...
10 DEFAULT
11 ERR_RAISE ($ERR)
12 ENDSWITCH
...
13 END
4-5第 5 行觸發消息 1422 {$variable} value invalid(除非程序被中斷調用)。前一行中的 ON_ERROR_PROCEED 會抑制錯誤消息。
6 … 12取決于 $ERR.NUMBER 的差異化
7 如果第 5 行沒有發生錯誤,$ERR.NUMBER==0。在這種情況下,不需要任何操作。
8, 9 如果消息 1422 已被觸發,$ERR.NUMBER==1422。如果需要,可以對故障服務功能進行編程。
10, 11 如果觸發了 1422 以外的消息,則現在(隨后)通過 ERR_RAISE 生成此消息。
與$ERR故障變量相關聯的函數
清除與$ERR相關的過程故障信息:
ERR_CLEAR (ERROR_T PERR :OUT )
產生與$ERR相關的過程故障信息:
ERR_RAISE (ERROR_T PERR :OUT )
審核編輯 :李倩
-
變量
+關注
關注
0文章
613瀏覽量
28360 -
KUKA
+關注
關注
3文章
217瀏覽量
16516 -
解釋器
+關注
關注
0文章
103瀏覽量
6509
原文標題:KUKA系統變量:$ERR
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應用】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論