I’m new to controlling robots so I’m hoping this is a dumb question but I’ve spent significant time trying to answer it myself.
I am using the rtde protocol with Python to control a UR5 robot and various other test equipment. I used the example_control_loop.py and record.py scripts from this webpage to learn how to control and monitor the robot respectively → Real-Time Data Exchange (RTDE) Guide - 22229
When controlling the robot I wanted to specify coordinates in a plane we defined on the pendant that was square with our target object. When reading the actual_TCP_pose, however, it always seems to be in the Base coordinate system instead of the plane we defined.
Is there any way for me to read the coordinates from the plane I use for movement?
You will have to transform your coordinates to the custom plane. I have not done this “outside” of UR graphical/script programming, and I’m not entirely sure how the math works, but here it looks like this:
WP1 is a waypoint placed in [0, 0, 0, 0, 0, 0] with regards to feature Point_1.
Point_1 is placed in [0.4, 0.25, 0, 3.14159, 0, 0] with regards to the base feature.
Thank you very much. I’m surprised that I can write to but not read from my custom plane but if a matrix transformation is what’s necessary then I guess that’s what I’ll do.