From 65a9cd171f272d4be8d7c7f944b3245471ebcaf5 Mon Sep 17 00:00:00 2001 From: Dennis Mannhart Date: Mon, 19 Mar 2018 11:43:48 +0100 Subject: [PATCH] PositionControl: variable replacement --- src/modules/mc_pos_control/PositionControl.cpp | 8 ++++---- src/modules/mc_pos_control/PositionControl.hpp | 3 +-- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/src/modules/mc_pos_control/PositionControl.cpp b/src/modules/mc_pos_control/PositionControl.cpp index e7be49eb76..c7cc1a1ae0 100644 --- a/src/modules/mc_pos_control/PositionControl.cpp +++ b/src/modules/mc_pos_control/PositionControl.cpp @@ -95,11 +95,11 @@ void PositionControl::updateSetpoint(const vehicle_local_position_setpoint_s &se * controller and just return thrust. */ _skipController = false; - _ThrLimit[1] = _ThrMinPosition; + _ThrustLimit.min = _ThrMinPosition; if (PX4_ISFINITE(setpoint.thrust[0]) && PX4_ISFINITE(setpoint.thrust[1]) && PX4_ISFINITE(setpoint.thrust[2])) { _skipController = true; - _ThrLimit[1] = _ThrMinStab; + _ThrustLimit.min = _ThrMinStab; _pos_sp.zero(); _vel_sp.zero(); _acc_sp.zero(); @@ -188,7 +188,7 @@ void PositionControl::_positionController() _VelMaxXY); _vel_sp(0) = vel_sp_xy(0); _vel_sp(1) = vel_sp_xy(1); - _vel_sp(2) = math::constrain(_vel_sp(2), -_VelMaxZ[0], _VelMaxZ[1]); + _vel_sp(2) = math::constrain(_vel_sp(2), -_VelMaxZ.up, _VelMaxZ.down); } void PositionControl::_velocityController(const float &dt) @@ -333,7 +333,7 @@ void PositionControl::_setParams() param_get(_VelMaxZdown_h, &_VelMaxZ.down); param_get(_ThrHover_h, &_ThrHover); - param_get(_ThrMax_h, &_ThrLimit[0]); + param_get(_ThrMax_h, &_ThrustLimit.max); param_get(_ThrMinPosition_h, &_ThrMinPosition); param_get(_ThrMinStab_h, &_ThrMinStab); } diff --git a/src/modules/mc_pos_control/PositionControl.hpp b/src/modules/mc_pos_control/PositionControl.hpp index ac0d31d8b6..cb26b525e2 100644 --- a/src/modules/mc_pos_control/PositionControl.hpp +++ b/src/modules/mc_pos_control/PositionControl.hpp @@ -127,9 +127,8 @@ private: float min; }; Limits _ThrustLimit; - float _ThrHover{0.5f}; - float _ThrLimit[2]; //index 0: max, index 1: min + float _ThrHover{0.5f}; float _ThrMinPosition{0.0f}; // minimum throttle for any position controlled mode float _ThrMinStab{0.0f}; // minimum throttle for stabilized bool _skipController{false};