fzi-forschungszentrum-informatik / cartesian_controllers

A set of Cartesian controllers for the ROS1 and ROS2-control framework.
BSD 3-Clause "New" or "Revised" License
397 stars 119 forks source link

Controlling UR5e #215

Closed garg-akash closed 4 weeks ago

garg-akash commented 4 weeks ago

Hello,

Firstly thank you for providing this interesting repository.

I have been playing around with the simulations. I have some basic questions, sorry if they are too obvious.

  1. Inside the computeError() in the cartesian force controller (here) the error is computed like this here. Shouldn't the error be difference between the target and the ft sensor value?

  2. Where does the gravity compensation come from? The joint accelerations are computed using the net force here.

  3. I have a UR5e in my lab with External Control Urcap installed. How can I use the force controller from this repository to control the real robot?

Thank you, Akgr

stefanscherzinger commented 4 weeks ago

Hi @garg-akash

Thanks for your feedback!

  1. Shouldn't the error be difference between the target and the ft sensor value?

This controller implementation follows a little different philosophy. It uses forward dynamics of an external net force to the end-effector and simulates how the robot moves according to that net force. The simulated motion is then sent to the joints of the real system. The net force is what the sensor measures from possible collisions/interaction with the environment and what users additionally specify as target wrench. If you are interested, I explained that a little more in detail in this pdf in chapter 4.

  1. Where does the gravity compensation come from?

There is not gravity compensation currently. We assume that you zero (bias, tare, etc.) the force torque sensor on the robot before going into contact, so that everything you measure is only external contacts from interaction with the environment.

  1. How can I use the force controller from this repository to control the real robot?

There's an example package for Universal Robots linked in the getting started section here. Hope that helps.

stefanscherzinger commented 4 weeks ago

Please re-open if something is still unclear.