Re-teach waypoints relative to an arbitrary frame

I’m looking for a robust and painless way to re-teach a set of waypoints relative to an arbitrary frame.
In my case I have a set of offline teached waypoints relative to base, I save their positions relative to a frame A, so in real time I can change the frame to a frame B or C and move the robot in the desired positions. The problem comes when I want to pause the program and use the current frame to re-teach only the waypoint n and then continue, without stopping the program.

Actually, my solution is to save the positions to variables using the pose_trans() and pose_inv() (like a classic matrix composition), then I can use them to move the robot with a movel relative to a feature. When I want to re-teach a single waypoint I have two possibilities:

  • I need to move in the initial frame (sometimes is not possible in line), re-set the waypoint n and then run the whole code to update the variables.
  • I use the current frame, re-set the waypoint n but I need to comment all the remaining lines, relative to the variables initialization, before run the whole code.

Both of the above solutions are not good enough in some use cases.

There is a better solution to directly teach a waypoint relative to a frame (not using a variable position waypoint type, which is no parametric)?

Best regards,
Matteo Timossi @recognitionrobotics

2 Likes