Hi, I want the UR5 (CB3) to follow a specific trajectory with respect to positions, velocities and accelerations in joint space given for every time step. While the robot is driving the trajectory I need to gather measurements (actual positions, velocities and accelerations and the joint torques or the motor currents if joint torques are not available).
1.) Trajectory Following:
I get seemingly good trajectory following by publishing messages to the ‘/scaled_pos_traj_controller/command’-controller of the ROS driver (GitHub - UniversalRobots/Universal_Robots_ROS_Driver: Universal Robots ROS driver supporting CB3 and e-Series) or by sending a chain of ‘speedj’-commands directly without the ROS driver. But actually, I want to design my own controller using the actual joint states. I also experienced weird behaviors if I supply a ‘dense’ trajectory with many waypoints in a fast succession. But fast means here actually <<125Hz. Is there some data about this? How should this be handled?
What might be the best control strategy for this kind of problem for the given ?
2.) Measurements:
I really do not get how to connect to the RTDE interface. The python examples (https://www.universal-robots.com/how-tos-and-faqs/how-to/ur-how-tos/real-time-data-exchange-rtde-guide-22229/) are not useful at all, because of my lacking python skills. I don’t even know how to run the files or how they are meant to be used for further development. I tried to receive messages of the joint states via ROS, but this stops the driving command.
a) How can I use the Python files? (There is no documentation…)
b) How can I use the RTDE interface inside Matlab?
c) How can I use the ROS driver in conjunction with RTDE (the URCap stops when I try to connect to somehow outside of the URCap)?
d) While I need to use RTDE in the future, is there a quicker and easier way to get my measurement?
Thanks a lot in advance! I know it’s a lot…