#include <TrajControl.h>
Public Member Functions | |
TrajControl () | |
Default constructor. | |
void | openLoop (AnalyticalTrajectory ref, VelVec &Vr, Time time) |
Implements an open loop control. | |
void | nonlinear (AnalyticalTrajectory refTraj, VelVec &vr, Time time, TrajectoryState mState) |
Implements a non-linear control. | |
void | DFL (AnalyticalTrajectory &trif, VelVec &vr, Decimal tos, Time time, TrajectoryState mState) |
Implements a DFL control. | |
void | FL (AnalyticalTrajectory &trif, VelVec &vr, Decimal tos, Time time, TrajectoryState mState) |
Implements a FL control of a point 5 cm ahed the robot. | |
void | openLoop (OpenLoopIn &input, VelVec &vr, Time &time) |
Implements an open loop control. | |
void | nonlinear (NonlinearIn &input, VelVec &vr, Time &time) |
Implements a non-linear control. | |
void | DFL (DFLIn &input, VelVec &vr) |
Implements a DFL control. | |
void | Tustin (Angle angReff, VelVec &Vr, TrajectoryState mState) |
void | reset () |
Reset the state and the timer. |
Implemented the following control laws:
1) open loop control law;
2) nonlinear feedback control law;
3) dynamic feedback linearization control law (DFL);
TrajControl::TrajControl | ( | ) |
Default constructor.
void TrajControl::openLoop | ( | AnalyticalTrajectory | ref, | |
VelVec & | Vr, | |||
Time | time | |||
) |
Implements an open loop control.
Computes the speed commands for a robot to execute in open-loop a given trajectory defined in XY.
[in] | ref | Reference trajectory. |
[out] | &Vr | Speed commands. |
[in] | time | Time of evaluation (given by caller). |
void TrajControl::nonlinear | ( | AnalyticalTrajectory | refTraj, | |
VelVec & | vr, | |||
Time | time, | |||
TrajectoryState | mState | |||
) |
Implements a non-linear control.
[in] | refTraj | Reference trajectory. |
[out] | &vr | Speed commands. |
[in] | mState | Time of evaluation (given by caller). |
void TrajControl::DFL | ( | AnalyticalTrajectory & | trif, | |
VelVec & | vr, | |||
Decimal | tos, | |||
Time | time, | |||
TrajectoryState | mState | |||
) |
Implements a DFL control.
[in] | trif | Reference trajectory. |
[out] | &vr | Speed commands. |
[in] | tos | Time of sampling. |
[in] | mState | Time of evaluation (given by caller). |
void TrajControl::FL | ( | AnalyticalTrajectory & | trif, | |
VelVec & | vr, | |||
Decimal | tos, | |||
Time | time, | |||
TrajectoryState | mState | |||
) |
Implements a FL control of a point 5 cm ahed the robot.
[in] | trif | Reference trajectory. |
[out] | &vr | Speed commands. |
[in] | tos | Time of sampling. |
[in] | mState | Time of evaluation (given by caller). |
void TrajControl::openLoop | ( | OpenLoopIn & | input, | |
VelVec & | vr, | |||
Time & | time | |||
) |
Implements an open loop control.
Computes the speed commands for a robot to execute in open-loop a given trajectory defined in XY.
[in] | &input | Input of the open loop control law. |
[out] | &Vr | Computed speed commands. |
[in] | &time | Time of evaluation (given by caller). |
void TrajControl::nonlinear | ( | NonlinearIn & | input, | |
VelVec & | vr, | |||
Time & | time | |||
) |
Implements a non-linear control.
[in] | &input | Input of the nonlinear control law. |
[out] | &vr | Computed speed commands. |
[in] | &time | Time of evaluation (given by caller). |
Implements a DFL control.
[in] | &input | Input of the DFL control law. |
[out] | &vr | Computed speed commands. |
void TrajControl::Tustin | ( | Angle | angReff, | |
VelVec & | Vr, | |||
TrajectoryState | mState | |||
) |
trif | ||
Vr | ||
time | ||
MState |
void TrajControl::reset | ( | ) | [inline] |
Reset the state and the timer.