eeprom schreiben bei Brown Out Detection

Gast #1531797
Hallo,
ist es möglich bei einem ATMega128 bei Erkennung der Brown-Out Detection 
Werte ins eeprom zu schreiben und damit zu speichern?
Habe einen Mega128 mit Zeitfunktion laufen, allerdings scheint es 
manchmal Resets des Controllers zu geben und damit einen Verlust der 
Zeit... :-(
Dies würde ich mit dem Speichern der Zeit gerne umgehen bzw. beheben.

Gruß
Dennis
Gast #1531801
Hi

>ist es möglich bei einem ATMega128 bei Erkennung der Brown-Out Detection
>Werte ins eeprom zu schreiben und damit zu speichern?

Nein. Das musst du früher erkennen.

MfG Spess
Gast #1531859
Wenn die (Uhr-)Zeit so wichtig ist und auch bei Resets und 
Programmfehlern unbedingt erhalten werden muss, warum nimmst du dann 
nicht eine externe RTC mit Li-Batterie?
#1531916
@  Dennis (Gast)

>Habe einen Mega128 mit Zeitfunktion laufen, allerdings scheint es
>manchmal Resets des Controllers zu geben und damit einen Verlust der
>Zeit... :-(
>Dies würde ich mit dem Speichern der Zeit gerne umgehen bzw. beheben.

Wie soll das denn gehen? Wenn dein AVR einen Reset macht und unbestimmte 
Zeit nicht arbeitet, nützt dir eine gespeicherte Zeit rein gar nix.
Es klingt eher danach, dass du einen Hard- oder SOftwarefehler hast, der 
dir sporadische Resets beschert. Diese Fehler musst du finden und 
beheben, nicht durch rumpfuschen scheinbar verdecken.

MfG
Falk
Gast #1532672
Danke für den Tip Falk!

Der Fehler ist bereits lokalisiert. Und zwar betreibe ich über ULN 
Bausteine Relais mit denen Motoren ein/ausgeschaltet werden. Dadurch 
bekomme ich ganz kurz einen Reset und meine Zeit is wech...!
Insofern wäre die Zeit zu vernachlässigen die dadurch verloren geht. Ein 
solcher Reset kommt circa alle 2 Wochen mal vor...

Da ich die Motoren nur mit großem Aufwand mit RC-Gliedern entkoppeln 
kann werde ich wohl auf die Variante mit einem RTC zurückgreifen müssen. 
Oder aber an den Controller noch ne Netzwerkanbindung schaffen und mir 
die Zeit über NTP holen. DCF77 fällt wegen schlachtem Empfang flach...
Gast #1532680
Reset mit Widerstand auf VCC gezogen ? Ansonsten die µC Versorgung 
entkoppeln, VCC auftrennen, Diode rein und Kondensator nach GND, dann 
erst auf µC-VCC.
Gast #1532684
MWS schrieb:
> Reset mit Widerstand auf VCC gezogen ? Ansonsten die µC Versorgung
> entkoppeln, VCC auftrennen, Diode rein und Kondensator nach GND, dann
> erst auf µC-VCC

Dies habe ich alles beachtet...
Habe nen 7805 mit der im Datenblatt beschriebenen Beschaltung und einer 
Diode davor. Habe auch schon zusätzlich einen größeren Kondensator nahe 
dem µC installiert, leider ohne Erfolg. :-(

Trotzdem Danke für den Tip.
Gast #1532693
> und einer Diode davor.

Nicht mit einer Diode davor. VCC vom Regler auf Diode, von Diode auf 
Kondensator, dann auf µC-VCC und sonst nirgendwohin. Also ein extra 
Kondensator nur für den µC, mit dem Ziel Spannungseinbrüche ausgelöst 
durch andere Verbraucher fernzuhalten.

Wo hängen die Relais jetzt dran ? Welche Verbraucher sind auf der 5V 
Leitung des Reglers ? Vielleicht die Relaisspulen ?

Schaltplan ?
Gast #1532706
Bisserl grob aufgelöst, kann man wenig erkennen...

Die ULN's kann man ein wenig erkennen, wohin sind die Relais 
angeschlossen ? An die geregelten 5V oder an ungeregelt Plus ?
Gast #1532707
Die Relais sind auf Hutschienensockel mit Freilaufdioden montiert.
Die ULN 2803 schalten Masse auf die Relais, welche an der gemeinsamen 
24V-Versorgung hängen...
Relais schalten 230V Motoren.
Gast #1532718
Hmm, poste mal 'nen besser aufgelösten Plan. Oder probier' einfach aus, 
was ich vorgeschlagen habe.

Seh' keinen Grund, warum der µC einen Reset machen sollte. Software ok ?
Gast #1532722
MWS schrieb:
> Software ok ?

Wie gesagt... Passiert unregelmäßig nach 2 Wochen, oder aber auch schon 
nach 2 Tagen...
Denke nicht das es nen Software Bug ist.
Gast #1532724
Jo O. schrieb:
> Sehe ich das richtig, dass der Pin 10 von den ULN2003 auf VCC, also 5V
>
> liegt, Du die Relais aber mit 24V versorgst?

Diese Änderung hatte ich eben testweise in die Schematic eingfügt um zu 
schauen ob es auf dem Board zu realisieren wäre. PIN 10 ist derzeit NC.

Die Relais hängen an +24V und werden von den ULN mit GND beschaltet...
Gast #1532728
Jo O. schrieb:
> Dabei dürfte einiges auf der Platine kaputt gehen

In dem Fall so ziemlich alles wichtige... ;-)
Dann bin ich also mit meiner ursprünglichen Version (ULN Pin10 = N.C.) 
gar nicht so schlecht dran?
Angehängte Dateien:
#1532732
Mach doch mal ne Handskizze auf der ein ULN's drauf ist, ein Relais, 
alles was mit den 24V zu tun hat, die Freilaufdiode und Die 
Spannungsversorgung vom Prozessor .

Versorgst du mit den 24V auch das Board?

Wenn möglich wäre auch ein Bild mit dem Board nicht schlecht.

Was passiert eigentlich, wenn die Sicherung F2 auslöst. Bist du sicher, 
dass dann keine 24V am Prozessor liegen könne (auch ohne Anschluss von 
Pin 10 der ULN's) ?
Gast #1532734
Jo O. schrieb:
> Was passiert eigentlich, wenn die Sicherung F2 auslöst. Bist du sicher,
>
> dass dann keine 24V am Prozessor liegen könne (auch ohne Anschluss von
>
> Pin 10 der ULN's) ?

Da bin ich ziemlich sicher,
denn diese kann ich auch entfernen ohne das irgendetwas kaputt geht.
Im Falle eines durchschlagen des Transistor Arrays, könnte es ventuell 
zu 24V auf der Platine kommen, aber das ist mir durchaus bewußt und auch 
nicht umgänglich...
Gast #1532735
Jo O. schrieb:
> Im Moment tipp ich eher auf die Hardware

Es ist auch Hardware. Habe im nachhinein schon mehrfach von Problemen 
bei Relaisbetriebenen Motoren gehört... :-(
Gast #1532738
Jo O. schrieb:
> Mach doch mal ne Handskizze auf der ein ULN's drauf ist, ein Relais,
>
> alles was mit den 24V zu tun hat, die Freilaufdiode und Die
>
> Spannungsversorgung vom Prozessor .
Angehängte Dateien:
#1532743
Wie haste denn die Brown-Out Detection eingestellt?

Warum sind die Kondensatoren am 7805 nich 100nf? Welche Typen haste denn 
da verbaut? Keramische?

Wieviel Stom ziehen die Relais? Können die gleichzeitig angesteuert 
werden?

Welche Dioden hast du als Freilaufdioden benutzt?
#1532800
@  Dennis (Gast)

>Wie gesagt... Passiert unregelmäßig nach 2 Wochen, oder aber auch schon
>nach 2 Tagen...
>Denke nicht das es nen Software Bug ist.

Denke nie gedacht zu haben, denn das Denken der Gedanken ist 
gedanklenloses Denken.

PRÜFE!

Schalte testweise dein Motoren so oft wie möglich. Die Anlaufströme sind 
meist deftig. Wieviel Leistung ziehen die? Welche Typen sind das?
Einen Snubber solltest du UNBEDINGT vorsehen, auch wenn es nicht 
ganz einfach machbar ist. Die Leitungen von deiner Platine zu den Relais 
sollten verdrillt sein, noh besser geschirmt und der Schirm seitens 
deines uC auf PE gelegt.

Stürzt dein uC beim Anschalten oder Abschalten der Relais ab?

MFG
Falk
#1532906
MWS schrieb:
> Das schreit förmlich nach 'ner externen RTC.

Das ist Quatsch mit Soße.
Nicht die Wirkung bekämpfen, sondern die Ursache finden!

Du bist wohl ein Politiker, denn die müssen mit maximalen Aufwand die 
geringsten Resultate erzielen.


Peter
#1532910
@Dennis

Dem Resetpin mußt Du noch nen 100nF gegen GND spendieren, sonst ist der 
sauempfindlich.

Und an den Spannungsregler jede Seite noch ein 100µF gegen 
Spannungseinbrüche.

Der AREF-Pin kriegt auch einen 100nF, die Brücke nach VCC muß weg.


Peter
Gast #1532932
Peter,
Hirn benutzen und versuchen logisch zu denken.
Wenn man sich anstrengt, dann klappt das auch :D

Bei einer Schaltung, die von der aktuellen Zeit abhängt, und in 
elektrisch rauher Umgebung arbeitet, wär's sicher nicht verkehrt dafür 
zu sorgen, daß im Fehlerfall, auch Stromausfall, die ganze Sache 
vernünftig weiterarbeitet.

Das hat nix mit Politik zu tun ;-)
#1532957
MWS schrieb:

> Bei einer Schaltung, die von der aktuellen Zeit abhängt, und in
> elektrisch rauher Umgebung arbeitet, wär's sicher nicht verkehrt dafür
> zu sorgen, daß im Fehlerfall, auch Stromausfall, die ganze Sache
> vernünftig weiterarbeitet.

Sicher. Aber unabhängig davon ist eine autonome Uhrzeit zur Lösung des 
beschriebenen Problems der verkehrte Ansatz.

So könnte sich man dem Problem auch dadurch nähern, dass man die Ursache 
des Resets so angezeigt kriegt, wie sich die dem Controller darstellt. 
Also ob per Reset-Pin, Powerup, Brownout oder weil das Programm nach 
Adresse 0 gehüpft ist. Irgendein MCUC(S)R sagt das.
Gast #1533001
A.K.,
richtig, aber wenn Du meine Posts vorher anschaust, ich gehe von einem 
elektrischen Problem aus, dazu auch mein Vorschlag die MC Versorgung von 
Spannungseinbrüchen zu entkoppeln.

Unabhängig davon, frag mal en TE, wieviel Aufwand er betreiben will, um 
diese sporadischen Ausfälle in den Griff zu bekommen.

Da wäre ein Fail-Safe Sytem kein schlechter Kompromiss.

Eine per SPI oder TWI angebundene RTC als maximalen Aufwand zu 
bezeichnen und mit der allseits bekannten Ineffiktivität von Politik zu 
vergleichen schien mir da ein wenig daneben.
#1533033
MWS schrieb:

> Eine per SPI oder TWI angebundene RTC als maximalen Aufwand zu
> bezeichnen und mit der allseits bekannten Ineffiktivität von Politik zu
> vergleichen schien mir da ein wenig daneben.

Es ist zumindest ein recht hoher Aufwand, Du brauchst ja noch ne extra 
Batterie und jeder hat bestimmt schonmal schlechte Erfahrungen mit 
ausgelaufenen Batterien gemacht.

Einmal hat mir die CMOS-Batterie sogar Leiterzüge auf dem Motherboard 
weggeätzt (= Totalschaden).

Ich hab auch schonmal nen DS1994 mit interner Batterie benutzt.
Außer, daß er sehr ungenau war, hat er gerade mal 5 Jahre gehalten, also 
nur 50% der garantierten 10 Jahre, obwohl die Schaltung ununterbrochen 
am Netz war. Das positivste war, daß er wenigstens nicht ausgelaufen 
ist.

Wenn die Netzversorgung stabil ist, besteht daher kein Grund, die 
Nachteile eines RTC in Kauf zu nehmen. Da ist Fehlerbeseitigung der 
einzig richtige Ansatz.


Peter
Gast #1533042
Falk Brunner schrieb:
> Stürzt dein uC beim Anschalten oder Abschalten der Relais ab?

Beim Anziehen der Relais kommt es zum Reset.

Werde den Vorschlag von Peter Dannegger zunächst versuchen umzusetzen.

Habe am 7805 zur Zeit keramische Kondensatoren verbaut.

Könnte ich einen Schnubber (RC-Glied) denn einfach über meinen Schalter, 
sprich ULN2803 schalten um Störungen durch das Relais zu vermeiden? Dies 
könnte ich wohl noch gut realisieren...
#1533048
@  Dennis (Gast)

>> Stürzt dein uC beim Anschalten oder Abschalten der Relais ab?

>Beim Anziehen der Relais kommt es zum Reset.

Dann wird wohl der sehr hoche Anlaufstrom + der Funke am Kontakt dem uC 
das Licht ausblasen.

>Könnte ich einen Schnubber (RC-Glied) denn einfach über meinen Schalter,
>sprich ULN2803 schalten um Störungen durch das Relais zu vermeiden?

Nein, das Problem liegt woanders, an den Kontakten. Gegen einen 
Einschaltstromstoß hilft ein Snubber praktisch nicht.

MfG
Falk
Gast #1533066
Peter,

ich verwende gern Epson RTC's mit integriertem Quarz in Verbindung mit 
einem kleinem Goldcap.

Einmal abgesehen davon, daß damit das eigentliche Problem nur kaschiert 
(in diesem Fall im Endergebnis gelöst) würde, so halte ich unabhängig 
davon bei so einer Uhrzeit gesteuerten Geschichte ein Backup der Zeit 
per RTC für ein Muss.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 16 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.