- PIDs now have a type - either
**linear**or**circular**. A linear pid is how you might imagine, with the PID attempting to reach the setpoint assuming the input value is on an infinite number line. The circular pid assumes the setpoint is an angle on a circle (so between 0 and 360) and internally manages the discontinuity where 359 is close to 0. These types of PID are useful for managing navigation and continuously rotating servos. - Setpoint and Input - rather than the user calculating the difference between the desired outcome (setpoint) and the current outcome (input) to provide the PID with the different (error), the PID now takes both values separately and manages the error internally. This allows for smoother operation, especially when the setpoint changes quickly.
- Time-based - The
**I**and**D**values effect the PID output based on time. The original PID assumed it was being called periodically while the new PID handles being called more sporadically.

## Discussions

## Become a Hackaday.io Member

Create an account to leave a comment. Already have an account? Log In.