Forum: Mikrocontroller und Digitale Elektronik µC-Relaissteuerung, Fehlersuche: Wie gehe ich vor?


von Ralf (Gast)


Angehängte Dateien:

Lesenswert?

Hallo,

ich bastel mir grad ne Relaissteuerung mit Display, Tastatur und zwei 
Relais. Die Relais sind abgesetzt vom Rest der Schaltung. Einstellbar 
ist eine Countdown-Zeit (praktisch für's Platinen-Belichten :) Die 
Platine hab ich mir bei einem PCB-Hersteller machen lassen, ist also 
kein Lochrasteraufbau.

Also, schwupps, Probeaufbau gemacht, Belichtungsgerät drangehängt, Zeit 
eingestellt, Relais gestartet... Läuft...Aber nur bis der Countdown 
abgelaufen ist :( Beim Abschalten des Relais schmiert die Schaltung ab 
und macht einen Reset.

So, hier mal die näheren Umgebungs-/Testbedingungen:
- Die Relais sind etwa 60-70cm vom Rest der Schaltung entfernt, über ein 
zweipoliges, ungeschirmtes Lautsprecherkabel verbunden, die Treiberstufe 
(BSS84, P-Kanal FET, mit Pull-Up an Gate) befindet sich auf der 
Schaltung (nicht beim Relais), am FET befindet sich eine Schutzdiode 
1N4148 und am Relais selbst ist eine 1N400x (zwei Dioden deswegen, weil 
die Relais ursprünglich auf dem PCB der Gesamtschaltung waren -> ich hab 
sie abgesetzt, damit man nicht an die 230V rankommt)

- Auf dem Werktisch tritt das Problem nicht auf, während ich die 
Software geschrieben habe, konnte ich den Effekt kein einziges Mal 
sehen, weder mit dem Tischnetzteil noch mit dem für die endgültige 
Version geplanten Steckernetzteil (12Vdc, 200mA), allerdings kann ich 
das Belichtungsgerät nicht aufn Werktisch bringen (steht in einem 
anderen Haus)

- Das Belichtungsgerät war direkt neben der Schaltung, das Abschalten 
des Geräts bzw. der Lampen-Vorschaltgeräte hat sicherlich Dreck über das 
Steckernetzteil und wahrscheinlich auch über die Luft reingepustet, also 
bei angeschlossenem Belichtungsgerät ergaben sich die meisten 
"Abschüsse" (beim Betrieb mit 9V-Blockbatterie traten keine Störungen 
auf) und sowohl das Belichtungsgerät als auch das Steckernetzteil der 
Schaltung waren in der gleichen Steckdosenleiste (ich hab nicht 
drangedacht, zu prüfen, ob das Anschließen an unterschiedliche 
Steckdosen im Raum einen Unterschied macht)

- Auch ohne angeschlossenem Belichtungsgerät (überhaupt keine Last am 
Relais) ist der Effekt beim Abschalten aufgetreten, allerdings nie auf 
dem Werktisch, sondern an anderen Orten (Küche, etc.) und wesentlich 
seltener, allerdings waren keine anderen Geräte in der Nähe in Betrieb

Anbei die Abbildungen der Treiberschaltung der Relais sowie des 
Netzteils auf der Schaltung.

Ich hab versuchsweise mal einen 47µF Elko über VCC/GND so nah wie 
möglich an der Treiberstufe angeschlossen, brachte leider nicht viel 
(logisch, wenn der Dreck wahrscheinlich vorne übers Netzteil reinkommt).

Die Verwendung einer 9V-Batterie hatte wie oben erwähnt das Problem 
behoben (bzw. die Symptome eliminiert) , also muss ich den 
Eingangsspannungsbereich wahrscheinlich noch filtern.
Würde hier eine CommonModeChoke helfen?

Ich kann das Problem bei angeschlossenem Belichtungsgerät leider 
momentan nicht mit einem Oszi untersuchen. Ich konnte allerdings mit dem 
Oszi die Versorgungsspannung der Schaltung prüfen, wenn das Relais 
durchschaltet. Man sieht die Spannung gaaaaanz wenig absacken, höchstens 
ein paar mV.

Die Schaltung verwendet einen MAX812 als Watchdog für den µC. Der 
ManualReset-Eingang ist ohne Pull-Up (ist intern vorhanden) an eine 
Stiftleiste angeschlossen. Hier will ich noch prüfen, ob sich die 
Schaltung etwas über die offene Leitung einfängt, oder ob der Reset des 
MAX812 aus anderen Gründen aktiviert wird.

Hat vielleicht sonst noch jemand eine Idee? Was mich noch ein bisschen 
stutzig macht, ist dass der Absturz auch ab und zu dann aufgetreten ist, 
wenn kein Verbraucher angeschlossen war, sich aber auch nichts in der 
Nähe in Betrieb befand, also als ob quasi das reine Abschalten des 
Relais den Absturz verursacht hat. Zum Relais (Siemens V23037 A0001 
A101) konnte ich leider kein Datenblatt finden, es handelt sich um ein 
6V(!) Relais mit einem DC-Widerstand der Spule von etwa 70-75 Ohm, also 
etwa 70mA bei 5V Steuerspannung und ignoriertem Spannungsabfall über dem 
FET.

Ich bin echt ratlos und klopf mich jetzt in die Heia, vielleicht kommt 
morgen die Erleuchtung.

Ralf

von Piet (Gast)


Lesenswert?

Was für ein µC?

von Ralf (Gast)


Lesenswert?

Ach, wieder mal die wichtigen Sachen vergessen, sorry :)

Ein AT89C51ED2, 8052-Kern.

So, und jetzt gute Nacht.

Ralf

von oldmax (Gast)


Lesenswert?

Hi
Das Schalten von Relais bedeutet eine nicht unerhebliche Belastung des 
Stromkreises im Einschaltmoment. Vermutlich speist du auch aus der 
gleichen Quelle deinen µC., der auf der Schaltung nicht abgebildet ist. 
Wie sieht's da mit Abblockkondensatoren aus? Auch ist eine Hoch- oder 
Niederfrequente Einstreuung über die Relaisleitung denkbar. Diese 
könntest du über kleine Kondensatoren (z.B. ~ 22 nF ) kurzschließen, sie 
würden aber ebenfalls eine kurze Last beim Zuschalten bedeuten. Versuch 
mal folgendes:
Nimm für deine Relais eine eigene Spannungsquelle und verbinde nur die 
Masse. Setz die Transistoren direkt ans Relais. Nun denke ich, kannst du 
auch über eine längere Signalleitung dein Relais schalten, ohne eine 
Rückwirkung auf deinen Prozessor zu bekommen. Wichtig sind 
Abblock-Kondensatoren direkt am Controller in der Versorgungsspannung 
(VCC -!!- GND)
Eine etwas aufwändigere Lösung wäre der Einsatz von Treibertransistoren, 
direkt am µC-Ausgang, um die Signalleitung noch zu entkoppeln oder einen 
geeigneten Treiber-IC.
Gruß oldmax

von Michael U. (amiga)


Lesenswert?

Hallo,

kann nur meine Meinung hier anbringen: bei mir werden bei solchen 
Sachen, die mehr oder weniger viel (Netz-)Last schalten müssen, 
12V-Relais benutzt, die werden aus der Rohspannung versorgt. Der Elko 
vor dem Regler mesit 470µ, 100µ wäre mir da zu klein.
Hinter einem 7805 keinen großen Elko, nur wenn die Leitungen zur 
Schaltung relativ lang sind, dicht an der Schaltung 10-22µ.

Relaistreiber sind übliche npn-Transistoren mit Basiswiderstand, 
Kollektor und +12V führt dann zu den Relais, wenn die weiter weg sind. 
Freilaufdioden direkt an den Relais.

Gruß aus Berlin
Michael

von Falk B. (falk)


Lesenswert?

@ldmax (Gast)

>Das Schalten von Relais bedeutet eine nicht unerhebliche Belastung des
>Stromkreises im Einschaltmoment.

Keineswegs. Der Strom steigt relativ langsam an, siehe RL-Glied.

>Abblock-Kondensatoren direkt am Controller in der Versorgungsspannung
>(VCC -!!- GND)

Man sollte auch den Gleichrichter nicht vergessen. AFAIK ist C12 arg 
knapp! Mach den mal eher 1000µF.

>Eine etwas aufwändigere Lösung wäre der Einsatz von Treibertransistoren,
>direkt am µC-Ausgang, um die Signalleitung noch zu entkoppeln oder einen
>geeigneten Treiber-IC.

Der BSS84 ist mit 70mA und 5V am Gate etwas knapp bemessen. Erst recht 
bei 6V Relais. Pi mal Daumen komen nur 4V am Relais an. Das ist aber 
eine andere Geschichte.

Weiterhin fehlt ein Snubber an den Relaiskontakten. Siehe auch 
Relais mit Logik ansteuern.

MfG
Falk

von Ralf (Gast)


Lesenswert?

Hallo,

vielen Dank für eure Antworten. Ich hab zwischenzeitlich noch einen 
Testlauf mit dem Belichtungsgerät gemacht. Hier mal kurzes Feedback:

- Entgegen meiner obigen Aussage ist auch der Betrieb mit einer 
9V-Batterie fehlerbehaftet

- Eine Kapazitätserhöhung der Elkos vor und hinter dem Regler von 
jeweils 470µF brachte keine Verbesserung

- Direkt an der Klemme, abgehend zum Relais, angebrachte Kondensatoren 
von 100nF und 100pF haben keine Verbesserung gezeigt

- Eine Z-Diode 5.1V über der Versorgungsspannung hat auch nix gebracht

- Ist das Relais aktiv, erzeugt das Abschalten des Belichtungsgerätes 
ebenfalls den Absturz

So, ich werde jetzt mal versuchen, einen Snubber über die Relaiskontakte 
zu löten und dann einen neuen Versuch machen. Ich werd zwei 
Snubber-Versionen ausprobieren, einmal 470pF/220R gemäß der Faustformel 
aus dem o.g.Snubberartikel, und die dort angegebenen Pauschalwerte von 
100nF/100R.

Ausserdem konnte ich noch einen Varistor mit entsprechender 
Spannungsfestigkeit auftreiben, würde das auch was bringen?

Ralf

von Ralf (Gast)


Lesenswert?

Kurzes Update:

Varistoren über den Relaiskontakten haben schon mal nix gebracht. Die 
Tage werd ich mal einen Snubber über die Kontakte pappen und gucken, ob 
das was bringt.
Ausserdem will ich mal gucken, ob's ne Auswirkung hat, wenn ich die 
Zuleitung zum Relais durch einen Ferrit führe bzw. in die Zuleitung eine 
CommonModeChoke reinklopfe.
Sobald ich die Möglichkeit habe, will ich mitm Oszi ran, damit ich sehe, 
ob da die Spannungsversorgung was abbekommt.
Desweiteren mach ich noch n Versuch mit direkt auf der Schaltung 
aufgebrachtem Relais, also ohne Kabel dazwischen.
Und zu guter Letzt noch die Prüfung, ob es hilft, die Relaisspannung 
extern einzuspeisen bzw. ein 12V-Relais zu nehmen und direkt mit der 
Eingangsspannung aufs Relais zu gehen.

Ich geb nicht auf :)

Ralf

von Anja (Gast)


Lesenswert?

Hallo,

wichtig ist vor allem die Verdrahtung am Mikrocontroller.
(insbesonders Gnd-Leitung)
Du solltest einen Leistungs-Gnd (Sternpunkt beim Netzteil-Elko) zu den 
Relais haben und einen Logik-Gnd (Sternpunkt beim Prozessor Gnd) für den 
Prozessor und den Resetgenerator. (Dasselbe gilt natürlich auch für die 
5V).

Den Reset-Generator würde ich am Ausgang auch nochmal abblocken.
(Die Versorgung ist hoffentlich schon abgeblockt).
Die Quarz-Kondensatoren brauchen eine eigene Leitung zum 
Mikroprozessor-Gnd.

Besser als Common-Mode Drosseln sind normalerweise Serienwiderstände 
1-10KOhm. (die Pull-ups mußt Du dann auf 100k erhöhen oder auf die 
Prozessorseite setzen).
mit Common-Mode Drosseln erreicht man kaum mehr als 300-1000 Ohm im 
interessierenden Frequenzbereich. Mit Ferriten auch nur wenn man einige 
10 cm Leitung im Ferrit hat (ggf. mehrfache Windungen).

von Anja (Gast)


Lesenswert?

Sehe gerade die Leiterplatte ist schon fertig.

Da hilft nur noch die Brute-Force Methode.
Leiterplatte in ein Metallgehäuse (Weißblech) und alle Zuleitungen (zum 
Relais und zum Steckernetzteil) über Durchführungskondensatoren (>= 1nF) 
ins Gehäuse führen.

Eventuell hilft es auch eine Kupferfläche (kaschierte Leiterplatte) 
unter die
Schaltung zu setzen und alle Zuleitungen über kurz (Bruchteile von 
Millimetern) angeschlossene Keramikkondensatoren (1-10nF) auf die 
Kupferfläche abzufiltern.

von Klaus (Gast)


Lesenswert?

Wie ist das Layout, hast du ein Photo von der Platine ?

von Ralf (Gast)


Lesenswert?

Hallo Anja & Klaus,

> Du solltest einen Leistungs-Gnd (Sternpunkt beim Netzteil-Elko) zu den
> Relais haben und einen Logik-Gnd (Sternpunkt beim Prozessor Gnd) für den
> Prozessor und den Resetgenerator. (Dasselbe gilt natürlich auch für die
> 5V).
Auf der Platine befinden sich eine VCC/GND Fläche auf TOP/BTM.
Die Sternverdrahtung hab ich dummerweise nicht realisiert, bin direkt 
jeweils in die Flächen.

> Den Reset-Generator würde ich am Ausgang auch nochmal abblocken.
> (Die Versorgung ist hoffentlich schon abgeblockt).
> Die Quarz-Kondensatoren brauchen eine eigene Leitung zum
> Mikroprozessor-Gnd.
Der Watchdog ist mit 100nF abgeblockt, erst dann gehts in die Fläche. 
Dasselbe gilt für den Controller.
Die Quarzkondensatoren gehen direkt in die Fläche. Gibts einen Grund, 
warum ich die Caps erst am Controller an GND anbinden sollte?

> Besser als Common-Mode Drosseln sind normalerweise Serienwiderstände
> 1-10KOhm. (die Pull-ups mußt Du dann auf 100k erhöhen oder auf die
> Prozessorseite setzen).
Du meinst Serienwiderstände zu den Gates der FETs?

> mit Common-Mode Drosseln erreicht man kaum mehr als 300-1000 Ohm im
> interessierenden Frequenzbereich. Mit Ferriten auch nur wenn man einige
> 10 cm Leitung im Ferrit hat (ggf. mehrfache Windungen).
Wie gesagt, muss ich ausprobieren, und was erstmal ganz wichtig ist, ist 
eben die Untersuchung, was genau da auf welcher Leitung passiert, sonst 
tapps ich nur im Dunkeln. Muss gucken, dass ich n Oszi und n Trenntrafo 
zum Tatort bringe.

> Sehe gerade die Leiterplatte ist schon fertig.
Ist nicht schlimm, ist ein Prototyp :)

> Leiterplatte in ein Metallgehäuse (Weißblech) und alle Zuleitungen (zum
> Relais und zum Steckernetzteil) über Durchführungskondensatoren (>= 1nF)
> ins Gehäuse führen.
Ein Blech hab ich mal versuchshalber unter die Schaltung gelegt, sowohl 
GND- als auch PE-Anbindung (= Funktionserde ?) haben nicht geholfen.
Sind Durchführungskondensatoren spezielle Kondensatoren? Oder meinst du 
ganz normale Abblockfunktion?

> Eventuell hilft es auch eine Kupferfläche (kaschierte Leiterplatte)
> unter die Schaltung zu setzen und alle Zuleitungen über kurz (Bruchteile
> von Millimetern) angeschlossene Keramikkondensatoren (1-10nF) auf die
> Kupferfläche abzufiltern.
Müsste die Fläche dann nicht mit GND verbunden sein, damit die Störungen 
abgeleitet werden können?

Ralf

von Anja (Gast)


Lesenswert?

>Auf der Platine befinden sich eine VCC/GND Fläche auf TOP/BTM.
>Die Sternverdrahtung hab ich dummerweise nicht realisiert, bin direkt
>jeweils in die Flächen.

Wo liegen dann die Leitungen? Wenn die auch auf TOP/BTM liegen kannst Du 
die "Flächen = Schweizer Käse" vergessen. Bei richtigen Flächen sollte 
das von Dir geschilderte Problem nicht auftreteh.
Trotzdem würde ich bei Multilayer den Netzteil und I/O-Gnd durch 
Räumliche Trennung und Segmentierung der Massefläche vom Logik-Gnd 
trennen.

>Die Quarzkondensatoren gehen direkt in die Fläche. Gibts einen Grund,
>warum ich die Caps erst am Controller an GND anbinden sollte?

Wenns eine echte Fläche ist sollte sie niederinduktiv genug sein, zumal 
der GND-Pin direkt daneben sitzt. Ansonsten (bei 2-Lagen-Layout) koppeln 
Störspannungen auf die Leitung ein.
Beispielrechnung von mir siehe hier:
Beitrag "EMV Fragestellung"
Wobei ich bezweifle daß bei SMD-Technik von der Fläche außer parasitärer 
Kapazität viel übrig bleibt.

>Du meinst Serienwiderstände zu den Gates der FETs?
Ja

>Muss gucken, dass ich n Oszi und n Trenntrafo zum Tatort bringe.

Der Oszi wird auch gestört. Es wird extrem schwierig brauchbare 
Messungen zu kriegen.
Bastel Dir lieber aus einem alten Relais eine Klingel (über 
Öffnerkontakt) und schließe das mal parallel zum Steckernetzteil oder zu 
VCC/GND dort wo deine Relais angeschlossen werden. Dann mit dem 
"EMV-Daumen" oder auch einer metallischen Prüfspitze sämtliche Pins bzw. 
das Metallgehäuse des Quarzes berühren um den empfindlichsten 
herauszufinden. (du brauchst natürlich irgendeinen Indikator ob Dein 
Programm noch richtig läuft).
Falls es das Quarzgehäuse ist hilft vielleicht es an deine Massefläche 
mit anschließen.

>Ein Blech hab ich mal versuchshalber unter die Schaltung gelegt, sowohl
>GND- als auch PE-Anbindung (= Funktionserde ?) haben nicht geholfen.
>Sind Durchführungskondensatoren spezielle Kondensatoren? Oder meinst du
>ganz normale Abblockfunktion?

Ich habe verstanden daß Du Schutzkleinspannung (Steckernetzteil hast) da 
brauchst Du keinen PE (ist nur für Berührschutz) die EMV-Ströme fließen 
vor allem über parasitäre Kapazitäten. Bei Deinen "Flächen" auf der 
Leiterplatte sind diese parasitären Kapazitäten schon sehr groß so daß 
eine Fläche unter der Leiterplatte wenig bringt. In Deinem Fall muß es 
mindestens ein "U-Förmiges" Blech um die Leiterplatte sein. Es bringt 
auch nichts den GND alleine an diese Fläche anzuschließen. Alle 
Leitungen die Deine Leiterplatte verlassen müssen abgeblockt werden. Den 
Gnd kann man (an einer Stelle) direkt anschließen oder auch über einen 
Filterkondensator. In Größeren Systemen wird man Filterkondensatoren 
wegen der sonst entstehenden Masseschleifen bevorzugen.

Durchführungskondensatoren sind für die Störungen sehr niederinduktive 
Bauteile (Eigeninduktivität mind Faktor 3-4 unter dem was ein 
SMD-Chip-Kondensator ohne Anschlussleitungen zu bieten hat). Jeder halbe 
Millimeter Anschlußleitung für den Kondensator verschlechtert die 
Filterwirkung schon wieder etwas.

>Müsste die Fläche dann nicht mit GND verbunden sein, damit die Störungen
>abgeleitet werden können?

Die Störungen kommen über alle Leitungen herein und werden über 
parasitäre Kapazitäten auf deiner Schaltung abgestrahlt. Du willst haben 
daß die Störungen alle auf die "Gehäusefläche = Äquipotentialfäche" 
gelangen und von dort aus abgestrahlt werden. Deine parasitären 
Kondensatoren dürfen keinerlei HF-Spannungsdifferenz sehen, damit die 
Störströme nicht über Deine Leiterplatte fließen. -> alle Leitungen 
müssen gefiltert werden.
In Deinem Fall reicht eine einfache Fläche als Gehäuseersatz nicht 
(s.o.)

von Falk B. (falk)


Lesenswert?

@  Ralf (Gast)

>Auf der Platine befinden sich eine VCC/GND Fläche auf TOP/BTM.
>Die Sternverdrahtung hab ich dummerweise nicht realisiert, bin direkt
>jeweils in die Flächen.

Ist meistens OK, ein gute Massefläche ist sehr niederohmig.

>Die Quarzkondensatoren gehen direkt in die Fläche.

Ist meistens auch OK.

> Gibts einen Grund,
>warum ich die Caps erst am Controller an GND anbinden sollte?

Nicht schon wieder das Thema!

Aber!

Ein Bild sagt mehr als tausend Worte! Aber bitte mit richtigen 
Bildformate!

MFG
Falk

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.