LEDs einzeln per USB ansteuern

Fragen zu Schaltungen, Elektronik, Elektrik usw.

Moderator: T.Hoffmann

lightbulb
User
User
Beiträge: 18
Registriert: Di, 07.10.08, 00:45

Fr, 24.10.08, 17:21

Pehu hat geschrieben:
lightbulb hat geschrieben: Und nun eine etwas kompliziertere Idee (jedenfalls für mich):

Ich würde gern die 10 roten LEDs als Einheit dimmen, d.h. jede der 10 roten LEDs sollte gleich stark leuchten. Wie kann ich das möglichst simpel umsetzen (das gleiche würde ich gern für die 30 anderen LEDs als Einheit machen)? Oder anders: Geht das überhaupt?

Das mit dem Dimmen wäre schon eine sehr feine Sache. Ich will ja die LEDs gar nicht einzeln dimmen, das sollte die Sache doch irgendwie vereinfachen.
Am einfachsten ist es, die Leds die einzeln angesteuert werden sollen, mit dem Pluspol der Leds an einen Port des µC anschließen. Dann den Minuspol der Leds die du als gemeinsame Gruppe dimmen willst, an einen NPN-Transistor hängen. Den Transistor kannst du z.B. per Hardware-PWM ansteuern. Dadurch ist das Dimmen sehr einfach und vor allem flackerfrei. Da ja Hardware-PWM...

Wenn du nun den Transistor z.B.: um 50 % dimmst, werden alle Leds bzw. die Gruppe runtergedimmt. Da ja alle Leds mit der einen Hälfte (Minuspol) am Transistor hängen.

Diese Technik habe ich in einem Projekt mit einer Led-Anzeige benutzt. Wo die komplette Led-Anzeige gedimmt werden soll.

Da die meisten µC zwei Hardware-PWMs haben und du zwei Led-Gruppen dimmen willst, wären deine Anforderungen hiermit ja abgedeckt?

Nur muss der µC soviele I/O-Ports verfügen, dass alle Leds die einzeln angesteuert werden sollen können auch einen eigenen I/O-Port kriegen...

Hoffe das war verständlich.
Danke, das war eine schöne Erklärung.

Um die Anzahl der I/O-Ports mache ich mir keine Sorgen. Ich habe Bausteine gesehen, die über 30 Ports haben. Und effektiv brauche ich ja nur 20 (10x rote LEDs, 10x 3x gelbe LEDs).

Ich habe aber noch eine Frage zu Deinen Ausführungen: Wenn ich die LEDs direkt zwischen Controller und Transistor hänge... wo kommt denn dann der Strom für die LEDs her? Doch wohl aus dem Controller, oder? Ist der Controller damit nicht überbelastet? Pi mal Daumen wären das in etwa 400 mA pro Controller. Und da sind andere Verbraucher als die LEDs noch nicht eingerechnet (auch wenn das vielleicht nicht viel ausmacht).
Benutzeravatar
Pehu
Mega-User
Mega-User
Beiträge: 469
Registriert: Mi, 01.11.06, 19:33
Kontaktdaten:

Fr, 24.10.08, 18:11

lightbulb hat geschrieben:
Pehu hat geschrieben:
lightbulb hat geschrieben: Und nun eine etwas kompliziertere Idee (jedenfalls für mich):

Ich würde gern die 10 roten LEDs als Einheit dimmen, d.h. jede der 10 roten LEDs sollte gleich stark leuchten. Wie kann ich das möglichst simpel umsetzen (das gleiche würde ich gern für die 30 anderen LEDs als Einheit machen)? Oder anders: Geht das überhaupt?

Das mit dem Dimmen wäre schon eine sehr feine Sache. Ich will ja die LEDs gar nicht einzeln dimmen, das sollte die Sache doch irgendwie vereinfachen.
Am einfachsten ist es, die Leds die einzeln angesteuert werden sollen, mit dem Pluspol der Leds an einen Port des µC anschließen. Dann den Minuspol der Leds die du als gemeinsame Gruppe dimmen willst, an einen NPN-Transistor hängen. Den Transistor kannst du z.B. per Hardware-PWM ansteuern. Dadurch ist das Dimmen sehr einfach und vor allem flackerfrei. Da ja Hardware-PWM...

Wenn du nun den Transistor z.B.: um 50 % dimmst, werden alle Leds bzw. die Gruppe runtergedimmt. Da ja alle Leds mit der einen Hälfte (Minuspol) am Transistor hängen.

Diese Technik habe ich in einem Projekt mit einer Led-Anzeige benutzt. Wo die komplette Led-Anzeige gedimmt werden soll.

Da die meisten µC zwei Hardware-PWMs haben und du zwei Led-Gruppen dimmen willst, wären deine Anforderungen hiermit ja abgedeckt?

Nur muss der µC soviele I/O-Ports verfügen, dass alle Leds die einzeln angesteuert werden sollen können auch einen eigenen I/O-Port kriegen...

Hoffe das war verständlich.
Danke, das war eine schöne Erklärung.

Um die Anzahl der I/O-Ports mache ich mir keine Sorgen. Ich habe Bausteine gesehen, die über 30 Ports haben. Und effektiv brauche ich ja nur 20 (10x rote LEDs, 10x 3x gelbe LEDs).

Ich habe aber noch eine Frage zu Deinen Ausführungen: Wenn ich die LEDs direkt zwischen Controller und Transistor hänge... wo kommt denn dann der Strom für die LEDs her? Doch wohl aus dem Controller, oder? Ist der Controller damit nicht überbelastet? Pi mal Daumen wären das in etwa 400 mA pro Controller. Und da sind andere Verbraucher als die LEDs noch nicht eingerechnet (auch wenn das vielleicht nicht viel ausmacht).
Der Strom fließt sowohl durch den µC als auch über den Transistor. Richtig, der µC würde auf jedenfall überlastet. Z.B.: darf beim Atmega16 max. 200 mA (über VCC und GND) fließen. Da brauchst du für jede Led einen Transistor.
lightbulb
User
User
Beiträge: 18
Registriert: Di, 07.10.08, 00:45

Fr, 24.10.08, 19:31

Pehu hat geschrieben:Der Strom fließt sowohl durch den µC als auch über den Transistor. Richtig, der µC würde auf jedenfall überlastet. Z.B.: darf beim Atmega16 max. 200 mA (über VCC und GND) fließen. Da brauchst du für jede Led einen Transistor.
Ok. Trotzdem ist mir noch nicht klar, wie genau da der Strom fliesst. Ich hab ein paar Posts weiter vorne eine Skizze angefertigt. Amateurhaft, aber ich denke, es ist klar, wie ich das meine. In dieser Skizze würde - nach meinem Verständnis - der Strom von der 12-V-Leitung durch die LEDs und danach an die Masse laufen. Der Transistor würde vom Controller lediglich das Signal erhalten, den Strom durchzuschalten. Somit würde der Controller doch nicht überlastet, oder? Auch hier gilt: Bitte korrigiert mich, wenn ich da etwas falsch verstehe.

Bei dem, was Du vorgeschlagen hast, würde der Pluspol der LEDs doch vom Controller gespeist. Und genau das würde doch zur Überlastung führen, oder? Deshalb würde ich eher den Strom für die LEDs direkt vom 12-V-Netzteil beziehen, die Controller hinter einem Spannungsregler an die 12-V-Leitung stecken.

Das ist mir für mein Verständnis der Sache echt wichtig. Wäre also nett, wenn jemand hierzu ein paar Takte sagen könnte.

Wenn das so in Ordnung geht, würde ich mal einen sauberen Schaltplan entwerfen, wo wirklich alles genau spezifiziert ist. Und den würde ich dann gerne hier absegnen lassen. Dann könnte ich langsam das Material bestellen und mich an die Arbeit machen.



Noch ein paar erklärende Worte zum Abschluss:

Ich bin sehr dankbar, wie mir hier geholfen wird. Ich würde mir gerne mehr selbst anlesen, aber dazu fehlt es mir ein wenig an Zeit. Die Beleuchtung mit LEDs ist nur eines von vielen (!) Unterprojekten, die am Ende ein hoffentlich beachtliches Gesamtwerk ergeben. Neben der ganzen Elektrotechnik hier gehört auch das Ansprechen des Host-PCs über viele USB-Eingabegeräte zu meinem Projekt. Genauer: Ich werde eine Software schreiben, die über 10 USB-Tastaturen angesprochen wird. Jede USB-Tastatur ermöglicht die sichere Authentisierung am Host-PC. Nach der Authentisierung können über die USB-Tastaturen bestimmte LEDs angesprochen werden, der Zugriff auf die MP3-Bibliothek steht ebenso offen wie einige andere nette Gadgets. Dazu, und das dürfte den Hauptteil an Arbeit bedeuten, muss ich eine Unmenge an Holz verarbeiten (das ganze wird in einem 10-Mann-Tisch installiert).

Wie Ihr seht, ein recht umfangreiches Projekt. Das erste Projekt in dieser Grössenordnung für mich. Aber wer sich keine hohen Ziele steckt, lernt auch nicht dazu. Ich will nur sagen, dass ich auf keinen Fall lernfaul bin. Nur es ist auf jeden Fall einfacher für mich, wenn ich hier ein paar konkrete Fragen stelle, als wenn ich mich zwei Tage nur mit Recherche beschäftigen muss.
Benutzeravatar
Pehu
Mega-User
Mega-User
Beiträge: 469
Registriert: Mi, 01.11.06, 19:33
Kontaktdaten:

So, 26.10.08, 19:35

Mit dem Schaltplan dürfte jetzt alles klarer sein. Der µC steuert die Transistoren an, die wiederrum den Strom für die Leds "freisschalten". Somit fließt über den µC nur der Steuerstrom für die Transistoren. Über die oberen Transistoren regelst du den Stromfluss aller Ledsgruppen die dran hängen. Der zweite obere Transistor muss ein "dicker" sein, da über ihn der komplette Strom aller Ledgruppen fließen!

Genau diesen Aufbau habe ich für meinen Auto-Head-Up-Display Projekt verwendet. Leds hängen am 12 Volt und der µC über einen Spannungsregler am 5 Volt Netz. Wenn du Bilder von meiner Platine sehen möchtest, kann ich gerne ein paar schießen und hochladen. Jedoch habe ich SMD-Bauteile verwendet.
Dateianhänge
Schaltplan
Schaltplan
transis.GIF (9.1 KiB) 4486 mal betrachtet
lightbulb
User
User
Beiträge: 18
Registriert: Di, 07.10.08, 00:45

Mo, 27.10.08, 14:27

Pehu hat geschrieben:Mit dem Schaltplan dürfte jetzt alles klarer sein. Der µC steuert die Transistoren an, die wiederrum den Strom für die Leds "freisschalten". Somit fließt über den µC nur der Steuerstrom für die Transistoren. Über die oberen Transistoren regelst du den Stromfluss aller Ledsgruppen die dran hängen. Der zweite obere Transistor muss ein "dicker" sein, da über ihn der komplette Strom aller Ledgruppen fließen!

Genau diesen Aufbau habe ich für meinen Auto-Head-Up-Display Projekt verwendet. Leds hängen am 12 Volt und der µC über einen Spannungsregler am 5 Volt Netz. Wenn du Bilder von meiner Platine sehen möchtest, kann ich gerne ein paar schießen und hochladen. Jedoch habe ich SMD-Bauteile verwendet.
Vielen Dank für die schöne Skizze! Jetzt ist mir doch einiges klarer geworden! Du brauchst keine Bilder hochladen, Du hast mir schon genug geholfen! :)

Was die "dicken" Haupttransistoren bei mir angeht: Ich will ja zwei davon über PWM ansteuern und damit meine zwei LED-Gruppen dimmen. Da müsste es doch reichen, wenn die beiden Transistoren jeweils 1A vertragen, oder? Am einen hängen ebenso 200 mA (10x rote LED) wie am anderen (10x 3x gelbe LED). Oder gibt es da sonst noch irgendwelche wichtigen Unterschiede zwischen den Transistoren (PNP/NPN mal ausgenommen, das kann ich nachlesen)?

Wenn ich jetzt den Gesamtstromverbrauch ausrechne, komme ich auf 10x 400 mA zuzüglich dem, was die Controller brauchen. Da müsste doch ein stabilisiertes Netzteil reichen, das 6 A abgibt. Oder sollte ich besser ein noch grösseres Netzteil nehmen (8/10 A)? Es geht hier nicht um den Stromverbrauch, die ganze Anlage wird etwa alle zwei Wochen sechs Stunden laufen oder so, also geht eine Überdimensionierung beim Netzeil nicht wirklich ins Geld. Aber es muss ja nicht sein.


Noch eine kurze Nachfrage, weil ich das gerade bei Reichelt gesehen habe: Ist ein "2N-Transistor" ein NPN-Transistor? Denn das wäre ja das, was ich benutzen würde.
Benutzeravatar
Pehu
Mega-User
Mega-User
Beiträge: 469
Registriert: Mi, 01.11.06, 19:33
Kontaktdaten:

Do, 30.10.08, 10:55

lightbulb hat geschrieben: Was die "dicken" Haupttransistoren bei mir angeht: Ich will ja zwei davon über PWM ansteuern und damit meine zwei LED-Gruppen dimmen. Da müsste es doch reichen, wenn die beiden Transistoren jeweils 1A vertragen, oder? Am einen hängen ebenso 200 mA (10x rote LED) wie am anderen (10x 3x gelbe LED). Oder gibt es da sonst noch irgendwelche wichtigen Unterschiede zwischen den Transistoren (PNP/NPN mal ausgenommen, das kann ich nachlesen)?
1 Ampere reicht dicke aus. Der Rest wie passender Vorwiderstand für Basis... ist denke ich klar...
lightbulb hat geschrieben: Wenn ich jetzt den Gesamtstromverbrauch ausrechne, komme ich auf 10x 400 mA zuzüglich dem, was die Controller brauchen. Da müsste doch ein stabilisiertes Netzteil reichen, das 6 A abgibt. Oder sollte ich besser ein noch grösseres Netzteil nehmen (8/10 A)? Es geht hier nicht um den Stromverbrauch, die ganze Anlage wird etwa alle zwei Wochen sechs Stunden laufen oder so, also geht eine Überdimensionierung beim Netzeil nicht wirklich ins Geld. Aber es muss ja nicht sein.
6 A Netzteil reicht aus. Ein bisschen Puffer würde ich immer planen. Vielleicht ein größeres nehmen, wenn du in Zukunft erweitern willst.
lightbulb hat geschrieben: Noch eine kurze Nachfrage, weil ich das gerade bei Reichelt gesehen habe: Ist ein "2N-Transistor" ein NPN-Transistor? Denn das wäre ja das, was ich benutzen würde.
Sage mir leider gar nichts. Ich würde zur Sicherheit zum einem anderen Typ greifen, da es genügend andere gibt. :wink:
Antworten