aboutsummaryrefslogtreecommitdiff
path: root/src/modules/fw_pos_control_l1/fw_pos_control_l1_main.cpp
diff options
context:
space:
mode:
authorThomas Gubler <thomasgubler@student.ethz.ch>2013-10-31 18:02:26 +0100
committerThomas Gubler <thomasgubler@student.ethz.ch>2013-10-31 18:02:26 +0100
commit6fefa453810893d5a983e20e0d503f726e07d06b (patch)
tree513ae1c713b26f39b7fa73d29d535ca9479ecc2a /src/modules/fw_pos_control_l1/fw_pos_control_l1_main.cpp
parent18c5d901889e33167f0967f612fb7e57b3b4a018 (diff)
parentc275f785414121c567523db00def3f76349a218f (diff)
downloadpx4-firmware-6fefa453810893d5a983e20e0d503f726e07d06b.tar.gz
px4-firmware-6fefa453810893d5a983e20e0d503f726e07d06b.tar.bz2
px4-firmware-6fefa453810893d5a983e20e0d503f726e07d06b.zip
Merge branch 'fw_staging_ouputlimit_master_heightrate' into fw_autoland_att_tecs
Diffstat (limited to 'src/modules/fw_pos_control_l1/fw_pos_control_l1_main.cpp')
-rw-r--r--src/modules/fw_pos_control_l1/fw_pos_control_l1_main.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/modules/fw_pos_control_l1/fw_pos_control_l1_main.cpp b/src/modules/fw_pos_control_l1/fw_pos_control_l1_main.cpp
index be6cc0e8c..490788206 100644
--- a/src/modules/fw_pos_control_l1/fw_pos_control_l1_main.cpp
+++ b/src/modules/fw_pos_control_l1/fw_pos_control_l1_main.cpp
@@ -206,6 +206,8 @@ private:
float throttle_land_max;
float loiter_hold_radius;
+
+ float heightrate_p;
} _parameters; /**< local copies of interesting parameters */
struct {
@@ -240,6 +242,8 @@ private:
param_t throttle_land_max;
param_t loiter_hold_radius;
+
+ param_t heightrate_p;
} _parameter_handles; /**< handles for interesting parameters */
@@ -370,6 +374,7 @@ FixedwingPositionControl::FixedwingPositionControl() :
_parameter_handles.roll_throttle_compensation = param_find("FW_T_RLL2THR");
_parameter_handles.speed_weight = param_find("FW_T_SPDWEIGHT");
_parameter_handles.pitch_damping = param_find("FW_T_PTCH_DAMP");
+ _parameter_handles.heightrate_p = param_find("FW_T_HRATE_P");
/* fetch initial parameter values */
parameters_update();
@@ -435,6 +440,8 @@ FixedwingPositionControl::parameters_update()
param_get(_parameter_handles.pitch_damping, &(_parameters.pitch_damping));
param_get(_parameter_handles.max_climb_rate, &(_parameters.max_climb_rate));
+ param_get(_parameter_handles.heightrate_p, &(_parameters.heightrate_p));
+
_l1_control.set_l1_damping(_parameters.l1_damping);
_l1_control.set_l1_period(_parameters.l1_period);
_l1_control.set_l1_roll_limit(math::radians(_parameters.roll_limit));
@@ -453,6 +460,7 @@ FixedwingPositionControl::parameters_update()
_tecs.set_indicated_airspeed_min(_parameters.airspeed_min);
_tecs.set_indicated_airspeed_max(_parameters.airspeed_min);
_tecs.set_max_climb_rate(_parameters.max_climb_rate);
+ _tecs.set_heightrate_p(_parameters.heightrate_p);
/* sanity check parameters */
if (_parameters.airspeed_max < _parameters.airspeed_min ||