Hallo zusammen! Ihr müsst mir mal helfen. Ich bekomm da nicht so ganz was auf die Reihe. Ich will die drei RGB Led's via multiplexing anzusteuern. So womit ich jetzt nicht klar komme ist die PWM steuerung. Folgende Werte sind nur Beispielwerte. - Reihe 1 durch die PWM 2.5V z.B. - Reihe 2 durch die PWM 3.7V z.B. - Reihe 3 erstmal egal So jetzt kommt mein Problem - Spalte 1 schalte ich direkt durch. Also auf Masse. Jetzt würden LED 1 und 4 so helleuchten wie ich will. Jetzt kommt mein Knackpunkt. - Spalte 2 schalte ich so das der Mittelwert der PWM sagen wir mal 1.2V beträgt. Jetzt würde auch LED 2 so Leuchten wie ich will. Allerdings kann ich jetzt LED 5 keine andere Helligkeit zuordnen, weil sie ja schon durch die PWM der Reihe 2 und Spalte 2 bestimmt wird. Wo ist mein Denkfehler. Denn ich hab jetzt schon öfters gelesen und mein Kollege ist überzeugt davon das es geht. LG Max
Du wirst unterschiedliche Helligkeiten in deiner MAtrix nur hinbekommen, wenn du die LEDs einzeln ansteuerst.
>Also ist Multiplexing mit einer gemeinsamen Anode nicht möglich?
Doch, warum sollte das nicht möglich sein?
Max wrote: > Also ist Multiplexing mit einer gemeinsamen Anode nicht möglich? Natürlich ist das möglich, aber nicht so wie Du denkst. Zunächst einmal bedeutet Multiplexing, dass Du z.B. eine Spalte nach der anderen streng zyklisch aktivierst, während Du die Reihen so ansteuerst, dass die gewünschten LEDs einer Spalte leuchten, wenn die entspechende Spalte gerade aktiviert ist. Auf diese Weise kannst Du jede beliebige LED leuchten lassen oder ausschalten, also jedes x-beliebige Muster erzeugen. Das geht natürlich nicht nur im 0/100%-Modus sondern auch mit jeder beliebigen Helligkeitsabstufung. Dazu aktiviersts Du die Reihen nicht während der Gesamtzeit, in der eine Spalte aktiviert ist sondern, je nach gewünschter Helligkeit, nur einen Teil dieser Zeit. Mit einem µ-Controller sollte das zu machen sein. Für die einzelne LED in einer 3x3-Matrix bedeutet das allerdings, dass sie nur mit einer PWM von 0...33,3% leuchten kann. Zur Nutzung der vollen Leistung einer LED ist dazu der 3-fache LED-Nennstrom erforderlich. Jörg
Aso ok! Also Programmiertechnisch würde das so aussehen, das die Spalten einen Zyklus an sein und dann wird zu nächsten Spalte gegangen. Sprich der Zähler zählt von 0 - 255. Solang ist die Spalte 1 an. Wenn er bei 0 wieder anfängt wieder die Spalte 2 aktiviert. Und so weiter. So weit richtig? Nehmen wir einen Blauton. R = 145; G = 49; B = 228. Also: Spalte 1 zähl 0-255 dabei ist Rot (Pin1) 145 Zeiteinheiten an und den Rest aus. Dann Spalte 2 zähl 0-255 dabei ist Grün (Pin1) 49 Zeiteinheiten an und den Rest aus. Dann Spalte 2 zähl 0-255 dabei ist Grün (Pin1) 228 Zeiteinheiten an und den Rest aus. So richtig?! ----- Noch ne andere Frage. Mein Kollege hat die obige Zeichnung gemacht. Wo ist da der Unterschied. Bei mir wären es 9 Reihen und 3 Spalten. Bei ihm irgendwas anderes?! Ist seine Version eventuell besser auf bezug auf den Nennstrom. Wenn ich das richtig sehe müssen ja meine LED's pro Spalte kurzzeitig 180 mA aushalten?! Das muss dann auch der entsprechende Widerstand sein, oder? Sprich ca. 66 Ohm bei 12V?! ICH DANKE EUCH! :) Ich kann nämlich deswegen schon net schlafen.
Max wrote: > Aso ok! Also Programmiertechnisch würde das so aussehen, das die Spalten > einen Zyklus an sein und dann wird zu nächsten Spalte gegangen. Sprich > der Zähler zählt von 0 - 255. Solang ist die Spalte 1 an. Wenn er bei 0 > wieder anfängt wieder die Spalte 2 aktiviert. Und so weiter. So weit > richtig? Ja, so kann man es machen > Nehmen wir einen Blauton. R = 145; G = 49; B = 228. > > Also: > > Spalte 1 zähl 0-255 dabei ist Rot (Pin1) 145 Zeiteinheiten an und den > Rest aus. > > Dann Spalte 2 zähl 0-255 dabei ist Grün (Pin1) 49 Zeiteinheiten an und > den Rest aus. > > Dann Spalte 2 zähl 0-255 dabei ist Grün (Pin1) 228 Zeiteinheiten an und > den Rest aus. > > So richtig?! Ja > Noch ne andere Frage. Mein Kollege hat die obige Zeichnung gemacht. Wo > ist da der Unterschied. Bei mir wären es 9 Reihen und 3 Spalten. Bei ihm > irgendwas anderes?! in der 1. Zeichnung sind 3 RGB-LEDs in einer 3x3-Matrix angeordnet in der 2. Zeichnung sind 9 RGB-LEDs in einer 9*3-Matrix angeordnet > Ist seine Version eventuell besser auf bezug auf den > Nennstrom. Wenn ich das richtig sehe müssen ja meine LED's pro Spalte > kurzzeitig 180 mA aushalten?! Das muss dann auch der entsprechende > Widerstand sein, oder? Sprich ca. 66 Ohm bei 12V?! Ich weiss weder, welches jetzt Deine Zeichnung ist noch mit wieviel Strom die LEDs normalerweise betrieben werden sollen/müssen/dürfen. Jörg
1. Zeichnung ist von mir. Ich hatte nur jetzt keine Lust 9 Rot, 9 Grüne und 9 Blaue untereinander zu machen. Also ist kein Unterschied zwischen Zeichnung 1 und 2?! Hab ich bei beiden Zeichnungen das "Problem" mit dem kurzzeitigen Peakstrom?! Angenommen jede LED braucht 23 mA. (max. 50mA) Was würdest du denn für einen Mosfet empfehlen.
So dann gibt es doch ein paar Dinge die mir noch net ein Leuchten. Nehme wir mal den Artikel also eagle vorlage. Bei mir wäre es halt dann 9 Zeilen und 3 Spalten. Spalte 1 wäre Rot, Spalte 2 wäre Grün, Spalte 3 Blau. Jetzt die Fragen. 1.) Wo tu ich jetzt die Vorwiderstände genau hin? (Warum dann an die Position?) 2.) Welchen Wert muss der Vorwiderstand haben? Bzw. wie rechne ich das. Denn Rot, Grün bzw. Blau brauchen ja jeweils einen anderen Widerstand um auf 20mA zu kommen. Also kann ich ja schonmal keinen einheitlichen Zeilen-Vorwiderstand nehmen. Kommt der dann in die Spalte? 3.) Wie ist das mit dem Pulsstrom zu verstehen? Das ich einen höhren Strom brauche, damit alle LED die gleiche Helligkeit haben leuchtet mir vielleicht noch ein. Aber wie kommt der hohe Strom zusammen. 4.) Ich hab jetzt auch öfters gelesen, dass es Probleme mit der Frequenz geben könnte. Warum ist das so? Ich danke Euch! :) LG Max
So ich hab mal eine fixe Eagle Skizze gemacht. Kann ich das so schalten?! LG Max
Max wrote: > Keiner ne Antwort berat?! Och büdde... Ich finde es garnicht so schlecht, wenn meine Familie und ich ein Dach überm Kopf haben und nicht hungern müssen. Daneben brauche ich einen Internet-Anschluß und Strom für den Computer, damit ich Dir antworten kann. Daher sah ich mich genötigt, statt Dir sofort zu antworten, mich mit anderen Problemen zu befassen, und zwar mit den Problemen zahlender Kunden. Ich kann Dich gerne in diesen exclusiven Kreis mit aufnehmen und würde Dich dann genauso bevorzugt behandeln. Ansonsten wirst Du wohl warten müssen bis ich Zeit und Muse habe. Den anderen kompetenten Antwortgebern wird es vermutlich ähnlich gehen. Ich muß mich auch jetzt kurz fassen: 1. Die Vorwiderstände kommen dort hin, wo die Parallelausgabe stattfindet, also in diesem Fall in die 9 Reihen. Nur dann bekommt jede LED einer Spalte einen eigenen Widerstand. 2. Der Vorwiderstand muß so bemessen sein, dass er bei der Differenz von Ansteuerspannung und LED-Flußspannung den 3-fachen Nennstrom durchläßt (bei Spaltenmultiplexer). In diesem Fall wäre es u.U. sinnvoller, die Reihen zu multiplexen (9-facher Nennstrom) und die unterschiedlich großen Vorviderstände in die Spalten zu legen 3. Wenn eine LED im Mittel max. 1/3 bzw. 1/9 der Zeit leuchtet, muß sie das mit 3-fachen, bzw. 9-fachem Strom tun, um auf ihre Nennleistung zu kommen. 4. Bei so wenigen LEDs sollte es keine Probleme mit der Frequenz geben Die angehängt Schaltung wird nicht funktionieren. Mit einem MOSFET als Sourcefolger in den Zeilentreibern bekommst Du bei 5 V Steuerspannung kaum mehr als 3 V für die LEDs. Besser wäre ein BC337 in Kollektorschaltung. Da kommen noch über 4 V raus. Ebenso ist es unsinnig, die Zeilentreiber mit mehr als 5 V zu versorgen. Das produziert nur zusätzliche Verlustleistung in den Transistoren. Jörg
Danke Jörg! ;-) Ich sah nur meinen Thread wirder im Nervana versinken. Danke für die Antwort. zu 1. und 2.) Multiplexe ich denn jetzt eigentlich nicht die Reihen?! Denn so bin ich auf den 51 Ohm Widerstand gekommen. (9 facher Nennstrom) Wenn ich jetzt Spalten muxe muss ich ja, wie du geschrieben hast in jede Reihe einen Widerstand machen. Berechne ich dann den Vorwiderstand für den Blaue Led?! Sprich R= (12V-3,2)/60mA = 146,6 Ohm (theoretisch) zu 4.) Ja das mit dem Mosfets ist mir nach späteren draufschauen auch aufgefallen. Vorwiderstand und LED müssten eigentlich an den Drain. Hm müsste ich mir noch mal Gedanken machen. Es fehlen ja auch noch 100kOhm am Gate nach Masse, was mir gerade auch noch aufgefallen ist... ;-) Aber den den BC337 schau ich mir mal an. Das mit der Frequenz würde mich aber im allgemeinen trotzdem noch interessieren. :-) So dann danke ich dir schon mal Jörg! Gute Nacht Max
Max wrote: > zu 1. und 2.) > Multiplexe ich denn jetzt eigentlich nicht die Reihen?! Denn so bin ich > auf den 51 Ohm Widerstand gekommen. (9 facher Nennstrom) Das ist zwar auch eine Frage der sprachlichen Definition, aber Du hast weiter oben geschrieben, dass Du die Spalten 1 bis 3 zyklisch aktivieren willst. Zur Erinnerung: > Aso ok! Also Programmiertechnisch würde das so aussehen, das die Spalten > einen Zyklus an sein und dann wird zu nächsten Spalte gegangen. Sprich > der Zähler zählt von 0 - 255. Solang ist die Spalte 1 an. Wenn er bei 0 > wieder anfängt wieder die Spalte 2 aktiviert. Und so weiter. So weit > richtig? Das verstehe ich als multiplexen der Spalten und dafür müssen die LEDs mit dem 3-fachen Nennstrom betrieben werden. > Das mit der Frequenz würde mich aber im allgemeinen trotzdem noch > interessieren. :-) Der komplette Zyklus sollte nicht länger als 10 ms (100 Hz) sein, damit die LEDs nicht flimmern. Die Multiplexfrequenz und der zu schaltende Strom multipliziert sich mit der Anzahl der zu schaltenden Reihen oder Spalten. Wenn Du hohe Ströme schnell schalten willst gibt es häufig Probleme mit Funkstörung (EMV) und induktiven Spannungsspitzen bzw. kapazitiven Verkopplungen, insbesondere bei größeren Leitungslängen. Außerdem müssen die verwendeten LED genügend schnell eio- und ausschalten. Deswegen wird man die Multiplexfrequenz nicht höher wählen als unbedingt nötig. Andernfalls kann es neben den EMV-Problemen auch zum Übersprechen zwischen den LEDs kommen, d.h. LEDs, die ausgeschaltet sein sollten, glimmen mehr oder weniger hell Jörg
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.