Revision history [back]

How to add damped-spring element to "stablize" a hyperstatic legged robot?

What is the correct way to add some damper-spring element (preferably in a collision element) to a multi-legged robot so that the stops jumping around?

Concretely, I want to simulate the contact forces between the robot and the ground. The collision at robot's ends is a sphere and the ground is "ground_plane". I read the force from a plugin to a ContactSensor (contacts.contact(i).wrench(0).body_1_wrench().force().z()). The robot having more than 3 legs, the forces in each leg are really unstable, their value oscillate a lot. The robot is also slowly moving in gazebo, without its' actuator values changing.

<surface>
<kp  value="100000.0" />
<kd  value="0.9" />
<soft_cfm value="0.01" />
<soft_erp value="0.15" />
</surface>


to the collision element but this does not have any effect in Gazebo (the properties form the Property tab have their default values, which differ from what I tried).

I'm using Gazebo 2.2.3.

Thanks for help!