mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik AVR Absturz durch Stromstoßrelais im Elektrokasten


Autor: StefanG (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich habe eine kleine Haussteuerung mit dem AVR MEGA32 gebaut und auf 
Hutschiene in einen eigenen Verteilerkasten untergebracht.

Direkt neben dem "AVR Verteilerkasten" hängt ein weiterer der die ganze 
Elektroverteilung vom Haus aufnimmt.
Wenn nun dort ein Stromstoßrelais, welches für das Licht im Hausflur 
sorgt, schaltet, kommt es oft zu einem Absturz des Controllers (bleibt 
stehen).

Zwar liegen die Mess- und Steuerleitungen mit in den Schächten der 
Elektrokablen - ich weiss, das ich nicht zu gut - aber auch wenn ich 
KEINE der Mess- und Steuerleitungen anschließe tritt das Problem auf.

Auch nachdem ich meine selbstgebaute Stomversorgung gegen ein 
Schaltnetzteil mit eingebauten Enstörfiltern ausgetauscht habe
( http://www.reichelt.de/?ARTICLE=66875 )ist das Problem weiter da.
Eine andere Phase hab ich auch mal probiert.

An den AVR VCC-Pins sind Spulen (10uH) und 100n Abblokkondensatoren 
vorhanden.... ansonsten läuft alles stabil.

Was kann ich auf der AVR - Seite noch machen?

Autor: Kai B. (kaib) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,
hast du deiner Schaltung keinen größeren Elko in der Versorgung der 5 
Volt eingebaut?. oder sind die 100nF und die Drossel das einzige? Wenn 
ja dann würde ich mal einen größeren Elko ab 100µF mit in den 5Volt 
Kreis hängen.
Oder gibt es einen Unbeschaltenen Pin(Reset mit 10K und 100nF 
beschaltet?) welcher sich Störungen einfängt welchen den AVR reseten 
läst?
MfG Kai

Autor: StefanG (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Kai,

'große' Elkos hatte ich bei den neuen Netzteil nicht mehr verwendet.
Habe das jedoch gerade nachgeholt und getesetet ...
... leider keine Besserung. :(

Reset ist beschaltet mit 10k+100nF.

Noch eine Idee?

Autor: Andreas B. (bitverdreher)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Direkte magnetische Einstrahlung durch das Stromstoßrelais.
Ist der AVR Schaltkasten aus Metall und abgeschirmt ?

Zum AVR selbst: Ist Brownout aktiviert ?
Stehenbleiben an sich gibt es nicht. Wie ist der Inhalt des MCUCSR 
Registers nach dem "Absturz".

Gruß
Andy

Autor: Pier S. (bigpier)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo ,
sind diese Stromsto?relais Ac oder DC ???
Bei AC Relais köntest du einen Varistor parallel zur Spule Klemmen ,& 
bei DC Relais eine Freilaufdiode dann ist wahrscheinlich dein Problem 
Geschichte

Gruss
Pier

Autor: StefanG (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Danke schonmal für die Tipps :)

@Andreas:
* Zwar sind die Kästen nicht wirklich abgeschirmt aber eine direkte 
magnetische Einstrahlung bei 40cm Abstand dürfte recht unwahrscheinlich 
sein!?
* Brownout ist aktiv, habe mittlerweile sogar einen echten 
Resetcontroller dran.
* MCUCSR habe ich noch garnicht ausgelesen, das ist aber ein guter 
Hinweis!... Danke!


@Pier:
An die Elektrik will ich als letztes :)
Das Relais wird mit AC 230V geschaltet.
Aber kommt der Varistor nicht über die Schaltkontakte?

Autor: HansHans (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
Was löst den Reset aus ?

Der Steuerstromkreis (Taster-Spule)
oder der Lastkreis (die Lampen, Leuchtstofflampen ?)

also löst das manuelle (Hand) schalten am Stromstoßrelais(im kästen) 
auch ein Reset aus ?

Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

alles schwer zu beurteilen, Schaltplan, evtl. Bilder vom Aufbau könnten 
weiterhelfen.  Ungünstige Masseführung im Aufbau, schlechte Entstörung 
der Betriebsspannung. Wenn es auch passiert, wenn Du keine Leitungen 
nach draußen dran hast, bleibt nur der Weg über die Betriebsspannung. 
Ich schalte mit einem Mega8 12V Hilfsrelais, die dann 24V Schütze 
ansteuern, die 3kW-Heizer schalten. 5V/12V/24V werden in einem Netzteil 
in der AVR-Büchse erzeugt, die Schütze wohne in einer E-Verteilung ca, 
3m weg. Dazu 2 Heißleiter als Temperaturfühler auch an ca. 3m Leitung.
Ist in den letzten 2 Jahren noch nie abgestürzt, geht also mit reltiv 
wenig Aufwand.

Gruß aus Berlin
Michael

Autor: andi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Reseteingang vorschriftmässig beschaltet?
Wenn der offen ist, kannst du auch solche Effekte auch bekommen, 
zumindest hatte ich das mal einem Attiny26 geschafft.

Autor: Philipp Co (ba4_philipp)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Spricht eigentlich etwas dagegen !Reset direkt auf Vcc zu legen, wenn 
ohnehin kein ISP vorgesehen ist?

Autor: Winfried (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kann auch direkt an VCC

Autor: juppi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo
ersetzte versuchsweise die 5v spannung mit einer
ext. akku-versorgung.
danach weist du ob die störung vom netz kommt.

MfG

Autor: StefanG (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
An das Naheliegenste denkt man manchmal nicht ...
Ja, das mit dem Akku mach ich gleich mal. Akkus laden schon :)

Einen Reset führt das der Controller nicht aus!

Ein Problem habe ich rausgefunden, lag an einer Software-Schleife, die,
wenn im I2C Protokoll ein Fehler auftrat, endlos lief.
Zwar habe ich alle vorhandenen Schleifen nun mit einem Exit-counter 
versehen, jedoch bliebt das System trotzdem manchmal "stehen".

So als ob die Interruptroutinen nicht mehr arbeiten...
Können Timer einfach aufhören zu zählen ??? - Gibts sowas?

Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

nö, eigentlich nicht...
Da würde ich eher vermuten, Du hast noch was in der Software. Was macht 
z.B. Dein Programm, wenn durch eine Störung auf der Leitung ein 
unsinniger Wert von einem Sensor gelesen wird?

Du hast zwar geschrieben, da0 es auch auftritt, wenn Du nichts dran 
hast, könnte aber trotzdem eine Kombination von Zuständen sein, die in 
einem Dead-Lock enden.

Gruß aus Berlin
Michael

Autor: Uhu Uhuhu (uhu)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie wärs, wenn du mal ein paar LEDs an das Teil anklemmst und sie in 
deinem Programm so schaltest, daß du siehst, wo der µC sich gerade in 
seinem Code rumtreibt.

Ich schätze, damit kommst du dem Mysterium eher auf die Spur, als mit 
Spekulationen über Fehlverhalten von Timern u.ä.

Autor: StefanG (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
So, ich habe nun einiges probiert.

Erstmal, mit einem Akku als Stromversorgung konnte ich keinen Absturz 
mehr erzeugen. Deutet also auf eine Störung aus der Netzversorgung hin!?
jo, oder ?

Ich dachte so ein Netzteil wie o.g. genannt würde das wegfiltern :(

Ein Varistor an der Spule half nix, aber dafür ein X2 Entstörkondensator 
um so mehr. Damit konnte/könnte ich diese Störquelle dichtmachen.

Aber nun möchte ich unbedingt, da ja noch andere Störungen aus dem Netz 
zu erwarten sind, die Controllerseite besser dafür vorbereiten...

Was kann ich tun, wenn ich das Problem auf der "Controllerseite" 
wegfiltern möchte, statt an der Quelle?

Tja, das mit dem Deadlock...
Ich schicke nun debug-Meldungen über seriell an den PC....
im Fehlerfall schaut es halt immer so aus als wenn das Programm 
"stehenbleibt" .. was es ja nicht geben kann!?
Also 'sprint' das Programm irgendwohin was ich nicht erfasse....

Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

naja, wenn er in einer Schleife landet, in der Du nichts ausgibst, kommt 
auch nichts... ;) Vielleicht hilft die letzte Meldung ja weiter, Du 
müßtest ja wissen, was danach alles kommen kann, da dann notfalls Debug 
einbauen.

Vielleicht auch Teilfunktionen erstmal kaltstellen zum Eingrenzen, ich 
kommentiere dann meist den Funktionsinhalt aus und gebe konstante Werte 
zurück.

Gruß aus Berlin
Michael

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.