Page 146 - Welding Robots Technology, System Issues, and Applications
P. 146
Robotic Welding: System Issues 133
remote client can change the value of any program variable just by using the
“write_variable” service implemented in the TCP/IP socket server (Figure 4.12).
Therefore the following services should be implemented in task 1:
1. Move the robot in Cartesian space: since the piece to weld is placed on a
welding table (Figure 4.15), it’s enough to allow the user to move the robot relative
to a fixed position (P corner) on the table. To move the robot parallel to the surface,
avoiding collisions, the user must be able to send jogging commands to the robot in
the form of Cartesian offsets and rotation offsets about the axis of the defined robot
TOOL (Figure 4.15). To add the jogging capability the position P corner should be
acquired to the system aligning the TOOL reference frame with the defined
position frame. The position obtained from P corner adding 200mm in the Z direction
(WORLD reference frame) can be called “home” or “safe position”,
P home = Offsets(P corner , 0, 0, 200);
where the function Offsets [43] adds 200mm to the Z Cartesian direction,
recalculating the orientation parameters to keep the orientation in the new
Cartesian position.
Therefore, to jog safely the robot in the welding working space, the following two
services must be available from the welding application:
Service “Go Home”
CASE 1000:
MOVEJ Offsets(P corner , 0, 0, 200), v100, fine, tool_torch;
decision1:=0;
Service “Move_Cartesian_Linear”
CASE 1001:
WHILE decision1 = 1001 DO
IF move <> 0 THEN
MOVEJ RelTool(P corner , x, y, z\RX:=rx, RY:=ry, RZ:=rz), v100, fine, tool_torch;
ENDIF
ENDWHILE
decision1:=0;
An extra service capable of moving the robot in coordinated joint motion could be
interesting to solve motion difficulties related with singular zones. The service
could be obtained just by adapting the previous “Move_Cartesian_Linear” service
to:
Service “Move_Cartesian_Linear_Joint”
CASE 1001:
P actual:= CRobT(\Tool:=tool_torch);
WHILE decision1 = 1001 DO