mirror of
https://github.com/PX4/PX4-Autopilot.git
synced 2026-06-06 16:49:51 +08:00
TECS fix height demand change
This commit is contained in:
committed by
Lorenz Meier
parent
bc8b36a986
commit
22d0e507c6
@@ -252,18 +252,11 @@ void TECS::_update_height_demand(float demand, float state)
|
||||
}
|
||||
|
||||
_hgt_dem_prev = _hgt_dem;
|
||||
//
|
||||
// // Apply first order lag to height demand
|
||||
// _hgt_dem_adj = 0.05f * _hgt_dem + 0.95f * _hgt_dem_adj_last;
|
||||
// _hgt_rate_dem = (_hgt_dem_adj - _hgt_dem_adj_last) / 0.1f;
|
||||
// _hgt_dem_adj_last = _hgt_dem_adj;
|
||||
//
|
||||
// // printf("hgt_dem: %6.2f hgt_dem_adj: %6.2f hgt_dem_last: %6.2f hgt_rate_dem: %6.2f\n", _hgt_dem, _hgt_dem_adj, _hgt_dem_adj_last,
|
||||
// // _hgt_rate_dem);
|
||||
|
||||
// Apply first order lag to height demand
|
||||
_hgt_dem_adj = 0.1f * _hgt_dem + 0.9f * _hgt_dem_adj_last;
|
||||
_hgt_dem_adj_last = _hgt_dem_adj;
|
||||
_hgt_rate_dem = (_hgt_dem_adj - state) * _heightrate_p + _heightrate_ff * (_hgt_dem_adj - _hgt_dem_adj_last) / _DT;
|
||||
_hgt_dem_adj_last = _hgt_dem_adj;
|
||||
|
||||
// Limit height rate of change
|
||||
if (_hgt_rate_dem > _maxClimbRate) {
|
||||
@@ -272,8 +265,6 @@ void TECS::_update_height_demand(float demand, float state)
|
||||
} else if (_hgt_rate_dem < -_maxSinkRate) {
|
||||
_hgt_rate_dem = -_maxSinkRate;
|
||||
}
|
||||
|
||||
//warnx("_hgt_rate_dem: %.4f, _hgt_dem_adj %.4f", _hgt_rate_dem, _hgt_dem_adj);
|
||||
}
|
||||
|
||||
void TECS::_detect_underspeed()
|
||||
|
||||
@@ -615,10 +615,10 @@ PARAM_DEFINE_FLOAT(FW_T_SPDWEIGHT, 1.0f);
|
||||
PARAM_DEFINE_FLOAT(FW_T_PTCH_DAMP, 0.0f);
|
||||
|
||||
/**
|
||||
* Height rate P factor
|
||||
* Height rate proportional factor
|
||||
*
|
||||
* @min 0.0
|
||||
* @max 2.0
|
||||
* @max 1.0
|
||||
* @decimal 2
|
||||
* @increment 0.05
|
||||
* @group FW TECS
|
||||
@@ -626,15 +626,15 @@ PARAM_DEFINE_FLOAT(FW_T_PTCH_DAMP, 0.0f);
|
||||
PARAM_DEFINE_FLOAT(FW_T_HRATE_P, 0.05f);
|
||||
|
||||
/**
|
||||
* Height rate FF factor
|
||||
* Height rate feed forward
|
||||
*
|
||||
* @min 0.0
|
||||
* @max 2.0
|
||||
* @max 1.0
|
||||
* @decimal 2
|
||||
* @increment 0.05
|
||||
* @group FW TECS
|
||||
*/
|
||||
PARAM_DEFINE_FLOAT(FW_T_HRATE_FF, 0.0f);
|
||||
PARAM_DEFINE_FLOAT(FW_T_HRATE_FF, 0.1f);
|
||||
|
||||
/**
|
||||
* Speed rate P factor
|
||||
|
||||
Reference in New Issue
Block a user