Datalogging: Unterschied zwischen den Versionen

Aus Motorkontrolle.de
Zur Navigation springen Zur Suche springen
(Die Seite wurde neu angelegt: „== Datalogging und MSTweak3000 == Das Datalogging ermöglicht ihnen die Echtzeit-Variablen der MegaSquirt fortlaufend aufzuzeichnen. Sobald sie das Dataloggin…“)
 
Zeile 10: Zeile 10:
  
 
Stattdessen könne sie jedoch auch MSTweak3000 anwenden, welches ihre Datlogs aussortiert und vorschlägt, welche VE-Werte geändert werden sollten. Jeder (der nen Motor am Laufen hat und das Datalogging verwendet) sollte einmal MSTweak3000 getestet haben – es ist sehr leistungsfähig und benutzerfreundlich. Es ermöglicht es ihnen, ihre Datalogs zu lesen, bereinigt die Werte von Ausreißern und erstellt dann eine neue VE-Tabelle. Sie können damit neue Werte für die Zeilen oder Spalten der Tabelle vergeben (speziell für die Drehzahlen bei Spitzen oder Tälern in dem gefilterten Datalog) und die Tabelle dann erneut berechnen lassen; alles mit einem Klick. Nie mehr endloses Starren auf Excel-Tabellen auf der Suche nach Informationen um ihre VE-Tabelle zu optimieren.
 
Stattdessen könne sie jedoch auch MSTweak3000 anwenden, welches ihre Datlogs aussortiert und vorschlägt, welche VE-Werte geändert werden sollten. Jeder (der nen Motor am Laufen hat und das Datalogging verwendet) sollte einmal MSTweak3000 getestet haben – es ist sehr leistungsfähig und benutzerfreundlich. Es ermöglicht es ihnen, ihre Datalogs zu lesen, bereinigt die Werte von Ausreißern und erstellt dann eine neue VE-Tabelle. Sie können damit neue Werte für die Zeilen oder Spalten der Tabelle vergeben (speziell für die Drehzahlen bei Spitzen oder Tälern in dem gefilterten Datalog) und die Tabelle dann erneut berechnen lassen; alles mit einem Klick. Nie mehr endloses Starren auf Excel-Tabellen auf der Suche nach Informationen um ihre VE-Tabelle zu optimieren.
 +
 +
[[Datei:MSTweakProbleme.png]]
 +
 +
MSTweak sucht nach Punkten im Datalog, wo die EGO-Spannung die von ihnen gewählten Grenzwerte überschreitet (eine Schmalband-Lambdasonde gibt ca. 0,45 Volt bei einem stöchiometrischen Gemisch aus, eine Breitband-Lambdasonde liegt da bei 2,5 Volt). Wenn sie im „Closed Loop“ arbeiten, werden automatisch eine Menge solcher Überscheitungen generiert. Deshalb:
 +
 +
* Wenn sie MSTweak verwenden, gehen sie sicher, dass die EGO Correction der MegaSquirt aktiviert ist. Stellen sie den EGO-Schaltpunkt („switch point“) sowohl in MegaTune als auch in MSTweak auf denselben Wert (0,45 oder 2,5 Volt, je nach Sonden-Typ). Setzten sie den Grenzwert über welcher Drehzahl EGO aktiv ist („Active Above RPM“) auf einen niedrigen Wert herab, sagen wir mal 1.500 U/min. Kontrollieren sie auch, ob nicht irgendein anderer EGO-Parameter („coolant temperature activation“, EGO RPM limit usw.) die Funktion des EGO-Feedbacks verhindert.
 +
* Stellen sie den Parameter „max ego correction“ auf eine relativ hohe Prozentzahl (sagen wir >50%), damit genug Spielraum da ist um den Schaltpunkt der Sonde zu erreichen (mehr darüber weiter unten).
 +
 +
Beobachten sie mal, wenn sie gerade das Cruisen mitloggen, die EGO-Spannung und sie werden bemerken, wie diese um den Schaltpunkt herum auf- und abspringt. Wenn das der Fall ist, loggen sie genau die Übergangs mit, die MSTweak benötigt.
 +
 +
Übergänge sind die Punkte an denen die aktuelle EGO-Spannung den in MegaTune eingestellten Schaltpunkt passiert. Als Beispiel gehen wir von einer Schmalband-Sonde aus, der Schaltpunkt wurde bei 0,45 Volt gesetzt: Wandert nun die Spannung von 0,4 nach 0,6 Volt, haben sie dort einen Übergangs-Punkt („cross-over point“). Geht die Spannung dann wieder zurück auf 0,425 Volt, haben sie erneut einen Cross-Over-Point.
 +
 +
MSTweak benutzt eben diese Cross-Over-Points als Indikator dafür, dass man sehr nah an dem erwünschten AFR dran ist. Also umso mehr Cross-Over-Points auftauchen, desto sicherer kann sich MSTweak sein, dass das richtige Gemisch eingestellt ist.
 +
 +
Wir benutzen das EGO-Feedback um solche Cross-Over-Points zu erzeugen. Denn das EGO-Feedback macht nichts anderes, als die Spannung wieder nach unten zu bringen, wenn der Schaltpunkt überschritten wurde, und zwar indem die Kraftstoffmenge verringert wird. Im Umkehrschluss wird versucht die Spannung anzuheben, wenn der Schaltpunkt unterschritten wurde. Das EGO-Feedback macht eigentlich nichts anderes, als Cross-Over-Points zu erzeugen.
 +
 +
Der Parameter „ignition events per step“ bietet die Möglichkeit das Ansprechen von EGO zu verlangsamen und zu „beruhigen“, also um zu verhindern das zu schnell reagiert wird. Das kann sonst zu einem Schwingvorgang führen. Der Parameter „step size“ soll eigentlich dasselbe bewirken. Größere Schritte führen zu einer kürzeren Reaktionszeit, allerdings können größere Schritte auch dazu führen, dass das erwünschte Gemisch sich nicht genau einstellen lässt.
 +
 +
Anhand der in der Datei aufgezeichneten Übergangs-Punkte der Lambdasonde ermittelt MSTweak3000, welcher VE-Wert ein AFR von 14,7 erzielt. MSTweak3000 erstellt ihnen eine überarbeitete VE-Tabelle, welche dann die passenden VE-Werte enthält um ein AFR von 14,7 : 1 zu erreichen. Wenn sie natürlich ein anderes AFR erhalten wollen, können sie das abschätzen, indem sie die überarbeitete Tabelle hernehmen und diese dann mit dem Verhältnis (stöchiometrisches AFR / erwünschtes AFR) multiplizieren. Beispiel: MSTweak3000 gibt ihnen einen Wert von 50% für die VE-Tabelle vor, sie wollen jedoch ein Verhältnis von 12,5 : 1 erhalten, dann rechnen sie 50 x (14,7 / 12,5) = 59% – diese Ergebnis pflegen sie in ihre Tabelle ein. Sollten sie noch mehr Informationen darüber benötigen, widmen sie sich bitte der MSTweak3000-Software selbst und zugehöriger „help file“. Es sei an dieser Stelle angemerkt, dass die aktuellsten Versionen von MSTweak das Einstellen von AFR-Zielen („targets“) für jede einzelne MAP-Zeile zulässt. Für mehr Einzelheiten, lesen sie bitte das MSTweak3000 Manual.
 +
 +
Wenn alles wie in oben genanntem Beispiel funktionieren soll, müssen alle Parameter konstant sein. Das umfasst auch den „injector offset“, die „injector battery voltage correction“, Req_Fuel für die Durchflussrate der Einspritzdüsen und die „air temperature correction“. Bei der Auflösung mit der wir arbeiten wird man zwar annähernd herankommen, aber bedenken sie, dass eine Schmalbandsonde nur ein AFR von 14,7 : 1 bewerkstelligen kann; jedes andere Verhältnis lässt sich basierend darauf nur abschätzen. Wenn sie jedoch eine Breitbandsonde im Einsatz haben, können sie das aktuelle AFR direkt an der Ausgangsspannung ablesen und diese Ergebnisse direkt in ihrer VE-Tabelle umsetzen.
 +
 +
MSTweak3000 stimmt ihre MegaSquirt nicht für sie ab, aber es schlägt neue VE-Werte für ihre Tabelle vor. Es ist ein Werkzeug um ihre VE-Tabelle zu visualisieren, bessere VE-Werte zu finden und die MAP-Zeilen und RPM-Spalten für ihren Motor optimaler zu platzieren. Behalten sie aber im Hinterkopf, dass sie auf eine gute Lambdasonde angewiesen sind (Breitbandsonden sind hierfür optimal).
 +
Zu Beginn setzen sie das „O2 +/- limit“ auf 100% um erst mal eine sehr grobe Tabelle zu erhalten. Wenn ihre Tabelle dann mehr oder weniger abgestimmt ist, sollten 50 – 70% auch schon funktionieren (behalten sie diese hohe Einstellung jedoch während des Abstimmens bei).
 +
 +
Die kritischen Parameter sind der „O2 step%“ und die „ignition events per step“.
 +
 +
* Wenn sie Bereiche im unteren Drehzahlbereich abstimmen wollen (1.000 – 3.000 U/min), dann stellen sie den EGO step (%) auf 1 und ignition events per step auf 32 (2.000 U/min bei einem V6-Motor ergeben 100 Zündimpulse pro Sekunde = etwa 3% Abänderung pro Sekunde).
 +
* Wenn sie sich dann dem höheren Drehzahlbereich und einer sehr groben Tabelle widmen: EGO step (%) = 3 und ignition events per step = 64 (ergibt ca. 3,5% Änderung bei einer Drehzahl von 4.500 U/min).
 +
* Wenn dann die Tabelle bereits einigermaßen optimiert ist stellen sie: EGO step (%) auf 1 und ignition events per step auf 72. Das gibt dem closed loop Regler etwas mehr Stabilität und erlaubt ein besseres Feintuning im hohen Drehzahlbereich.
 +
 +
Fürs Feintuning belassen sie die O2 adjustments per second auf 3 bis 5 stehen. Für eine grobe Bereinigung der VE-Tabelle stellen sie diese aber auf 5 bis 10 pro Sekunde (was aber auch vom Zustand der Sonde abhängt; bei einer alten Sonde sollten sie tiefere Werte wählen).
 +
 +
Wenn die Tabelle dann optimiert ist, stellen sie folgendes ein:
 +
 +
* EGO+- limit (%) = 5% (es kann auch höher gestellt werden, je nachdem wie fragwürdig die Werte der Tabelle sind
 +
* EGO step (%) = 1
 +
* Ignition events stellen sie auf einen Wert, der bei einer Cruising-Geschwindigkeit pro Sekunde etwa 4 Schritte zulässt.
 +
 +
Die O2 adjustments per second lassen sich folgendermaßen berechnen:
 +
 +
'''O2 adjustments per second=[(Drehzahl/120)xZylinderzahl]/ignition events per step'''
 +
 +
Der Datalog enthält ein Feld namens “EngineBit”. An dessen Werten lässt sich ablesen, ob gerade beschleunigt wurde, ob der Motor im warm-up war usw. Zu wissen ob zu einem bestimmten Zeitpunkt die accel-enrichment, die warm-up-enrichment o.ä. aktiv war, kann bei einer Fehlersuche extrem hilfreich sein.
 +
 +
Das EngineBit setzt sich aus 6 Bits zusammen. Die Stelle (bzw. Bit) ganz rechts signalisiert ob der Motor läuft oder nicht. Steht hier eine 1 (000001) läuft der Motor, steht da eine 0 (000000) ist der Motor aus. Die Stelle links daneben (2. von rechts) steht fürs Anlassen („cranking“); 000010 = cranking. So sehen die Felder im Einzelnen aus:

Version vom 20. April 2013, 11:02 Uhr

Datalogging und MSTweak3000

Das Datalogging ermöglicht ihnen die Echtzeit-Variablen der MegaSquirt fortlaufend aufzuzeichnen. Sobald sie das Datalogging durch Anklicken des Punktes Datalog aktivieren, fragt MegaTune den MegaSquirt-Controller auf alle aktiven Inhalte der Titelseite, dem Runtime Display oder der Tuning Seite ab und legt diese Daten in einen Datei ab. Die Datei hat ein „komma-getrenntes“ Format und alle Standards um dem „.xls“-Format gerecht zu werden; diese Datei(en) werden automatisch in Microsoft Excel geöffnet. Diese Datalogs können als Input für die MSTweak3000-Software verwendet werden, welche diese heranzieht um ihre VE-Tabelle zu korrigieren. Für mehr Informationen über MSTweak3000 lesen sie bitte gleichnamiges Kapitel auf [www.msefi.com].

Wenn das Datalogging aktiviert ist enthält die zweite Status-Box fettgedruckt den Hinweis „LOGGING“. Die Anzeige ganz rechts zeigt entweder den Text „CONNECTED“ ausgegraut; was bedeutet das MegaTune aktuell nicht mit der MS kommuniziert, „CONNECTED“ in schwarz; was dann heißt das eine stabile Kommunikation stattfindet, oder „RESET n“ in schwarz; was wiederrum bedeutet das der Controller wegen einem Fehler neu gebootet wurde und zwar „n“-mal seitdem MegaTune ein Verbindung zur MS aufgebaut hat.

Anmerkung: Die Logging-Funktion im Menü „Communications“ hat eine andere Funktion und muss für das oben genannte Aufzeichnen von Echtzeit-Daten nicht aktiviert sein. Um mehr über die „Comm Logging“-Funktion zu erfahren, lesen sie bitte das Hilfe-Menü von MegaTune. Wenn ihr Fahrzeug schon so weit ist, dass man damit fahren kann, verwenden sie das Datalogging um die Daten während der Fahrt aufzuzeichnen. Suchen sie in dem Datalog nach MAP-RPM-Kombinationen, welche nah an einem Schnittpunkt ihrer VE-Tabelle liegen, wenn die Lambdasonde deutlich weniger als 0,5 Volt (sagen wir mal 0,014 V) ausgibt. Erhöhen sie die VE-Werte an diesen Stellen um 10%. Wenn die Lambdasonde deutlich mehr als 0,5 Volt ausgibt (sagen wir 0,825 V), dann verkleinern sie die Werte um 10%. Ein paarmal um den Block fahren sollte schon ausreichen um das ganze ganz gut zum Laufen zu bekommen.

Stattdessen könne sie jedoch auch MSTweak3000 anwenden, welches ihre Datlogs aussortiert und vorschlägt, welche VE-Werte geändert werden sollten. Jeder (der nen Motor am Laufen hat und das Datalogging verwendet) sollte einmal MSTweak3000 getestet haben – es ist sehr leistungsfähig und benutzerfreundlich. Es ermöglicht es ihnen, ihre Datalogs zu lesen, bereinigt die Werte von Ausreißern und erstellt dann eine neue VE-Tabelle. Sie können damit neue Werte für die Zeilen oder Spalten der Tabelle vergeben (speziell für die Drehzahlen bei Spitzen oder Tälern in dem gefilterten Datalog) und die Tabelle dann erneut berechnen lassen; alles mit einem Klick. Nie mehr endloses Starren auf Excel-Tabellen auf der Suche nach Informationen um ihre VE-Tabelle zu optimieren.

MSTweakProbleme.png

MSTweak sucht nach Punkten im Datalog, wo die EGO-Spannung die von ihnen gewählten Grenzwerte überschreitet (eine Schmalband-Lambdasonde gibt ca. 0,45 Volt bei einem stöchiometrischen Gemisch aus, eine Breitband-Lambdasonde liegt da bei 2,5 Volt). Wenn sie im „Closed Loop“ arbeiten, werden automatisch eine Menge solcher Überscheitungen generiert. Deshalb:

  • Wenn sie MSTweak verwenden, gehen sie sicher, dass die EGO Correction der MegaSquirt aktiviert ist. Stellen sie den EGO-Schaltpunkt („switch point“) sowohl in MegaTune als auch in MSTweak auf denselben Wert (0,45 oder 2,5 Volt, je nach Sonden-Typ). Setzten sie den Grenzwert über welcher Drehzahl EGO aktiv ist („Active Above RPM“) auf einen niedrigen Wert herab, sagen wir mal 1.500 U/min. Kontrollieren sie auch, ob nicht irgendein anderer EGO-Parameter („coolant temperature activation“, EGO RPM limit usw.) die Funktion des EGO-Feedbacks verhindert.
  • Stellen sie den Parameter „max ego correction“ auf eine relativ hohe Prozentzahl (sagen wir >50%), damit genug Spielraum da ist um den Schaltpunkt der Sonde zu erreichen (mehr darüber weiter unten).

Beobachten sie mal, wenn sie gerade das Cruisen mitloggen, die EGO-Spannung und sie werden bemerken, wie diese um den Schaltpunkt herum auf- und abspringt. Wenn das der Fall ist, loggen sie genau die Übergangs mit, die MSTweak benötigt.

Übergänge sind die Punkte an denen die aktuelle EGO-Spannung den in MegaTune eingestellten Schaltpunkt passiert. Als Beispiel gehen wir von einer Schmalband-Sonde aus, der Schaltpunkt wurde bei 0,45 Volt gesetzt: Wandert nun die Spannung von 0,4 nach 0,6 Volt, haben sie dort einen Übergangs-Punkt („cross-over point“). Geht die Spannung dann wieder zurück auf 0,425 Volt, haben sie erneut einen Cross-Over-Point.

MSTweak benutzt eben diese Cross-Over-Points als Indikator dafür, dass man sehr nah an dem erwünschten AFR dran ist. Also umso mehr Cross-Over-Points auftauchen, desto sicherer kann sich MSTweak sein, dass das richtige Gemisch eingestellt ist.

Wir benutzen das EGO-Feedback um solche Cross-Over-Points zu erzeugen. Denn das EGO-Feedback macht nichts anderes, als die Spannung wieder nach unten zu bringen, wenn der Schaltpunkt überschritten wurde, und zwar indem die Kraftstoffmenge verringert wird. Im Umkehrschluss wird versucht die Spannung anzuheben, wenn der Schaltpunkt unterschritten wurde. Das EGO-Feedback macht eigentlich nichts anderes, als Cross-Over-Points zu erzeugen.

Der Parameter „ignition events per step“ bietet die Möglichkeit das Ansprechen von EGO zu verlangsamen und zu „beruhigen“, also um zu verhindern das zu schnell reagiert wird. Das kann sonst zu einem Schwingvorgang führen. Der Parameter „step size“ soll eigentlich dasselbe bewirken. Größere Schritte führen zu einer kürzeren Reaktionszeit, allerdings können größere Schritte auch dazu führen, dass das erwünschte Gemisch sich nicht genau einstellen lässt.

Anhand der in der Datei aufgezeichneten Übergangs-Punkte der Lambdasonde ermittelt MSTweak3000, welcher VE-Wert ein AFR von 14,7 erzielt. MSTweak3000 erstellt ihnen eine überarbeitete VE-Tabelle, welche dann die passenden VE-Werte enthält um ein AFR von 14,7 : 1 zu erreichen. Wenn sie natürlich ein anderes AFR erhalten wollen, können sie das abschätzen, indem sie die überarbeitete Tabelle hernehmen und diese dann mit dem Verhältnis (stöchiometrisches AFR / erwünschtes AFR) multiplizieren. Beispiel: MSTweak3000 gibt ihnen einen Wert von 50% für die VE-Tabelle vor, sie wollen jedoch ein Verhältnis von 12,5 : 1 erhalten, dann rechnen sie 50 x (14,7 / 12,5) = 59% – diese Ergebnis pflegen sie in ihre Tabelle ein. Sollten sie noch mehr Informationen darüber benötigen, widmen sie sich bitte der MSTweak3000-Software selbst und zugehöriger „help file“. Es sei an dieser Stelle angemerkt, dass die aktuellsten Versionen von MSTweak das Einstellen von AFR-Zielen („targets“) für jede einzelne MAP-Zeile zulässt. Für mehr Einzelheiten, lesen sie bitte das MSTweak3000 Manual.

Wenn alles wie in oben genanntem Beispiel funktionieren soll, müssen alle Parameter konstant sein. Das umfasst auch den „injector offset“, die „injector battery voltage correction“, Req_Fuel für die Durchflussrate der Einspritzdüsen und die „air temperature correction“. Bei der Auflösung mit der wir arbeiten wird man zwar annähernd herankommen, aber bedenken sie, dass eine Schmalbandsonde nur ein AFR von 14,7 : 1 bewerkstelligen kann; jedes andere Verhältnis lässt sich basierend darauf nur abschätzen. Wenn sie jedoch eine Breitbandsonde im Einsatz haben, können sie das aktuelle AFR direkt an der Ausgangsspannung ablesen und diese Ergebnisse direkt in ihrer VE-Tabelle umsetzen.

MSTweak3000 stimmt ihre MegaSquirt nicht für sie ab, aber es schlägt neue VE-Werte für ihre Tabelle vor. Es ist ein Werkzeug um ihre VE-Tabelle zu visualisieren, bessere VE-Werte zu finden und die MAP-Zeilen und RPM-Spalten für ihren Motor optimaler zu platzieren. Behalten sie aber im Hinterkopf, dass sie auf eine gute Lambdasonde angewiesen sind (Breitbandsonden sind hierfür optimal). Zu Beginn setzen sie das „O2 +/- limit“ auf 100% um erst mal eine sehr grobe Tabelle zu erhalten. Wenn ihre Tabelle dann mehr oder weniger abgestimmt ist, sollten 50 – 70% auch schon funktionieren (behalten sie diese hohe Einstellung jedoch während des Abstimmens bei).

Die kritischen Parameter sind der „O2 step%“ und die „ignition events per step“.

  • Wenn sie Bereiche im unteren Drehzahlbereich abstimmen wollen (1.000 – 3.000 U/min), dann stellen sie den EGO step (%) auf 1 und ignition events per step auf 32 (2.000 U/min bei einem V6-Motor ergeben 100 Zündimpulse pro Sekunde = etwa 3% Abänderung pro Sekunde).
  • Wenn sie sich dann dem höheren Drehzahlbereich und einer sehr groben Tabelle widmen: EGO step (%) = 3 und ignition events per step = 64 (ergibt ca. 3,5% Änderung bei einer Drehzahl von 4.500 U/min).
  • Wenn dann die Tabelle bereits einigermaßen optimiert ist stellen sie: EGO step (%) auf 1 und ignition events per step auf 72. Das gibt dem closed loop Regler etwas mehr Stabilität und erlaubt ein besseres Feintuning im hohen Drehzahlbereich.

Fürs Feintuning belassen sie die O2 adjustments per second auf 3 bis 5 stehen. Für eine grobe Bereinigung der VE-Tabelle stellen sie diese aber auf 5 bis 10 pro Sekunde (was aber auch vom Zustand der Sonde abhängt; bei einer alten Sonde sollten sie tiefere Werte wählen).

Wenn die Tabelle dann optimiert ist, stellen sie folgendes ein:

  • EGO+- limit (%) = 5% (es kann auch höher gestellt werden, je nachdem wie fragwürdig die Werte der Tabelle sind
  • EGO step (%) = 1
  • Ignition events stellen sie auf einen Wert, der bei einer Cruising-Geschwindigkeit pro Sekunde etwa 4 Schritte zulässt.

Die O2 adjustments per second lassen sich folgendermaßen berechnen:

O2 adjustments per second=[(Drehzahl/120)xZylinderzahl]/ignition events per step

Der Datalog enthält ein Feld namens “EngineBit”. An dessen Werten lässt sich ablesen, ob gerade beschleunigt wurde, ob der Motor im warm-up war usw. Zu wissen ob zu einem bestimmten Zeitpunkt die accel-enrichment, die warm-up-enrichment o.ä. aktiv war, kann bei einer Fehlersuche extrem hilfreich sein.

Das EngineBit setzt sich aus 6 Bits zusammen. Die Stelle (bzw. Bit) ganz rechts signalisiert ob der Motor läuft oder nicht. Steht hier eine 1 (000001) läuft der Motor, steht da eine 0 (000000) ist der Motor aus. Die Stelle links daneben (2. von rechts) steht fürs Anlassen („cranking“); 000010 = cranking. So sehen die Felder im Einzelnen aus: