- 3.0.2 core module.
|
Interface class for all controllers. More...
#include <Controller.h>
Public Member Functions | |
EIGEN_MAKE_ALIGNED_OPERATOR_NEW | Controller () |
Default constructor. More... | |
Controller (const Controller &other) | |
Copy constructor. More... | |
virtual | ~Controller () |
Destructor. More... | |
virtual Controller * | clone () const =0 |
Deep cloning. More... | |
virtual void | computeControl (const StateVector< STATE_DIM, SCALAR > &state, const SCALAR &t, ControlVector< CONTROL_DIM, SCALAR > &controlAction)=0 |
Compute control signal. More... | |
virtual ControlMatrix< CONTROL_DIM, SCALAR > | getDerivativeU0 (const StateVector< STATE_DIM, SCALAR > &state, const SCALAR time) |
Returns the the derivative of the control with respect to the initial control input u0. More... | |
virtual ControlMatrix< CONTROL_DIM, SCALAR > | getDerivativeUf (const StateVector< STATE_DIM, SCALAR > &state, const SCALAR time) |
Returns the the derivative of the control with respect to the final control input uF. More... | |
Interface class for all controllers.
This is a pure interface class for Controllers that can be fed to any ControlledSystem. Any custom controller should derive from this class to ensure it is compatible with ControlledSystem and the Integrator.
|
inline |
Default constructor.
|
inline |
Copy constructor.
|
inlinevirtual |
Destructor.
|
pure virtual |
Deep cloning.
Has to be implemented by any custom controller.
Implemented in ct::core::StateFeedbackController< STATE_DIM, CONTROL_DIM, SCALAR >, ct::core::ConstantStateFeedbackController< STATE_DIM, CONTROL_DIM, SCALAR >, ct::core::ConstantTrajectoryController< STATE_DIM, CONTROL_DIM, SCALAR >, ct::core::ConstantController< STATE_DIM, CONTROL_DIM, SCALAR >, ct::core::StepInputController, CustomController, and ct::optcon::ControllerDms< STATE_DIM, CONTROL_DIM, SCALAR >.
Referenced by ct::core::Controller< 1, 1, double >::~Controller().
|
pure virtual |
Compute control signal.
Evaluate the given controller for a given state and time returns the computed control action.
This function has to be implemented by any custom controller
state | current state of the system |
t | current time of the system |
controlAction | the corresponding control action |
Implemented in ct::core::ConstantStateFeedbackController< STATE_DIM, CONTROL_DIM, SCALAR >, ct::core::ConstantTrajectoryController< STATE_DIM, CONTROL_DIM, SCALAR >, and ct::core::ConstantController< STATE_DIM, CONTROL_DIM, SCALAR >.
Referenced by ct::core::Controller< 1, 1, double >::~Controller().
|
inlinevirtual |
Returns the the derivative of the control with respect to the initial control input u0.
[in] | state | The state at which the method will be evaluated |
[in] | time | The time at which the method will be evaluated |
Reimplemented in ct::core::ConstantController< STATE_DIM, CONTROL_DIM, SCALAR >.
|
inlinevirtual |
Returns the the derivative of the control with respect to the final control input uF.
[in] | state | The state at which the method will be evaluated |
[in] | time | The time at which the method will be evaluated |