WS2812 zu hell / kleiner als 1 dimmen

Gast #5622162
Lesenswert?

Guten Abend,

ich habe hier ein Array aus WS2812, die ich im Dunkeln als Anzeige 
benutzen möchte. Dafür sind diese LEDs aber selbst beim kleinsten 
RGB-Wert noch zu hell, bzw hat man dann keine Abstufungen mehr.
PWM interferiert mit der internen PWM der LEDs und es flackert. Mit 
Strombegrenzung (mit Transistoren, wie hier beschrieben: 
https://www.mikrocontroller.net/articles/Konstantstromquelle) schaltet B 
schon ab wenn R und G noch hell leuchten.

Gib es noch andere Möglichkeiten, diese Licht-Monster weiter zu dimmen?

Danke
#5622167
Lesenswert?

@ Bittermelone (Gast)

>benutzen möchte. Dafür sind diese LEDs aber selbst beim kleinsten
>RGB-Wert noch zu hell,

Beim Wert 1?

> bzw hat man dann keine Abstufungen mehr.

>PWM interferiert mit der internen PWM der LEDs und es flackert.

Glaub ich nicht. Dann ist eher deine Ansteuerung oder Stromversorgung 
schlecht.

> Mit
>Strombegrenzung (mit Transistoren, wie hier beschrieben:
>https://www.mikrocontroller.net/articles/Konstantstromquelle) schaltet B
>schon ab wenn R und G noch hell leuchten.

Welche LEDs hast du denn GENAU, denn unter dem Namen sind verschiedene 
LEds in Umlauf. Flackern tut da aber nichts.

>Gib es noch andere Möglichkeiten, diese Licht-Monster weiter zu dimmen?

Monster? Bist du photosensitiv?
Gast #5622179
Lesenswert?

Falk B. schrieb:
> Beim Wert 1?

Ja. 1 geht gerade, aber ich hätte gerne noch ein paar dunklere Stufen.


>>PWM interferiert mit der internen PWM der LEDs und es flackert.
>
> Glaub ich nicht. Dann ist eher deine Ansteuerung oder Stromversorgung
> schlecht.

Nein, das ist so. Ist auch logisch, weil die Dinger eine eigene PWM drin 
haben die dann interferiert, wenn man die Ansteuerung auch wieder 
moduliert. Konkret habe ich einen SPI-Puffer so mit Daten gefüllt, dass 
die LEDs erst auf 1 geschaltet werden und nach kurzer Zeit auf 0. Das 
wird per gelooptem DMA kontinuerlich an das Array geschickt. Wenn ich 
statt 0 nochmal 1 schicke, flackerts nicht. Das Timing Stimmt auch, ich 
kann präzise einzelne LEDs und Farben ansteuern.



> Welche LEDs hast du denn GENAU, denn unter dem Namen sind verschiedene
> LEds in Umlauf. Flackern tut da aber nichts.

WS2812B in einem NeoPixel Feather Wing.


>>Gib es noch andere Möglichkeiten, diese Licht-Monster weiter zu dimmen?
>
> Monster? Bist du photosensitiv?

Wenn ich mal aus versehen eine auf 255 setze, bin ich jedes Mal für ein 
paar Sekunden blind. Die sind einfach so irre hell.
#5622194
Lesenswert?

@Bittermelone (Gast)

>Ja. 1 geht gerade, aber ich hätte gerne noch ein paar dunklere Stufen.

Geht halt nicht.

>>>PWM interferiert mit der internen PWM der LEDs und es flackert.
>
>> Glaub ich nicht. Dann ist eher deine Ansteuerung oder Stromversorgung
>> schlecht.

>Nein, das ist so. Ist auch logisch, weil die Dinger eine eigene PWM drin
>haben die dann interferiert, wenn man die Ansteuerung auch wieder
>moduliert.

Stimmt.

> Konkret habe ich einen SPI-Puffer so mit Daten gefüllt, dass
>die LEDs erst auf 1 geschaltet werden und nach kurzer Zeit auf 0. Das
>wird per gelooptem DMA kontinuerlich an das Array geschickt.

Dafür sind sie halt nicht gedacht.
Gast #5622347
Lesenswert?

Ist schon etwas milder mit 3V. Aber so zum direkt drauf schauen in 
dunkler Umgebung immer noch mehr als ausreichend.

Die Beleuchtung auf dem Foto ist heller als es scheint, man kann da noch 
gut Zeitung lesen. Ich habe die Blende etwas zugemacht und trotzdem 
überstrahlt die LED.
Angehängte Dateien:
#5622617
Lesenswert?

Falk B. schrieb:
> @Klaus R. (klaus2)
>
>>Die laufen auch mit ~3.3V und sind dann dtl dunkler...
>
> Nö, denn der Treiber-IC hat Konstantstromausgänge.

Doch, dat funst!
Kann aber grad nur auf 3V runter, dann resettet der µC. Sollte aber bis 
ca. 2,8V runter gehen. Dann aber bitte keinen 5V in DI jagen....

Klaus R. schrieb:
> Falk das mag stimmen aber mit meinen WS2812 habe ich es gestern erst
> probiert

Vor ~3s...
Gast #5622714
Lesenswert?

Harald A. schrieb:
> APA102 hat noch zusätzlich Global dimming, hat aber ein paar Nachteile:

Interessant, allerdings zu teuer.

Eine Möglichkeit wäre vielleicht noch, in jedem PWM-Zyklus die LEDs kurz 
ganz auszuschalten, um die interne PWM zu synchronisieren. Der 
entsprechende Transistor müsste natürlich hinter die (4 uF) 
Abblockkondensatoren, was etwas fummelig wird auf dieser Platine.
Gast #5623269
Lesenswert?

Bittermelone schrieb:
> Interessant, allerdings zu teuer.

APA102 kostet so ca. 15 Cent, was bezahlst du für die WS2812?

Es gibt einen schönen Nebeneffekt bei der APA102. Wenn man die originale 
LED mit dem modifizierten Package (Thermal Pad unter dem Package) beim 
Hersteller in Taiwan kauft (neon-world.com, auch kleinere Mengen sind 
ok), ist man damit sicher vor irgendwelchen Fakes von minderer Qualität, 
vertauschten Farben usw. Das modifizierte Package baut nämlich keiner 
nach, die Clones haben allesamt PLCC6, meist in diesem ominösen 
„Weichplastik“ wie die WS2812.

Relativ neu ist die APA102-2020, alles identisch nur kleiner (2x2mm)
Gast #5623432
Lesenswert?

Die eingebaute Elektronik ist allerdings auch ein Faktor beim 
Energieverbrauch, die 32 Stück WS2812 verbrauchen zusammen schon gut 20 
mA wenn sie aus sind. Bei der APA102 steht dazu leider nichts im 
Datenblatt, aber der "Dunkelstrom" wird wohl auch im mA Bereich liegen.

Muss ich bei einer konventionellen Matrix mit ein paar 74HC595 und 
Transistoren auch mit solchen Verlusten rechnen?
Gast #5623461
Lesenswert?

Natürlich "rechnet" da was bei einem RGB Wert von 0. Der Oszillator muss 
ja weiter laufen um Daten empfangen zu können und die PWM läuft 
vermutlich auch, halt mit einer Pulsweite von 0. Steht auch im 
Datenblatt: Static power
consumption / IDD: 1mA.
Gast #5623481
Lesenswert?

Ok, habe gerade mal die Rechnung von neon-world rausgesucht, da lagen 
die bei 1000 Stück bei 19 Dollar-Cent. Also 15 Cent aus der Erinnerung 
waren nicht ganz richtig.
Die kompatiblen SK9822 bei Ali kosten allerdings nur 101USD/1000 Stück 
oder 13USD/100Stück. Probleme hatte ich damit auch noch nicht, 
allerdings vertraue ich lieber dem Original.
https://de.aliexpress.com/item/10-1000pcs-APA102-LEDs-Chips-IC-SMD-5050-RGB-For-Strip-Screen-DC5V-with-DATA-and/32323146870.html

Sonst bei neon-world fragen (die E-Mail unten auf der Seite) und fragen, 
ob die auch günstigen Postweg machen würden.

Ich kann echt sagen, dass man das SPI-Interface sehr schnell schätzen 
lernt und dann auch nie wieder zur 2812 zurück will.
#5623495
Lesenswert?

Bittermelone schrieb:
> Ist auch logisch, weil die Dinger eine eigene PWM drin
> haben die dann interferiert, wenn man die Ansteuerung auch wieder
> moduliert.

Das würd ich nochmal prüfen, kannst ja einfach mal die PWM ändern. So 
logisch ist das nicht, dazu müssten die Frequenzen schon zueinander 
passen.

> Konkret habe ich einen SPI-Puffer so mit Daten gefüllt, dass
> die LEDs erst auf 1 geschaltet werden und nach kurzer Zeit auf 0. Das
> wird per gelooptem DMA kontinuerlich an das Array geschickt.

Da würde ich eher vermuten, dass der Ausgabetakt schwankt oder 
unterbrochen wird, oder dass Signale mitunter nicht empfangen werden, 
und dadurch Helligkeitsschwankungen auftreten.

> Wenn ich
> statt 0 nochmal 1 schicke, flackerts nicht. Das Timing Stimmt auch, ich
> kann präzise einzelne LEDs und Farben ansteuern.

Das sagt nichts, da können dennoch Jitter oder Aussetzer in der 
Ansteuerung sein, die würdest Du in dem Fall nicht sehen.
Gast #5623897
Lesenswert?

Das ist keine soft-PWM, sondern nur ein SPI-DMA auf loop gesetzt, 
ansonsten passiert da nichts, die main Schleife ist leer. Kein Callback, 
keine anderen DMAs, wüsste nicht, wo da Jitter oder Unterbrechungen 
herkommen sollten. Aber möglich ist es natürlich, dass da noch irgendwas 
dazwischen funkt, zumal es Arduino ist.
Die PWM Frequenz ergibt sich aus der länge des DMA-Puffers und ich habe 
verschiedene ausprobiert. Die interne PWM ist auch nicht soo schnell, 
man kann sie bei schnellen Bewegungen sehen. Da ist es nur logisch, dass 
es interferiert. Vielleicht dauert die Datenverarbeitung in der LED auch 
einfach eine gewisse Zeit.

Angesichts des Stromverbrauchs der internen Elektronik ist es aber auch 
egal. Es lohnt nicht, noch ein paar uA durch Dimmen einzusparen, wenn 
jede einzelne LED schon im Leerlauf ein mA verbrät. Da ist kurzfristig 
eine getönte Scheibe in der Tat die beste Lösung, mittelfristig der 
Umstieg auf die klassische Matrix-Schaltung.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren