Hi everybody,
I am programming my first Fanuc welding robot and have some problems with the coordinated motions.
The robot cell looks like in the picture. So I have two positioners though only one of them works with the robot at the same time.
I have setup the axis with unknown positioner. The calibration seems to work fine when I move the positioner in coordinated jogging. The robot as the follower is following accurately.
1. I need to weld a centric mounted pipe by only moving the positioner. So what I did was that I teached my robot above the pipe and created two circular movements where I only change the positioner movements by adding Offset,PR to them. It seems to work, but the speed is not accurate at all. (the axis moves approximately by a factor of 10 faster than it should) Of course I put a COORD[] at the end of the movement. Is it the wrong approach?
Here is the program:
1: CALL BODEN_ENDPUNKT_A ;
2: ;
3: R[21:LAGE]=AR[1] ;
4: ;
5: IF (R[21:LAGE]=2) THEN ;
6: PR[25:LAGEN_VERSATZ]=PR[45:AKTUELLER_BODEN]+PR[38:OFFSET_Z2]+PR[39:OFS_Z3X-1W4.5] ;
7: ENDIF ;
8: PR[23:TEMP_OFFSET_1]=PR[25:LAGEN_VERSATZ] ;
9: CALL PR_EXTAX_AUF_POS(23,R[40:AKT_TISCHSEITE],(-50)) ;
10: CALL PR_EXTAX_AUF_POS(2,R[40:AKT_TISCHSEITE],0) ;
11: R[10:TEMP1]=1+R[40:AKT_TISCHSEITE] ;
12: ;
13:C PR[2:BODEN ENDE A] Offset,PR[23:TEMP_OFFSET_1]
: PR[2:BODEN ENDE A] WELD_SPEED CNT100 Offset,PR[25:LAGEN_VERSATZ] COORD[R[10]] ;
14: ;
15: CALL BODEN_ENDPUNKT_A ;
16: R[10:TEMP1]=1+R[40:AKT_TISCHSEITE] ;
17:C PR[2:BODEN ENDE A] Offset,PR[23:TEMP_OFFSET_1]
: PR[2:BODEN ENDE A] WELD_SPEED FINE Offset,PR[25:LAGEN_VERSATZ] COORD[R[10]]
: Weld End[1,R[21]] ;
Display More
2. I also need to weld an excentric mounted pipe which is assembled to the other pipe. Here too I created a circular movement but teached the points so the robot and the positioner are moving together. It kind of works but the robot changes its orientation while moving. All three points were teached with the same robot orientation, only xyz changed and the positioner, of course. It looks like the robot is keeping its orientation in respect to the moving positioner until it reaches the VIA point and then changes it back when moving to the end point. How can I keep the orientation of the robot identical?