Ardumower uses a digital PID controller for
- heading/course tracking
- perimeter tracking
- motor speed control
- Tracking: input sensor is inside/outside, output plant is the left and right motor. Goal is to keep error (inside/outside state time) small.
- Motor speed: input sensor is odometry, output plant is the motor. Goal is to keep the error (setpoint rpm - actual rpm) small.
Proportional, Integral and Derivative (PID) controller concept:
P : Determines how aggressively the PID reacts to the current amount of error (Proportional) D : Determines how aggressively the PID reacts to the change in error (Derivative) I : Determines how aggressively the PID reacts to error over time (Integral)
The standard form is most used for position control. If you derivate the standard form, you obtain the velocity form:
For interactive learning, you can find a PID simulator here: PID simulator