CS機器人初始化判斷自動回原
1. 簡介
1. 需要用到的指令:獲取當(dāng)前 TCP 位姿——get_actual_tcp_pose()
2. 根據(jù)現(xiàn)場實際情況區(qū)分·工作區(qū)域,工作區(qū)域分為兩類:[a.能直接回安全點的區(qū)域,b.不能直接回安全點需要過渡點才能回到安全點]。
3. 通過獲取當(dāng)前機器人TCP姿態(tài)或度判斷當(dāng)前機器人在哪個工作區(qū)域,根據(jù)實際的工作區(qū)域避開干涉區(qū)安全回到機器人安全位。
4. 考慮到正在取料/放料的時候直接回安全位,可能會碰到料盤,治具等機器人接觸之類的物品,所以在獲取當(dāng)前位置后直線上升到一個安全高度,不建議使用偏移Z+方向的方式抬高的方式,因為有可能在手動移動后,機器人已經(jīng)在一個比較危險的高度,再次抬高可能會碰到上方物品,應(yīng)該把安全點的高度賦值給當(dāng)前位置的Z方向(根據(jù)現(xiàn)場實際情況選擇直接賦值安全點的高度還是賦值一個固定的高度),運行后機器人會在原地上升或下降到一個安全高度,這樣更安全。
5. 以下案例渡點的要求:a.這個過渡點必須能直接回到安全點 b.并且在這個工作區(qū)域無論在哪個位置都能回到這個過渡點。
2. 操作流程
1.由下圖案例可將工作區(qū)域分為取料取料和放料區(qū)域,取料區(qū)域由圖2-1可見在任意一點都可以回安全點,那么我們就可以直接判斷是否在取料區(qū)域上升到安全高度直接回安全點即可。

圖2-1
2.需要手動移機器人取料區(qū)域最左端(+X方向)點,最右端(-X方向)點,最后端(+Y方向)點,最前端(-Y方向)點,記住這四個點的x,y最大值和最小值程序判斷區(qū)域時需要用到,移哪個方向看哪個方向的值,如圖2-2。

圖2-2
由上圖移動記錄的數(shù)值判斷取料區(qū)域的條件為2.56<x<264.65and-793.43<y<-161.23(單位mm,程序中單位必須為m)< span="">
3.由下圖2-3路徑可知機器人在放料區(qū)域隨意點不能直接回原點,需要經(jīng)過過渡點才能安全的回到安全點。

圖2-3
4.通過手動移機器人到放料區(qū)域最左端(+X方向)點,最右端(-X方向)點,最后端(+Y方向)點,最前端(-Y方向)點,記住這四個點的x,y最大值和最小值程序判斷區(qū)域時需要用到,移哪個方向看哪個方向的值,如圖2-4所示。

圖2-4
由上圖移動記錄的數(shù)值判斷放料區(qū)域的條件為226.23<x<528.08and331.9<y<503.6(單位mm,程序中單位必須為m)< span="">
5.程序如下圖2-5↓:

圖2-5
3. 常見問題解答
1. 以上程序及點位數(shù)據(jù)不能直接用,根據(jù)現(xiàn)場實際情況劃分工作區(qū)域判斷xy方向的數(shù)值,根據(jù)實際情況加過渡點回安全點。
2. 通過獲取當(dāng)前 TCP 位姿--get_actual_tcp_pose()得到的數(shù)據(jù)單位為m,在程序里判斷xy方向的單位也應(yīng)該為m,其中當(dāng)前位置[0]為X方向,當(dāng)前位置[1]為Y方向,當(dāng)前位置[2]為Z方向。
3. 自動回安全點的速度建議慢點,建議用直線運動,速度建議100mm/s。
4. 程序里面的安全點的高度必須確保無論在哪個位置都是一個安全高度。