PickNikRobotics / abb_ros2

Apache License 2.0
82 stars 34 forks source link

Velocity command interface #51

Closed fafux closed 1 year ago

fafux commented 1 year ago

Hi, I am trying to control an ABB robot in simulation with the command interface in velocity with ROS2 foxy. The values of the joint velocities states, in simulation, are changing but the robot is not moving. While if I try to move the robot using the position command interface I can do it. Is it possible to move the robot only using the velocity command interface? If so, is there any example on how to do it? Thanks.

tanmay2798 commented 1 year ago

did you get answer to it?

fafux commented 1 year ago

No but on ROS2 Humble the velocity command interface works on real hardware. You should launch this RAPID on the robot to use the hardware interface in velocity.

Yadunund commented 1 year ago

I was able to implement velocity-only control by setting the EGM gain to 0 in the EGM Motion setup which makes the robot's controller ignore position references. See control law described on pg 21. This also required me to set the Level to Raw (from Filtering) in the EGM motion setup. I still kept the position and velocity as command interfaces on the ROS 2 side. It worked well but at some point I realized the robot doesn't converge to the goal very nicely but perhaps this is something that could be fixed with the PID values on the joint_trajectory_controller side.