Forum: Mikrocontroller und Digitale Elektronik Mech.Counter zählt falsch


von Toni (Gast)


Lesenswert?

Hallo Leute,

ich habe folgendes Problem.

Ein Mikrocontroller (Mega128) ist über Treiber (ULN) an mechanische 
Counter angeschlossen. Der Controller bekommet über den Uart einen Wert 
den er dann an die Counter weitergibt (Impulse) . Das Problem ist nun 
folgendes ich lege den werd in einer RTC ab (DS1307) sobald ein Impuls 
gegangen ist rechne ich den wert -1 und speichere das Ergebniss wieder 
ab. Wenn aber nun ein Stromausfall ist kann es sein (meist) das sich 
dass System verrechnet.

Ich habe mir nun gedacht, dass ich die Spannung mit dem Mikrocontroller 
überwache, aber was ist schnell genug um einen Stromausfall zu erkennen?

Weiters wie soll ich dann das handhaben wenn ich erkenne das kein Strom 
mehr kommt ??

  Danke für eure Ideen...

von Klaus W. (mfgkw)


Lesenswert?

Wenn man in die Stromversorgung einen ausreichenden
Kondensator einbaut, kann der MC drohenden Stromausfall
an der fallenden Spannung erkennen und z.B. seinen
aktuellen Status im EEPROM ablegen.

Den nötigen C kann man aus dem zulässigen Spannungsabfall,
dem Stromverbrauch und der zu überbrückenden Zeit berechnen.

Solange er dann aber tot ist, wird er ohne Stromversorgung
keine Befehle mehr abarbeiten können.
Insofern ist zu überlegen, ob man ihm nicht eine
Batteriepufferung spendiert.
Oder sich fragt, wieso die Versorgung dauernd weg ist?

von Toni (Gast)


Lesenswert?

Die Sache ist die. Der Strom ist eh immer da aber das Gerät darf sich 
nicht verzählen! (Falls kein Strom mehr da ist)

--> Mit Elkos buffern und über einen INT bei fallender Flanke Impulse 
sofort stoppen.

von Klaus W. (mfgkw)


Lesenswert?

Toni schrieb:
> Der Strom ist eh immer da ... (Falls kein Strom mehr da ist)

Fragewort mit 3 Buchstaben: Häh?

von Toni (Gast)


Lesenswert?

-- Ich meine: Es kommt sellte zu einem Stromausfall, aber wenn einer ist 
und das Gerät zählt gerade...

von Egal Anders (Gast)


Lesenswert?

Vielleicht ist es anders herum einfacher.

Du überprüfst die RTC beim Einschalten. Wenn sich direkt nach dem 
Einschalten ein Wert in der RTC befindet muss der Strom ausgefallen 
sein.

Oder am Anfang eines Auftrages ein Flag im EEPROM setzen. Wenn alles 
erledigt ist das Flag wieder löschen. Bein Programmstart das EEPROM 
abfragen.

Nach dem Stromausfall muss sowieso jemand überprüfen ob noch irgendetwas 
unvorhersehbares passiert ist. Einfach ein Warnlämpchen bzw. Summer 
einschalten? Gar nicht versuchen den Stromausfall automatisch zu 
behandeln?

von Peter D. (peda)


Lesenswert?

DCF-77 Uhren mit mechanischer Anzeige haben einen 12:00 Kontakt.
Nach dem Einschalten pulsen sie solange, bis der Kontakt schließt und 
dann weiter, bis die Zeit erreicht ist.

Ohne Synchronkontakt kannst Du nie eine mechanische Anzeige sicher auf 
einen Wert setzen.
Der Stromausfall kann ja genau beim Impuls kommen. Und dann ist es 
Zufall, ob er noch genügend stark ist, weiterzuschalten oder nicht.


Peter

von Toni (Gast)


Lesenswert?

Hallo,

ich war heute in einem "C"asino da haben die Automaten alle einen 
mech.Counter eingebaut. Es muss doch eine Lösung geben denn wenn da ein
Counter falsch zählen würde, dann kostet das Geld...

Die Idee mit der Flag zu setzten ist gut. Ich denke mal wenn ich den 
Strom zum Counter überwache und der Counter eine gewisse Zeit Strom 
zieht sollte er um eins weitergesprungen sein. Danach lösche ich das 
Flag.

Bei der Stromversorgung muss ich genug buffern (ELKO) damit ich diese 
Zeit überbrücken kann.

oder ist das overkill

??

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.