|
libstp
Robotics library for Botball
|
#include <profiled_pid_controller.hpp>
Classes | |
| struct | Config |
Public Types | |
| using | State = TrapezoidalProfile::State |
| using | Constraints = TrapezoidalProfile::Constraints |
Public Member Functions | |
| ProfiledPIDController (Config config, Constraints profile_constraints) | |
| void | setGoal (double position) |
| void | setGoal (State goal) |
| State | getGoal () const |
| State | getSetpoint () const |
| const Constraints & | getConstraints () const |
| void | setConstraints (Constraints constraints) |
| void | enableContinuousInput (double min_input, double max_input) |
| void | disableContinuousInput () |
| void | reset (double position, double velocity=0.0) |
| void | reset (State state) |
| double | calculate (double measurement, double dt) |
| bool | profileComplete () const |
PID controller whose setpoint is constrained by a trapezoidal motion profile.
Each update cycle:
Definition at line 20 of file profiled_pid_controller.hpp.
Definition at line 24 of file profiled_pid_controller.hpp.
Definition at line 23 of file profiled_pid_controller.hpp.
|
inline |
Definition at line 32 of file profiled_pid_controller.hpp.
|
inline |
Compute the next control output.
| measurement | Current measured position |
| dt | Time step (seconds) |
Definition at line 71 of file profiled_pid_controller.hpp.
|
inline |
Definition at line 54 of file profiled_pid_controller.hpp.
|
inline |
Definition at line 47 of file profiled_pid_controller.hpp.
|
inlinenodiscard |
Definition at line 43 of file profiled_pid_controller.hpp.
|
inlinenodiscard |
Definition at line 41 of file profiled_pid_controller.hpp.
|
inlinenodiscard |
Definition at line 42 of file profiled_pid_controller.hpp.
|
inlinenodiscard |
Check if the profile's setpoint has reached the goal.
Definition at line 110 of file profiled_pid_controller.hpp.
|
inline |
Definition at line 56 of file profiled_pid_controller.hpp.
|
inline |
Definition at line 62 of file profiled_pid_controller.hpp.
|
inline |
Definition at line 45 of file profiled_pid_controller.hpp.
|
inline |
Definition at line 39 of file profiled_pid_controller.hpp.
|
inline |
Definition at line 40 of file profiled_pid_controller.hpp.