1
$\begingroup$

So I was starting a robotics project and turns out that PID hasn't served very well in the past. So I was wondering if there was another feedback loop mechanism which has less overshoot and is more accurate than PID in terms of overshoot. Thanks in advance! For reference, we are using a 4 wheel mecanum drivetrain

$\endgroup$
1
$\begingroup$

You might want to try a Non linear controller if you want disturbance rejection. But I will suggest you to fine tune your PID first.

Now, back to non linear controls, you need to develop a very good mathematical model of the dynamics of your robot.

You can use a scheduler controller: first linearize you plant at different operating points an design a controller for each of the operating points. This technique is useful if you use LQR controllers. Matlab has a lot of documentation and examples on this.

You can also use more robust techniques like H2 or H infinity controls if you are eager to take your math abilities to the limit.

On the other hand, I also suggest you to double check your sensed signals, wheels, actuators, sensor, etc. Corroborate that they give you what they are supposed to give you.

Finally, you can try a Kalman filter to aid the PID performance.

$\endgroup$
  • $\begingroup$ Nice answer! Concise and spot on. $\endgroup$ – Ugo Pattacini Mar 14 at 9:34
  • $\begingroup$ Is there any tool that can help in coming up with aforementioned non linear controllers? $\endgroup$ – drerD Mar 18 at 15:06

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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