Forum: Mikrocontroller und Digitale Elektronik TLC5940 Problem mit Spannungsspitzen?


von Nico (Gast)


Lesenswert?

Hallo,

ich habe die letzten Tage über mal versucht, den TLC5940 zu verstehen 
und kann inzwischen meinen LEDs sogar sagen, was sie tun sollen :) Zum 
Steuern des TLC5940 hab ich einen Arduino Uno und Versorgunsspannung 
bekomme ich über ein Netzteil mit L7805 dahinter. Ansonsten is noch nix 
in der Schaltung.
Heute ist mir allerdings ein seltsames Verhalten aufgefallen, was fast 
immer eintritt, wenn ich mein Licht (also Zimmerlampe, nicht die LEDs) 
einschalte/ausschalte. Entweder es leuchten einfach irgendwelche LEDs 
und von meinem Programm merk ich gar nichts mehr oder mein Programm 
läuft weiter aber manche LEDs leuchten nicht mehr.
In letzterem Fall kann ich den Reset am Arduino drücken und danach läuft 
wieder alles. Abstecken der Versorgungsspannung hilft nichts, wenn ich 
sie dann anstecke, bleiben die LEDs aus.
Wenn allerdings manche LEDs permanent leuchten und ich Reset drücke, 
dann leuchtet danach nur noch die LED an OUT0 ganz schwach und sonst 
geht nix mehr. Dann kann ich Vcc abstecken und wieder anstecken, was 
erstmal nichts ändert, aber danach führt ein Reset wieder zum 
Normalverhalten.

Jetzt hab ich bim Suchen hier diesen Link gefunden: 
http://www.rn-wissen.de/index.php/Abblockkondensator
Ich hab in der Tat keine Kerkos verbaut, weil ich keine da habe. Bevor 
ich jetzt einkaufen gehe wollte ich mal nachfragen, ob das wirklich mein 
Problem lösen wird. In der Beschreibung ist ja die Rede von 
Schwankungen, die der Controller selber auslöst.
Aber meine Schwankungen kommen ja definitiv von außen. Ist für mich also 
auch ein 100nF Kondensator geeignet oder brauche ich etwas anderes?

Gruß
Nico

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


Lesenswert?

Nico schrieb:
> Heute ist mir allerdings ein seltsames Verhalten aufgefallen, was fast
> immer eintritt, wenn ich mein Licht (also Zimmerlampe, nicht die LEDs)
> einschalte/ausschalte.
Herzlich willkommen in der realen Welt. Diese Effekte nennt man EMV/ESD 
Störungen.

> Ich hab in der Tat keine Kerkos verbaut, weil ich keine da habe. Bevor
> ich jetzt einkaufen gehe wollte ich mal nachfragen, ob das wirklich mein
> Problem lösen wird.
Das ist nicht sicher. Aber du wirst jede Menge seltsamer Effekte haben, 
wenn du solche Blockkondensatoren/Entkopplungskondensatoren nicht 
direkt an jedem IC deiner Schaltung hast. Und kein Witz: es geht hier 
um Millimeter...

Lies mal den Beitrag "Abblockkondensator 1 µF oder 100 nF besser?", dann siehst du 
wie Profis sich bei diesem Thema in die Wolle kriegen können...  ;-)

BTW:
Wie groß ist der ganze Aufbau?
Wie ist die Masseführung zwischen den Modulen?

: Bearbeitet durch Moderator
von tomske (Gast)


Lesenswert?

Genau das von Dir beschriebene Verhalten hatte ich beim TLC5940 auch, 
weil ich dachte, ich könne bei diesem einfachen Testaufbau auf Blocker 
verzichten. Pustekuchen, die Blocker sind wichtig... Ich konnte die LEDs 
magisch durch Gesten "steuern" :-)

Gruß
Tomske

von Nico (Gast)


Lesenswert?

Lothar Miller schrieb:
> Herzlich willkommen in der realen Welt.

Danke, werd hier sicherlich noch viel Spaß haben mit Schaltungen, die 
nicht so arbeiten, wie ich mir das vorgestellt hab ;-)

Lothar Miller schrieb:
> Lies mal den Beitrag "Abblockkondensator 1 µF oder 100 nF besser?", dann
> siehst du
> wie Profis sich bei diesem Thema in die Wolle kriegen können...  ;-)

Das ist tatsächlich sehr interessant. Bin erst zur Hälfte gekommen und 
werd jetzt auch mal ins Bett gehen, aber morgen les ich das noch fertig.
Allerdings hat sich, bei dem was ich jetzt so gelesen hab, 
herauskristallisiert, das man seinen Kondensator eigentlich an die 
Schaltung anpassen müsste, bzw. an die Störungen, die man rausfiltern 
will. Also mein Arduino hat ja 16 MHz und die Datenübertragung an den 
TLC5940 läuft glaub ich mit 8 MHz. Aber wie soll ich denn feststellen, 
in welcher Größenordnung die Störungen sind, die meine Zimmerbeleuchtung 
verursacht? Mit nem Oszilloskop könnte man das möglicherweise, werd ich 
aber nicht so schnell haben... Gibts da vielleicht Erfahrungen?

Lothar Miller schrieb:
> BTW:
> Wie groß ist der ganze Aufbau?
> Wie ist die Masseführung zwischen den Modulen?

Das ganze is auf dem Steckbrett also momentan ist meine Masseführung so 
in der Größenordnung 10-20cm. Aber macht das denn überhaupt was aus? Ich 
mein meine Lampe hat bestimmt 10m an Kabel, bis da mal was von in meine 
Schaltung geht.

tomske schrieb:
> Genau das von Dir beschriebene Verhalten hatte ich beim TLC5940
> auch

Schön zu wissen, dass ich nicht alleine bin :-)

Gute Nacht allen die das vor Sonnenaufgang noch lesen :-)

Gruß
Nico

von Nico (Gast)


Lesenswert?

Hallo nochmal,

inzwischen habe ich einiges mit Kondensatoren herumribiert, aber nichts 
hilft...

Also hab jetzt 100nF zwischen Vcc und GND an meinem TLC. Hinterm 
Spannungsregler auch 100nF und davor davor hab ich verschiedenes 
getestet, 100nF, 10uF, 470uF, auch mal ne Spule in Serie, weil ich das 
irgendwo gelesen hab, aber nichts ändert irgendwas an meinem Problem.

Hat noch jemand eine Idee, wie ich die Störungen an meiner Schaltung 
verhindern kann?

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


Lesenswert?

Nico schrieb:
> Hat noch jemand eine Idee, wie ich die Störungen an meiner Schaltung
> verhindern kann?
Lothar Miller schrieb:
> BTW: Wie groß ist der ganze Aufbau?
> Wie ist die Masseführung zwischen den Modulen?
Mach mal ein Foto davon (300kB reichen da völlig)

von Nico (Gast)


Angehängte Dateien:

Lesenswert?

Ok hier ein Foto von meiner Schaltung. Hoffentlich erkennt man da 
genug...

von Sebastian H. (technik_freak)


Lesenswert?

Dein Spannungsregler sollte gemäß Datenblatt, Kondensatoren so nah wie 
möglich bekommen, sonst kann dieser schwingen.

von Nico (Gast)


Lesenswert?

Die sind so nah wie ich sie hin bekomm, zumindest die 100nF. Auf der 
Eingangsseite direkt neben den Pins vom Spannungsregler und auf der 
Ausgangsseite hab ich ihn jetzt testweise auch direkt an die Pins 
gesetzt, ändert aber am Verhalten nichts. Der Grund, dass ich ihn hier 
nicht direkt an den Pins lasse: wenn der Kondensator ein bisschen schräg 
steht, berührt er die Metallplatte am Spannungsregler und erzeugt nen 
Kurzschluss...

Übrigens sagt das Datenblatt eigentlich 100nF am Ausgang und 330nF am 
Eingang, nicht irgendwas mit uF. Hab ich auch so versucht, hat auch nix 
gebracht :(

von tomske (Gast)


Lesenswert?

Wie versorgst Du Deinen UNO? Ich sehe keine Verbindung zu Vin und GND 
(im Bereich "POWER" neben den "Analog In" Pins), so dass ich annehme, 
dass das extra geht? Über USB oder Netzteil am UNO? Was passiert, wenn 
auch der UNO über Deine Spannungsversorgung links auf dem Breadboard 
versorgt wird? (5V -> ist das noch ein 7805?) Zumindest ein gemeinsames 
GND hätte ich erwartet.

von Nico (Gast)


Lesenswert?

tomske schrieb:
> Über USB oder Netzteil am UNO?

Bisher wird er Arduino über USB versorgt. Wie hänge ich ihn denn an 
meine Spannungsversorgung? Soll ich einfach GND mit dem GND-Pin und 5V 
mit Vin-Pin verbinden? Oder mit 5V-Pin?

tomske schrieb:
> 5V -> ist das noch ein 7805?

Ja, ist es.

von Eumel (Gast)


Lesenswert?

Na zumindest GND vom UNO musst du mit dem GND deiner restlichen 
Schaltung verbinden!

von Nico (Gast)


Lesenswert?

Eumel schrieb:
> Na zumindest GND vom UNO musst du mit dem GND deiner restlichen
> Schaltung verbinden!

Oh wie geil, es geht! Dankeschön!! :-)
Auch tomske vielen Dank, hast das gemeinsame GND ja auch schon erwähnt^^

Jetzt nur noch, worauf gebe ich die 5V, wenn ich kein USB mehr verwenden 
will?

von Eumel (Gast)


Lesenswert?

Hast du auch verstanden wieso du das verbinden musst?

von Nico (Gast)


Lesenswert?

Naja, es hört sich für mich zumindest einleuchtend an, dass GND überall 
ein einheitliches Potenzial haben sollte. Hat das sonst noch einen 
weiteren Grund?
Was ich nicht versteh ist was meine Lampe für Störungen verursacht 
hat...

von Eumel (Gast)


Lesenswert?

Nico schrieb:
> Naja, es hört sich für mich zumindest einleuchtend an, dass GND überall
> ein einheitliches Potenzial haben sollte.

So isses :)

von tomske (Gast)


Lesenswert?

Du kannst Die 5V von Deiner Spannungsversorgung auf Vin am UNO geben 
(nicht auf die 5V-Pins!). Und GND an einen beliebigen GND am UNO. 
Funktionierts?

von Nico (Gast)


Lesenswert?

Öhm... ich hab das jetzt mal versucht, aber so wirklich funktionierts 
noch nicht. Schaut so aus, als würde sich der Arduino pausenlos 
resetten. Zwischendurch läufts mal ne halbe Sekunde, aber dann fängt 
auch wieder das L Lämpchen auf dem Arduino an zu blinken wie beim Reset. 
Meistens leuchten nur die ersten 2 LEDs hinterm TLC ganz kurz und dann 
gehts wieder von vorne los...
Ich hab das schon richtig verstanden, dass der Arduino jetzt nur noch 
über Vin seinen Strom bekommt, ja? USB hab ich abgesteckt.

von tomske (Gast)


Lesenswert?

Schau mal auf http://arduino.cc/de/Main/ArduinoBoardUno, dort wird 
erklärt, was Vin bedeutet. Ich nutze die Controller meistens auf einem 
Breadboard direkt, da weiß ich dann genau, was passiert (passieren 
sollte...=:-O).

von tomske (Gast)


Lesenswert?

...und jetzt kann es natürlich noch sein, dass die Versorgung, die Du 
auf dem Breadboard aufgebaut hast, die Probleme hat, die weiter oben 
angesprochen wurden... :-( Wie soll denn das Ganze aussehen, wenn es 
fertig ist?

von Nico (Gast)


Lesenswert?

Ah ja, hab natürlich die 5V an Vin genommen, was aber 7-12V braucht... 
Wenn ich die Spannung vor meinem 7805 nehm, dann scheint alles stabil zu 
laufen.
Controller direkt nutzen is mein Ziel wo ich hin will. Dachte nur zum 
Einstieg wär ein Arduino erstmal einfacher ;-)

von tomske (Gast)


Lesenswert?

Hallo Nico, schau Dir mal http://www.arduino.cc/en/Main/Standalone an. 
Wenn Du bereit bist, einen TLC5940 samt Regler auf ein Breadboard zu 
klatschen, dann ist das ne Fingerübung :-)

Am Anfang hab ich den Controller auf die Arduinoplatine gepackt (da ist 
eine Variante mit DIP-Sockelt anstelle von SMD sehr nützlich) und dort 
"programmiert" und danach wieder aufs Breadboard gesteckt. Inzwischen 
würde ich Dir empfehlen, Dir einen ISP-Pogrammer zu besorgen. Ich habe 
mir den USBtinyISP besorgt (ok, den muss man zusammenlöten...), und in 
meinen Augen ist der einzige Unterschied (falls Du die 
Arduino-Bibliotheken nutzen willst), dass Du im Menü in der Arduino-IDE 
auf Upload/Using Programmer klicken musst.

Ich bin da etwas "spartanischer" mit Makefiles und emacs unterwegs :-}

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.