Nebula
|
#include <pidfeedbackloop.h>
A PID feedback loop (proportional integral derivative feedback loop)
Public Member Functions | |
PIDFeedbackLoop () | |
constructor | |
void | SetState (double value) |
set value of loop | |
void | SetGoal (double wantedValue) |
set the goal | |
void | SetConstants (double pConst, double iConst, double dConst, double acceleration=0.0) |
set the propotional, integral and derivative constants, and maximum acceleration (how fast the value kann change, will be disabled if set to 0.0 (default)) | |
const double & | GetState () const |
get current value | |
const double & | GetGoal () const |
get the goal | |
double | GetLastError () const |
get last computed error | |
double | GetLastDelta () const |
last delta of error | |
void | Update (Timing::Time time) |
update current value | |
void | ResetError () |
reset running error | |
void | SetIsAngularValue (bool val) |
set IsAngularValue | |
Private Attributes | |
double | value |
double | goal |
double | pConst |
double | iConst |
double | dConst |
double | maxAcceleration |
double | lastError |
double | lastDelta |
double | runningError |
bool | validError |
bool | isAngularValue |
Timing::Time | lastTime |
Timing::Time | lastDeltaTime |
Timing::Time | maxAllowableDeltaTime |
|
inline |
constructor
|
inline |
get the goal
|
inline |
last delta of error
|
inline |
get last computed error
|
inline |
get current value
|
inline |
reset running error
|
inline |
set the propotional, integral and derivative constants, and maximum acceleration (how fast the value kann change, will be disabled if set to 0.0 (default))
|
inline |
set the goal
|
inline |
set IsAngularValue
|
inline |
set value of loop
|
inline |
update current value
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |