DeepOBD Konfiguration für M57TÜ mit automatischer Leerlaufanpassung
Ziel: Verbesserung des Motorlaufs in der Warmlaufphase, insbesondere mit aktivem el. Zuheizer
## Funktionsweise
Der M57TÜ mit DDE5 hat - wie schon der Vorgänger M57 mit DDE4 im E46 - einen elektrischen Zuheizer, um
das Kühlmittel schneller auf Temperatur zu bringen bzw. wesentlich früher die Beheizung des Innenraums zu ermöglichen.
Der Zuheizer wird vom DDE Motorsteuergerät angesteuert, wenn eine Heizleistungsanforderung vorliegt.
Die Heizleistungsanforderung erhält die DDE von der IHKA (Klimaautomatik) bzw. Heiz/Klima-Bedienteil, abhängig von
Parametern die hier nicht relevant sind (Zieltemperatur, Außentemperatur, Gebläsestufe). Ist z.B. das Gebläse auf Stufe 0 gestellt
erfolgt diese Anforderung NICHT.
Da der elektrische Zuheizer ein sehr starker Verbraucher ist wird dieser entsprechend der elektrischen Leistungsreserven gesteuert.
Die DDE erhält von der Lichtmaschine über eine bitserielle Schnittstelle die aktuelle Generatorlast (in %) und regelt danach die
Leistung des Zuheizers über PWM (5 - 95 % Pulsweite).
Der Zuheizer wird abgeschaltet bei:
- Anfahren
- Bordspannung < 12.0V (Wiedereinschaltung > 12.8V)
- Drehzahl < 780 u/min (Wiedereinschaltung > 790 u/min)
- bis 10s nach dem Motorstart
- Überschreitung bestimmter Kühlmitteltemperatur in Abhängigkeit von der Ansauglufttemperatur (Kennfeld):
86 °C (< -5°C Ansaugluft)
50 °C (< 10°C Ansaugluft)
17 °C (< 20°C Ansaugluft)
Außerdem kein Zuheizbetrieb bei folgenden Fehlerspeichereinträgen:
- Kühlmitteltemperaturfühler
- Ansauglufttemperaturfühler
- Generatorlastsignal (= Lastsignal <=5% oder >= 100%)
Um die Leistung der Lichtmaschine zu erhöhen und den Motorlauf zu verbessern wird während des Zuheizbetriebs die Leerlaufdrehzahl angehoben:
M57 - DDE4: auf 850 u/min (meiner Erfahrung mit diesem Modell eher auf 900 laut Drehzahlmesser)
M57TÜ - DDE5: um 50 u/min (auf 800 u/min - keine merkliche Anhebung)
## Problem
- erhebliche Leerlaufschwankungen im Warmlauf (nur bei niedrigen Außentemperaturen)
- Motor geht beim Auskuppeln während des Warmlaufs fast aus (Drehzahl sinkt schnell und stark ab)
## Lösungsversuche
### Fehlersuche
- Fehler tritt nicht auf, wenn das Heizungsgebläse auf Stufe 0 gestellt oder die Ansteuerleitung am Zuheizer abgesteckt wird
--> Verhalten wird klar durch den Zuheizer verursacht
- Beobachtung der Live-Daten für Spannung, Generatorlast, Ansteuerung Zuheizer:
1. Zuheizer wird auf Volllast angesteuert
2. Drehzahl sinkt aufgrund der Belastung, Bordspannung sinkt auf < 13V, Generatorlastsignal erreicht > 90%
3. DDE regelt Zuheizer zurück
4. Drehzahl u Bordspannung steigen an, Generatorlast sinkt -> der Kreislauf beginnt erneut
--> Ursache scheint die beim M57TÜ sehr niedrig gewählte Anhebung der Leerlaufdrehzahl, beim vorigen Auto 330d M57 aus 2001 (DDE4) hatte ich dieses Problem nie
-
- Lichtmaschine in Ordnung, kein Fehler ersichtlich
- Zuheizer soweit messbar in Ordnung (Messung mit Zangenamperemeter ergibt >120A bei manueller Ansteuerung über Diagnose)
- Motorlauf nach Warmlauf sehr gut, keine Drehzahlschwankungen, keine Leistungslöcher, Rundlaufkorrekturwerte der einzelnen Injektoren in Ordnung (innerhalb +/- 1)
### Lösungsversuch durch permanente Anhebung der Leerlaufdrehzahl
- Abgleich Leerlaufdrehzahl - permanente Anhebung um 50 u/min:
- Motor geht beim Auskuppeln nicht mehr fast aus
- Drehzahlschwankungen kaum besser
- Abgleich Leerlaufdrehzahl - permanente Anhebung um 70 u/min:
- Motor geht beim Auskuppeln nicht mehr fast aus
- Drehzahlschwankungen etwas besser aber weiterhin vorhanden
- Abgleich Leerlaufdrehzahl - permanente Anhebung um 100 u/min:
- Motor geht beim Auskuppeln nicht mehr fast aus
- Drehzahlschwankungen besser, aber weiterhin vorhanden
- Leerlaufdrehzahl im Normalbetrieb hoch
- Abgleich Leerlaufdrehzahl - permanente Anhebung um 150 u/min:
- Motor geht beim Auskuppeln nicht mehr fast aus
- Drehzahlschwankungen sehr viel besser
- Leerlaufdrehzahl im Normalbetrieb ZU hoch
--> permanente Anhebung um 50-70 upm ist OK, besser wäre NUR IM WARMLAUFBETRIEB Anhebung auf 900 upm und im Normalbetrieb um 50 upm (etwas besserer Leerlauf)
### Lösungsversuch durch variable Anhebung der Leerlaufdrehzahl mittels DeepOBD
Voraussetzung/Annahme: DeepOBD läuft sowieso ab Zündung AN im Hintergrund am Android Head Unit (Broadcast -> IBUS-App)
DeepOBD-Seite mit Code für folgende Funktionen:
- Auslesen aller Live-Werte, die für IBUS-App benötigt werden
- für variable Leerlaufanhebung benötigt:
- Ansteuerungssignal Zuheizer
- ##Generatorlastsignal
- Kühlmitteltemperatur
- ##Ansauglufttemperatur
Funktion:
- wenn Ansteuerung Zuheizer > 20 %:
--> Anhebung Leerlaufdrehzahl um 150 (ABGLEICH_VERSTELLEN aber NICHT ABGLEICH_PROG)
- Ansteuerung Zuheizer < 20 % für 10 Durchläufe:
--> Anhebung Leerlaufdrehzahl um 50 (ABGLEICH_VERSTELLEN aber NICHT ABGLEICH_PROG)
- Kühlmitteltemperatur > 86
Anhebung Leerlaufdrehzahl auf 0 (ABGLEICH_VERSTELLEN aber NICHT ABGLEICH_PROG)
SBGD=D50M57E1
JOB=STATUS_MESSWERTBLOCK_LESEN
args="JA;....
häufig zu aktualisierende Werte:
ILMMG STAT_LUFTMASSE_PRO_HUB_WERT mg/Hub
IPLAD STAT_LADEDRUCK_WERT hPa
IPUMG STAT_UMGEBUNGSDRUCK_WERT hPa
IUBAT STAT_UBATT_WERT V
IMOAK STAT_MOTORMOMENT_AKTUELL_WERT Nm
INMOT STAT_MOTORDREHZAHL_WERT rpm
SPLAD STAT_LADEDRUCK_SOLL_WERT hPa
IPRDR STAT_RAILDRUCK_WERT bar
IAFZG STAT_FAHRZEUGBESCHLEUNIGUNG_WERT m/s^2
IVKMH STAT_GESCHWINDIGKEIT_WERT km/h
ITZUH STAT_ZUHEIZER_ANSTEUERUNG_WERT %
IGENL STAT_GENERATORLAST_WERT %
RSKUP STAT_KUPPLUNGSSCHALTER_ROH_WERT bool
IKLIS STAT_KLIMAKOMPRESSOR_STATUS_WERT bool
IBKLI STAT_BEREITSCHAFT_KLIMA_WERT bool
ISKLI STAT_KLIMA_EIN_WERT bool
seltener aktualisierte Werte:
ITKUM STAT_KUEHLMITTELTEMPERATUR_WERT deg C
ITKRS STAT_KRAFTSTOFFTEMPERATURK_WERT deg C
ITLAL STAT_LADELUFTTEMPERATUR_WERT deg C
gar nicht auf Seite 1 benötigte Werte:
SPRDR STAT_RAILDRUCK_SOLL_WERT bar
IMEIA STAT_EINSPRITZMENGE_AKTUELL_WERT mg/cyc
ITAVO STAT_ABGASTEMPERATUR_VOR_KATALYSATOR_WERT deg C