PD Controller Implementation in Gym API


I wanted to know what kind of PD controller implementation Isaac Gym uses. Is it with a reference velocity or without? Is it SPD or a normal PD controller, or a different one?


interestingly @kstorey has answered a similar question on github:

kstorey-nvidia commented on Oct 21, 2019

The approach being used is an internally-derived implicit spring formula that is used not only in the reduced coordinate articulations, but also in the D6 joints (for both soft limits and drives).

The approach being used allows us to solve both hard and soft constraints using the same code with only variations in the parameters. As such, when the stiffness or damping terms become very large, the results become numerically equivalent to a hard constraint rather than becoming unstable.

I have asked internally to see if we can get our internal white paper on it included in future public documentation.

1 Like

@kstorey Any update about the mentioned white paper?