mirror of
https://github.com/betaflight/betaflight.git
synced 2025-07-13 11:29:58 +03:00
Feedforward improvements for 4.6 (#13576)
* feedforward update for 4.6 improve jitter reduction method don't interpolate CRSF protocol replace 'boost' with highpass element for yaw FF make yaw highpass element CLI adjustable add yaw feedforward sustain params to CLI and BBE refactoring and unit test fix * implement review suggestions, start on the filter struct * Attempt PT1 filter init method * fix silly error, scale time constant correctly improve gain linearisation at shorter time constants * fix averaging init * Review suggestions from PL * Improve filter initialisation much better :-) * re-name prevPacketDuplicate to prevPacketWasADuplicate * Add review comments - thanks Jan and Mark! * cast gyro.gyroDebugAxis to int * A better fix than int cast * implement review comments from PL also hopefully improved some comments. * increase PG to 10, expecting the Disarm PR to use 9 * two always win against one ;-) * remove inappropriate comment, remove space * update comments and review suggestions from PL
This commit is contained in:
parent
9e3fce54d3
commit
f2bd6e69b2
8 changed files with 179 additions and 109 deletions
|
@ -116,7 +116,7 @@ PG_RESET_TEMPLATE(pidConfig_t, pidConfig,
|
|||
|
||||
#define LAUNCH_CONTROL_YAW_ITERM_LIMIT 50 // yaw iterm windup limit when launch mode is "FULL" (all axes)
|
||||
|
||||
PG_REGISTER_ARRAY_WITH_RESET_FN(pidProfile_t, PID_PROFILE_COUNT, pidProfiles, PG_PID_PROFILE, 9);
|
||||
PG_REGISTER_ARRAY_WITH_RESET_FN(pidProfile_t, PID_PROFILE_COUNT, pidProfiles, PG_PID_PROFILE, 10);
|
||||
|
||||
void resetPidProfile(pidProfile_t *pidProfile)
|
||||
{
|
||||
|
@ -237,6 +237,8 @@ void resetPidProfile(pidProfile_t *pidProfile)
|
|||
.spa_width = { 0, 0, 0 },
|
||||
.spa_mode = { 0, 0, 0 },
|
||||
.landing_disarm_threshold = 0, // relatively safe values are around 100
|
||||
.feedforward_yaw_hold_gain = 15, // zero disables; 15-20 is OK for 5in
|
||||
.feedforward_yaw_hold_time = 100, // a value of 100 is a time constant of about 100ms, and is OK for a 5in; smaller values decay faster, eg for smaller props
|
||||
);
|
||||
|
||||
#ifndef USE_D_MIN
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue