mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-10-29 07:13:34 +08:00
TECS throttle gains default reduction and transition values from previous PX4 version (#22548)
* TECS: reduce default of FW_T_I_GAIN_THR Signed-off-by: Silvan Fuhrer <silvan@auterion.com> * TECS: reduce default of FW_T_THR_DAMP Signed-off-by: Silvan Fuhrer <silvan@auterion.com> * TECS: improve param descriptions and meta data of some params Signed-off-by: Silvan Fuhrer <silvan@auterion.com> * FW Pos C: rename FW_T_THR_DAMP to FW_T_THR_DAMPING Rename wihtout param translation as the interpretation of this param has changed recently (a bug was fixed that caused the damping to have a much lower effect than it should). We want to avoid that users keep the previously tuned value (with the bug) and do not update the tuning when using the fixed version (v1.14.0 and later). Signed-off-by: Silvan Fuhrer <silvan@auterion.com> * FW Pos C: rename FW_T_I_GAIN_THR to FW_T_THR_INTEG Rename wihtout param translation as the interpretation of this param has changed recently (a bug was fixed that caused the damping to have a much lower effect than it should). We want to avoid that users keep the previously tuned value (with the bug) and do not update the tuning when using the fixed version (v1.14.0 and later). Signed-off-by: Silvan Fuhrer <silvan@auterion.com> --------- Signed-off-by: Silvan Fuhrer <silvan@auterion.com>
This commit is contained in:
@@ -129,8 +129,8 @@ FixedwingPositionControl::parameters_update()
|
|||||||
_tecs.set_speed_weight(_param_fw_t_spdweight.get());
|
_tecs.set_speed_weight(_param_fw_t_spdweight.get());
|
||||||
_tecs.set_equivalent_airspeed_trim(_performance_model.getCalibratedTrimAirspeed());
|
_tecs.set_equivalent_airspeed_trim(_performance_model.getCalibratedTrimAirspeed());
|
||||||
_tecs.set_equivalent_airspeed_min(_performance_model.getMinimumCalibratedAirspeed());
|
_tecs.set_equivalent_airspeed_min(_performance_model.getMinimumCalibratedAirspeed());
|
||||||
_tecs.set_throttle_damp(_param_fw_t_thr_damp.get());
|
_tecs.set_throttle_damp(_param_fw_t_thr_damping.get());
|
||||||
_tecs.set_integrator_gain_throttle(_param_fw_t_I_gain_thr.get());
|
_tecs.set_integrator_gain_throttle(_param_fw_t_thr_integ.get());
|
||||||
_tecs.set_integrator_gain_pitch(_param_fw_t_I_gain_pit.get());
|
_tecs.set_integrator_gain_pitch(_param_fw_t_I_gain_pit.get());
|
||||||
_tecs.set_throttle_slewrate(_param_fw_thr_slew_max.get());
|
_tecs.set_throttle_slewrate(_param_fw_thr_slew_max.get());
|
||||||
_tecs.set_vertical_accel_limit(_param_fw_t_vert_acc.get());
|
_tecs.set_vertical_accel_limit(_param_fw_t_vert_acc.get());
|
||||||
|
|||||||
@@ -934,14 +934,14 @@ private:
|
|||||||
|
|
||||||
(ParamFloat<px4::params::FW_T_HRATE_FF>) _param_fw_t_hrate_ff,
|
(ParamFloat<px4::params::FW_T_HRATE_FF>) _param_fw_t_hrate_ff,
|
||||||
(ParamFloat<px4::params::FW_T_ALT_TC>) _param_fw_t_h_error_tc,
|
(ParamFloat<px4::params::FW_T_ALT_TC>) _param_fw_t_h_error_tc,
|
||||||
(ParamFloat<px4::params::FW_T_I_GAIN_THR>) _param_fw_t_I_gain_thr,
|
(ParamFloat<px4::params::FW_T_THR_INTEG>) _param_fw_t_thr_integ,
|
||||||
(ParamFloat<px4::params::FW_T_I_GAIN_PIT>) _param_fw_t_I_gain_pit,
|
(ParamFloat<px4::params::FW_T_I_GAIN_PIT>) _param_fw_t_I_gain_pit,
|
||||||
(ParamFloat<px4::params::FW_T_PTCH_DAMP>) _param_fw_t_ptch_damp,
|
(ParamFloat<px4::params::FW_T_PTCH_DAMP>) _param_fw_t_ptch_damp,
|
||||||
(ParamFloat<px4::params::FW_T_RLL2THR>) _param_fw_t_rll2thr,
|
(ParamFloat<px4::params::FW_T_RLL2THR>) _param_fw_t_rll2thr,
|
||||||
(ParamFloat<px4::params::FW_T_SINK_MAX>) _param_fw_t_sink_max,
|
(ParamFloat<px4::params::FW_T_SINK_MAX>) _param_fw_t_sink_max,
|
||||||
(ParamFloat<px4::params::FW_T_SPDWEIGHT>) _param_fw_t_spdweight,
|
(ParamFloat<px4::params::FW_T_SPDWEIGHT>) _param_fw_t_spdweight,
|
||||||
(ParamFloat<px4::params::FW_T_TAS_TC>) _param_fw_t_tas_error_tc,
|
(ParamFloat<px4::params::FW_T_TAS_TC>) _param_fw_t_tas_error_tc,
|
||||||
(ParamFloat<px4::params::FW_T_THR_DAMP>) _param_fw_t_thr_damp,
|
(ParamFloat<px4::params::FW_T_THR_DAMPING>) _param_fw_t_thr_damping,
|
||||||
(ParamFloat<px4::params::FW_T_VERT_ACC>) _param_fw_t_vert_acc,
|
(ParamFloat<px4::params::FW_T_VERT_ACC>) _param_fw_t_vert_acc,
|
||||||
(ParamFloat<px4::params::FW_T_STE_R_TC>) _param_ste_rate_time_const,
|
(ParamFloat<px4::params::FW_T_STE_R_TC>) _param_ste_rate_time_const,
|
||||||
(ParamFloat<px4::params::FW_T_SEB_R_FF>) _param_seb_rate_ff,
|
(ParamFloat<px4::params::FW_T_SEB_R_FF>) _param_seb_rate_ff,
|
||||||
|
|||||||
@@ -465,38 +465,34 @@ PARAM_DEFINE_FLOAT(FW_T_SINK_MAX, 5.0f);
|
|||||||
* Increase to add damping to correct for oscillations in speed and height.
|
* Increase to add damping to correct for oscillations in speed and height.
|
||||||
*
|
*
|
||||||
* @min 0.0
|
* @min 0.0
|
||||||
* @max 2.0
|
* @max 1.0
|
||||||
* @decimal 2
|
* @decimal 3
|
||||||
* @increment 0.1
|
* @increment 0.01
|
||||||
* @group FW TECS
|
* @group FW TECS
|
||||||
*/
|
*/
|
||||||
PARAM_DEFINE_FLOAT(FW_T_THR_DAMP, 0.1f);
|
PARAM_DEFINE_FLOAT(FW_T_THR_DAMPING, 0.05f);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Integrator gain throttle
|
* Integrator gain throttle
|
||||||
*
|
*
|
||||||
* This is the integrator gain on the throttle part of the control loop.
|
* Integrator gain on the throttle part of the control loop.
|
||||||
* Increasing this gain increases the speed at which speed
|
* Increase it to trim out speed and height offsets faster,
|
||||||
* and height offsets are trimmed out, but reduces damping and
|
* with the downside of possible overshoots and oscillations.
|
||||||
* increases overshoot. Set this value to zero to completely
|
|
||||||
* disable all integrator action.
|
|
||||||
*
|
*
|
||||||
* @min 0.0
|
* @min 0.0
|
||||||
* @max 2.0
|
* @max 1.0
|
||||||
* @decimal 2
|
* @decimal 3
|
||||||
* @increment 0.05
|
* @increment 0.005
|
||||||
* @group FW TECS
|
* @group FW TECS
|
||||||
*/
|
*/
|
||||||
PARAM_DEFINE_FLOAT(FW_T_I_GAIN_THR, 0.05f);
|
PARAM_DEFINE_FLOAT(FW_T_THR_INTEG, 0.02f);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Integrator gain pitch
|
* Integrator gain pitch
|
||||||
*
|
*
|
||||||
* This is the integrator gain on the pitch part of the control loop.
|
* Integrator gain on the pitch part of the control loop.
|
||||||
* Increasing this gain increases the speed at which speed
|
* Increase it to trim out speed and height offsets faster,
|
||||||
* and height offsets are trimmed out, but reduces damping and
|
* with the downside of possible overshoots and oscillations.
|
||||||
* increases overshoot. Set this value to zero to completely
|
|
||||||
* disable all integrator action.
|
|
||||||
*
|
*
|
||||||
* @min 0.0
|
* @min 0.0
|
||||||
* @max 2.0
|
* @max 2.0
|
||||||
|
|||||||
Reference in New Issue
Block a user