11-15-2022, 08:45 AM
In the attached collision_test_scene.rdk, I have a bunch of cartesian targets that are all children of the box_frame reference frame. And then the test_program program does a MoveJ to each of them. So I can change box_frame and all the targets move as expected, and this all works fine when I change box_frame. So far so good.
After moving the box_frame reference frame, if I right click "Target 5" and change it to a joint target, the location jumps back to the original position of Target 5. So it appears you're storing both cartesian and joint poses in each target, but not updating the joint poses when the targets get moved when a parent reference frame changes. I'm guessing you'll say that's working as intended, and that if I want them to match, I need to "Move to target" and then "Teach current position" for every target?
The reason I noticed this is that the Universal Robots postprocessor's implementation of MoveJ only ever looks at the joint pose. So I can move box_frame all I want, and the toolpath changes as expected in robodk, but it always generates the same URScript .script file as if I never moved box_frame. So the robot ends up doing something very different from what I see on screen. And that seems pretty clearly like a bug.
After moving the box_frame reference frame, if I right click "Target 5" and change it to a joint target, the location jumps back to the original position of Target 5. So it appears you're storing both cartesian and joint poses in each target, but not updating the joint poses when the targets get moved when a parent reference frame changes. I'm guessing you'll say that's working as intended, and that if I want them to match, I need to "Move to target" and then "Teach current position" for every target?
The reason I noticed this is that the Universal Robots postprocessor's implementation of MoveJ only ever looks at the joint pose. So I can move box_frame all I want, and the toolpath changes as expected in robodk, but it always generates the same URScript .script file as if I never moved box_frame. So the robot ends up doing something very different from what I see on screen. And that seems pretty clearly like a bug.