File control/src/Controller/Twisting.hpp#
Go to the source code of this file
twisting algorithm with a modification
-
class Twisting : public CommonSMC
- #include <Twisting.hpp>
Modified Twisting Controller with an implicit discretization.
This is the twisting controller that gives the best result
Subclassed by RegularTwisting
Public Functions
-
inline Twisting(SP::ControlSensor sensor)
Constructor for the ActuatorFactory.
- Parameters:
sensor – the ControlSensor feeding the Actuator
-
Twisting(SP::ControlSensor sensor, double hControl)
Constructor for a nonlinear system.
- Parameters:
sensor – the ControlSensor feeding the Actuator
hControl – sampling period
-
Twisting(SP::ControlSensor sensor, double gain, double beta, double hControl)
Constructor for the linear case.
- Parameters:
sensor – the ControlSensor feeding the Actuator
gain – control magnitude
beta – twisting parameter
hControl – sampling period
-
virtual ~Twisting()
destructor
-
virtual void actuate()
Compute the new control law at each event Here we are using the following formula:
-
virtual void setNSdata(double hControl)
set nonsmooth data: NormalConeNSL and AVI osnsp
- Parameters:
hControl – sampling period
-
virtual void initialize(const NonSmoothDynamicalSystem &nsds, const Simulation &s)
Initialization.
- Parameters:
nsds – current nonsmooth dynamical system
s – current simulation setup
Protected Functions
-
inline Twisting()#
default constructor
-
inline Twisting(SP::ControlSensor sensor)