www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik RGB LED-Treiber


Autor: Hans (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: McBain (Gast)
Datum:

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

-> nö

Autor: P.Niederöst (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Jörg B. (manos)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Hans (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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?

Autor: Jörg B. (manos)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Hans (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Manos (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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 €.

Autor: Manos (Gast)
Datum:

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

Autor: maxerl (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Hans (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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ß

Autor: irgendein Rahul (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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/Porterweit...

Autor: Stefan Kleinwort (_sk_)
Datum:

Bewertung
0 lesenswert
nicht 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

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.