Forum: Mikrocontroller und Digitale Elektronik Störsignale bei LCD 4x20 an AT-Mega 8


von Wolfgang K. (koksi)


Angehängte Dateien:

Lesenswert?

Hallo!

Ich habe ein Problem mit meinem LCD, angeschlossen an einem AT-Mega 8.
Im Anhang dazu die Schaltung.

Prinzipiell vorweg, die ganze Schaltung funktioniert im Dauerbetrieb und 
auch die Ansteuerung des Displays läuft einwandfrei ohne Fehler.


Mein Problem ist nun, dass die ganze Schaltung in einem kleinen 
Metallkasten untergebracht ist, wo auch 230V-Leitungen innen vorbeigehen 
(z.B. für die Spannungsversorgung und auch geschaltete 230V-Signale von 
den Relais für 2 230V-LED-Lampen (Telemechanique) und einen kleinen 
230V-Stellmotor mit ca. 0,1A Stromaufnahme.

Wenn nun ein Ausgang schaltet, auch wenn es nur der für eine kleine 
LED-Lampe ist, ist es relativ oft der Fall, dass das Display entweder 
wirre Zeichen an verschiedenen Stellen ausgibt (auch an solchen, die 
überhaupt nie beschrieben werden) oder aber auch dass es sich 
verabschiedet und gar nichts mehr anzeigt, ausser der 
Hintergrundbeleuchtung die noch leuchtet (der ganze Text verschwindet).

Wenn wirre Einzelzeichen ausgegeben werden, läuft die Ausgabe der 
Variablen weiter und zeigt diese auch richtig an, nur dass halt an 
machen Stellen, wo eigentlich nichts steht, dann die wirren Zeichen 
erhalten bleiben. Egal ob wirre Zeichen oder Komplettausfall des LCD, 
der Mikroprozessor ist in keiner Weise betroffen und funktioniert auch 
dann noch.

Aus früheren Tipps habe ich schon extra einen Pufferkondensator vor die 
Versorgungsspannung des LCD geschaltet und auch die Versorgungsleitung 
des LCD über einen 100R-Widerstand an die +5V angeschlossen.

An der Ansteuerung im Programm kann es eigentlich nicht liegen, da im 
fliegenden Aufbau alles super funktioniert, nur im Kasten drin dann 
dürften die 230V-Signale anscheinend zu stark in die Datenleitungen des 
LCD einstreuen.

Die Leitungen von der Platine zum Display laufen über ein 16-poliges 
Flachbandkabel.


Meine Frage nun:

-) Kann eine so kleine geschaltete Last an der 230V-Leitung schon die 
Kommunikation zum LCD stören? Wenn ja, gibt es noch andere Möglichkeiten 
ausser die Leitungen weit auseinander zu halten? Ist ja leider alles in 
einer kleinen (25x15x10cm) Box untergebracht und sind schon so weit wie 
möglich entfernt.

-) Kann es eine Einstreuung vom Relay auf die Massefläche während des 
Schaltvorganges geben, auf dass das LCD reagiert?
(Prinzipiell sind im Ansteuer-IC ULN2003A ja eigentlich Freilaufdioden 
integriert.)

Im Anhang dazu auch die Platine.


Ich hoffe Ihr könnt mir bei meinem Problem helfen.

mfg
Koksi

von Wolfgang K. (koksi)


Lesenswert?

Hat sonst noch niemand Probleme mit Störsignalen beim LCD gehabt?

mfg

von Peter B. (pbuenger)


Lesenswert?

Hast Du keinerlei Entstörung (Snubber) über den Relaiskontakten?

Peter

von Wolfgang K. (koksi)


Lesenswert?

Nein habe ich nicht. Sollte dies immer verwendet werden oder gibt es da 
spezielle Fälle?

mfg

von Peter B. (pbuenger)


Lesenswert?

Spätestens wenn Du was Induktives schaltest, sollte da ein Snubber dran. 
Kostet fast nix und Tips zur Dimensionierung findest Du hier im Forum.

Ein weiteres Einfallstor für Störungen ist Dein Netzteil: 
Burst-Störungen auf der Netzleitung rauschen bei Deinem Design mangels 
Filter direkt bis zum Prozessor durch. Es gibt da so schöne einlötbare 
Filter von Schaffner, ein Test wäre mir das wert.

Peter

von Thomas D. (thomasderbastler)


Lesenswert?


von Norbert S. (Firma: DatenTechnikSchwarz) (schwarno)


Lesenswert?

Peter Bünger schrieb:
> Hast Du keinerlei Entstörung (Snubber) über den Relaiskontakten?
>
> Peter

Die Freilaufdioden sind im ULN 2003 schon integriert.
Sind also nicht mehr nötig.

von Wolfgang K. (koksi)


Lesenswert?

Ein Entstörfilter ist direkt am Motor angelötet.
Ein Filter eingangsseitig an der Platine wäre sicher nicht verkehrt.

Danke schon mal für die Antworten!

Interessant wäre noch eine Antwort von jemandem der die gleichen oder 
ähnliche Probleme hatte wie ich und was da effektiv hilft, die 
Datenübertragung zum LCD störungssicherer zu machen.

von J.-u. G. (juwe)


Lesenswert?

Norbert Schwarz schrieb:
> Peter Bünger schrieb:
>> Hast Du keinerlei Entstörung (Snubber) über den Relaiskontakten?
>>
>> Peter
>
> Die Freilaufdioden sind im ULN 2003 schon integriert.
> Sind also nicht mehr nötig.

Snubber sind etwas anderes als Freilaufdioden.
http://www.mikrocontroller.net/articles/Snubber

von Norbert S. (Firma: DatenTechnikSchwarz) (schwarno)


Lesenswert?

Allgemein:
Das Layout entspricht von den Abständen nicht den Vorschriften.
Um eine sichere Trennung zwischen den Stromkeisen zu erreichen müssen 
die Luft- und Kriechstrecken 5,5mm betragen.

Z.B. Ist die Sicherung viel zu dicht an der Massefläche. Relaiskontakte 
zur Schaltung auch keine 5,5mm.

Ansonsten ist das ganze Layout aus EMV Sicht eher schlecht bis sehr 
schlecht.

Quarz mit den beiden Kondensatoren zu weit vom IC entfernt.

Leiterbahnen unnötig zu breit , dadurch kann keine Massfläche zwischen 
den Signalen entstehen.

Der Übergabestecker zum Display ist recht weit vom Atmega entfernt.

Soll das Layout einseitig werden ? Oder warum sind so wenig Bahnen bzw. 
keine Fläche auf der Oberseite.

Zudem würde ich die Probleme mit den Störungen auf die Beschaltung zu 
den Klemmen sehen. Die führen ungefiltert auf den Atmega, das muss 
schief gehen.
Hier müsste auf jeden Fall bedämpft werden.
RC-Beschaltung(en), Varistor(en) oder Suppressordiod(en) wären schon mal 
ein Vorschlag.

von Norbert S. (Firma: DatenTechnikSchwarz) (schwarno)


Lesenswert?

J.-u. G. schrieb:
> Norbert Schwarz schrieb:
>> Peter Bünger schrieb:
>>> Hast Du keinerlei Entstörung (Snubber) über den Relaiskontakten?
>>>
>>> Peter
>>
>> Die Freilaufdioden sind im ULN 2003 schon integriert.
>> Sind also nicht mehr nötig.
>
> Snubber sind etwas anderes als Freilaufdioden.
> http://www.mikrocontroller.net/articles/Snubber

Das Snubber keine Freilaufdiode ist, ist schon klar.
Aber bei den kleinen Relais sind Snubber doch etwas übertrieben.
Was soll den da stören..??? Der Rest der Schaltung ist eher 
problematisch.

von Norbert S. (Firma: DatenTechnikSchwarz) (schwarno)


Lesenswert?

Parallel zu den Relaiskontakten würde ich Varistoren empfehlen.
Als Snubber :-)

von J.-u. G. (juwe)


Lesenswert?

Norbert Schwarz schrieb:
> Parallel zu den Relaiskontakten

Genau das war gemeint. Offensichtlich ein Mißverständnis. :)

von Ingo (Gast)


Lesenswert?

Ich hatte ähnliche Probleme mit einem Bremschopper. Immer wenn der 
Bremsstrom > 30A war, hatte ich wirre Zeichen am LCD. Ein 1nF am Enable 
des LCD und 100pF an den Datenleitungen brachten Besserung. Ich habe 
außerdem noch einen 3,3uF Folie direkt an die Versorgung auf dem LCD 
gepackt.


Ingo

von holger (Gast)


Lesenswert?

Ich würde einfach mal einen Klappferrit über das
Displaykabel machen.

von Norbert S. (Firma: DatenTechnikSchwarz) (schwarno)


Lesenswert?

Ich habe mir die Schaltung und das Layout nochmal angesehen.
Die Resetbeschaltung mit den mehreren Null-Ohmbrücken geht kreuz und 
quer über das Board, und auch noch direkt an den Relaisausgängen vorbei.
Schlechter geht es kaum, von der EMV her.
Wenn über die Relaiskontakte Stromspitzen fliessen, wird der ganze 
Atmega gestört.
Zudem ist der Abstand vom Logikteil zu den Relaiskontakten viel zu 
klein.

Die Schaltungsteile müssen viel besser getrennt werden.

Wofür die Trennung vom ISP Stecker mit dem DIP-Schalter.
Reset-Pin -> 10K nach VCC und 22nF nach GND und fertig.
Das läuft dann auch mit ISP Adapter.

von Norbert S. (Firma: DatenTechnikSchwarz) (schwarno)


Lesenswert?

Die Auslegung des Netzteiles ist merkwürdig.
Warum nur 7V vor dem 7805, und denn die Relais nur mit 5V betreiben ?

Es wäre viel besser dem 7805 sagen wir als Beispiel 12 V zu geben, und 
dann die Relais mit 12 V Spule einzusetzen.
(Der ULN kann sowieso noch viel mehr Spannung ab :-)
Dann stören die Spulenströme der Relais nicht die Versorgung des Atmega.

von Wolfgang K. (koksi)


Lesenswert?

Norbert Schwarz schrieb:
> Allgemein:
> Das Layout entspricht von den Abständen nicht den Vorschriften.
> Um eine sichere Trennung zwischen den Stromkeisen zu erreichen müssen
> die Luft- und Kriechstrecken 5,5mm betragen.
>
> Z.B. Ist die Sicherung viel zu dicht an der Massefläche. Relaiskontakte
> zur Schaltung auch keine 5,5mm.

OK, werde ich noch vergrößern.

> Ansonsten ist das ganze Layout aus EMV Sicht eher schlecht bis sehr
> schlecht.
>
> Quarz mit den beiden Kondensatoren zu weit vom IC entfernt.

Das war eine Notlösung, normalerweise sind sie direkt neben dem µC.
Dachte ein bisschen mehr Abstand kann doch nicht gleich alles lahmlegen 
:))
Werde es aber auch ändern...

> Leiterbahnen unnötig zu breit , dadurch kann keine Massfläche zwischen
> den Signalen entstehen.

Das kommt von "lieber ein bisschen mehr, als zu wenig" und vom Platinen 
selber ätzen von früher mit billigen Mitteln. Da waren zu kleine 
Leiterbahnen ein Horror. Wieviel mil Breite kann man ohne Bedenken für 
Signale ala Eingangspins, LCD, usw. verwenden?

> Der Übergabestecker zum Display ist recht weit vom Atmega entfernt.

Das war dann das Problem mit kleiner Platine, weil kein Platz.

> Soll das Layout einseitig werden ? Oder warum sind so wenig Bahnen bzw.
> keine Fläche auf der Oberseite.

Ja soll eine einseitige Platine sein und die oberen Verbindungen sind 
nur Drahtbrücken.

> Zudem würde ich die Probleme mit den Störungen auf die Beschaltung zu
> den Klemmen sehen. Die führen ungefiltert auf den Atmega, das muss
> schief gehen.
> Hier müsste auf jeden Fall bedämpft werden.
> RC-Beschaltung(en), Varistor(en) oder Suppressordiod(en) wären schon mal
> ein Vorschlag.

Werde das mit dem Filter machen, wie oben schon erklärt:
http://www.reichelt.de/Entstoerfilter/FFP-01-55002000/3/index.html?;ACTION=3;LA=446;ARTICLE=124010;GROUPID=3255;artnr=FFP-01+55002000;SID=12Tjaf2H8AAAIAAAryMfI5264e84f046c0f26a864eaa7907ee893



Norbert Schwarz schrieb:
> Parallel zu den Relaiskontakten würde ich Varistoren empfehlen.
> Als Snubber :-)

Kannst du mir da Konkret einen empfehlen? Ist da dabei ein Unterschied 
ob 230V-Wechsel oder 12V-Gleich geschaltet wird beim Varistor?



Ingo schrieb:
> Ein 1nF am Enable
> des LCD und 100pF an den Datenleitungen brachten Besserung. Ich habe
> außerdem noch einen 3,3uF Folie direkt an die Versorgung auf dem LCD
> gepackt.

Das hört sich auch sehr interessant an. Werd ich mir merken.



holger schrieb:
> Ich würde einfach mal einen Klappferrit über das
> Displaykabel machen.

Ebenso dieser Beitrag ;)



Norbert Schwarz schrieb:
> Ich habe mir die Schaltung und das Layout nochmal angesehen.
> Die Resetbeschaltung mit den mehreren Null-Ohmbrücken geht kreuz und
> quer über das Board, und auch noch direkt an den Relaisausgängen vorbei.
> Schlechter geht es kaum, von der EMV her.
> Wenn über die Relaiskontakte Stromspitzen fliessen, wird der ganze
> Atmega gestört.

Prinzipiell war das für mich der einzige sichtliche Ausweg, um die 
Reset-Leitung vom ISP-Stecker zum µC auf einer einseitigen Platine zu 
bringen.
Der µC selber wird schätz ich mal nicht gestört, da die Regelung immer 
funktioniert und nie ausgefallen ist. Nur das LCD verabschiedet sich.

> Die Schaltungsteile müssen viel besser getrennt werden.

Werde ich in Zukunft machen.

> Wofür die Trennung vom ISP Stecker mit dem DIP-Schalter.

Im Endeffekt unnötig, da hast du Recht... :)

> Reset-Pin -> 10K nach VCC und 22nF nach GND und fertig.
> Das läuft dann auch mit ISP Adapter.

Meinst du jetzt den Reset-Pin vom µC? Der ist ja schon mit 10k nach VCC 
verbunden und ein 1µF nach Masse. Zusätzlich dazu halt noch die 
manuellen Reset-Kontake und die Diode. Habe diese Beschaltung immer so 
verwendet und keine Probleme damit gehabt. Was ist daran falsch bzw. 
verbesserungswürdig?
Man ist ja lernfähig ;)



Schon mal Vielen Dank an Euch für die ganzen Ratschläge und Tipps, wie 
ich mich schaltungsdesign-mäßig noch verbessern kann.

mfg
Koksi

von Wolfgang K. (koksi)


Lesenswert?

Norbert Schwarz schrieb:
> Die Auslegung des Netzteiles ist merkwürdig.
> Warum nur 7V vor dem 7805, und denn die Relais nur mit 5V betreiben ?
>
> Es wäre viel besser dem 7805 sagen wir als Beispiel 12 V zu geben, und
> dann die Relais mit 12 V Spule einzusetzen.
> (Der ULN kann sowieso noch viel mehr Spannung ab :-)
> Dann stören die Spulenströme der Relais nicht die Versorgung des Atmega.

Das habe ich früher auch immer mit 12V gemacht, das Problem ist dann der 
7V-Spannungsabfall am 7805 und bei Strömen über 0,5A wird der dann schon 
ziemlich warm (mit Kühlkörper). Deswegen die 5V-Spulen. Aber jetzt wo du 
es sagst ist es einleuchtend mit dem reinstören aufgrund des gleichen 
Pegels.
Danke

von Norbert S. (Firma: DatenTechnikSchwarz) (schwarno)


Lesenswert?

Norbert Schwarz schrieb:
> Parallel zu den Relaiskontakten würde ich Varistoren empfehlen.
> Als Snubber :-)

> Kannst du mir da Konkret einen empfehlen? Ist da dabei ein Unterschied
> ob 230V-Wechsel oder 12V-Gleich geschaltet wird beim Varistor?

Hier der Link zu Reichelt.
http://www.reichelt.de/Heissleiter-Varistoren/VDR-0-6-270/3/index.html?;ACTION=3;LA=446;ARTICLE=22316;GROUPID=3114;artnr=VDR-0%2C6+270;SID=11UDTYr38AAAIAAHQb-Ewd0422de8e901a4587e21feafeaab7215

275 V Varistor RM 7,5mm sollte für die Lasten ein den Relais ausreichen.

Für 12 V DC nimmt man die 30 V Variante.

von Norbert S. (Firma: DatenTechnikSchwarz) (schwarno)


Lesenswert?

Wolfgang Kogler schrieb:
> Norbert Schwarz schrieb:
>> Die Auslegung des Netzteiles ist merkwürdig.
>> Warum nur 7V vor dem 7805, und denn die Relais nur mit 5V betreiben ?
>>
>> Es wäre viel besser dem 7805 sagen wir als Beispiel 12 V zu geben, und
>> dann die Relais mit 12 V Spule einzusetzen.
>> (Der ULN kann sowieso noch viel mehr Spannung ab :-)
>> Dann stören die Spulenströme der Relais nicht die Versorgung des Atmega.
>
> Das habe ich früher auch immer mit 12V gemacht, das Problem ist dann der
> 7V-Spannungsabfall am 7805 und bei Strömen über 0,5A wird der dann schon
> ziemlich warm (mit Kühlkörper). Deswegen die 5V-Spulen. Aber jetzt wo du
> es sagst ist es einleuchtend mit dem reinstören aufgrund des gleichen
> Pegels.
> Danke

Okay...wenn man soviel aus der 5V zieht dann ist das mit den 7V am 7805 
schon gut so.
Dann würde ich aber trotzdem die 5V Relais mit den 7V vor dem 7805 
ansteuern.
Da am ULN ca. 1 V abfällt, ist das Relais noch im guten Range.
Stört aber nicht die VCC vom µC.
Wenn die Spannung wirklich nur 7 V am 7805 beträgt, dann sollte das Ding 
aber eine LowDrop Version sein.

von Wolfgang K. (koksi)


Lesenswert?

Norbert Schwarz schrieb:
> Wenn die Spannung wirklich nur 7 V am 7805 beträgt, dann sollte das Ding
> aber eine LowDrop Version sein.

Hab gerade nachgeschaut, habe den 9V-Trafo verbaut. Steht noch falsch im 
Schaltplan.

mfg

von Ingo (Gast)


Lesenswert?

Ich hatte auch Klappferrite verbaut, brachte aber wenig, daher sind sie 
wieder rausgeflogen. Schade das man diesen Störnebel nicht optisch sich 
ar machen kann :(

Ingo

von Wolfgang K. (koksi)


Lesenswert?

Ingo schrieb:
> Schade das man diesen Störnebel nicht optisch sich
> ar machen kann :(

Das stimmt, wäre ideal für solche Fälle! ;)

von Wolfgang K. (koksi)


Lesenswert?

Was mich allgemein noch sehr interessieren würde:

Wenn das Display ausgefallen ist (also keine Zeichen mehr anzeigt), kann 
ich es dann neu initialisieren oder irgendwie resetten, um wieder etwas 
anzuzeigen?

Das wäre dann die Sparlösung, mit welcher ich bei dieser Schaltung auch 
leben könnte, da ja schon alles verbaut ist. Für die Zukunft für andere 
Schaltungen wird dann das Layout dann von Grund auf gleich verbessert.

mfg


Edit: Neu initialisieren oder resetten, während der µC weiter läuft, 
also nicht Stromversorgung kappen ;)

von Wolfgang K. (koksi)


Lesenswert?

So, habe mal alle Punkte zusammengefasst, damit auch Andere, die solche 
oder ähnliche Probleme mit dem LCD haben, diese Liste zur Fehlersuche 
und Optimierung heranziehen können.

-) Netzfilter für 230V am Eingang der Platine
   http://www.reichelt.de/Entstoerfilter/FFP-01-55002000/3/index.html?;ACTION=3;LA=446;ARTICLE=124010;GROUPID=3255;artnr=FFP-01+55002000;SID=12Tjaf2H8AAAIAAAryMfI5264e84f046c0f26a864eaa7907ee893

-) Varistoren als Snubber beim Schalten von Induktivitäten verwenden
   230VAC: 275V-Variante mit 0,6W und RM=7,5mm
   http://www.reichelt.de/Heissleiter-Varistoren/VDR-0-6-270/3/index.html?;ACTION=3;LA=446;ARTICLE=22316;GROUPID=3114;artnr=VDR-0%2C6+270;SID=11UDTYr38AAAIAAHQb-Ewd0422de8e901a4587e21feafeaab7215
   12VDC: 30V-Variante mit 0,6W und RM=7,5mm
   http://www.reichelt.de/Heissleiter-Varistoren/VDR-0-6-30/3/index.html?;ACTION=3;LA=2;ARTICLE=22317;GROUPID=3114;artnr=VDR-0%2C6+30;SID=12UDYtd38AAAIAABsqPzMb006ff5e886d207905797a9ceaaa681e

-) Luft- und Kriechstrecken mindestens 5,5mm zwischen 230V- und 
Signalbereich

-) Masseflächen zwischen Signalleitungen

-) Datenleitungen zum LCD kurz halten -> LCD-Stecker so nah wie möglich 
an den µC

-) Kondensatoren bei den Signalen zum LCD
   100nF und 1µF bei den Versorgungsleitungen
   1nF bei Enable
   100pF bei den Datenleitungen

(   -) Klappferrit über das LCD-Datenkabel   )



Hat jemand noch andere Ideen oder noch was dazu hinzuzufügen?
Gibt es eine Möglichkeit der "Re-Initialisierung" des LCD's?

mfg
Koksi

von holger (Gast)


Lesenswert?

>Gibt es eine Möglichkeit der "Re-Initialisierung" des LCD's?

Ja, sicher. Ruf die Routine zur Initialisierung des Displays
in regelmäßigen Abständen auf. Niemand hindert dich daran.

von Wolfgang K. (koksi)


Lesenswert?

So, noch etwas zu den Punkten:

-) 100R-Widerstand in die Versorgungsleitung

-) Metallrahmen des Displays isoliert aufbauen

-) Kabellänge so kurz wie möglich

-) Masse- und Versorgungsleitungen der einzelnen Signalbereiche getrennt 
zur Versorgung führen


Wie sieht es jetzt mit meiner Reset-Beschaltung aus?
Gibt es da noch was zu verbessern?

mfg

von Hans Schmidt (Gast)


Lesenswert?

Gab / gibt es eine Lösung schon zu dem Problem ?

von Wolfgang K. (koksi)


Lesenswert?

Ja eh schon wie die oben beschriebenen Massnahmen, um die 
Platine/Verbindungskabel störsicherer zu machen. Aber da die Platine 
schon fertig war, konnte bei mir nur mehr provisorisch etwas gerichtet 
werden (Kondensatoren, Widerstand, Schirm über das Flachbandkabel, 
usw.).
Das hat aber soweit gereicht, dass ich damit leben konnte.
Aber wie schon von den Anderen gesagt, ein besseres Layout 
(störsicherer) ist mal der erste wichtige Punkt.

mfg

von Hans Schmidt (Gast)


Lesenswert?

Ich habe so ein ähnliches Problem. Sobald ich Relais schalte, 
verschwindet die Anzeige am Display ganz oder Teilweise.

Ich bin jedoch laie in so Sachen.

Wo genau / und welche Kondensatoren wurden wie eingebaut?
An den Datenleitungen am Display gegen Masse? oder nur an der 
Stromversorgung? Habt ihr eventuell ein Foto von der Lösung ?

von Wolfgang K. (koksi)


Lesenswert?

Steht alles ein paar Posts weiter oben welche Kondensatoren in welche 
Leitung geschalten werden. Bilder gibts keine mehr, die Maschine ist 
nicht mehr in Verwendung.

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.