Change simplified tuning filter slider calculation
Add dterm part Remove unneeded resets Save lowpass_type with simplified tuning
This commit is contained in:
parent
daf202e8c3
commit
1fdaaa3bf8
|
@ -65,22 +65,50 @@ static void calculateNewPidValues(pidProfile_t *pidProfile)
|
||||||
|
|
||||||
static void calculateNewDTermFilterValues(pidProfile_t *pidProfile)
|
static void calculateNewDTermFilterValues(pidProfile_t *pidProfile)
|
||||||
{
|
{
|
||||||
|
if (pidProfile->dterm_lpf1_dyn_min_hz) {
|
||||||
pidProfile->dterm_lpf1_dyn_min_hz = constrain(DTERM_LPF1_DYN_MIN_HZ_DEFAULT * pidProfile->simplified_dterm_filter_multiplier / 100, 0, DYN_LPF_MAX_HZ);
|
pidProfile->dterm_lpf1_dyn_min_hz = constrain(DTERM_LPF1_DYN_MIN_HZ_DEFAULT * pidProfile->simplified_dterm_filter_multiplier / 100, 0, DYN_LPF_MAX_HZ);
|
||||||
pidProfile->dterm_lpf1_dyn_max_hz = constrain(DTERM_LPF1_DYN_MAX_HZ_DEFAULT * pidProfile->simplified_dterm_filter_multiplier / 100, 0, DYN_LPF_MAX_HZ);
|
pidProfile->dterm_lpf1_dyn_max_hz = constrain(DTERM_LPF1_DYN_MAX_HZ_DEFAULT * pidProfile->simplified_dterm_filter_multiplier / 100, 0, DYN_LPF_MAX_HZ);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (pidProfile->dterm_lpf1_static_hz) {
|
||||||
pidProfile->dterm_lpf1_static_hz = constrain(DTERM_LPF1_DYN_MIN_HZ_DEFAULT * pidProfile->simplified_dterm_filter_multiplier / 100, 0, DYN_LPF_MAX_HZ);
|
pidProfile->dterm_lpf1_static_hz = constrain(DTERM_LPF1_DYN_MIN_HZ_DEFAULT * pidProfile->simplified_dterm_filter_multiplier / 100, 0, DYN_LPF_MAX_HZ);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (pidProfile->dterm_lpf2_static_hz) {
|
||||||
pidProfile->dterm_lpf2_static_hz = constrain(DTERM_LPF2_HZ_DEFAULT * pidProfile->simplified_dterm_filter_multiplier / 100, 0, LPF_MAX_HZ);
|
pidProfile->dterm_lpf2_static_hz = constrain(DTERM_LPF2_HZ_DEFAULT * pidProfile->simplified_dterm_filter_multiplier / 100, 0, LPF_MAX_HZ);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!pidProfile->dterm_lpf1_type) {
|
||||||
pidProfile->dterm_lpf1_type = FILTER_PT1;
|
pidProfile->dterm_lpf1_type = FILTER_PT1;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!pidProfile->dterm_lpf2_type) {
|
||||||
pidProfile->dterm_lpf2_type = FILTER_PT1;
|
pidProfile->dterm_lpf2_type = FILTER_PT1;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void calculateNewGyroFilterValues()
|
static void calculateNewGyroFilterValues()
|
||||||
{
|
{
|
||||||
|
if (gyroConfigMutable()->gyro_lpf1_dyn_min_hz) {
|
||||||
gyroConfigMutable()->gyro_lpf1_dyn_min_hz = constrain(GYRO_LPF1_DYN_MIN_HZ_DEFAULT * gyroConfig()->simplified_gyro_filter_multiplier / 100, 0, DYN_LPF_MAX_HZ);
|
gyroConfigMutable()->gyro_lpf1_dyn_min_hz = constrain(GYRO_LPF1_DYN_MIN_HZ_DEFAULT * gyroConfig()->simplified_gyro_filter_multiplier / 100, 0, DYN_LPF_MAX_HZ);
|
||||||
gyroConfigMutable()->gyro_lpf1_dyn_max_hz = constrain(GYRO_LPF1_DYN_MAX_HZ_DEFAULT * gyroConfig()->simplified_gyro_filter_multiplier / 100, 0, DYN_LPF_MAX_HZ);
|
gyroConfigMutable()->gyro_lpf1_dyn_max_hz = constrain(GYRO_LPF1_DYN_MAX_HZ_DEFAULT * gyroConfig()->simplified_gyro_filter_multiplier / 100, 0, DYN_LPF_MAX_HZ);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (gyroConfigMutable()->gyro_lpf1_static_hz) {
|
||||||
gyroConfigMutable()->gyro_lpf1_static_hz = constrain(GYRO_LPF1_DYN_MIN_HZ_DEFAULT * gyroConfig()->simplified_gyro_filter_multiplier / 100, 0, DYN_LPF_MAX_HZ);
|
gyroConfigMutable()->gyro_lpf1_static_hz = constrain(GYRO_LPF1_DYN_MIN_HZ_DEFAULT * gyroConfig()->simplified_gyro_filter_multiplier / 100, 0, DYN_LPF_MAX_HZ);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (gyroConfigMutable()->gyro_lpf2_static_hz) {
|
||||||
gyroConfigMutable()->gyro_lpf2_static_hz = constrain(GYRO_LPF2_HZ_DEFAULT * gyroConfig()->simplified_gyro_filter_multiplier / 100, 0, LPF_MAX_HZ);
|
gyroConfigMutable()->gyro_lpf2_static_hz = constrain(GYRO_LPF2_HZ_DEFAULT * gyroConfig()->simplified_gyro_filter_multiplier / 100, 0, LPF_MAX_HZ);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!gyroConfigMutable()->gyro_lpf1_type) {
|
||||||
gyroConfigMutable()->gyro_lpf1_type = FILTER_PT1;
|
gyroConfigMutable()->gyro_lpf1_type = FILTER_PT1;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!gyroConfigMutable()->gyro_lpf2_type) {
|
||||||
gyroConfigMutable()->gyro_lpf2_type = FILTER_PT1;
|
gyroConfigMutable()->gyro_lpf2_type = FILTER_PT1;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void applySimplifiedTuning(pidProfile_t *pidProfile)
|
void applySimplifiedTuning(pidProfile_t *pidProfile)
|
||||||
|
|
Loading…
Reference in New Issue