Hallo, wollte mal nachfragen, was die beste Methode ist, einen WS2812B Strip mit 96 LED's mit einem Raspbarry PI zu steuern. Anscheinend sind diese LED's sehr empfindlich auf Spannungsspitzen sowie wenn die Datenleitung noch aktiv ist, während die Arbeitsspannung nicht anliegt. Wie kann ich meine Strips am besten gegen Defekte absichern? Mit meiner Recherche im Netz bekomme ich leider nur Halbwissen, da sich viele Meinungen in den Blogs unterscheiden. Der Raspberry Pi liefert am GPIO Pin 18 leider nur 3.3VDC die LED'S werden aber mit 5VDC betrieben. Laut Datenblatt der LED's sollte die Spannung der Datenleitung aber 70% der Arbeitsspannung der LED'S betragen. Hier die Varianten, die ich gefunden habe: Variante 1: Data Line vom Strip direkt am Pin 18 des Raspberry Variante 2: 330 Ohm Widerstand direkt am Data Input der LED'S (Link: Beispiel mit einem Arduino der 5VDC anstatt die 3.3VDC vom RAS am PWM liefert) https://cdn-learn.adafruit.com/assets/assets/000/030/892/medium800/leds_Wiring-Diagram.png?1456961114 Variante 3: Logic Level Converter am Pin 18 um die 3.3VDC auf 5VDC anzuheben. Hier ist fraglich, ob nicht wiederum ein kleiner Widerstand auf die Datenleitung einzubauen ist. https://i.stack.imgur.com/fXj79.png http://www.ebay.com/itm/10x-IIC-I2C-Logic-Level-Converter-Bi-Directional-Module-5V-3V-for-Arduino-TE718-/192151764589 Variante 4: WS2812b - Schutzschaltung einbauen (siehe Link), was aber wiederum nur 3.3VDC liefert und nur Spannungsspitzen ausbügelt. http://www.led-studien.de/schutzschaltung-fuer-ws2812-pixel/ Variante 5: Das PWM-Signal mit einem Transistor verstärken, sodass eine Steuerspannung von 5VDC-30% ensteht. Hier ist mir nicht klar, ob ein Transistor die schnelle Schaltfrequenz des PWM überhaupt leisten kann. Außerdem bauen manche einen Stabilisierungskondensator parallel zur Spannungsversorgung ein, andere wieder nicht. Ich habe mal zu den jeweiligen Varianten ein paar Bilder hochgeladen, die ich im Netz gefunden habe. Quellen: LED's: https://www.pololu.com/product/2547 Beitrag "Re: WS2812 und WS2812b Qualitätsprobleme!" http://www.ledstyles.de/index.php/Thread/23548-WS2812-Probleme/?pageNo=1 https://raspberrypi.stackexchange.com/questions/53276/control-5m-of-ws2812-led-strip-wire-it-up https://learn.adafruit.com/adafruit-neopixel-uberguide/basic-connections Hoffe, dass mir hier jemand weiterhelfen kann, und vielleicht Klarheit für alle bringt. Liebe Grüße Matthias
Matthias S. schrieb: > Der Raspberry Pi liefert am GPIO Pin 18 leider nur 3.3VDC die LED'S > werden aber mit 5VDC betrieben. > Laut Datenblatt der LED's sollte die Spannung der Datenleitung aber 70% > der Arbeitsspannung der LED'S betragen. Das ist richtig. In der Praxis (bei mir und anderen Forenteilnehmer) funktioniert dennoch auch jeder Pin des Raspberry Pi. Du kannst natürlich jede Form von Level Shifting nutzen um das Signal anzuheben. Dazu gibt es hunderte von Beiträgen im Internet, bspw. https://electronics.stackexchange.com/questions/127606/simplest-uni-directional-level-shifter-3-3v-5v > Anscheinend sind diese LED's sehr empfindlich auf Spannungsspitzen sowie > wenn die Datenleitung noch aktiv ist, während die Arbeitsspannung nicht > anliegt. Wie kommst du darauf? > Außerdem bauen manche einen Stabilisierungskondensator parallel zur > Spannungsversorgung ein, andere wieder nicht. Normalerweise unnötig. Falls das NT schwach ist oder nicht gut ausregelt, kann er helfen. > wollte mal nachfragen, was die beste Methode ist, einen WS2812B Strip > mit 96 LED's mit einem Raspbarry PI zu steuern. Noch als Anmerkung: Bei der Stromversorgung kommt es zu einem Spannungsabfall auf dem Stripe (von der ersten Richtung letzte LED). Nach meiner Erfahrung ist dieser Spannungsabfall allerdings häufig unkritisch (hier bei mir mit 1.2A und 30 LEDs gerade mal 16 mV). Insbesondere da die Chips auch noch gut bei etwas über 3V arbeiten. Mehrfacheinspeisung also unnötig. Im Zweifelsfall testen / nachmessen.
Bei 96 LEDs ist das alles sehr sehr unkritisch. Eine Zwischenspeisung wird da nicht nötig sein. Dennoch würde ich am Ende noch eine Schlussspeisung vorsehen. Aber das siehst du dann wenn du alle LED voll weiß durchsteuerst und zum Ende hin die LEDs ins rötliche abdriften. Bei mir sind es übrigens bei 18 Meter á 60 LED ein Spannungsabfall auf ca. 3,4V. Ich habe dann alle 2 Meter eine Zwischenspeisung hinzugefügt. Klappt tadellos. Wenn du die normalen WS Stripes nutzt, ist da vor jeder LED schon ein C mit drauf, als auf Kondensatoren kannst du eigentlich voll verzichten. Ich steuere meine mit einem STM32 an, der liefert auch bloß 3V am Ausgang, auch das geht wunderbar. Du musst nur aufpassen das deine Leitung vom Ausgang zur ersten LED relativ kurz (<10cm) ist, sonst klappt dies nicht. So als kleinen Tipp: Schneide dir eine LED vom Strip ab und nutze sie als "Opfer-LED" die packst du dir direkt an deinen Raspi oder was auch immer, gehst dort mit deinen 3V drauf und von deren Ausgang hast du dann deine 5V... Da kannst du auch größere Strecken mit dem Datenkabel überbrücken - spart zumindest einen Lvl-Shifter. ;-)
Mikro 7. schrieb: >> Anscheinend sind diese LED's sehr empfindlich auf Spannungsspitzen sowie >> wenn die Datenleitung noch aktiv ist, während die Arbeitsspannung nicht >> anliegt. > > Wie kommst du darauf? Die WS2812 (ohne B) hatten keine Schutzdioden am Datenpin. Gerüchteweise sind die bei Schaltungsfehlern sehr leicht abgeraucht (Nein, ich habe das nicht getestet... ehrlich). Die WS2812B haben diese Dioden und halten dementsprechend mehr aus. Ich denke daher reicht für die ein Widerstand in der Datenleitung. Matthias S. schrieb: > wollte mal nachfragen, was die beste Methode ist, einen WS2812B Strip > mit 96 LED's mit einem Raspbarry PI zu steuern. Ich hätte da einen PIC mit CLC genommen, damit das Timing richtig ist und der Raspberry nicht mit Bitbanging und aktiven Warten beschäftigt ist. Ansonsten einen Levelshifter, Schutzwiderstand in der Datenleitung und dem Kondensator in der Spannungsversorgung.
yesitsme schrieb: > Ich > denke daher reicht für die ein Widerstand in der Datenleitung. Schaden tut er nicht. Wofür ist er aber notwendig? yesitsme schrieb: > Ich hätte da einen PIC mit CLC genommen, damit das Timing richtig ist > und der Raspberry nicht mit Bitbanging und aktiven Warten beschäftigt > ist. Da er GPIO Pin 18 nutzen will, wird er wohl den PWM Serializer (DMA) nutzen. Da braucht es keinen uC. Bit-banging mit 400ns im Raspbian Userland über mehrere Signale zu timen ist ohnehin extrem schwierig (quasi unmöglich); ganz zu schweigen von Interrupts und Thread Suspension.
Hi, ich habe bei mir einen Optokoppler in die Datenleitung eingebaut. Ich hatte ein komische Gefühl dabei, dass ich zwei Netzteile (LED und Pi) über GND zusammenschließe. Wer weiß schon was da für Ausgleichsströme fließen, weil die Schaltnetzteile kein richtiges Ground haben. Gebranntes Kind... es gab da mal einen Vorfall, als ich ein externes Gerät mit Schaltnetzteil per USB an mein PC angesteckt hatte und der dann immer abgeschmiert ist. Vorteil daran war, dass sich damit das Pegelwandler Problem 3,3V zu 5V mit gelöst hat.
Sicherheitsfanatiker schrieb: > Ich hatte ein komische Gefühl dabei, dass ich zwei Netzteile (LED und > Pi) über GND zusammenschließe. Wer weiß schon was da für > Ausgleichsströme fließen, weil die Schaltnetzteile kein richtiges Ground > haben. Das ist viel zu kompliziert gedacht. Ich speise den µC halt ebenfalls aus den +5V des Netzteils der WS Stripe. Ich bin noch nie in Versuchung gekommen den µC (oder meinetwegen auch den Raspi, der läuft ebenfalls mit 5V) mit einem anderen NT zu benutzen, warum auch?! Strom liegt ja schon da an der Stripe.
so kann man es natürlich auch machen und es ist sogar die elegantere Lösung
Sicherheitsfanatiker schrieb: > so kann man es natürlich auch machen und es ist sogar die > elegantere Lösung Da eignen sich dann übrigens diese lustigen 3-Pin Stecker an den Stripes die da am Anfang dran sind ganz gut. :-) so mach ich das immer, da braucht man ausschließlich diesen Stecker zu lösen und hat seinen MC in der Hand. Btw... ich bin René K., bin am Handy aber nicht angemeldet.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.