ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange |
1 | initial version |
This is how I've always seen it done. You could write a Gazebo plugin, but you could also run a node like this instead, without having to write any new code at all. Running this controller outside of Gazebo will basically subscribe to the joint's positions and then issue corrective commands to force the joint to follow the PID. Whether it's running in a separate node or as a plugin to Gazebo, it's really all the same in terms of functionality.