Gazebo | Ignition | Community
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

For gazebo5, we decided to add Coulomb joint friction using the ODE joint motors (see pull request 1218 and pull request 1221). This raised a conflict with the SetVelocity and SetMaxForce API, which was also using the ODE joint motors. However, not all physics engines have joint motors (such as simbody), so we changed the meaning of SetVelocity to refer to setting the velocity state (like an initial condition), but not turning on a persistent motor controller.

The ODE joint motors are still available using the Joint::SetParam API:


joint->SetVelocity(index, velocity);
// becomes
joint->SetParam("vel", index, velocity);

and


joint->SetMaxForce(index, maxForce);
// becomes
joint->SetParam("max_force", index, maxForce);

I had also changed the behavior of the some of the gazebo plugins, which was probably a bad idea. I've restored their functionality in branch restore_max_force5. I'm guessing gazebo_ros_pkgs might need to be updated too.

Let me know if this is helping. If so, I'll make a gazebo_ros_pkgs pull request.