mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Diskussion: Spannungsbackup für Schaltungen


Autor: Jens (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

ich habe mal eine Frage, bzw. vielleicht einen Diskussionsanstoß:

Mal angenommen eine Schaltung, bei der ein Mikrocontroller ab und dann 
Werte in einem EEPROM ablegt. Das seien wichtige Daten, z.B. eine 
Messreihe von irgendwelchen zyklisch eingelesenen Daten.

Jetzt stelle man sich vor, in dem Moment, wo grad ein Wert gespeichert 
wird, fällt die Stromversorgung aus - also quasi mitten beim Schreiben. 
Im EEPROM steht dann ja nur Quatsch, was man später aber evtl. nicht 
mehr klar erkennen kann, weil die resultierende Bitfolge, die dann 
gespeichert ist, ebenfalls einen Sinn ergibt.

Wie kann man sowas absichern? Werte redundant schreiben? Von mir aus 
dreimal, und beim auslesen die drei Werte vergleichen und dann den 
nehmen, der mehrmals vorhanden ist - das bringt natürlich auch nichts, 
wenn das Speichern beim ersten unterbrochen wird.

Evtl. mit Kondensatoren die Spannung puffern, sodass der Mikrocontroller 
zumindest ne kleine Chance hätte, den Wert noch eben zu speichern?

Wie wird sowas denn in der Industrie realisiert? Da werden ja auch Werte 
mitgeschrieben, um evtl später eine Analyse zu machen.

Oder das Speichern von irgendwelchen Parametern - mal angenommen, der 
Techniker klemmt das Gerät grad in dem Moment ab, wo grad gesichert 
wird...


Hat da jemand ein paar Idden zu?


Gruß, Jens

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jens schrieb:

> Wie kann man sowas absichern?

Dafür sollte bereits eine CRC ganz gut helfen.

> Evtl. mit Kondensatoren die Spannung puffern, sodass der Mikrocontroller
> zumindest ne kleine Chance hätte, den Wert noch eben zu speichern?

Kannst du auch machen, du kannst ja den Wegfall der externen
Versorgung irgendwie erkennen, sodass der Controller weiß, dass
jetzt Eile geboten ist und ein "Notlaufprogramm" anwirft.

Autor: Jens (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Noch ein Nachtrag:

Bei Drucktransmittern z.b. die halt ihre Werte in regelmäßigen Abständen 
abspeichern, da kann nicht einfch eine Batterie drin sein, weil diese 
Geräte dazu noch meist vergossen sind und z.T. Temperaturen bis 80°C 
problemlos aushalten müssen - eine Batterie fällt daher weg, weil wenn 
leer, dann ist das Gerät "Schrott" - und so hohe Temperaturen für 
Batterien ist ja auch eher ungut.

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Z.B. der DS89C430 hat einen Early-Warning Power-Fail Interrupt. Damit 
kann man die VCC überwachen und bei einem Einbruch rechtzeitig was 
abspeichern.
Das ist also sehr bequem.

Bei den AVRs gehts nicht so einfach. Da muß man zyklisch die Bandgap 
messen, um einen Einbruch zu erkennen.


Peter

Autor: oszi40 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
1.Mit Goldcaps brennt ein Fahrradstandlicht z.B. noch 5 Minuten.
http://de.wikipedia.org/wiki/Goldcaps

>Temperaturen bis 80°C
2.Es gibt auch Elkos für 105 Grad. Ob diese bei dauerhaften 85 Grad ein 
ewiges Leben haben wäre sicher die nächste Frage.

3.Egal ob Sekündchen oder Stunden mit dem Dieselaggregat: igendwann 
fällt auch dieser Strom aus. Deshalb gilt auch hier die alte 
Bauernregel: Lege nie alle Eier in einen Korb!

>...Werte in einem EEPROM ablegt ?

Autor: Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Peter Dannegger schrieb:

> Bei den AVRs gehts nicht so einfach. Da muß man zyklisch die Bandgap
> messen, um einen Einbruch zu erkennen.

Kann man auch über den Analogkomparator machen, der kann ebenfalls
einen Interrupt auslösen.

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@  Jens (Gast)

>Wie kann man sowas absichern? Werte redundant schreiben?

Das alelin reicht nicht. Man muss auch einen abgerochenen Schreibvorgang 
erkennen. Z.B. über CRC, Zeeitstempel, etc.

>Evtl. mit Kondensatoren die Spannung puffern, sodass der Mikrocontroller
>zumindest ne kleine Chance hätte, den Wert noch eben zu speichern?

Das ist ein üblicher Ansatz.

http://www.mikrocontroller.net/articles/Speicher#E...

>Wie wird sowas denn in der Industrie realisiert? Da werden ja auch Werte
>mitgeschrieben, um evtl später eine Analyse zu machen.

Mit den oben genannten Methoden, allerding schon recht aufwenig 
umgesetzt.

>Oder das Speichern von irgendwelchen Parametern - mal angenommen, der
>Techniker klemmt das Gerät grad in dem Moment ab, wo grad gesichert
>wird...

Dann gibts wieder Arbeit für den Techniker. Man kann es sicher machen. 
Aber nie idiotensicher.

MFG
Falk

Autor: Markus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>> 1.Mit Goldcaps brennt ein Fahrradstandlicht z.B. noch 5 Minuten.
>> http://de.wikipedia.org/wiki/Goldcaps

Davon steht im Artikel nichts - habe ich etwas übersehen? Hintergrund: 
mein Fahrradstandlicht kommt auf nur 60 Sekunden.

Autor: Nosnibor (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Allgemein: hinter jeden Datensatz gehört eine Prüfsumme als "Siegel". 
Ein Datensatz ohne gültige Prüfsumme ist nicht glaubwürdig, muß beim 
Lesen also ignoriert werden.

Für Konfigurationsdaten stellt sich da natürlich die Frage, was das 
Gerät beim Einschalten machen soll, wenn die Prüfsumme nicht stimmt, 
d.h. die Daten unbrauchbar sind. Da hilft es, die Konfiguration zweimal 
zu speichern: entweder der Ausschalter trifft einen beim ersten 
Speichern, dann ist die Kopie der alten Konfiguration noch heile, oder 
er schlägt beim Speichern der Kopie zu, dann ist die neue Konfiguration 
immerhin schon einmal gesichert. Nach dem Neustart muß das Gerät 
allerdings erstmal "aufräumen", wenn es einen defekten Datensatz 
erkennt.

Für Logdaten in einem Ringpuffer gilt ähnliches: nach dem Einschalten 
erstmal den letzten Eintrag prüfen und löschen, falls er defekt ist.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.