Forum: Mikrocontroller und Digitale Elektronik Controller setzt sich zurück, vermutlich EMV Problem


von Mario J. (jauny)


Lesenswert?

Guten Tag!

Ich arbeite gerade an einem Projekt und zwar einer Steckerliste, welche 
ich per Fernbedienung und USB steuern kann. Da ist also ein MCU 
vorhanden. Hardware und Software existieren und funktionieren bereits. 
Es gibt nur ein Problem: Wenn ich bei einer Dose ein Steckernetzteil 
rausziehe gibt es in etwa 7 von 10 Fällen ein Prozessorreset. Ich habe 
zum Testen bei allen Relais, mit welchen ich die Phase schalte, die 
Spule abgetrennt und der Schliesser überbrückt. Die Störungsquelle liegt 
also effektiv beim Steckernetzteil.

Fakten:

Die Speisung des Prints kommt über ein Netzfilter und anschliessend über 
einen AC/DC Wandler, welcher 5 V liefert. Diese gehen danach direkt an 
den Controller.

Das Reset Pin des Controllers ist so fest gestützt, dass ich ihn 
wahrscheinlich nicht mehr programmieren könnte (--> Onboard 
Programmierung).

Das Einpacken in ein Metallgehäuse bringt nichts (egal ob mit Erde oder 
mit GND oder gar nicht verbunden).

Der Controller ist sowohl bei VCC als auch bei VDD gestützt (es wird ein 
Silabs C8051F320 verwendet).

Sehr merkwürdig: Wenn ich den GND mit dem Nullleiter verbinde (also die 
galvanische Trennung aufhebe) wird etwa in jedem 2. Fall auch der 
Prozessor zurück gesetzt.


Ich bin wirklich für jede Idee oder Hilfe dankbar!

Freundliche Grüsse
Mario

von Purzel H. (hacky)


Lesenswert?

Koennen wir mal ein Photo (beidseitig) bekommen ? Oder das Layout ? 
Schema ?

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

> Hardware und Software existieren und funktionieren bereits.
Meine Software ist fertig. Ich habe keinen Fehler mehr drin...  :-/

> Es gibt nur ein Problem: Wenn ich bei einer Dose ein Steckernetzteil
> rausziehe gibt es in etwa 7 von 10 Fällen ein Prozessorreset.
Bist du sicher, dass es ein Reset ist?
Oder macht deine Software Probleme, wenn auf einem Eingang ein kurzer 
Spike kommt?

von Mario J. (jauny)


Lesenswert?

Die Flicke, welche ich gemacht habe:
Die braunen Drähte sind zur besseren Speisung des MCUs (Leiterbahnen 
sind etwas dünn). Ein 100nF Kondensator stützt die Speisung. Das RST-Pin 
wird durch ein 2.2uF und ein 100nF Kondensator und einem 1k-Pullup 
gestützt.

Zum Klarstellen:
Dies ist ein Prototyp, das Ganze wird schlussendlich in ein geerdetes 
Metallgehäuse gebaut und der Print wird neu gemacht.
Dieser Print wurde im 2. Lehrjahr erstellt, darum sind die Leiterbahnen 
so dünn und es existiert keine Abschirmung.

Danke für Eure Hilfe!

Mario

EDIT:

Hier die Fotos:
http://el07.el.funpic.de/bottom_layer.jpg
http://el07.el.funpic.de/speisung_print.jpg
http://el07.el.funpic.de/verzweigung_relais_print_speisung.jpg

@ Lothar:
Ja ich bin sicher, dass der Controller zurück gesetzt wird. Auf einem 
Piezo wird ein Piepston ausgegeben, diese Routine wird nur bei einem 
Reset ausgegeben.

von Purzel H. (hacky)


Lesenswert?

Das  bauteileseitige Layout ist schon ok, aber ohne GND Plane auf der 
anderen Seite ist nichts. Ich nehm mal an, die Relais haben Dioden 
gerade neben dem Footprint.

von Mario J. (jauny)


Lesenswert?

Ja. Und wahrscheinlich hätte es mit einem GND Plane von Anfang an 
geklappt. Habe jedoch jetzt endlich die heikle Stelle gefunden: Die 
Leiterbahn (GND) von den Kondensatoren beim Quarz war viel zu lang bis 
zum GND vom MCU. Habe nun einen Draht gezogen und nun klappt es viel 
besser. Aber trotzdem vielen Dank für Deine Hilfe!

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.