tomlankhorst/control
Public Member Functions | Public Attributes | Protected Member Functions | List of all members
control::classic::AbstractController< T > Class Template Referenceabstract

#include <pid.h>

Inheritance diagram for control::classic::AbstractController< T >:
control::system::SISO< T > control::classic::P< T > control::classic::PID< T > control::classic::PD< T > control::classic::PI< T >

Public Member Functions

 AbstractController (T Limit_=max< T >())
 
step (T e) final
 
void setLimit (T limit)
 
virtual void reset ()
 

Public Attributes

Limit
 
bool clipping = false
 

Protected Member Functions

clip (T u)
 
virtual T control (T e)=0
 

Detailed Description

template<typename T>
class control::classic::AbstractController< T >

Base controller that implements limiting, resetting and stepping

Template Parameters
T

Constructor & Destructor Documentation

◆ AbstractController()

template<typename T >
control::classic::AbstractController< T >::AbstractController ( Limit_ = max<T>())
inlineexplicit

Constructor

Parameters
Limit_maximum value of the output signal

Member Function Documentation

◆ clip()

template<typename T >
T control::classic::AbstractController< T >::clip ( u)
inlineprotected

Limit the output

Parameters
Tu
Returns
T

◆ control()

template<typename T >
virtual T control::classic::AbstractController< T >::control ( e)
protectedpure virtual

Retrieves the control output, unclipped

Parameters
Te the error
Returns
T the raw output

Implemented in control::classic::PID< T >, and control::classic::P< T >.

◆ reset()

template<typename T >
virtual void control::classic::AbstractController< T >::reset ( )
inlinevirtual

Reset the state of the controller

Reimplemented in control::classic::PID< T >.

◆ setLimit()

template<typename T >
void control::classic::AbstractController< T >::setLimit ( limit)
inline

Update the output limit

Parameters
Tlimit

◆ step()

template<typename T >
T control::classic::AbstractController< T >::step ( e)
inlinefinalvirtual

Steps the controller one time-step

Parameters
Te the error value
Returns
T the controller output

Implements control::system::SISO< T >.


The documentation for this class was generated from the following file: