Forum: Mikrocontroller und Digitale Elektronik RGB-Stripes betreiben ohne Multiplexer


von Felix V. (led35)


Angehängte Dateien:

Lesenswert?

Hallo liebe Mitglieder dieses Forums,

zu allererst wünsche ich allen hier eine schöne Adventszeit.
Ich möchte wegen der anfangenden vorweihnachtlichen Stimmung eine kleine 
Fensterdekoration bauen.

Ich habe mir gedacht 8 RGB-Stripes (Common Anode) über einen ATMEGA 
laufen lassen. Zur Farbauswahl benutze ich N-Channel MOSFET's 
(Stichwort: PWM).

Jetzt kommt mein Problem:
Ich möchte die Stripes einzeln auswählen (OHNE Multiplexen!!!). Sie 
werden mit 12 Volt betrieben und benötigen ca. 250 - 300 mA pro Stripe.
Wie kann ich meine PWM-Verabeitung bei der Farbauswahl erhalten lassen, 
aber dennoch die Stripes einzeln ansteuerbar machen?

Das Hauptproblem liegt also in der Steuerschaltung der Auswahl der 
einzelnen Stripes OHNE Multiplexen. Sie sollen also jeweils über einen 
Ausgangspin ansteuerbar sein.

von Heinz R. (heijz)


Lesenswert?

Da brauchst ja 24 MosFets usw..

Warum nimmst nicht gleich z.B. WS2812-Streifen?

von Michael U. (amiga)


Lesenswert?

Hallo,

Du willst von 8 Stripes nur jeweils einen einschalten oder wie meinst Du 
das?

Gruß aus Berlin
Michael

von H.Joachim S. (crazyhorse)


Lesenswert?

Auf gut deutsch willst du also 24 unabhängige PWM-Kanäle.
Dann fehlen 2 wichtige Informationen: Auflösung und Frequenz der PWM.
Was du machen kannst wäre eine Software-PWM zu programmieren, gibt hier 
genügend Beispiele. Hat natürlich Einschränkungen.

Nimm dir lieber ein oder zwei PWM-Chips, die fütterst du einfach mit den 
gewünschten Daten via I2C oder SPI.

von Felix V. (led35)


Lesenswert?

Hallo,

Dankeschön erst einmal für die vielen Antworten.
Ich meine das so, dass ich 8 Streifen unabhängigvoneinander in der 
RGB-Farbe ändern kann und sie ein oder aus schalten kann. Die RGB-Kanäle 
werden über PWM gesteuert und bei allen Stripes zusammengefasst. Also 
bleibt nur noch die Frage wie mache ich das mit dem ein und Ausschalten 
?

von freitag (Gast)


Lesenswert?

Felix V. schrieb:

> 8 Streifen unabhängigvoneinander in der
> RGB-Farbe ändern.

> Die RGB-Kanäle werden ... bei allen Stripes zusammengefasst.

Was denn nun?
Wenn sie zusammengefasst sind kann man nicht unabhängig steuern.

von Felix V. (led35)


Lesenswert?

Entschuldige hier für die Unklarheiten,

ich möchte das alle Farben ein gleiches PWM-Signal erhalten, aber die 
Anzahl der leuchtenden Stripes veränderbar bleibt.

Damit ist gemeint, dass:

1. Alle Stripes gleiche Farbe
2. Farbe änderbar

von freitag (Gast)


Lesenswert?

Ach so, es sollen also die Streifen einzeln schaltbar sein. Und du 
suchst irgend etwas um die (+) Leitung zu schalten.

Wenn dir dieses Problem hier eine Frage wert ist: Am einfachsten geht 
das mit je einem integrierten highside Leistungsschalter. BTS432 ist 
reichlich überdimensioniert, aber der erste der mir dazu immer einfällt.

Alternativ und billiger, jeweils 2 Transistoren und 2-3 Widerstände. Die 
Schaltung ist zum Beispiel da zu sehen:
https://electronics.stackexchange.com/questions/224740/high-side-switch-always-closed-because-driver-bjt-is-always-closed
Wo sich dort der Motor befindet, wird der LED-Streifen angeschlossen.

von freitag (Gast)


Lesenswert?

Noch kurz die Anschlussbelegung des BTS432:

1 GND
2 Ansteuerung von Adruino
3 +12V
4 bleibt frei
5 zu +LED

Weitere Bauelemente/Vorwiderstände sind nicht erforderlich.

von Felix V. (led35)


Lesenswert?

Genau das war mein Problem!

Dann danke ich für die sehr hilfreiche Antwort, wenn jemandem noch ein 
günstigeres Bauteil einfällt als den BTS432, dann würde ich mich sehr 
freuen.

Dankeschön :-)

von Teo D. (teoderix)


Lesenswert?

Felix V. schrieb:
> 8 RGB-Stripes (Common Anode)

freitag schrieb:
> Ach so, es sollen also die Streifen einzeln schaltbar sein. Und du
> suchst irgend etwas um die (+) Leitung zu schalten.

Nein, er MUSS GND Schalten!
Zum Glück weiß er das ja schon. :)

Heinz R. schrieb:
> Warum nimmst nicht gleich z.B. WS2812-Streifen?

Würde ich auch empfehlen. Mit wenig Aufwand lässt sich JEDE LED EINZELN 
ansteuern. Braucht insgesamt also nur EINE Datenleitung, keine 
zusätzlichen Leistungsschalter oä.

von Teo D. (teoderix)


Lesenswert?

Felix V. schrieb:
> wenn jemandem noch ein
> günstigeres Bauteil einfällt

(So gut wie) Jeder NPN Transistor mit IC max. 500mA, für 10Cent...

von Felix V. (led35)


Lesenswert?

ich habe jetzt aber einmal die eine Leiste voller LED's warum sollte ich 
mir eine neue holen ?

von U. M. (oeletronika)


Lesenswert?

Hallo,
> Felix V. schrieb:
> Ich habe mir gedacht 8 RGB-Stripes (Common Anode) über einen ATMEGA
> laufen lassen. Zur Farbauswahl benutze ich N-Channel MOSFET's
> (Stichwort: PWM).
> Jetzt kommt mein Problem:
> Ich möchte die Stripes einzeln auswählen (OHNE Multiplexen!!!). Sie
> werden mit 12 Volt betrieben und benötigen ca. 250 - 300 mA pro Stripe.
> Wie kann ich meine PWM-Verabeitung bei der Farbauswahl erhalten lassen,
> aber dennoch die Stripes einzeln ansteuerbar machen?
> Sie sollen also jeweils über einen Ausgangspin ansteuerbar sein.
Wenn du für jeden Stripe eigene FET einsetzt, kannst du über die die 
Gates das PWM-Signal bei Bedarf unterdrücken (Bedraf also 8x 3 FET).

Dann muß nur ein Gatewiderstand zwischen PWM-Out und FET (z.B. 1kOhm).
Dann können Gates per npn-Transistor auf Low gezogen werden.
Damit die Gates von R-G-B entkopplet werden, braucht es noch je eine 
Diode zwischen Gate und Kollektor von npn-Trans.
Für die 8 npn-Trans. benötigst du natürlich noch 8 Portleitungen.

Alternativ kannst du auch das PWM-Signal über Logikgatter an die FET 
ausgeben und mit den Logikgattern das PWM-Signal blockieren.

Gruß Öletronika

von Teo D. (teoderix)


Lesenswert?

Felix V. schrieb:
> ich habe jetzt aber einmal die eine Leiste voller LED's warum sollte ich
> mir eine neue holen ?

Felix V. schrieb:
> Ich habe mir gedacht 8 RGB-Stripes (Common Anode) über einen ATMEGA
> laufen lassen....

Wo her sollen wir das wissen. Werd nich patzig und lass das Plenken.

von Felix V. (led35)


Lesenswert?

Teo D. schrieb:
> Wo her sollen wir das wissen. Werd nich patzig und lass das Plenken.

Das war nicht patzig gemeint, nur damit wird meine Frage nicht 
beantwortet und dies ist nicht hilfreich. Ich hab nicht gefragt welchen 
Strip ich kaufen soll, sondern wie ich mein Problem lösen kann und wenn 
jetzt schon zwei Leute schreiben ich soll mir was anderes kaufen hilft 
mir das nicht.

Ich entschuldige mich bei allen bei denen das auch so rübergekommen ist.

von Teo D. (teoderix)


Lesenswert?

Felix V. schrieb:
> Ich entschuldige mich bei allen bei denen das auch so rübergekommen ist.

OK, bin heute auch etwas empfindlich. Ich hätte auch etwas freundlicher 
reagieren können. Nur diese höllischen Kopfschmerzen....

von freitag (Gast)


Lesenswert?

Teo D. schrieb:

> freitag schrieb:
>> Ach so, es sollen also die Streifen einzeln schaltbar sein. Und du
>> suchst irgend etwas um die (+) Leitung zu schalten.
>
> Nein, er MUSS GND Schalten!
> Zum Glück weiß er das ja schon. :)

Mensch Theo, du kannst dir deine Großbuchstaben und Ausrufezeichen ruhig 
verkneifen. Diese sind sachbezogener Diskussion nicht zuträglich. Und 
manchmal geradezu peinlich...

Wenn du mal bitte das Bild von TO ganz oben anschauen möchtest: GND 
schaltet er ja jetzt schon, zwecks PWM.
Zusätzlich sollen nun aber die +12V wahlweise auf die 8 einzelnen 
Stripes geschaltet werden. Und genau das geht eben nicht mit:
Teo D. schrieb:
> (So gut wie) Jeder NPN Transistor mit IC max. 500mA, für 10Cent...

Eine preiswertere Variante hatte ich bereits in diesem Beitrag verlinkt:
freitag schrieb:

von Teo D. (teoderix)


Lesenswert?

freitag schrieb:
> Mensch Theo, du kannst dir deine Großbuchstaben und Ausrufezeichen ruhig
> verkneifen.

Ja ich weiß, machs auch nur (so häufig) wenn ich höllisch Kopfschmerzen 
habe... :/

freitag schrieb:
> Zusätzlich sollen nun aber die +12V wahlweise auf die 8 einzelnen
> Stripes geschaltet werden.

Is mir wohl wegen dem "ohne Multiplexer" entgangen.


PS: Sorry an alle, denn ich Heute sonnst noch auf den Schlips getreten 
bin. :/

von freitag (Gast)


Lesenswert?

Hmm, deine vorhergehende Entschuldigung ist mir glatt entgangen, sonst 
hätte ich das nicht so hervorgekehrt, sorry meinerseits. Alles o.k. und 
wünsche gute Besserung bei den Kopfschmerzen.

von Teo D. (teoderix)


Lesenswert?

Danke, wird schon werden.

von Felix V. (led35)


Angehängte Dateien:

Lesenswert?

Ich hab noch eine letzte Frage:

Funktioniert dieser Schaltplan ?

von H.Joachim S. (crazyhorse)


Lesenswert?

Nö. Da fehlt noch die Pegelwandlung für die Basisansteuerung.
Aber vom Prinzip her richtig.

von U. M. (oeletronika)


Lesenswert?

Hallo,
> Felix V. schrieb:
> Funktioniert dieser Schaltplan ?
Vermutlich nicht, wenn du Pin_01 bis Pin_07 direkt am uC betreiben 
willst.

Da braucht es zumindest einen Open-Collector-Treiber oder Open-Drain, 
der auch 12V-Spannungsfest ist.
Du könntest dafür z.B. einen ULN2004 benutzen.
Gruß Öletronika

von Teo D. (teoderix)


Lesenswert?

Im Prinzip ja. Nur der BD237 bräuchte etwas mehr Ib, ~500-Ohm sollten 
reichen. Die Gate-Widerstände würde ich kleiner machen.
Wie willst du die BD237 schalten?
Direkt mit nem µC geht das ja nicht. Die Basis muss ja auf 12V o. höher 
kommen, damit die abschalten. Da noch ne kleine NPN (Inverter) Stufe 
vor, dann kann das der der µC mit 5V o. weniger schalten.


PS: Ich geh mal davon aus, das du die Auswahl deiner Bauteile, an deiner 
Bastelkiste ausrichtest?! :)

: Bearbeitet durch User
von K. S. (the_yrr)


Angehängte Dateien:

Lesenswert?

Felix V. schrieb:
> Funktioniert dieser Schaltplan ?

leider nicht ganz, egal ob du 0V oder 5V an Pin1-7 hast, die Spannung 
Basis-Emitter ist immer so groß dass der Transistor folglich immer an 
ist.

du brauchst einen weiteren (kleinen) Transistor als Pegelwandler:
Schalte den 1k nach 12V und einen NPN von der Basis des PNP nach ground, 
Basis vom NPN per widerstand an den pin des arduino

hier mal ein Beispiel, R2 ist optional und hält den NPN ausgeschaltet 
ohne Signal, R1/Q1 dient als Pegelwandler, R3/R4 sind Basiswiderstände 
für die Transistoren, eventuell anpassen.

von Felix V. (led35)


Lesenswert?

Vielen vielen Dank!

Und ja das ich richte die Bauteilwahl an meiner Bastelkiste aus :-)

Ich probier das mal mit dem Pegelwandler.

Frohes Fest allen ;)

von Stefan F. (Gast)


Lesenswert?

Lies http://stefanfrings.de/mikrocontroller_buch/index.html Band 2 
Kapitel 2.2 für die Grundlagen und Kapitel 3.4 für konkrete 
Transistorschaltungen. Mit den Infos wirst du im Stande sein, die teile 
aus deiner Bastelkiste einzusetzen - es sei denn, sie sind völlig 
ungeeignet.

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.