remove idle offset (#4355)

* remove offset

* remove more completely

* changelog
This commit is contained in:
Matthew Kennedy 2022-07-18 12:49:43 -07:00 committed by GitHub
parent 64a9f84872
commit 1fd637d27e
9 changed files with 4 additions and 14 deletions

View File

@ -36,6 +36,7 @@ Release template (copy/paste this for new release):
### Removed
- ICU trigger input logic since it is unused in any current ECU #639
- Idle PID "offset" field, as this role is filled more effectively by the various open loop parameters.
## July 2022 Release - "Day 130"

View File

@ -358,7 +358,6 @@ void setMiataNA6_MAP_MRE() {
engineConfiguration->idle_derivativeFilterLoss = 0.1;
engineConfiguration->idle_antiwindupFreq = 0.1;
engineConfiguration->idleRpmPid.dFactor = 0.002;
engineConfiguration->idleRpmPid.offset = 0;
engineConfiguration->acIdleExtraOffset = 14;
engineConfiguration->idleRpmPid.minValue = -7;
engineConfiguration->idleRpmPid.maxValue = 35;

View File

@ -30,7 +30,6 @@ static void commonNA8() {
engineConfiguration->idle_derivativeFilterLoss = 0.08;
engineConfiguration->idle_antiwindupFreq = 0.03;
engineConfiguration->idleRpmPid.dFactor = 0.002;
engineConfiguration->idleRpmPid.offset = 9;
engineConfiguration->idleRpmPid.minValue = 76;
engineConfiguration->idlerpmpid_iTermMin = -15;
engineConfiguration->idlerpmpid_iTermMax = 30;

View File

@ -343,7 +343,6 @@ static void setCommonMazdaNB() {
engineConfiguration->idle_derivativeFilterLoss = 0.08;
engineConfiguration->idle_antiwindupFreq = 0.03;
engineConfiguration->idleRpmPid.dFactor = 0.002;
engineConfiguration->idleRpmPid.offset = 9;
engineConfiguration->idleRpmPid.minValue = -8;
engineConfiguration->idleRpmPid.minValue = 76;
engineConfiguration->idlerpmpid_iTermMin = -15;

View File

@ -105,7 +105,6 @@ void setManualIdleValvePosition(int positionPercent);
void startIdleThread();
void setDefaultIdleParameters();
void startIdleBench(void);
void setIdleOffset(float value);
void setIdlePFactor(float value);
void setIdleIFactor(float value);
void setIdleDFactor(float value);

View File

@ -139,11 +139,6 @@ void setTargetIdleRpm(int value) {
showIdleInfo();
}
void setIdleOffset(float value) {
engineConfiguration->idleRpmPid.offset = value;
showIdleInfo();
}
void setIdlePFactor(float value) {
engineConfiguration->idleRpmPid.pFactor = value;
applyPidSettings();
@ -213,6 +208,9 @@ static void blipIdle(int idlePosition, int durationMs) {
}
void startIdleThread() {
// Force the idle controller to use 0 offset, as this is handled by the open loop table instead.
engineConfiguration->idleRpmPid.offset = 0;
engine->module<IdleController>().unmock().init();
#if ! EFI_UNIT_TEST

View File

@ -979,7 +979,6 @@ const command_f_s commandsF[] = {
{"script_curve_2_value", setScriptCurve2Value},
#if EFI_PROD_CODE
#if EFI_IDLE_CONTROL
{"idle_offset", setIdleOffset},
{"idle_p", setIdlePFactor},
{"idle_i", setIdleIFactor},
{"idle_d", setIdleDFactor},

View File

@ -89,7 +89,6 @@ enable2ndByteCanID = false
; this section will be generated automatically by ConfigDefinition.jar based on rusefi_config.txt
; CONFIG_DEFINITION_END
idleRpmPid_offset = "Constant base value"
[Tuning]
spotDepth = 2 ; 0 = no indicators, 1 = Z only, 2 = XYZ indicators.
@ -2839,7 +2838,6 @@ cmd_set_engine_type_default = "@@TS_IO_TEST_COMMAND_char@@\x00\x31\x00\x00"
field = "derivativeFilterLoss", idle_derivativeFilterLoss
field = "antiwindupFreq", idle_antiwindupFreq
field = "D-factor", idleRpmPid_dFactor
field = "Offset", idleRpmPid_offset
field = "Min", idleRpmPid_minValue
field = "Max", idleRpmPid_maxValue
field = "iTerm Min", idlerpmpid_iTermMin

View File

@ -304,7 +304,6 @@ TEST(idle_v2, closedLoopBasic) {
engineConfiguration->idleRpmPid.pFactor = 0.5; // 0.5 output per 1 RPM error = 50% per 100 rpm
engineConfiguration->idleRpmPid.iFactor = 0;
engineConfiguration->idleRpmPid.dFactor = 0;
engineConfiguration->idleRpmPid.offset = 0;
engineConfiguration->idleRpmPid.iFactor = 0;
engineConfiguration->idleRpmPid.periodMs = 0;
engineConfiguration->idleRpmPid.minValue = -50;
@ -333,7 +332,6 @@ TEST(idle_v2, closedLoopDeadzone) {
engineConfiguration->idleRpmPid.pFactor = 0.5; // 0.5 output per 1 RPM error = 50% per 100 rpm
engineConfiguration->idleRpmPid.iFactor = 0;
engineConfiguration->idleRpmPid.dFactor = 0;
engineConfiguration->idleRpmPid.offset = 0;
engineConfiguration->idleRpmPid.iFactor = 0;
engineConfiguration->idleRpmPid.periodMs = 0;
engineConfiguration->idleRpmPid.minValue = -50;