Gazebo | Ignition | Community
Ask Your Question

Integral tie-back in AtlasPlugin.cpp seems wrong - causes control glitches

asked 2013-04-09 18:22:28 -0500

GoRobotGo gravatar image

updated 2013-04-09 19:28:13 -0500

hsu gravatar image

The code at roughly line 1066 in AtlasPlugin.cpp appears to be wrong. Specifically, it generally will invert the kiq_i term on a step change and saturate in the opposite of the commanded direction.

If a negative step is applied that results in a clamped force then the code can result in a kiq_i that is clamped at the positive limit. This results in a joint excursion in the opposite of the desired direction.

This is not a desired behaviour. I would recommend simply removing the problematic code.

// lock integral term to provide continuous control as system moves
// out of staturation
this->errorTerms[i].k_i_q_i = math::clamp(
        this->errorTerms[i].k_i_q_i + (forceClamped - forceUnclamped),
edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2013-04-09 19:28:50 -0500

hsu gravatar image

please continue discussion on ticket.

edit flag offensive delete link more
Login/Signup to Answer

Question Tools


Asked: 2013-04-09 18:22:28 -0500

Seen: 211 times

Last updated: Apr 09 '13