ForumOn-Board-Diagnose
  1. Startseite
  2. Forum
  3. Wissen
  4. Fahrzeugtechnik
  5. On-Board-Diagnose
  6. Dauerhafte Speicherung des Km-Stand beim Auto - wie?

Dauerhafte Speicherung des Km-Stand beim Auto - wie?

Themenstarteram 19. Dezember 2006 um 17:08

Hallo zusammen,

weiss jemand wie beim Auto mit Dig.Tacho der Km-Stand gespeichert wird?

Hardware: EE-Prom oder Flash? (Ram kanns nicht sein da ja beim Ausbau

des Tachos der Km-Stand gespeichert wird. Prom auch nicht, da sich sonst die Km-Stände nicht manipulieren liesen))

Software: Wie ist der Ablauf? Was passiert wenn der Km-Zähler um ein hochgezählt hat?

 

Hintergrund: Ich möchte mir selbst einen Km-Zähler programmieren und weiss

nun nicht wie ich die Speicherung des Km-Standes vornehmen soll ohne das EEprom zu überfordern (zb. beim Atmel-µpc nur 100.000 Schreibzyklen).

Wenn ich jeden Km im EEprom speichere ist die letzte eine Speicherstelle nach km 100.000 quasi "verschlissen".

Eine Möglichkeit wäre erst bei "Zündung aus" den Wert zu speichern.

Wie machen das die "Profis"?

Jürgen

Ähnliche Themen
12 Antworten

Wie wäre es wenn du nach sagen wir mal 1000 Speicherzyklen einen anderen Block eines Eeproms nimmst? Du hast ja jede Menge platz auf dem EEprom.

Themenstarteram 19. Dezember 2006 um 22:19

Ja, das ginge. Aber nur auf den ersten Blick:

Woher weiss ich -bei einem Neustart (zb. durch Stromausfall)- an welcher Speicherstelle im EEprom ich die Daten abgelegt habe?

 

...

Die konkrete Speicherung hängt vom spezifischen Typ ab, je nach Fahrzeugmodell und Tachometer (bzw. dessen Zulieferer). Eine pauschale Antwort ist gar nicht möglich.

Also soweit ich weiß, wird nicht bei jeder Änderung des Kilometerstandes (also nach jedem Km) der Wert neu in den EEPROM/Mikrocontroller geschrieben. Das erfolgt meines Wissens bei Zündung aus bzw. Deaktivierung der Stromversorgung. Vielleicht gibt's auch weitere Anlässe.

@Theresias: Kannst du uns ein konkretes Beispiel für eine solche "Schreibstartegie" geben ? Würde mich wirklich auch mal interessieren.

Über die Anzahl der möglichen Schreibzyklen hab ich mir ehrlich gesagt noch keine tieferen Gedanken gemacht. Hier eine kleine Auswahl an verwendeten EEPROMS/Mikrocontrollern:

93C86 (z.B. Golf 4 VDO)

24C02 (z.B. Golf 4 Motormeter)

MC68HC05H12 (z.B. Peugeot 206)

MC68HC11XX

MC68HC912D60 (z.B New Beetle)

78082X (z.B. Opel)

Kannst ja mal ein wenig vergleichen.

Wenn du einen Stromausfall hast, dann fragst du in der Software sagen wir mal 30 verschiedene Speicherbereiche ab.

Sollte dort ein Kilometerstand sein, so wird dieser automatisch genommen.

Andererseits nimmst du einfach eine SD Karte oder einen USB Stick. Diese haben einen Controller der alles übernimmt. Es wird dann in eine Datei gespeichert.

Der Controller im Stick wird automatisch andere Speicherbereiche nehmen, wenn welche zu oft gebraucht werden, hat die C´t rausgefunden.

Andere Möglichkeit ist, dass du im RAM den Kilometerstand speicherst, den du fährst und sobald eine Stromunterbrechung da sein sollte wird der Wert gespeichert. (z.b. Zündung aus), wenn du noch mehr Sicherung brauchst gegen Batterie abziehen, dann haste noch eine Pufferbatterie die dazu reicht, das ganze schnell im EEprom zu speichern.

Es gab zum Beispiel im Golf 2 mit Digifiz eine Lösung dort wurden Schritt für Schritt einfach die "Punkte" dauerhaft weggebrannt, somit war eine Rückstellung nicht möglich ohne das Bauteil auszutauschen.

Alles in allem denke ich aber das dies nicht wirklich der optimale Ort ist um über sowas zu diskutieren...

Themenstarteram 20. Dezember 2006 um 16:47

Werde das mal im Frühjahr ausprobieren - wenn ich wieder ne Digitalen Tacho fahre.

Also KM notieren, ein Stück fahren und dann die Batterie abklemmen. Anschließend die Batterie wieder dran machen und schauen was/ob sich am KM-Stand etwas getan hat.

Dann dasselbe Spiel nochmal und statt der Batterie den Schalttafeleinsatz direkt ab und an stecken.

Werde dann meine Erkenntnisse hier berichten.

...

Wie willst du ohne Batterie fahren?! :)

Nein. Er will ein Stück fahren, den Wagen abschalten und dann die Batterie einfach abklemmen. In der Hoffnung rauszufinden wie das ganze gespeichert wird.

Also er fährt 1,5 Kilometer macht Motor aus und zieht die Batterie ab. Ob die 1,5 Kilometer dann gezählt werden.

Oder er zieht das Cockpit raus und schaut nach ob diese gespeichert werden.

Wenn er selbst so ein Dingen basteln will, dann würde ich sagen soll er alle 5 Kilometer speichern :-) Somit hat er auf jedenfall eine Speicherzelle die reicht bis die Kiste 500 000 runter hat.

Aber ich gehe davon aus, dass der Kilometer Stand gespeichert wird sobald er den Motor ausmacht oder die Zündung.

Klar kann man das Cockpit beim eingeschalteten Wagen abklemmen, nur danach haste ein Problem mit deinen Airbag und eventuell anderen Sachen, so dass du die Fehlercodes dort löschen lassen musst.

Zitat:

Original geschrieben von acer2k

Der Controller im Stick wird automatisch andere Speicherbereiche nehmen, wenn welche zu oft gebraucht werden

Wußte nicht, dass mein 10€ "Made in China"-Stick so intelligent vorgeht...:D:

Aber Scherz bei Seite, soweit ich weiß, wird der Km-Stand in Form von 3 Bytes (16.777.216 mögliche Werte) mit einer FESTEN Speicherdresse im EEPROM gespeichert. Die Überlegung von Ventilator bzgl. der begrenzten Anzahl an möglichen Schreib-Zugriffen ist also berechtigt.

Da wir nun schon mal dabei sind, die Funktionsweise von Tachometern ein wenig unter die Lupe zu nehmen:

Warum springt der Kilometerstand eines '93 Vento Diesel nach exakt 300000 Km wieder auf 0 (und zählt danach einwandfrei weiter) ?

Ich konnte das zunächst nicht glauben und einen elektrotechnischen Hintergrund kann ich da nicht erkennen. Das Display ist durchaus in der Lage, Zahlen größer 2 im linken Ziffernblock anzuzeigen. Und wenn es eine Begrenzung durch den Speicherplatz geben sollte, dann sollte der größtmögliche Km-Stand eine binäre Zahl sein !? Die Schlußfolgerung wäre, dass es eine gewollte Softwarefunktion ist... ??

Zitat:

Original geschrieben von Ventilator

Ja, das ginge. Aber nur auf den ersten Blick:

Woher weiss ich -bei einem Neustart (zb. durch Stromausfall)- an welcher Speicherstelle im EEprom ich die Daten abgelegt habe?

Relativ einfach: In einer Speicherzelle (JMP-Adresse) merkst Du dir die Adresse des Datenspeichers. An der Stelle speicherst Du dann den Zähler für den Speicherzyklus. An der nachfolgenden Adresse dann dem km-Stand. Erreicht der Speicherzykluszähler den Grenzwert, legst Du an der JMP-Adresse den nächsten Speicherblock (+n Bytes) ab und beginnst von vorne.

Ich hab' eben mal einige Datenblätter überflogen: z.B. für 93C86 und 24C02 werden 1 Mio. Schreibzyklen versprochen, damit sollte es also keine Probleme geben. Wenn dein Atmel µC tatsächlich nur 100.000 bringt, würde ich einfach auf einen externen EEPROM zurückgreifen. Das sollte ohnehin die sauberste Lösung sein.

Vor diesem Hintergrund kann ich mir nun auch vorstellen, woher die Problematik mit dem angesprochenen Vento-Kombiinstrument rührt:

Nehmen wir mal an, das der KM-Stand in diesem (inzwischen schon ziemlich betagten) Teil nach jedem Km neu geschrieben wird und verwendete EEPROM einige Schreibzyklen weniger (z.B. 300.000 ?!) als die heutigen verträgt.

Wenn diese Maximal-Anzahl nun bei 300.000 Km erreicht wird, schaltet die Software auf eine neue unverbrauchte Speicheradresse um und der Tacho läuft normal weiter.

Das der alte Km-Stand beim Umschalten nicht zunächst in die neue Adresse übernommen wird, ist vermutlich ein Software-Bug.

Demnach müßte sich an der ursprünglichen Speicher-Adresse vermutlich noch der alte kM-Stand wiederfinden. Ist leider beim Golf3/Vento ziemlich umständlich zu überprüfen, da das Kombi raus muß. Außerdem nähern wir uns damit immer mehr einem Thema, dass hier in diesem Forum nichts zu suchen hat...;)

Frohe Weihnachten !

Deine Antwort
Ähnliche Themen
  1. Startseite
  2. Forum
  3. Wissen
  4. Fahrzeugtechnik
  5. On-Board-Diagnose
  6. Dauerhafte Speicherung des Km-Stand beim Auto - wie?