You may need to book your own error as well in order to avoid making a blanket handler that bites you in the butt later. MoveJ pClearStation, v1000, z50, tWeldGun\WObj:=obSta1 MoveJ pMy_RoutineEscape, v1000, z50, tWeldGun\WObj:=obSta1 MoveL pAway_Weld_01, v1000, z50, tWeldGun\WObj:=obSta1 MoveL pTo_Weld_01, v1000, z50, tWeldGun\WObj:=obSta1 ĪrcLStart pWeld_01_Start, v1000, seam3, weld13, fine, tWeldGun\WObj:=obSta1 ĪrcLEnd pWeld_01_End, v1000, seam3, weld13, z10, tWeldGun\WObj:=obSta1 MoveJ pMy_RoutineApproach, v1000, z50, tWeldGun\WObj:=obSta1 MoveJ pStandardApproach, v1000, z50, tWeldGun\WObj:=obSta1 That being said, generally you can handle just about anything with an error handler at the bottom of the routine or the routine that calls them, whichever is best for your situation. You don’t want the arm to relentlessly smash through the cell because of a collision in some other part of the routine. If you do have to write a handler, make sure it will only execute when, where, and how intended. If for some reason you get them often in the same spot in the process. You should never really get collision errors unless something in the cell fails. Which controller and robotware version? Also use extreme caution when writing a handler that recovers from collisions automatically.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |