#include <ManualVelocitySmoothingXY.hpp>
◆ ManualVelocitySmoothingXY()
ManualVelocitySmoothingXY::ManualVelocitySmoothingXY |
( |
| ) |
|
|
default |
◆ ~ManualVelocitySmoothingXY()
ManualVelocitySmoothingXY::~ManualVelocitySmoothingXY |
( |
| ) |
|
|
default |
◆ checkPositionLock()
void ManualVelocitySmoothingXY::checkPositionLock |
( |
const Vector2f & |
velocity_target | ) |
|
|
private |
During a position lock -> position unlock transition, we have to make sure that the velocity setpoint is continuous. We know that the output of the position loop (part of the velocity setpoint) will suddenly become null and only the feedforward (generated by this flight task) will remain. This is why the previous input of the velocity controller is used to set current velocity of the trajectory.
Definition at line 91 of file ManualVelocitySmoothingXY.cpp.
References FLT_EPSILON, and matrix::Vector< Type, M >::length().
Referenced by setCurrentPositionEstimate().
◆ getCurrentAcceleration()
Vector2f ManualVelocitySmoothingXY::getCurrentAcceleration |
( |
| ) |
const |
|
inline |
◆ getCurrentJerk()
Vector2f ManualVelocitySmoothingXY::getCurrentJerk |
( |
| ) |
const |
|
inline |
◆ getCurrentPosition()
Vector2f ManualVelocitySmoothingXY::getCurrentPosition |
( |
| ) |
const |
|
inline |
◆ getCurrentVelocity()
Vector2f ManualVelocitySmoothingXY::getCurrentVelocity |
( |
| ) |
const |
|
inline |
◆ getMaxAccel()
float ManualVelocitySmoothingXY::getMaxAccel |
( |
| ) |
const |
|
inline |
◆ getMaxJerk()
float ManualVelocitySmoothingXY::getMaxJerk |
( |
| ) |
const |
|
inline |
◆ getMaxVel()
float ManualVelocitySmoothingXY::getMaxVel |
( |
| ) |
const |
|
inline |
◆ reset()
◆ resetPositionLock()
void ManualVelocitySmoothingXY::resetPositionLock |
( |
| ) |
|
|
private |
◆ setCurrentPosition()
void ManualVelocitySmoothingXY::setCurrentPosition |
( |
const Vector2f & |
pos | ) |
|
|
inline |
◆ setCurrentPositionEstimate()
void ManualVelocitySmoothingXY::setCurrentPositionEstimate |
( |
const Vector2f & |
pos | ) |
|
|
inline |
◆ setCurrentVelocity()
void ManualVelocitySmoothingXY::setCurrentVelocity |
( |
const Vector2f & |
vel | ) |
|
|
inline |
◆ setMaxAccel()
void ManualVelocitySmoothingXY::setMaxAccel |
( |
const float |
max_accel | ) |
|
|
inline |
◆ setMaxJerk()
void ManualVelocitySmoothingXY::setMaxJerk |
( |
const float |
max_jerk | ) |
|
|
inline |
◆ setMaxVel()
void ManualVelocitySmoothingXY::setMaxVel |
( |
const float |
max_vel | ) |
|
|
inline |
◆ setVelSpFeedback()
void ManualVelocitySmoothingXY::setVelSpFeedback |
( |
const Vector2f & |
fb | ) |
|
|
inline |
◆ update()
void ManualVelocitySmoothingXY::update |
( |
float |
dt, |
|
|
const Vector2f & |
velocity_target |
|
) |
| |
◆ updateTrajDurations()
void ManualVelocitySmoothingXY::updateTrajDurations |
( |
const Vector2f & |
velocity_target | ) |
|
|
private |
◆ updateTrajectories()
void ManualVelocitySmoothingXY::updateTrajectories |
( |
float |
dt | ) |
|
|
private |
◆ _position_estimate
Vector2f ManualVelocitySmoothingXY::_position_estimate |
|
private |
◆ _position_lock_active
bool ManualVelocitySmoothingXY::_position_lock_active {false} |
|
private |
◆ _position_setpoint_locked
Vector2f ManualVelocitySmoothingXY::_position_setpoint_locked |
|
private |
◆ _state
struct { ... } ManualVelocitySmoothingXY::_state |
◆ _trajectory
◆ _velocity_setpoint_feedback
Vector2f ManualVelocitySmoothingXY::_velocity_setpoint_feedback |
|
private |
Vector2f ManualVelocitySmoothingXY::a |
Vector2f ManualVelocitySmoothingXY::j |
Vector2f ManualVelocitySmoothingXY::v |
Vector2f ManualVelocitySmoothingXY::x |
The documentation for this class was generated from the following files: