template<class _Derived>
ControllerBase class
ControllerBase describes a base controller.
Template parameters | |
---|---|
_Derived | type of the Derived class. Necessary to implement the Curiously recurring template pattern. |
Derived classes
-
template<typename _Derived>class ProportionalControllerBase
-
template<typename _Derived>class ProportionalDerivativeControllerBase
-
template<typename _Derived>class ProportionalControllerBase
-
template<typename _Derived>class ProportionalDerivativeControllerBase
Public types
-
using State = typename internal::
traits<_Derived>::State - State type.
-
using Vector = typename internal::
traits<_Derived>::Vector - Here we consider a Vector an element of the lie algebra of the Group.
-
using ScalarGains = typename internal::
traits<_Derived>::ScalarGains -
using Gains = typename internal::
traits<_Derived>::Gains - Gains used by the controller.
-
using LieGroup = typename internal::
traits<_Derived>::LieGroup - Lie Group.
Public functions
-
template<typename... Ts>auto setState(Ts && ... state) -> bool
- Set the control state.
-
template<typename... Ts>auto setDesiredState(Ts && ... state) -> bool
- Set the desired state.
- auto setFeedForward(const Vector& feedForward) -> bool
- Set the feedforward term of the controller.
-
template<typename... Ts>void setGains(Ts && ... gains)
- Set the controller gains.
- void computeControlLaw()
- Evaluate the control law.
- auto getControl() const -> const Vector&
- Get the control signal.
- auto getState() const -> const State&
- Get the state of the system.
- auto getDesiredState() const -> const State&
- Get the desired state of the system.
- auto getFeedForward() const -> const Vector&
- Get the feedforward term.
Function documentation
template<class _Derived>
template<typename... Ts>
bool LieGroupControllers:: ControllerBase<_Derived>:: setState(Ts && ... state)
Set the control state.
Parameters | |
---|---|
state | of the system. |
Returns | true in case of success, false otherwise. |
template<class _Derived>
template<typename... Ts>
bool LieGroupControllers:: ControllerBase<_Derived>:: setDesiredState(Ts && ... state)
Set the desired state.
Parameters | |
---|---|
state | of the system. |
Returns | true in case of success, false otherwise. |
template<class _Derived>
bool LieGroupControllers:: ControllerBase<_Derived>:: setFeedForward(const Vector& feedForward)
Set the feedforward term of the controller.
Returns | true in case of success, false otherwise. |
---|
template<class _Derived>
template<typename... Ts>
void LieGroupControllers:: ControllerBase<_Derived>:: setGains(Ts && ... gains)
Set the controller gains.
Parameters | |
---|---|
gains | contains the controller gain. |
template<class _Derived>
const Vector& LieGroupControllers:: ControllerBase<_Derived>:: getControl() const
Get the control signal.
Returns | a vector containing the control effort. |
---|
template<class _Derived>
const State& LieGroupControllers:: ControllerBase<_Derived>:: getDesiredState() const
Get the desired state of the system.
Returns | the state of the system. |
---|
template<class _Derived>
const Vector& LieGroupControllers:: ControllerBase<_Derived>:: getFeedForward() const
Get the feedforward term.
Returns | the controller feedforward. |
---|