Public Member Functions | Protected Attributes

Implements a linear state feedback law to be used within a Controller. More...

#include <linear_state_feedback.hpp>

Inheritance diagram for LinearStateFeedback:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual ControlLawclone () const
virtual uint getNP () const
virtual uint getNU () const
virtual uint getNW () const
virtual uint getNX () const
virtual uint getNXA () const
virtual uint getNY () const
virtual returnValue init (double startTime=0.0, const DVector &x0_=emptyConstVector, const DVector &p_=emptyConstVector, const VariablesGrid &_yRef=emptyConstVariablesGrid)
virtual BooleanType isDynamic () const
virtual BooleanType isStatic () const
 LinearStateFeedback ()
 LinearStateFeedback (const DMatrix &_K, double _samplingTime=DEFAULT_SAMPLING_TIME)
 LinearStateFeedback (const LinearStateFeedback &rhs)
LinearStateFeedbackoperator= (const LinearStateFeedback &rhs)
virtual returnValue step (double currentTime, const DVector &_x, const DVector &_p=emptyConstVector, const VariablesGrid &_yRef=emptyConstVariablesGrid)
virtual ~LinearStateFeedback ()

Protected Attributes

DMatrix K

Detailed Description

Implements a linear state feedback law to be used within a Controller.

The class LinearStateFeedback implements a linear state feedback law to be used within a Controller.

Author:
Hans Joachim Ferreau, Boris Houska

Definition at line 57 of file linear_state_feedback.hpp.


Constructor & Destructor Documentation

Default constructor.

Definition at line 46 of file linear_state_feedback.cpp.

LinearStateFeedback::LinearStateFeedback ( const DMatrix _K,
double  _samplingTime = DEFAULT_SAMPLING_TIME 
)

Constructor which takes the gain matrix of the linear feedback law together with the sampling time.

Parameters:
[in]_KLinear feedback gain matrix.
[in]_samplingTimeSampling time.

Definition at line 52 of file linear_state_feedback.cpp.

Copy constructor (deep copy).

Parameters:
[in]rhsRight-hand side object.

Definition at line 61 of file linear_state_feedback.cpp.

Destructor.

Definition at line 67 of file linear_state_feedback.cpp.


Member Function Documentation

ControlLaw * LinearStateFeedback::clone ( ) const [virtual]

Clone constructor (deep copy).

Returns:
Pointer to deep copy of base class type

Implements ControlLaw.

Definition at line 86 of file linear_state_feedback.cpp.

uint LinearStateFeedback::getNP ( ) const [virtual]

Returns number of parameters.

Returns:
Number of parameters

Reimplemented from ControlLaw.

Definition at line 165 of file linear_state_feedback.cpp.

uint LinearStateFeedback::getNU ( ) const [virtual]

Returns number of controls.

Returns:
Number of controls

Reimplemented from ControlLaw.

Definition at line 159 of file linear_state_feedback.cpp.

uint LinearStateFeedback::getNW ( ) const [virtual]

Returns number of (estimated) disturbances.

Returns:
Number of (estimated) disturbances

Reimplemented from ControlLaw.

Definition at line 171 of file linear_state_feedback.cpp.

uint LinearStateFeedback::getNX ( ) const [virtual]

Returns number of (estimated) differential states.

Returns:
Number of (estimated) differential states

Reimplemented from ControlLaw.

Definition at line 147 of file linear_state_feedback.cpp.

uint LinearStateFeedback::getNXA ( ) const [virtual]

Returns number of (estimated) algebraic states.

Returns:
Number of (estimated) algebraic states

Reimplemented from ControlLaw.

Definition at line 153 of file linear_state_feedback.cpp.

uint LinearStateFeedback::getNY ( ) const [virtual]

Returns number of process outputs.

Returns:
Number of process outputs

Reimplemented from ControlLaw.

Definition at line 177 of file linear_state_feedback.cpp.

returnValue LinearStateFeedback::init ( double  startTime = 0.0,
const DVector x0_ = emptyConstVector,
const DVector p_ = emptyConstVector,
const VariablesGrid _yRef = emptyConstVariablesGrid 
) [virtual]

Initializes the feedback law with given start values and performs a number of consistency checks.

Parameters:
[in]_startTimeStart time.
[in]_xInitial value for differential states.
[in]_pInitial value for parameters.
[in]_yRefInitial value for reference trajectory.
Returns:
SUCCESSFUL_RETURN

Implements ControlLaw.

Definition at line 92 of file linear_state_feedback.cpp.

Returns whether the control law is based on dynamic optimization or a static one.

Returns:
BT_TRUE iff control law is based on dynamic optimization,
BT_FALSE otherwise

Implements ControlLaw.

Definition at line 183 of file linear_state_feedback.cpp.

Returns whether the control law is a static one or based on dynamic optimization.

Returns:
BT_TRUE iff control law is a static one,
BT_FALSE otherwise

Implements ControlLaw.

Definition at line 189 of file linear_state_feedback.cpp.

LinearStateFeedback & LinearStateFeedback::operator= ( const LinearStateFeedback rhs)

Assignment operator (deep copy).

Parameters:
[in]rhsRight-hand side object.

Definition at line 72 of file linear_state_feedback.cpp.

returnValue LinearStateFeedback::step ( double  currentTime,
const DVector _x,
const DVector _p = emptyConstVector,
const VariablesGrid _yRef = emptyConstVariablesGrid 
) [virtual]

Performs next step of the feedback law based on given inputs.

Parameters:
[in]currentTimeCurrent time.
[in]_xMost recent value for differential states.
[in]_pMost recent value for parameters.
[in]_yRefCurrent piece of reference trajectory.
Returns:
SUCCESSFUL_RETURN,
RET_BLOCK_NOT_READY,
RET_VECTOR_DIMENSION_MISMATCH,
RET_CONTROLLAW_STEP_FAILED

Implements ControlLaw.

Definition at line 103 of file linear_state_feedback.cpp.


Member Data Documentation

Linear state feedback gain matrix.

Definition at line 204 of file linear_state_feedback.hpp.


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


acado
Author(s): Milan Vukov, Rien Quirynen
autogenerated on Sat Jun 8 2019 19:40:24