PIDFController
This is a PID controller (https://en.wikipedia.org/wiki/PID_controller) for your robot. Internally, it performs all the calculations for you. You need to tune your values to the appropriate amounts in order to properly utilize these calculations.
The equation we will use is: u(t) = kP * e(t) + kI * int(0,t)[e(t')dt'] + kD * e'(t) + kF where e(t) = r(t) - y(t) and r(t) is the setpoint and y(t) is the measured value. If we consider e(t) the positional error, then int(0,t)[e(t')dt'] is the total error and e'(t) is the velocity error. Source
Since
1.0.0-pre
Inheritors
Constructors
Functions
Link copied to clipboard
Returns true if the error is within the percentage of the total input range, determined by setTolerance.
Link copied to clipboard
Clear the integral term.
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Get the PIDF controller associated with this controller, if applicable.
Link copied to clipboard
Note!
Link copied to clipboard
Set the D coefficient on this controller
Link copied to clipboard
Set the F coefficient on this controller
Link copied to clipboard
Set the I coefficient on this controller
Link copied to clipboard
Set the bounds for the integral term.
Link copied to clipboard
Clamps the maximum output magnitude that can be achieved via calculate.
Link copied to clipboard
Set the P coefficient on this controller
Link copied to clipboard
Sets the error which is considered tolerable for use with atSetPoint.
Link copied to clipboard
Update the supplied PID coefficients with the current controller values.
Inherited functions
Link copied to clipboard
open fun compose(@NonNull other: SystemController, @NonNull combiner: DoubleBinaryOperator): CompositeController
Composes this controller with another controller, returning a new controller that is the composition of the two.
Link copied to clipboard
Sets the coefficients for this controller.