From 7d7a2dffbfa5c32a80ae225cb4ef5ff8cbef55f0 Mon Sep 17 00:00:00 2001 From: Dennis Mannhart Date: Thu, 26 Apr 2018 15:01:08 +0200 Subject: [PATCH] Smoothing-classes: initialize to parameters --- src/lib/FlightTasks/tasks/Utility/ManualSmoothingXY.cpp | 8 ++------ src/lib/FlightTasks/tasks/Utility/ManualSmoothingXY.hpp | 8 ++++---- src/lib/FlightTasks/tasks/Utility/ManualSmoothingZ.cpp | 3 ++- src/lib/FlightTasks/tasks/Utility/ManualSmoothingZ.hpp | 4 ++-- 4 files changed, 10 insertions(+), 13 deletions(-) diff --git a/src/lib/FlightTasks/tasks/Utility/ManualSmoothingXY.cpp b/src/lib/FlightTasks/tasks/Utility/ManualSmoothingXY.cpp index 4a4d728637..cc47883adf 100644 --- a/src/lib/FlightTasks/tasks/Utility/ManualSmoothingXY.cpp +++ b/src/lib/FlightTasks/tasks/Utility/ManualSmoothingXY.cpp @@ -41,19 +41,15 @@ #include ManualSmoothingXY::ManualSmoothingXY(ModuleParams *parent, const matrix::Vector2f &vel) : - ModuleParams(parent), - _vel_sp_prev(vel) -{ -} + ModuleParams(parent), _acc_state_dependent(_acc_xy_max.get()), _jerk_state_dependent(_jerk_max.get()), _vel_sp_prev(vel) +{} void ManualSmoothingXY::smoothVelocity(matrix::Vector2f &vel_sp, const matrix::Vector2f &vel, const float &yaw, const float &yawrate_sp, const float dt) { _updateAcceleration(vel_sp, vel, yaw, yawrate_sp, dt); - _velocitySlewRate(vel_sp, dt); - _vel_sp_prev = vel_sp; } diff --git a/src/lib/FlightTasks/tasks/Utility/ManualSmoothingXY.hpp b/src/lib/FlightTasks/tasks/Utility/ManualSmoothingXY.hpp index a768ae806e..024b4dde6a 100644 --- a/src/lib/FlightTasks/tasks/Utility/ManualSmoothingXY.hpp +++ b/src/lib/FlightTasks/tasks/Utility/ManualSmoothingXY.hpp @@ -103,17 +103,17 @@ private: /* Acceleration that depends on vehicle state * _acc_max_down <= _acc_state_dependent <= _acc_max_up */ - float _acc_state_dependent{0.0f}; - float _jerk_state_dependent{0.0f}; + float _acc_state_dependent; + float _jerk_state_dependent; /** * Maximum velocity. * It is used to deduce user intention. */ - float _vel_max{0.0f}; + float _vel_max{10.0f}; /* Previous setpoints */ - matrix::Vector2f _vel_sp_prev{}; // previous velocity setpoint + matrix::Vector2f _vel_sp_prev; // previous velocity setpoint DEFINE_PARAMETERS( (ParamFloat) _acc_hover, ///< acceleration in hover diff --git a/src/lib/FlightTasks/tasks/Utility/ManualSmoothingZ.cpp b/src/lib/FlightTasks/tasks/Utility/ManualSmoothingZ.cpp index da98c06904..6cf941f603 100644 --- a/src/lib/FlightTasks/tasks/Utility/ManualSmoothingZ.cpp +++ b/src/lib/FlightTasks/tasks/Utility/ManualSmoothingZ.cpp @@ -42,7 +42,8 @@ ManualSmoothingZ::ManualSmoothingZ(ModuleParams *parent, const float &vel, const float &stick) : ModuleParams(parent), - _vel(vel), _stick(stick), _vel_sp_prev(vel) + _vel(vel), _stick(stick), _acc_state_dependent(_acc_max_up.get()), _max_acceleration(_acc_max_up.get()), + _vel_sp_prev(vel) { } diff --git a/src/lib/FlightTasks/tasks/Utility/ManualSmoothingZ.hpp b/src/lib/FlightTasks/tasks/Utility/ManualSmoothingZ.hpp index a5d7c1da31..12858c9eea 100644 --- a/src/lib/FlightTasks/tasks/Utility/ManualSmoothingZ.hpp +++ b/src/lib/FlightTasks/tasks/Utility/ManualSmoothingZ.hpp @@ -92,9 +92,9 @@ private: /* Acceleration that depends on vehicle state * _acc_max_down <= _acc_state_dependent <= _acc_max_up */ - float _acc_state_dependent{0.0f}; + float _acc_state_dependent; + float _max_acceleration; // can be up or down maximum accleration float _vel_sp_prev; - float _max_acceleration{0.f}; DEFINE_PARAMETERS( (ParamFloat) _acc_max_up,