Hallo Zusammen, ich habe zwölf TLC5940 zu einer Daisy-Chain verbaut und habe daran insgesamt 64 RGB-LEDs angeschlossen. Es befindet sich jeweils ein TLC5940 auf einem PCB. Die PCBs sind untereinander mit Flachbandkabel verbunden. Angesteuert werden die Chips in einer Daisy Chain mit einem Orange Pi Zero. Wenn ich jetzt versuche auf allen LEDs z.B. nur die Farbe Rot auszugeben kommt es teilweise vor das nicht alle LEDs leuchten oder das diese mit einer unterschiedlichen Helligkeit leuchten. Auch zeigt sich eine starke Abhängikeit von Schalthandlungen im Raum. Wenn ich z.B. eine Halogen-Lampe einschalte wird die Schaltung mitunter so stark gestört, dass zufällig LEDs ein- oder aus gehen. Ich habe vor jedem Chip einen 100nF Kerko und einen 4,7µF Elko zwischen VCC und GND aber das scheint das Problem nicht zu beseitigen. Die Kondensatoren befinden sich direkt an den Pins der Chips. Kann mir jemand einen Tipp geben in welchen Bereich ich suchen muss um das Problem in den Griff zu bekommen? Kann ich evtl. die Datenleitungen zu dem Chip noch entstören? Ich habe auch schon einen Klapp-Ferrit an dem Flachbandkabel ausprobiert. Das hat aber zu keiner Besserung geführt. Grüße Patrick
Patrick L. schrieb: > ich habe zwölf TLC5940 zu einer Daisy-Chain verbaut und habe daran > insgesamt 64 RGB-LEDs angeschlossen. Das ist schon ein bisschen was. Wieviel Strom ziehen dein LEDs maximal? Der TLC5940 kann 120mA/Pin! > Es befindet sich jeweils ein > TLC5940 auf einem PCB. Die PCBs sind untereinander mit Flachbandkabel > verbunden. Mit welcher Pinbelegung? Wieviele Adern für Masse und VCC? > Angesteuert werden die Chips in einer Daisy Chain mit einem > Orange Pi Zero. Kann der 5V Signale ausgeben? Denn der TLC5940 will die haben. > Wenn ich jetzt versuche auf allen LEDs z.B. nur die Farbe Rot auszugeben > kommt es teilweise vor das nicht alle LEDs leuchten oder das diese mit > einer unterschiedlichen Helligkeit leuchten. Da ist was instabil. > Auch zeigt sich eine starke Abhängikeit von Schalthandlungen im Raum. > Wenn ich z.B. eine Halogen-Lampe einschalte wird die Schaltung mitunter > so stark gestört, dass zufällig LEDs ein- oder aus gehen. Uups ;-) Die böse EMV mal wieder. > Ich habe vor jedem Chip einen 100nF Kerko Gut. >und einen 4,7µF Elko zwischen Könnte knapp werden, wenn man viele LEDs auf einmal schaltet. > VCC und GND aber das scheint das Problem nicht zu beseitigen. Die > Kondensatoren befinden sich direkt an den Pins der Chips. Zeig mal ein Bild von deinem Aufbau und Schaltplan. > Kann ich evtl. die Datenleitungen zu dem Chip noch entstören? Ich habe > auch schon einen Klapp-Ferrit an dem Flachbandkabel ausprobiert. Das hat > aber zu keiner Besserung geführt. ;-) Das sind zwar die ersten Maßnahmen, wenn die EMV Probleme macht, aber man sollte schon ansatzweise wissen, wie sie wirken. Hast du es erstmal mit nur einem TLC5940 probiert? Wie läuft es da?
Falk B. schrieb: > Das ist schon ein bisschen was. Wieviel Strom ziehen dein LEDs maximal? > Der TLC5940 kann 120mA/Pin! > Sind auf ungefähr 17mA pro LED eingestellt. Sind dann pro Chip 272mA > Mit welcher Pinbelegung? Wieviele Adern für Masse und VCC? > Die Pin-Belegung habe ich mal angehängt. > Kann der 5V Signale ausgeben? Denn der TLC5940 will die haben. > Ich versorge die TLC5940 selber mit einem 3,3V Low-Drop Festspannungsregler. Laut Datenblatt sollte das auch gehen. Dann passt das wieder mit den 3,3V des Orange Pi Zero. Bin natürlich bei solch "kleinen" Spannung-Pegeln auch anfälliger für Störungen. > Könnte knapp werden, wenn man viele LEDs auf einmal schaltet. > Kann ich noch erhöhen. Was wäre denn ein besserer Wert? 100µF? > Zeig mal ein Bild von deinem Aufbau und Schaltplan. > Habe ich mal angehängt. > Hast du es erstmal mit nur einem TLC5940 probiert? Wie läuft es da? Ja, hatte ich. Da lief es mal stabil und dann auch mal wieder nicht.... Masse Leitung über die Flachbandleitung ist teilweise eine bisschen dumm dimensioniert. Da muss ich nochmal dran.
Patrick L. schrieb: >> Das ist schon ein bisschen was. Wieviel Strom ziehen dein LEDs maximal? >> Der TLC5940 kann 120mA/Pin! >> > Sind auf ungefähr 17mA pro LED eingestellt. Sind dann pro Chip 272mA Klingt eher harmlos. >> Mit welcher Pinbelegung? Wieviele Adern für Masse und VCC? >> > Die Pin-Belegung habe ich mal angehängt. Naja, geht so, ist aber nicht optimal. GND sollte man weiter verteilen und im Idealfall direkt neben die Taktleitungen legen. >> Kann der 5V Signale ausgeben? Denn der TLC5940 will die haben. >> > Ich versorge die TLC5940 selber mit einem 3,3V Low-Drop > Festspannungsregler. Laut Datenblatt sollte das auch gehen. Dann passt > das wieder mit den 3,3V des Orange Pi Zero. Bin natürlich bei solch > "kleinen" Spannung-Pegeln auch anfälliger für Störungen. OK. >> Könnte knapp werden, wenn man viele LEDs auf einmal schaltet. >> > > Kann ich noch erhöhen. Was wäre denn ein besserer Wert? 100µF? Irgendwas im Bereich 22-100uF. Da muss man ggf. auch mal messen. Und testen. Mach mal ein Lauflicht, bei dem nur eine LED durch alle Ausgänge wandert. Das ist eine kleine Schaltlast, da reichen auch 4,7uF. Wenn dann immer noch Fehler kommen (was ich vermute), liegt es nicht an den 4,7uF sondern an Reflektionen auf deinem Flachbandkabel. > >> Zeig mal ein Bild von deinem Aufbau und Schaltplan. >> > Habe ich mal angehängt. Uffff! Schönes Drahtverhau. Warum in aller Welt hast du KEINE normalen Wannenstecker mit passenden Gegenstücken zum crimpen genutzt? Flachbandkabel in Durchkontaktierungen einlöten ist Irrsinn. > Masse Leitung über die Flachbandleitung ist teilweise eine bisschen dumm > dimensioniert. Da muss ich nochmal dran. Ja. Aber ich vermute, daß das Problem in einer fehlenden Terminierung liegt. Siehe Wellenwiderstand. Beitrag "Re: Skurriles Problem mit BS170 Mosfets"
:
Bearbeitet durch User
Falk B. schrieb: > Ja. Aber ich vermute, daß das Problem in einer fehlenden Terminierung > liegt. Siehe Wellenwiderstand. Vermute ich auch... Ein Oszilloskop könnte da Licht ins Dunkel bringen und z.B. solche Bilder zeigen wie im Beitrag "Re: Signalproblem bei langem Kabel" Oder wie dort im Beitrag "Re: Serienwiderstand bei Hochfrequenz"
Patrick L. schrieb: > Masse Leitung über die Flachbandleitung ist teilweise eine bisschen dumm > dimensioniert. Da muss ich nochmal dran. Ja, und +Versorung auch. Unbedingt ordentlich mit 0,5 qmm über separates Leitung nochmals zuführen. Am besten auch nochmal zu Ende der Kette.
Falk B. schrieb: > Irgendwas im Bereich 22-100uF. Da muss man ggf. auch mal messen. Und > testen. Mach mal ein Lauflicht, bei dem nur eine LED durch alle Ausgänge > wandert. Das ist eine kleine Schaltlast, da reichen auch 4,7uF. Wenn > dann immer noch Fehler kommen (was ich vermute), liegt es nicht an den > 4,7uF sondern an Reflektionen auf deinem Flachbandkabel. Alles klaro, das probiere ich nochmal aus. Danke für den Tipp!! Falk B. schrieb: > Uffff! Schönes Drahtverhau. Warum in aller Welt hast du KEINE normalen > Wannenstecker mit passenden Gegenstücken zum crimpen genutzt? > Flachbandkabel in Durchkontaktierungen einlöten ist Irrsinn. Ja, ist nicht gerade schön geworden. Hap keine Crimp-Zange für sowas deshalb hatte ich es eingelötet :-) Falk B. schrieb: > Ja. Aber ich vermute, daß das Problem in einer fehlenden Terminierung > liegt. Siehe Wellenwiderstand. > > Beitrag "Re: Skurriles Problem mit BS170 Mosfets" Das hört sich sehr vielversprechend an. Das ist auf jedenfall eine sehr guter Tipp!! Danke!! Was würdet ihr den vorgschlagen: Besser einen Serien-Widerstände oder Abschluss-Widerstände am Ende der Leitung? Wie kann ich ungefähr abschätzen wie groß ich den Terminierungswiderstand machen muss? Gibt es grobe Anhaltswerte für den Wellenwiderstand von Flachbandkabeln? Lothar M. schrieb: > Ein Oszilloskop könnte da Licht ins Dunkel bringen und z.B. solche > Bilder zeigen wie im Beitrag "Re: Signalproblem bei langem Kabel" > > Oder wie dort im Beitrag "Re: Serienwiderstand bei Hochfrequenz" Ja, schaue ich mir auf jedenfall nochmal mit einem Scope an! Dann wird vermutlich die Clock-Leitung die Probleme haben. Erich schrieb: > Ja, und +Versorung auch. > Unbedingt ordentlich mit 0,5 qmm über separates Leitung nochmals > zuführen. > Am besten auch nochmal zu Ende der Kette. Ok, auch die 3,3V Versorgung für die TLC5940? Weil die Versorgung für die LEDs habe ich schon extar über eigene Leitungen geführt. Nur die Masse fehlt noch!
Patrick L. schrieb: >> Uffff! Schönes Drahtverhau. Warum in aller Welt hast du KEINE normalen >> Wannenstecker mit passenden Gegenstücken zum crimpen genutzt? >> Flachbandkabel in Durchkontaktierungen einlöten ist Irrsinn. > > Ja, ist nicht gerade schön geworden. Hap keine Crimp-Zange für sowas > deshalb hatte ich es eingelötet :-) Dafür reicht ein Mini-Schraubstock und im Extremfall sogar eine Wasserpumpenzange. > Was würdet ihr den vorgschlagen: Besser einen Serien-Widerstände NEIN! >oder > Abschluss-Widerstände am Ende der Leitung? JA! Wie im Link gezeigt, Thevenin-Terminierung. > Wie kann ich ungefähr abschätzen wie groß ich den > Terminierungswiderstand machen muss? Gibt es grobe Anhaltswerte für den > Wellenwiderstand von Flachbandkabeln? Steht im Link. > Ja, schaue ich mir auf jedenfall nochmal mit einem Scope an! Aber den Tastkopf RICHTIG anschließen. https://www.mikrocontroller.net/articles/Oszilloskop#Tastk.C3.B6pfe_richtig_benutzen >> Ja, und +Versorung auch. >> Unbedingt ordentlich mit 0,5 qmm über separates Leitung nochmals >> zuführen. >> Am besten auch nochmal zu Ende der Kette. > > Ok, auch die 3,3V Versorgung für die TLC5940? Nein, da reicht das Kabel, soviele mA fließen da nicht. Ca. 5-12mA/IC, macht bei 12 ICs 144mA max. Das geht gerade noch so über so eine Ader auf der Flachbandleitung. Im Zweifelsfall mal die Spannung am letzten IC messen. > Weil die Versorgung für > die LEDs habe ich schon extar über eigene Leitungen geführt. Nur die > Masse fehlt noch! OK.
Patrick L. schrieb: > Weil die Versorgung für die LEDs habe ich schon extar über eigene > Leitungen geführt. Nur die Masse fehlt noch! "Die Versorgung" besteht aus Vcc und GND. Mit einer zu "schwachen" (=zu hochohmigen) Masse bekommst du einen Effekt, der sich "Ground-Bouncing" nennt, das Massepotential "hüft" über/um 0V herum. Aber blöderweise beziehen sich sämtliche IC-Eingänge auf diese "hüpfende" Masse. Den Rest kannst du dir selber ausmalen... ;-)
Alles klaro! Dann werde ich zunächst erstmal die folgenden Dinge umsetzen: 1. Masseleitungen zu jedem PCB vom Netzteil (entsprechend dickerer Querschnitt) 2. Versorgungsleitung auch zu jedem PCB von der 3,3V Versorgung (entsprechend dickerer Querschnitt) 3. Terminierungswiderstand (Thevenin-Terminierung) jeweils an die digitalen Signale Ich berichte dann ob es was gebracht hat!
So ich habe jetzt die folgenden die vorher angekündigten Punkte umgesetzt. Ich habe Terminierunswiderstände (Thevenin-Terminierung) mit jweils 2x330 Ohm und 100nF Kerko an GSCLK, SCLK und SOUT gemacht. Was sich verbessert hat ist, dass jetzt zumindest schonmal die Farben passen. Wenn ich Rot einstelle leuchten die LEDs rot, etc .... Allerdings leuchten nicht alle LEDs. Es ist teilweise zufällig welche angehen. Habt ihr noch Tipps was ich noch verbessern kann? Noch Terminierunswiderstände hinzufügen? Oder zwischen Orange Pi Zero und TLC5940 Daisy Chain einen Logikbaustein der die Pegelwandlung 3,3V<>5V macht aber eine geringer Anstiegszeit macht? Bin für Vorschläge offen ;-)
:
Bearbeitet durch User
Patrick L. schrieb: > So ich habe jetzt die folgenden die vorher angekündigten Punkte > umgesetzt. > > Ich habe Terminierunswiderstände (Thevenin-Terminierung) mit jweils > 2x330 Ohm und 100nF Kerko an GSCLK, SCLK und SOUT gemacht. Und WO hast du die GENAU angebaut? Und warum 330Ohm, wenn im Link 220 bzw. 240 Ohm verwendet und empfohlen wurden? > Was sich verbessert hat ist, dass jetzt zumindest schonmal die Farben > passen. Wenn ich Rot einstelle leuchten die LEDs rot, etc .... > > Allerdings leuchten nicht alle LEDs. Es ist teilweise zufällig welche > angehen. Entweder noch ein Softwarefehler oder immer noch ein Problem mit der Signalqualität. Oder Lötfehler auf den einzelnen Platinen. Prüfe deine Platinen erstmal alle einzeln direkt an deinem Controller mit kurzem Kabel. Hier wären echte Flachbandkabel mit Stecker Gold wert . . . > Habt ihr noch Tipps was ich noch verbessern kann? > Noch Terminierunswiderstände hinzufügen? Hast du doch schon! Und bei so einem Bus darf man keine Serienterminierung verwenden! > Oder zwischen Orange Pi Zero und TLC5940 Daisy Chain einen Logikbaustein > der die Pegelwandlung 3,3V<>5V macht aber eine geringer Anstiegszeit > macht? Ist nicht nötig, zumal bei den Längen auch "langsame" HC Typen schon zu schnell sind. Man könnte was mit RC oder LC Filtern machen, dazu braucht man aber ein Oszi, um das gescheit messen zu können. Hast du eins?
Falk B. schrieb: > Entweder noch ein Softwarefehler oder immer noch ein Problem mit der > Signalqualität. Oder Lötfehler auf den einzelnen Platinen. Tritt der Fehler immer an den gleichen LEDs auf?
Falk B. schrieb: > Und WO hast du die GENAU angebaut? Und warum 330Ohm, wenn im Link 220 > bzw. 240 Ohm verwendet und empfohlen wurden? In dem Artikel stand das man das dopellte des Wellenwiderstandes nehmen soll. Da für Flachbandleitung der Wellenwiderstand laut Artikel bei typ. 150 Ohm liegen soll habe ich mal 330 Ohm genommen. Sind dann auch sicht des Leiters ungefähr 160 Ohm. Falk B. schrieb: > Entweder noch ein Softwarefehler oder immer noch ein Problem mit der > Signalqualität. Oder Lötfehler auf den einzelnen Platinen. Kann natürlich sein, dass der Orange Pi Zero da Probleme macht. Soch richtig echtzeitfähig ist der mit dem RaspBian OS ja nicht. Vllt. gibt es da auch Timing-Probleme. Falk B. schrieb: > Hast du doch schon! Und bei so einem Bus darf man keine > Serienterminierung verwenden! Aber nicht an allen Signalleitungen. BLANK fehlt noch. Falk B. schrieb: > Ist nicht nötig, zumal bei den Längen auch "langsame" HC Typen schon zu > schnell sind. Man könnte was mit RC oder LC Filtern machen, dazu braucht > man aber ein Oszi, um das gescheit messen zu können. Hast du eins? Ja, hab ein Oszi. Ich werde mal zusehen das ich mal ein paar Bilder mache. oszi40 schrieb: > Tritt der Fehler immer an den gleichen LEDs auf? Ne, ist unterschiedlich
:
Bearbeitet durch User
Patrick L. schrieb: >> Entweder noch ein Softwarefehler oder immer noch ein Problem mit der >> Signalqualität. Oder Lötfehler auf den einzelnen Platinen. > > Kann natürlich sein, dass der Orange Pi Zero da Probleme macht. Soch > richtig echtzeitfähig ist der mit dem RaspBian OS ja nicht. Das ist egal, SPI braucht kein exaktes Timing, Hauptsache die Daten kommen in der richtigen Logik raus. >> Hast du doch schon! Und bei so einem Bus darf man keine >> Serienterminierung verwenden! > > Aber nicht an allen Signalleitungen. BLANK fehlt noch. Das ist egal, denn das ist ein quasistatisches Signal und auch nicht flankensensitiv.
Falk B. schrieb: > Das ist egal, SPI braucht kein exaktes Timing, Hauptsache die Daten > kommen in der richtigen Logik raus. Ne, das ist kein SPI. Das ist Bit-Bang... Deswegen ist es sicherlich auch denkbar das da was nicht tut.
Patrick L. schrieb: > Falk B. schrieb: >> Das ist egal, SPI braucht kein exaktes Timing, Hauptsache die Daten >> kommen in der richtigen Logik raus. > > Ne, das ist kein SPI. Das ist Bit-Bang... Deswegen ist es sicherlich > auch denkbar das da was nicht tut. Mein Gott, aber genau DAS kann uns sollte man zuerst mit einem Oszi oder Logicanalyzer prüfen . . . . 8-0 Schon mal was von einer systematischen Inbetriebnahme und Fehlersuche gehört? Einfach was wild zusammenbauen und programmieren und dann hoffen, daß es sofort funktioniert, ist arg naiv. Das Problem ist jetzt 10 Tage alt. In der Zeit hätte man schon verdammt viel messen und testen können.
:
Bearbeitet durch User
Ja, habe ich ja gemacht. Ich hatte schon zwei TLC in einer Daisy-Chain hinter einander geschaltet. Da hat das keine Probleme gemacht. In diesem Verbau hatte ich mit dem Scope nie gemessen weil es keine Probleme gemacht hat. Es scheint ja auch grundsätzlich zu funktionieren, weil: - Die LEDs die selbe Farbe ausgeben wenn ich es möchte. Es gehen nur nicht immer alle an. Ich habe nur eine Zwei-Kanal DSO deswegen kann ich nicht alle Signale gleichzeitig aufnehmen. Das was ich mir bis jetzt angesehen hatte sah bis auf ein paar Störungen beim Low-Pegel gan i.O. aus.
Patrick L. schrieb: > Ja, habe ich ja gemacht. Ich hatte schon zwei TLC in einer Daisy-Chain > hinter einander geschaltet. Da hat das keine Probleme gemacht. OK. > In diesem Verbau hatte ich mit dem Scope nie gemessen weil es keine > Probleme gemacht hat. > Es scheint ja auch grundsätzlich zu funktionieren, weil: > > - Die LEDs die selbe Farbe ausgeben wenn ich es möchte. Es gehen nur > nicht immer alle an. Hmm. > Ich habe nur eine Zwei-Kanal DSO deswegen kann ich nicht alle Signale > gleichzeitig aufnehmen. Muss man auch gar nicht. Es reicht, wenn man sich mit einem Kanal auf den Ladepuls bzw. Chip Select anklemmt und dort drauf triggert und mit dem 2. Kanal die einzelnen Signale nacheinander begutachtet. Sind ja nur die Daten und der Takt! > Das was ich mir bis jetzt angesehen hatte sah > bis auf ein paar Störungen beim Low-Pegel gan i.O. aus. Tja, dann hast du wahrscheinlich nicht richtig gemessen und nicht genau genug hingesehen.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.