parent
365f42197f
commit
26478ec394
|
@ -83,7 +83,7 @@ public:
|
||||||
|
|
||||||
|
|
||||||
float value = engine->triggerCentral.getVVTPosition();
|
float value = engine->triggerCentral.getVVTPosition();
|
||||||
float targetValue = table->getValue(rpm, getEngineLoadT(PASS_ENGINE_PARAMETER_SIGNATURE));
|
float targetValue = table->getValue(rpm, getFuelingLoad(PASS_ENGINE_PARAMETER_SIGNATURE));
|
||||||
|
|
||||||
percent_t pwm = auxPid.getOutput(targetValue, value);
|
percent_t pwm = auxPid.getOutput(targetValue, value);
|
||||||
if (engineConfiguration->isVerboseAuxPid1) {
|
if (engineConfiguration->isVerboseAuxPid1) {
|
||||||
|
|
|
@ -338,7 +338,7 @@ static percent_t automaticIdleController(float tpsPos DECLARE_ENGINE_PARAMETER_S
|
||||||
|
|
||||||
// Apply PID Multiplier if used
|
// Apply PID Multiplier if used
|
||||||
if (CONFIG(useIacPidMultTable)) {
|
if (CONFIG(useIacPidMultTable)) {
|
||||||
float engineLoad = getEngineLoadT(PASS_ENGINE_PARAMETER_SIGNATURE);
|
float engineLoad = getFuelingLoad(PASS_ENGINE_PARAMETER_SIGNATURE);
|
||||||
float multCoef = iacPidMultMap.getValue(rpm / RPM_1_BYTE_PACKING_MULT, engineLoad);
|
float multCoef = iacPidMultMap.getValue(rpm / RPM_1_BYTE_PACKING_MULT, engineLoad);
|
||||||
// PID can be completely disabled of multCoef==0, or it just works as usual if multCoef==1
|
// PID can be completely disabled of multCoef==0, or it just works as usual if multCoef==1
|
||||||
newValue = interpolateClamped(0.0f, engine->engineState.idle.baseIdlePosition, 1.0f, newValue, multCoef);
|
newValue = interpolateClamped(0.0f, engine->engineState.idle.baseIdlePosition, 1.0f, newValue, multCoef);
|
||||||
|
|
|
@ -264,17 +264,22 @@ angle_t getInjectionOffset(float rpm DECLARE_ENGINE_PARAMETER_SUFFIX) {
|
||||||
if (cisnan(rpm)) {
|
if (cisnan(rpm)) {
|
||||||
return 0; // error already reported
|
return 0; // error already reported
|
||||||
}
|
}
|
||||||
float engineLoad = getEngineLoadT(PASS_ENGINE_PARAMETER_SIGNATURE);
|
|
||||||
|
float engineLoad = getFuelingLoad(PASS_ENGINE_PARAMETER_SIGNATURE);
|
||||||
|
|
||||||
if (cisnan(engineLoad)) {
|
if (cisnan(engineLoad)) {
|
||||||
return 0; // error already reported
|
return 0; // error already reported
|
||||||
}
|
}
|
||||||
|
|
||||||
angle_t value = fuelPhaseMap.getValue(rpm, engineLoad);
|
angle_t value = fuelPhaseMap.getValue(rpm, engineLoad);
|
||||||
|
|
||||||
if (cisnan(value)) {
|
if (cisnan(value)) {
|
||||||
// we could be here while resetting configuration for example
|
// we could be here while resetting configuration for example
|
||||||
warning(CUSTOM_ERR_6569, "phase map not ready");
|
warning(CUSTOM_ERR_6569, "phase map not ready");
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
angle_t result = value + CONFIG(extraInjectionOffset);
|
|
||||||
|
angle_t result = value + CONFIG(extraInjectionOffset);
|
||||||
fixAngle(result, "inj offset#2", CUSTOM_ERR_6553);
|
fixAngle(result, "inj offset#2", CUSTOM_ERR_6553);
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
|
@ -377,7 +377,6 @@ enable2ndByteCanID = false
|
||||||
|
|
||||||
egoCorrection = { 100 }
|
egoCorrection = { 100 }
|
||||||
time = { timeNow }
|
time = { timeNow }
|
||||||
; engineLoad = { fuleAlgorithm == 0 ? MAF : TPS }
|
|
||||||
|
|
||||||
; These "synthetic" channels provide the Y-axis (load) value for gen purp PWM table's Y axes
|
; These "synthetic" channels provide the Y-axis (load) value for gen purp PWM table's Y axes
|
||||||
gppwm1_load = {(gppwm1_loadAxis == 0) ? TPSValue : ((gppwm1_loadAxis == 1) ? MAPValue : ((gppwm1_loadAxis == 2) ? coolant : intake))}
|
gppwm1_load = {(gppwm1_loadAxis == 0) ? TPSValue : ((gppwm1_loadAxis == 1) ? MAPValue : ((gppwm1_loadAxis == 2) ? coolant : intake))}
|
||||||
|
@ -773,22 +772,22 @@ enable2ndByteCanID = false
|
||||||
|
|
||||||
table = fsioTable1Tbl, fsioTable1Map, "FSIO Table #1", 1
|
table = fsioTable1Tbl, fsioTable1Map, "FSIO Table #1", 1
|
||||||
xBins = fsioTable1RpmBins, RPMValue
|
xBins = fsioTable1RpmBins, RPMValue
|
||||||
yBins = fsioTable1LoadBins, engineLoad
|
yBins = fsioTable1LoadBins, fuelingLoad
|
||||||
zBins = fsioTable1
|
zBins = fsioTable1
|
||||||
|
|
||||||
table = fsioTable2Tbl, fsioTable2Map, "FSIO Table #2", 1
|
table = fsioTable2Tbl, fsioTable2Map, "FSIO Table #2", 1
|
||||||
xBins = fsioTable2RpmBins, RPMValue
|
xBins = fsioTable2RpmBins, RPMValue
|
||||||
yBins = fsioTable2LoadBins, engineLoad
|
yBins = fsioTable2LoadBins, fuelingLoad
|
||||||
zBins = fsioTable2
|
zBins = fsioTable2
|
||||||
|
|
||||||
table = fsioTable3Tbl, fsioTable3Map, "FSIO Table #3", 1
|
table = fsioTable3Tbl, fsioTable3Map, "FSIO Table #3", 1
|
||||||
xBins = fsioTable3RpmBins, RPMValue
|
xBins = fsioTable3RpmBins, RPMValue
|
||||||
yBins = fsioTable3LoadBins, engineLoad
|
yBins = fsioTable3LoadBins, fuelingLoad
|
||||||
zBins = fsioTable3
|
zBins = fsioTable3
|
||||||
|
|
||||||
table = fsioTable4Tbl, fsioTable4Map, "FSIO Table #4", 1
|
table = fsioTable4Tbl, fsioTable4Map, "FSIO Table #4", 1
|
||||||
xBins = fsioTable4RpmBins, RPMValue
|
xBins = fsioTable4RpmBins, RPMValue
|
||||||
yBins = fsioTable4LoadBins, engineLoad
|
yBins = fsioTable4LoadBins, fuelingLoad
|
||||||
zBins = fsioTable4
|
zBins = fsioTable4
|
||||||
|
|
||||||
table = baroCorrTbl, baroCorrMap, "Baro Correction", 1
|
table = baroCorrTbl, baroCorrMap, "Baro Correction", 1
|
||||||
|
@ -841,7 +840,7 @@ enable2ndByteCanID = false
|
||||||
#if tuneByTPS
|
#if tuneByTPS
|
||||||
yBins = ignitionTpsBins, TPSValue
|
yBins = ignitionTpsBins, TPSValue
|
||||||
#else
|
#else
|
||||||
yBins = veLoadBins, MAPValue
|
yBins = veLoadBins, fuelingLoad
|
||||||
#endif
|
#endif
|
||||||
zBins = veTable
|
zBins = veTable
|
||||||
; gridHeight = 2.0
|
; gridHeight = 2.0
|
||||||
|
@ -853,7 +852,7 @@ enable2ndByteCanID = false
|
||||||
topicHelp = "fuelHelp"
|
topicHelp = "fuelHelp"
|
||||||
; constant, variable
|
; constant, variable
|
||||||
xBins = injPhaseRpmBins, RPMValue
|
xBins = injPhaseRpmBins, RPMValue
|
||||||
yBins = injPhaseLoadBins, engineLoad
|
yBins = injPhaseLoadBins, fuelingLoad
|
||||||
zBins = injectionPhase
|
zBins = injectionPhase
|
||||||
; gridHeight = 2.0
|
; gridHeight = 2.0
|
||||||
gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees.
|
gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees.
|
||||||
|
@ -872,7 +871,7 @@ enable2ndByteCanID = false
|
||||||
table = afrTableTbl, afrTableMap, "Target AFR Table", 1
|
table = afrTableTbl, afrTableMap, "Target AFR Table", 1
|
||||||
; constant, variable
|
; constant, variable
|
||||||
xBins = afrRpmBins, RPMValue
|
xBins = afrRpmBins, RPMValue
|
||||||
yBins = afrLoadBins, MAPValue
|
yBins = afrLoadBins, fuelingLoad
|
||||||
zBins = afrTable
|
zBins = afrTable
|
||||||
; gridHeight = 2.0
|
; gridHeight = 2.0
|
||||||
gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees.
|
gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees.
|
||||||
|
@ -881,7 +880,7 @@ enable2ndByteCanID = false
|
||||||
table = iacPidMultTbl, iacPidMultMap, "IAC PID Multiplier Table", 1
|
table = iacPidMultTbl, iacPidMultMap, "IAC PID Multiplier Table", 1
|
||||||
; constant, variable
|
; constant, variable
|
||||||
xBins = iacPidMultRpmBins, RPMValue
|
xBins = iacPidMultRpmBins, RPMValue
|
||||||
yBins = iacPidMultLoadBins, engineLoad
|
yBins = iacPidMultLoadBins, fuelingLoad
|
||||||
zBins = iacPidMultTable
|
zBins = iacPidMultTable
|
||||||
; gridHeight = 2.0
|
; gridHeight = 2.0
|
||||||
gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees.
|
gridOrient = 250, 0, 340 ; Space 123 rotation of grid in degrees.
|
||||||
|
|
Loading…
Reference in New Issue