AbortMotion
用於中斷動作命令,並將執行動作的工作設為錯誤。
本命令為適合高階專業人員使用的命令。請充分理解命令內容後使用。
格式
AbortMotion
參數
- 機器人編號
- 用於指定中斷動作的機器人編號。
- All
- 用於中斷所有機器人動作。
說明
依照執行AbortMotion時的機器人狀態,會出現如下情形。
無論在任何情況之下,若要繼續處理,都必須以OnErr攔截錯誤,記述錯誤處理。
錯誤2999可使用常數ERROR_DOINGMOTION。
錯誤2998可使用常數ERROR_NOMOTION。
請在執行繼續執行(Cont)之前,建立避免執行2次以上AbortMotion的程式。
機器人正在執行動作命令時
機器人立即暫停(快速暫停)手臂動作,放棄剩餘的動作。
在對機器人執行動作命令的工作中發生錯誤2999(ERROR_DOINGMOTION)。
下一個動作命令用於從暫停位置直接向下一個目標位置進行動作。
機器人處於暫停(快速暫停)狀態時
雖然在執行AbortMotion時未發生任何情況,但放棄了內部的剩餘動作。
發出繼續執行(Cont)命令時,在對機器人執行動作命令的工作中發生錯誤2999(ERROR_DOINGMOTION)。
下一個動作命令用於從暫停位置直接向下一個目標位置進行動作。
機器人處於WaitRecover狀態(打開安全門狀態)時
雖然在執行AbortMotion時未發生任何情況,但放棄了內部的剩餘動作。
可以Recover命令的旗標(Flag)選擇接下來的動作。
- 執行「Recover 機器人編號, WithMove」,即恢復機器人的勵磁,並執行復歸動作。發出繼續執行(Cont)命令時,在對機器人執行動作命令的工作中發生錯誤2999(ERROR_DOINGMOTION)。下一個動作命令用於從完成復歸動作的位置直接向下一個目標位置進行動作。
- 執行「Recover 機器人編號, WithoutMove」,即恢復機器人的勵磁。發出繼續執行(Cont)命令時,在對機器人執行動作命令的工作中發生錯誤2999(ERROR_DOINGMOTION)。下一個動作命令用於從恢復勵磁的位置直接向下一個目標位置進行動作。(無復歸動作。)
機器人正在執行非動作命令時
在此之前,在對機器人執行動作命令的工作中發生錯誤2998(ERROR_NOMOTION)。因Wait或Input命令而處於等待狀態時,立即中斷工作並發生錯誤2998。
利用CP On設定執行動作命令時,動作命令中若缺少程式,則即便機器人處於動作狀態,仍會發生錯誤2998。
指定的機器人未以程式(工作)進行動作時
會發生錯誤。
注意
支援的控制器型號
不支援T/VT系列。
參照
OnErr、Recover、Till
AbortMotion範例
若記憶體I/O的0號為On,則執行AbortMotion,機器人向Home位置移動。
Function main
Motor On
Xqt sub, NoEmgAbort
OnErr GoTo errhandle
Go P0
Wait Sw(1)
Go P1
Quit sub
Exit Function
errstart:
Home
Quit sub
Exit Function
errhandle:
Print Err
If Err = ERROR_DOINGMOTION Then
Print "機器人處於動作狀態" 'Go P0或Go P1執行中
EResume errstart
ElseIf Err = ERROR_NOMOTION Then
Print "機器人處於非動作狀態" 'Wait Sw (1) 執行中
EResume errstart
EndIf
Print "Error Stop" '發生其它錯誤
Quit All
Fend
Function sub
MemOff 0
Wait MemSw(0)
AbortMotion 1
MemOff 0
Fend