matthias-mayr / Cartesian-Impedance-Controller

A C++ implementation of Cartesian impedance control for torque-controlled manipulators with ROS bindings.
https://matthias-mayr.github.io/Cartesian-Impedance-Controller/
BSD 3-Clause "New" or "Revised" License
212 stars 32 forks source link

Would it be possible to support UR e-series arms? #6

Closed mcboyd closed 1 year ago

mcboyd commented 1 year ago

This is more of a conceptual question. I am happy to jump in to try to get it running on a UR e-series arm, but I am wondering if that would be technically feasible in your opinion (or if it would just be a waste of effort).

matthias-mayr commented 1 year ago

The output of this controller are torque signals. So at every time step, we calculate (7 - with iiwa or Panda) torques for the joints and command them to the robot. The iiwa and the Panda are some of the few robot models that can be directly commanded in torque-control mode.

The UR robot series however does not support joint-torque commands, but only joint velocity or joint position commands (and some other special modes).

Fortunately there is a great repository for admittance-like compliant control for velocity- and position-controlled robot called cartesian_controllers and I am using this one for UR robots as well.