I have seen in the documentation of an old subcontractor's product that the controller of a robotic arm joint was basically feeding error position + error rate directly into one single PID.

It feels wrong to have two different variations mixed before acting on the mix, but I may be wrong given that, after all, speed is directly linked to position.

Is it correct? What are the drawbacks to that, for systems where both positions and speeds need to be tracked? Should state-space MISO controllers be used instead?


1 Answer 1


This is very standard, when the position error is multiplied by the P gain and the velocity error is multiplied by the D gain. Typically, a measurement of the velocity error is preferred as it will be smoother than that computed by numerically differentiating the position.

When you want to track both a position and a speed, it is important that the reference speed and reference position are consistent, i.e. that the derivative of the position is the velocity. In that case, yes you want to feed both into the PID or PD loop.

It may depend on the application, but typically, there is a feedforward term that strives to keep both errors as low as possible (if pos error is always zero then so will vel error) so that the feedback controller has to do minimal work.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.