80 void SetPidGainTableData(std::vector<P6DOF::PidGainData>& aDataTables,
unsigned char& aPackedFlags);
101 double GetOutputWithLimits(
double aDt_sec,
double aMinOutput,
double aMaxOutput,
bool aUseLimits);
103 void CalcPidGainsData(std::vector<P6DOF::PidGainData>& aTables,
104 double aControllingValue,
108 double& aLowpassAlpha,
110 double& aMaxErrorZero,
111 double& aMinErrorZero,
112 double& aKtAntiWindup);
114 static void CopyPidGainsData(std::vector<P6DOF::PidGainData>& aTargetTables,
115 const std::vector<P6DOF::PidGainData>& aSourceTables);
118 double mCurrentValue;
119 double mCurrentError;
120 double mCurrentDeriv;
122 double mLastDerivative;
124 double mPrelimitedOutput;
126 double mKpOutputContrib;
127 double mKiOutputContrib;
128 double mKdOutputContrib;
142 std::vector<P6DOF::PidGainData> mGainTables;
144 bool mProportionalBiasActive;
145 double mProportionalBiasValue;
151 double mControllingValue;
void GetPidValueData(P6DOF::SinglePidValueData &aData) const
Definition P6DofPID.cpp:376
double CalcOutputFromTargetAndCurrent(double aSetPoint, double aCurValue, double aDt_sec)
Definition P6DofPID.cpp:98
void AddElementsToGainTable(size_t aTotalElementsInTable)
Definition P6DofPID.cpp:269
void SetCurrentValue(double aCurrentValue)
Definition P6DofPID.cpp:259
P6DofPID & operator=(const P6DofPID &other)=delete
double CalcOutputFromError(double aError, double aDt_sec)
Definition P6DofPID.cpp:107
std::vector< P6DOF::PidGainData > * GetPidGainTableData(unsigned char &aPackedFlags)
Definition P6DofPID.cpp:286
void SetControllingValue(double aControllingValue)
Definition P6DofPID.cpp:413
void SetFeedForward(double aFeedForward)
Definition P6DofPID.cpp:396
~P6DofPID()
Definition P6DofPID.cpp:40
bool GetFeedForward(double &aFeedForward)
Definition P6DofPID.cpp:402
void SetBias(double aBias)
Definition P6DofPID.cpp:390
double CalcOutputFromErrorWithLimits(double aError, double aDt_sec, double aMinOutput, double aMaxOutput)
Definition P6DofPID.cpp:90
double CalcOutputFromTargetAndCurrentWithLimits(double aSetPoint, double aCurValue, double aDt_sec, double aMinOutput, double aMaxOutput)
Definition P6DofPID.cpp:77
void ResetPidState()
Definition P6DofPID.cpp:418
P6DofPID * Clone() const
Definition P6DofPID.cpp:46
void SetPidGainTableData(std::vector< P6DOF::PidGainData > &aDataTables, unsigned char &aPackedFlags)
Definition P6DofPID.cpp:314
P6DofPID()
Definition P6DofPID.cpp:16
void SetTargetValue(double aTargetValue)
Definition P6DofPID.cpp:264
Definition P6DofVehicleData.hpp:152