PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Welches Transistorarray für LED-Dimmung?



Florian
27.12.2006, 16:27
Moin! :o)
Ich bin gerade auf der Suche nach einem geeigneten Transistorarray.
Ich muss 7 RGB-LEDs mit jeweils 3 Kanälen an einen ATmega8 anschließen und per PWM dimmen.
Da ich pro Kanal ca. 30 mA (max.), also pro RGB-LED ca. 90 mA, schalten muss, benötige ich eine Treiberstufe, sprich eine Verstärkung durch einen Transistor pro Kanal.

Meine ersten Versuche waren mit den Standardtransistoren BC547B soweit erfolgreich, bis auf ein nichtlineares Dimmverhalten, was aber, denke ich, eher am nichtlinearen Verhalten den Leuchtdioden liegt.
Das Problem muss ich wohl per Software bereinigen (hoffentlich quadratische Funktion).

Die Anforderungen sind also:
- PWM bei ca. 100kHz (dürfte eigentlich kein Problem sein bei "normalen" Transistoren, die ja bis in den MHz-Bereich schalten)
- TTL-Pegel (5V / GND) an Basis (natürlich über Vorwiderstand)
- Schaltspannung (out) 5V
- 30 mA Last pro Transistor im Array
- am Besten 3 Transistoren pro Array-Baustein

Kann mir jemand ein geeignetes Transistorarray empfehlen?

Welche Transistorbeschaltungsart würdet ihr empfehlen?

Viele Grüße
Florian

kalledom
27.12.2006, 16:52
ULN2803A = 8 x Darlington (500mA) mit Basis-Vorwiderstand und Freilaufdiode für induktive Last im 18-pol. DIP-Gehäuse für 40 Cent bei R

Edit: Wenn Du den Plus schalten mußt, dann kann das der UDN2981A; der kostet allerdings 1,60 Euro.

Florian
27.12.2006, 17:09
Hallo Kalle!
Der ist mir auch schon in einigen Foren und Threads aufgefallen.
Basis-Vorwiderstand, darf ich das so verstehen, dass ich mir den Vorwiderstand an der "Basis" (IN X) sparen kann, das wäre sehr praktisch?! *aufhorch* ;o)
Bei 8 Darlington-Transistoren bräuchte ich dann also theoretisch 3 ICs ... gibt es die Dinger auch in einer kleineren Ausführung z.B. 3 D.-T. (wohl eher ungebräuchlich) oder 4 oder von mir aus auch 5?
Ich müsste praktisch pro LED einen einzelnen Baustein nehmen, da scheiden sich leider Theorie (3 Bausteine) und Praxis (7 Bausteine), da ich dezentralisieren muss. :o(
Sehe ich das richtig, dass die Ausgänge invertiert sind?

Danke schonmal soweit!

Viele Grüße
Florian

SprinterSB
27.12.2006, 17:11
Die Anforderungen sind also:
- PWM bei ca. 100kHz (dürfte eigentlich kein Problem sein bei "normalen" Transistoren, die ja bis in den MHz-Bereich schalten)
- TTL-Pegel (5V / GND) an Basis (natürlich über Vorwiderstand)


100kHz sind kein Problem für die Transistoren bzw. T-Arrays.

Wenn alle LEDs simultan gedimmt werden sollen, dann geht HW-PWM. Da du aber wahrscheinlich die RGB-Kanäle einzeln steuern willst, wird es eine Soft-PWM werden (ich vermute mal du verwendest keinen TC1796 oder so was ;-)). Mit einer 100kHz-PWM und einer Auflösung von 4 Bit bist du dann bei einer Aktualisierungsrate von 1.6MHz...! Die PWM-Frequenz kann deutlich niedriger sein, versuch mal ca. 1kHz. Mit 6 Bit Auflösung ist das eine Refresh-Rate von 64kHz und zB mit einem AVR gut zu packen.

Für nen LED-Dimm verwende ich ne quadratische Funktion, dimme also mit einem Duty von 1%, 4%, 9%, geht ganz gut. Falls das zu grob ist, setz einfach noch die geometrischen Mittelwerte dazu. Die Nichtlinearität kommt nicht von den LEDs, sondern durch die Sinnesphysiologie und (logarithmische) Helligkeitswahrnehmung des Auges.

SprinterSB
27.12.2006, 17:17
Ja, der ULN2803 invertiert. Ist intern ein npn-Darlington mit ein paar Widerständen

http://www.datasheetcatalog.net/de/datasheets_pdf/U/L/N/2/ULN2803.shtml

kalledom
27.12.2006, 17:27
Hallo Florian,
was bedeutet bei Deiner Anwendung invertiert ?
Du steuerst den ULN-Eingang mit +5V direkt vom Ausgangspin des µC an und zum Ausgang des ULN wird GND durchgeschaltet, die LED geht an.
Eine 1 am µC-Ausgang bedeutet in dem Fall = LED an und ist eigentlich keine Invertierung.
Aber es ist schon richtig, ein High am Eingang des ULN bedeutet ein Low am Ausgang des ULN; und das ist eine Invertierung.
Die Basisvorwiderstände sind tatsächlich in dem Baustein mit drin.
Es gibt noch einen 7-fachen, den ULN2003 ?? im 16-pol. DIP.

Edit: Du kannst Ein- und Ausgänge des ULN für mehr Strom auch parallel schalten.

Noch ein Edit: Schau mal auf die Seite http://www.domnick-elektronik.de/picpwm.htm, dort sind 8 SW-PWM-Ausgänge mit einem PIC realisiert.
100 Hz ist die PWM-Frequenz = 10ms mit 100 Stufen (0...100%) = 0,1ms.
0,1ms ist der Timer-Interrupt, in dem die Zähler und Ausgänge behandelt werden.

Florian
27.12.2006, 18:11
Hallo Sprinter, hallo Kalle! :o)
Entschuldigt bitte meine verzögerte Antwort, wir haben gerade gegessen ... ;o)

Ich werde die ganze Geschichte dann wohl doch zentralisieren müssen, also mit 3x ULN2803A, wird sich schon irgendwie machen lassen.
Ein ULN2803A pro LED wäre dann doch des Guten zu viel! *g*

Invertieren ist jetzt klar, ein Vorteil, habe ich nicht bedacht.

Die Frequenz ist mir jetzt auch klar, ist wirklich etwas hoch.
Ich weiß nicht, warum ich immer denke, dass ein Fernseher mit 60 kHz betrieben wird, sind ja 60 Hz ... Hz erscheint mir immer so wenig! ;p
Also kann ich da schonmal deutlich runter gehen, 100 Hz müssten wirklich reichen, danke für den Wink! ;o)


Edit: Du kannst Ein- und Ausgänge des ULN für mehr Strom auch parallel schalten.Ich denke das dürfte nicht das Problem sein, 500mA ist schon einiges mehr, als die LEDs benötigen.


Die Nichtlinearität kommt nicht von den LEDs, sondern durch die Sinnesphysiologie und (logarithmische) Helligkeitswahrnehmung des Auges.Achso, danke für den Hinweis!



Also ist der Baustein gut geeignet, denke ich, danke! :o)

Dann kann die Reicheltbestellung gleich rausgehen! *g*

Viele Grüße und noch nen schönen Abend
Florian

Goblin
29.12.2006, 17:20
Die Frage wollte ich letztens sowieso schon stellen:

Gibts 12er Darlington-Arrays? Selber Anwendungszweck.

Florian
29.12.2006, 21:17
Moin!
Tja, ich dachte es würde ausnahmsweise mal alles glatt laufen, aber zufrüh gefreut ... :o(
Das kommt, wenn man sich zu unklar äußert.
Ich habe vergessen euch zu sagen, dass die RGB-LEDs eine gemeinsame Kathode besitzen und somit sind die ULN2803A aus dem Rennen!
Könnt ihr mir einen alternativen Baustein für gemeinsame Kathode empfehlen?
Am Besten wäre natürlich ein Pin-kompatibler Typ, nur mit Vcc statt GND, dann wären die letzten Stunden Arbeit nicht ganz umsonst ...?!

Viele Grüße
Florian

kalledom
29.12.2006, 23:36
Hallo Florian,
dann lies noch mal meinen ersten Beitrag in diesem Thread; ich hatte es nämlich vermutet. Der UDN2981A ist fast pin-kompatibel (ganz kompatibel geht ja wegen umgekehrter Polung nicht); der schaltet den Plus.

Edit: UDN2983A gibts zwar auch, hat R aber nicht.

Florian
30.12.2006, 10:49
Moin Kalle!
Dein Edit oben ging wohl etwas unter, ich hab's überlesen ... und ehrlich gesagt habe ich daran garnicht gedacht!
Dann werde ich jetzt nochmal bestellen ... UDN2981A ... dann ist ja der Tag doch noch gerettet! *g*

Vielen Dank nochmal und viele Grüße
Florian

Florian
10.01.2007, 21:21
N'Abend allerseits! :o)
Danke nochmals für eure Hilfe, jetzt funktioniert alles! *freu*

Viele Grüße
Florian