Forum: Mikrocontroller und Digitale Elektronik RGB LED-Treiber


von Hans (Gast)


Lesenswert?

Hallo

Ich möchte mir eine RGB Farbsteuerung aufbauen.

Gedacht sind module mit 10 RGB SMD-LED's.
Allerdings bin ich mir nicht ganz sicher welcher aufbau der geeignetste 
ist.

Jede LED und somit auch jede Farbe soll getrennt gesteuert werden.
Das sind dann insgesamt 30 kanäle.
Ich möchte die Steuerung mittels einer Software-PWM steuern. Software 
ist schon fertig und läuft problemlos auf einem AVR Mega8.

Leider liegt es jetzt an der Hardware.
Welche LED-Treiber beiten sich für die realisierung an?
MOSFET oder Transistor-Schaltungen?
Frei wählbar ist noch die Versorgungsspannung (gedacht sind 5V, 12V oder 
24V)

Sollten alle LED's parallel gschaltet werden?
Oder gibt es bei Reihenschaltung auch die Möglichkeit alle LED'S einzeln 
anzusteuern?
Ist halt immer das Problem mit den Widerständen; am besten sind ja pro 
LED ein Widerstand!

Würde mich über Vorschläge freuen.

Gruß Hans

von McBain (Gast)


Lesenswert?

"Oder gibt es bei Reihenschaltung auch die Möglichkeit alle LED'S 
einzeln
anzusteuern?"

-> nö

von P.Niederöst (Gast)


Lesenswert?

Erst solltest Du mal herausfinden was den eine
einzelne LED an Strom verbraucht.

Ich würde evtl. Treiberbausteine ULN2003 o.ähnliche
benutzen, da kann man leicht noch eine LED-Test
Funktion einbauen.

Dann noch ein Tip:
Die Blauen Led's würde ich mit
stärkerem Strom als die andern betreiben,
da Rot und Grün besser wahrgenommen werden.

Also, einfach nach Datenblatt von ULN-Treiber googeln.

Gruss Päde

von Jörg B. (manos)


Lesenswert?

Hans wrote:
> Das sind dann insgesamt 30 kanäle.
> Ich möchte die Steuerung mittels einer Software-PWM steuern. Software
> ist schon fertig und läuft problemlos auf einem AVR Mega8.

Was an der Software ist denn bereits fertig? Ohne zusätzliche Hardware 
wird es Dir wahrscheinlich schwer fallen mit einem Mega8 30 getrennte 
Kanäle anzusteuern...

Evtl. einfach mal ausprobieren, wie viel mA ausreichend sind um die 
gewünschte Helligkeit zu erhalten. Vielleicht reichen ja 5mA (auch bei 
nicht low Current manchmal ausreichend) wodurch man dann auf 
Treiberstufen verzichten und immerhin ca. 20 Kanäle/Mega8 direkt 
ansteuern könnte.

Was die Widerstände angeht gibt es übrigens auch Widerstandsnetzwerke.

von Hans (Gast)


Lesenswert?

Der Strom der durch die LED's fließt beträgt max 20mA.

Leider kann ich auf keine großen Treiber-IC's zurückgreifen, das es ein 
LED-Streifen werden soll der nur 13mm breit ist.

Deswegen dann auch die frage ob es sinnvoll ist für jede led einen 
eigenen Mosfet bzw. transistor(wenn es den gibt) zu verwenden der über 
den AVR direkt angesteuert wird.

@Jörg:
Du hast recht dass 30 kanäle etwas schwierig sind. Allerdings war es bis 
jetzt so gedacht dass ich 2 mega8 einsetze mit jeweils 15 Kanälen.

ich weiß natürlich nicht, ob es elegantere lösungsansätze gibt.

Momentan sieht es ja so aus:

pro LED: widerstand, treiberstufe
Steuerung: 2 mega8 und serielle schnittstelle

Wie würdet ihr das ganze aufbauen?

von Jörg B. (manos)


Lesenswert?

Ist auch immer die Frage was es kosten darf... Evtl. kann man auch 
Treiberbausteine für LED mit PWM in betracht ziehen.

http://www.nxp.com/pip/PCA9635.html

Auf dem LED-Streifen kann man übrigens auch versuchen SMD-Widerstände zu 
löten.

von Hans (Gast)


Lesenswert?

Das mit den wiederständen ist eigentlich auch eigentlich das kleinste 
problem.

Da ich ja nicht an jeden AVR ausgang eine led hängen kann benötige ich 
treiber.

moment an geht das PWM signal vom AVR über einen wiederstand zu nem 
n-Kanal Mosfet. Funkztionieren tut das auch recht gut.
Allerdings sind die dinger in nem D2-PAK. wenn ich des auf 30 kanäle 
ausdehne kann ich ne eurokarte voll machen :)

Ist also nicht so ideal.
Suche also für den mosfet eine alternative in sehr kleiner bauform bei 
ähnlichem schaltverhalten.

von Manos (Gast)


Lesenswert?

Einfach mit 3x ULN2003 die Masse schalten (mit Vorwiderstand zwischen 
der Masse und der Led). Der ULN kann pro Kanal max. 500mA treiben (und 
hat 7 Kanäle) - kosten bei Reichelt 0,17 €.

von Manos (Gast)


Lesenswert?

Bzw. 2 x 2 ULN2803 mit 8 Kanälen wenn du 2 Mega8 mit je 15 machen 
willst.

von maxerl (Gast)


Lesenswert?


von Hans (Gast)


Lesenswert?

Also das mit den 2 Megas habe ich mir nochmals überlegt.
Eigentlich ist das oversized und zudem müssen beide Controller mit daten 
gefüttert werden.

Was wäre denn eine kostengünstige aber zugleich zuverlässige 
Hardwarelösung um den Mega8 mit 30 Kanälen auszustatten?

Gruß

von irgendein Rahul (Gast)


Lesenswert?

Langsam nerven LED-Threads.
Zwei Schieberegister mit ULN2803-Treibern und 3 Highside-Schalter (das 
können auch PNP-/P-Kanal-Transesn sein und ein Mega8 reichen dicke.
Was soll der zweiten denn die ganze Zeit machen? Der erste langweilt 
sich ja schon zu tode.
Porterweiterung per Schieberegister findet man hier:
http://www.mikrocontroller.net/articles/Porterweiterung_mit_SPI

von Stefan K. (_sk_)


Lesenswert?

nochmal der Link von Jörg:

http://www.nxp.com/pip/PCA9635.html

Ähnliche Chips gibt es auch von TI, dort mit dem SPI-Bus.
Für jede LED gibt es dort einen Stromtreiber und eine per Register 
einstellbare PWM. Teilweise kann die PWM per separatem Register auch 
kalibriert werden (um Helligkeitsunterschiede auszugleichen). An jeden 
LED-Kanal können übrigens mehrere LEDs (in Serie) geschaltet werden ...

Für Deine 30 Kanäle brauchst Du davon 2 Stück, alle anderen Bauteile, 
Widerstände etc. kannst Du dann vergessen.

Einziger Nachteil ist die Beschaffung, die TI-Teile sind bei Digikey 
erhältlich, kostet halt Shipping.

Gruß, Stefan

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.