Alternator Duty Cycle Adder for AC Fan fix #4973
This commit is contained in:
parent
2256223c55
commit
728db11c56
|
@ -68,6 +68,7 @@ Release template (copy/paste this for new release):
|
|||
- 3-cylinder Benelli trigger
|
||||
- ETB intermittent sensors protection #4832
|
||||
- ETB output average and rate of change gauges #4833
|
||||
- Alternator Duty Cycle Adder for AC Fan #4973
|
||||
|
||||
### Fixed
|
||||
- Fuel Priming reset fix #4627
|
||||
|
|
|
@ -69,6 +69,9 @@ void AlternatorController::onFastCallback() {
|
|||
alternatorControl.setSimplePwmDutyCycle(0);
|
||||
} else {
|
||||
currentAltDuty = alternatorPid.getOutput(targetVoltage, vBatt.Value, FAST_CALLBACK_PERIOD_MS / 1000.0f);
|
||||
// huh, why do we bump based on button not based on actual A/C relay state?
|
||||
int acDutyBump = engine->module<AcController>().unmock().acButtonState ? engineConfiguration->acRelayAlternatorDutyAdder : 0;
|
||||
currentAltDuty += acDutyBump;
|
||||
if (engineConfiguration->isVerboseAlternator) {
|
||||
efiPrintf("alt duty: %.2f/vbatt=%.2f/p=%.2f/i=%.2f/d=%.2f int=%.2f", currentAltDuty, vBatt.Value,
|
||||
alternatorPid.getP(), alternatorPid.getI(), alternatorPid.getD(), alternatorPid.getIntegration());
|
||||
|
|
|
@ -27,6 +27,7 @@ int IdleController::getTargetRpm(float clt) {
|
|||
targetRpmByClt = interpolate2d(clt, config->cltIdleRpmBins, config->cltIdleRpm);
|
||||
|
||||
// Bump for AC
|
||||
// huh, why do we bump based on button not based on actual A/C relay state?
|
||||
targetRpmAcBump = engine->module<AcController>().unmock().acButtonState ? engineConfiguration->acIdleRpmBump : 0;
|
||||
|
||||
return targetRpmByClt + targetRpmAcBump;
|
||||
|
|
|
@ -1550,7 +1550,7 @@ float alsMaxDuration;;"sec", 1, 0, 0.01, 100, 2
|
|||
int8_t ALSMaxCLT;;"C", 1, 0, 0, 105, 0
|
||||
uint8_t alsMinTimeBetween;;"", 1, 0, 0, 20000, 0
|
||||
uint8_t alsEtbPosition;;"", 1, 0, 0, 20000, 0
|
||||
uint8_t acFanAlternatorDutyAdder
|
||||
uint8_t acRelayAlternatorDutyAdder
|
||||
uint8_t[3] unusedAlignmentFill_at_33
|
||||
int ALSIdleAdd;;"%", 1, 0, 0, 100, 2
|
||||
int ALSEtbAdd;;"%", 1, 0, 0, 100, 2
|
||||
|
|
|
@ -3483,7 +3483,7 @@ cmd_set_engine_type_default = "@@TS_IO_TEST_COMMAND_char@@@@ts_command_e_TS_
|
|||
field = "Control outpur mode", alternatorControlPinMode, {isAlternatorControlEnabled == 1}
|
||||
field = "PWM frequency", alternatorPwmFrequency, {isAlternatorControlEnabled == 1}
|
||||
field = "Off Above TPS", alternatorOffAboveTps, {isAlternatorControlEnabled == 1}
|
||||
field = "A/C duty adder", acFanAlternatorDutyAdder, {isAlternatorControlEnabled == 1}
|
||||
field = "A/C duty adder", acRelayAlternatorDutyAdder, {isAlternatorControlEnabled == 1}
|
||||
field = "Detailed status in console", isVerboseAlternator, {isAlternatorControlEnabled == 1}
|
||||
field = "#PID control"
|
||||
field = "offset", alternatorControl_offset, {isAlternatorControlEnabled == 1}
|
||||
|
|
Loading…
Reference in New Issue