I am glad to share my new driver for the Universal Robots: https://github.com/ThomasTimm/
The driver is written in c++ and is designed to replace the old driver transparently, while solving some issues, improving usability as well as enabling compatibility of ros_control.
The most noticeable differences for current users will be the ability to use the teach pendant while the driver is connected as well as support for the UR3 and newest firmware versions.
The driver also makes it possible to send URScript commands from ROS to the robot as well as introduces a joint speed interface for doing visual servoing with the UR robots.
The driver resides in its own package, so you can install it and test it out without risking your current setup. Just use the included launch files instead of the ones from urX_bringup.
I have also included support for ros_control for those who would like to test that out. Note that the use of ros_control will probably require some minor modifications to your existing code if you choose to incorporate this into an existing project. Whether the driver should expose the "old" action interface or be controlled via ros_control is determined by a parameter at launch time. Note that the PID controllers are not optimally tuned at this time.
I have tested the driver with all the newest versions of ur-sim (1.6.08725, 1.7.10857, 1.8.16941, 3.0.16471, and 3.1.18024) as well as some real robots (UR5 and UR10, both with a CB2 controller running 1.8.14035).
Please try it out and report any issues / incompatibilities so it hopefully can make it into Jade (or indigo?)
Leave a comment