chrono::ChControllerPID Class Reference


Class for a basic PID controller.

A basic PID controller, used as a 'black box'. Depending on input, it produces a controlled output proportional to input, input derivative by time, input integration

#include <ChController.h>

Inheritance diagram for chrono::ChControllerPID:
Collaboration diagram for chrono::ChControllerPID:

Public Member Functions

 ChControllerPID (const ChControllerPID &other)
virtual ChControllerPIDClone () const override
 "Virtual" copy constructor (covariant return type).
double Get_Out (double mInput, double mTime)
 COMPUTE CONTROL value! Given an input i, returns the output o=P*i+D*di/dt+I*Int(i dt) that is o = Pcomp+Icomp+Dcomp Calls to Get_Output must be done in (possibly uniform) time steps, otherwise remember to call Reset() before other sequences of calls.
double Get_Out () const
 Same, but just returns last computed output.
double Get_Pcomp () const
double Get_Icomp () const
double Get_Dcomp () const
double Get_In_int () const
double Get_In_dt () const
double Get_In () const
void Reset ()
 Use Reset to set accumulator to zero, at beginning. For integrative part.
- Public Member Functions inherited from chrono::ChObj
 ChObj (const ChObj &other)
int GetIdentifier () const
 Gets the numerical identifier of the object.
void SetIdentifier (int id)
 Sets the numerical identifier of the object.
double GetChTime () const
 Gets the simulation time of this object.
void SetChTime (double m_time)
 Sets the simulation time of this object.
const char * GetName () const
 Gets the name of the object as C Ascii null-terminated string -for reading only!
void SetName (const char myname[])
 Sets the name of this object, as ascii string.
std::string GetNameString () const
 Gets the name of the object as C Ascii null-terminated string.
void SetNameString (const std::string &myname)
 Sets the name of this object, as std::string.
void MFlagsSetAllOFF (int &mflag)
void MFlagsSetAllON (int &mflag)
void MFlagSetON (int &mflag, int mask)
void MFlagSetOFF (int &mflag, int mask)
int MFlagGet (int &mflag, int mask)
virtual void ArchiveOUT (ChArchiveOut &marchive)
 Method to allow serialization of transient data to archives.
virtual void ArchiveIN (ChArchiveIn &marchive)
 Method to allow de-serialization of transient data from archives.
virtual std::string & ArchiveContainerName ()

Public Attributes

double P
 proportional coefficient
double I
 integrative coefficient
double D
 derivative coefficient

Additional Inherited Members

- Protected Attributes inherited from chrono::ChObj
double ChTime
 the time of simulation for the object

The documentation for this class was generated from the following files:
  • /builds/uwsbel/chrono/src/chrono/physics/ChController.h
  • /builds/uwsbel/chrono/src/chrono/physics/ChController.cpp