|
#include <RobotAPI/libraries/core/MultiDimPIDController.h>
Public Types | |
using | PIDVectorX = Eigen::Matrix< float, dimensions, 1 > |
Public Member Functions | |
const PIDVectorX & | getControlValue () const |
MultiDimPIDControllerTemplate (float Kp, float Ki, float Kd, double maxControlValue=std::numeric_limits< double >::max(), double maxDerivation=std::numeric_limits< double >::max(), bool threadSafe=true, std::vector< bool > limitless={}) | |
void | preallocate (size_t size) |
void | reset () |
void | setMaxControlValue (double value) |
void | update (const double deltaSec, const PIDVectorX &measuredValue, const PIDVectorX &targetValue) |
void | update (const PIDVectorX &measuredValue, const PIDVectorX &targetValue) |
~MultiDimPIDControllerTemplate () | |
Public Member Functions inherited from Logging | |
SpamFilterDataPtr | deactivateSpam (float deactivationDurationSec=10.0f, const std::string &identifier="", bool deactivate=true) const |
disables the logging for the current line for the given amount of seconds. More... | |
MessageTypeT | getEffectiveLoggingLevel () const |
Logging () | |
void | setLocalMinimumLoggingLevel (MessageTypeT level) |
With setLocalMinimumLoggingLevel the minimum verbosity-level of log-messages can be set. More... | |
void | setTag (const LogTag &tag) |
void | setTag (const std::string &tagName) |
virtual | ~Logging () |
Public Attributes | |
PIDVectorX | controlValue |
double | derivative |
bool | firstRun |
double | integral |
float | Kd |
float | Ki |
float | Kp |
IceUtil::Time | lastUpdateTime |
std::vector< bool > | limitless |
double | maxControlValue |
double | maxDerivation |
double | maxIntegral = std::numeric_limits<double>::max() |
std::recursive_mutex | mutex |
double | previousError |
PIDVectorX | processValue |
PIDVectorX | target |
bool | threadSafe = true |
Additional Inherited Members | |
Protected Member Functions inherited from Logging | |
bool | checkLogLevel (MessageTypeT level) const |
const LogSenderPtr & | getLogSender () const |
Retrieve log sender. More... | |
LogSenderPtr | loghelper (const char *file, int line, const char *function) const |
Protected Attributes inherited from Logging | |
MessageTypeT | minimumLoggingLevel |
SpamFilterDataPtr | spamFilter |
LogTag | tag |
Definition at line 39 of file MultiDimPIDController.h.
using PIDVectorX = Eigen::Matrix<float, dimensions, 1> |
Definition at line 43 of file MultiDimPIDController.h.
|
inline |
Definition at line 45 of file MultiDimPIDController.h.
|
inline |
Definition at line 74 of file MultiDimPIDController.h.
|
inline |
|
inline |
|
inline |
|
inline |
Definition at line 190 of file MultiDimPIDController.h.
|
inline |
|
inline |
Definition at line 171 of file MultiDimPIDController.h.
PIDVectorX controlValue |
Definition at line 219 of file MultiDimPIDController.h.
double derivative |
Definition at line 214 of file MultiDimPIDController.h.
bool firstRun |
Definition at line 222 of file MultiDimPIDController.h.
double integral |
Definition at line 212 of file MultiDimPIDController.h.
float Kd |
Definition at line 211 of file MultiDimPIDController.h.
float Ki |
Definition at line 211 of file MultiDimPIDController.h.
float Kp |
Definition at line 211 of file MultiDimPIDController.h.
IceUtil::Time lastUpdateTime |
Definition at line 218 of file MultiDimPIDController.h.
std::vector<bool> limitless |
Definition at line 225 of file MultiDimPIDController.h.
double maxControlValue |
Definition at line 220 of file MultiDimPIDController.h.
double maxDerivation |
Definition at line 221 of file MultiDimPIDController.h.
double maxIntegral = std::numeric_limits<double>::max() |
Definition at line 213 of file MultiDimPIDController.h.
|
mutable |
Definition at line 223 of file MultiDimPIDController.h.
double previousError |
Definition at line 215 of file MultiDimPIDController.h.
PIDVectorX processValue |
Definition at line 216 of file MultiDimPIDController.h.
PIDVectorX target |
Definition at line 217 of file MultiDimPIDController.h.
bool threadSafe = true |
Definition at line 224 of file MultiDimPIDController.h.