Seltsames Problem bei Steuerung eines WS2812B LED Streifen mit Arduino Mega

Hallo zusammen! :-)

wende mich voller Hoffnung an alle Mitglieder des Forums,da ich selbst leider einfach nicht mehr weiter weiß und nachfragen in anderen Foren teilweise erfolglos und sehr ernüchternd waren...

hoffe ihr könnt mir helfen...mein Problem zu lösen....

dabei geht es um folgendes:

ich besitze ein Arduino Mega mit einem passenden Display Shield und möchte damit meinen WS2812b LED Streifen steuern...der Streifen ist ca 2Meter lang und hat insgesamt 280 LEDs...

als Steuerungslibary benutze ich die Adafruit Neopixel Libary....

da ich diesen LED Streifen und das Board Mobil einsetzen möchte wollte ich folgende Stromversorgung machen....

LED Streifen durch 4 paralell geschaltete AA Batteriehalter mit Strom versorgen, welche jeweils 4AA Akkus mit einer Spannung von je 1,2V und 2000mah aufnehmen (also pro Batteriehalter 4,8V Spannung und 2000mah erzeugen).

Arduino mit einer zweiten seperaten Stromquelle ebenfalls mobil mit Strom versorgen. Hier habe u.a. ich einen 9V Blockbatterie mit Stromsteckeranschluss versucht,mit einer Powerbank über den USB Port des Arduinos, als auch ein AC/DC Netzteil mit 9V Ausgangsspannung ebenfalls über den normalen Stromsteckeranschluss des Boards....

Allerdings bekomme ich es nicht hin, dass der LED Streifen korrekt mobil leuchtet. Jetzt aber das verwirrende an der Sache:

Versorge ich den LED Streifen mittels Labornetzteil mit einer Spannung von 5V und den Arduino mobil per USB über eine Powerbank mit Strom funktioniert alles einwandfrei.

Versorge ich den LED Streifen mobil mit Strom (siehe oben) und den Arduino mobil mit der Powerbank oder der 9V Batterie funktioniert nichts....

Versorge ich den LED Streifen mobil mit Strom....und den Arduino über das AC/DC Netzteil mit Strom funktioniert alles einwandfrei.

Versorge ich den LED Streifen mobil mit Strom...und den Arduino per USB über den USB Ausgang meines PC's mit Strom funktioniert ebenfalls alles einwandfrei...

auch komisch ist....das wenn ich LED Streifen mobil und den Arduino per Powerbank mit Strom versorgen....durch ein Anfassen bzw. leichtes drücken auf das Board der LED Streifen flackert....aber die Leuchtsequenz der LED's zum teil wiedergegeben wird....

Den vorgeschriebenen Widerstand zum Schutz des ersten Pixels habe ich verbaut...

Habt ihre eine Idee woran das liegen könnte?

Bin euch für jede Antwort welche zur Problemlösung führen könnte mehr als dankbar! :-)

LG Winni

als Steuerungslibary benutze ich die Adafruit Neopixel Libary....

Am besten direkt auf FastLed umsteigen, die ist deutlich besser.

da ich diesen LED Streifen und das Board Mobil einsetzen möchte wollte ich folgende Stromversorgung machen....

LED Streifen durch 4 paralell geschaltete AA Batteriehalter mit Strom versorgen, welche jeweils 4AA Akkus mit einer Spannung von je 1,2V und 2000mah aufnehmen (also pro Batteriehalter 4,8V Spannung und 2000mah erzeugen).

Wird vermutlich nicht klappen. Wenn anstatt aufladbarer Zellen einmal nicht aufladbare Zellen eingesetzt werden, kann das die Leds zerstören. Ub = 6V Deine Ub = 4,8V sind nicht konstant. Mit steigender Entladung nimmt die Zellspannung ab. Aussetzter sehr gut möglich.

Arduino mit einer zweiten seperaten Stromquelle ebenfalls mobil mit Strom versorgen. Hier habe u.a. ich einen 9V Blockbatterie mit Stromsteckeranschluss versucht,mit einer Powerbank über den USB Port des Arduinos, als auch ein AC/DC Netzteil mit 9V Ausgangsspannung ebenfalls über den normalen Stromsteckeranschluss des Boards....

Die 9V Blockbatterien kannst du dafür vergessen, liefern sehr wenig Strom. Darauf achten, wenn das Board unter Spannung steht, muss auch der Led Streifen an Spannung liegen. Andernfalls muss dringend ein Begrenzungswiderstand in die Datenleitung der WS2812b.

Allerdings bekomme ich es nicht hin, dass der LED Streifen korrekt mobil leuchtet. Jetzt aber das verwirrende an der Sache:

vermutlich das Problem von oben. Zumal hier auch mal schnell 16A bei 5V fließen können!

Versorge ich den LED Streifen mittels Labornetzteil mit einer Spannung von 5V und den Arduino mobil per USB über eine Powerbank mit Strom funktioniert alles einwandfrei.

ok

Versorge ich den LED Streifen mobil mit Strom (siehe oben) und den Arduino mobil mit der Powerbank oder der 9V Batterie funktioniert nichts....

VCC zusammengelegt, oder aber die Zellen liefern den Strom nicht für die Leds. Powerbank schaltet ab?

auch komisch ist....das wenn ich LED Streifen mobil und den Arduino per Powerbank mit Strom versorgen....durch ein Anfassen bzw. leichtes drücken auf das Board der LED Streifen flackert....aber die Leuchtsequenz der LED's zum teil wiedergegeben wird....

GND nicht verbunden?

GND nicht verbunden?

War auch mein erster Gedanke.

Gruss, H.

Hi und erstmal vielen Dank für eure schnellen Antworten! :-) hat mich sehr gefreut.

leider verstehe ich es nicht ganz....

z.b. mit dem GND.... da ich sowohl den Arduino seperat über den USB Port mit Strom versorge...als auch den LED Streifen... muss ich am Arduino doch eigentlich überhaupt keinen GND benutzen....oder?

dachte eigentlich das ich lediglich den Pin, welcher das Signal an den LED Streifen sendet mit dem Datenleitungsstrang des Streifen verbinden muss... oder ist das falsch gedacht?

was mich halt extrem stutzig macht, ist, dass ich halt einen Teil des Systems (sei es Arduino oder LED Streifen) immer ohne Probleme mobil betreiben kann... wenn ich den Gegenpart dann z.b. mit Netzteil...oder Laborgerät mit Strom versorge....

dort funktioniert es ja ohne Probleme...

da der Arduino ja mit einem AC/DC Netzteil funktioniert...welches eine Spannung von 9V und 350 milliampere ausgibt müsste es doch theoretisch auch funktionieren (zumindest für eine kurze Zeit)...wenn ich zwei 9Volt Block-Akkus mit jeweisl 200maH....zu einer 9V 400maH mobilen Stromversorgung für den Arduino zusammenschalte...oder sehe ich da etwas falsch?

LG Winni

winnerger: dachte eigentlich das ich lediglich den Pin, welcher das Signal an den LED Streifen sendet mit dem Datenleitungsstrang des Streifen verbinden muss... oder ist das falsch gedacht?

Und die Spannung an der Datenleitung ist auf was bezogen?

Du kannst Peripherie-Elektronik immer separat mit Spannung versorgen. Aber Masse muss man trotzdem verbinden.

winnerger:
da der Arduino ja mit einem AC/DC Netzteil funktioniert…welches eine Spannung von 9V und 350 milliampere ausgibt müsste es doch theoretisch auch funktionieren (zumindest für eine kurze Zeit)…wenn ich zwei 9Volt Block-Akkus mit jeweisl 200maH…zu einer 9V 400maH mobilen Stromversorgung für den Arduino zusammenschalte…oder sehe ich da etwas falsch?

Die 200mAh geben die Kapazität an, aber den nicht zwischenzeitlichen Strom, der fließen kann. Des weiteren hat das ganze eine Effizenz < 50%. Bereits 40% werden direkt am Linearregler in Wärme umgewandelt.Die anderen ~10% setzen sich aus dem hohen Innenwiderstand der Batterie zusammen.
Das beste wäre eine USB Powerbank, welche bei kleinen Strömen nicht direkt abschaltet. Dort hast du dann deine 5V zur Verfügung stehend für den Mega. Einfach über USB anklemmen. In den Powerbanks arbeitet idR ein StepUp /StepDown Schaltregler mit einer Effiziens von ca 90%

hi serenifly,

ich glaube das könnte mein Fehler sein...

soweit ich deine Aussage verstehe..heist das, dass ich zumindest einen GND des LED Streifens....zusätzlich mit einem GND Pin meines Arduinos verbinden muss...damit es funktioniert... und es nicht ausreicht wenn ich den Arduino nur einzig und alleine über den digitalen Data Output Pin mit dem LED Streifen verbinde...

Lg Winni

hi,

Du MUSST GND des streifens mit GND des arduino verbinden, egal, welche spannungsversorgungen Du verwendest. auch wenn Du ein 5V-netzeil für den streifen und ein 12V-netzteil für den arduino nimmst. für nicht-elektroniker wie uns ist das ein "ogottogott", ich kann mich noch erinnern. heute ist es für mich ganz "normal".

für laien wie uns: es gibt keine 5V oder 12V, es gibt nur potentialunterschiede von zb. 5V oder 12V. weil aber bei Dir die beiden teile miteinander "reden" (über die datenleitung), mußt Du durch das zusammenschließen von GND dafür sorgen, daß beide vom gleichen, sagen wir mal, "null-wert" ausgehen.

wenn Du das nicht machst, passiert beim WS2812 im allgemeinen folgendes: sie blinken wild, man kann aber das muster erkennen, das man hinschickt. ist verwirrend für anfänger wie mich damals.

also augen zu und durch: alle GND zusammenhängen.

aber achtung!

NIEMALS DAS GND FÜR DEN STREIFEN "ÜBER" DEN ARDUINO LAUFEN LASSEN !!!

also nicht mit GND von streifen-netzteil bei einem GND-pin des arduino rein und beim anderen weiter zum streifen. beide dinge müssen eigens versorgt werden und die GNDs nur verbinden. am einfachsten einen dünnen (da fließt kaum strom) "abzweiger" des "streifen-GNDs" in einen GND-pin des arduino stecken. wirst sehen, das wars...

viel spaß und gruß, stefan

und vergiss nicht, was sschultewolter zur 9V Blockbatterie gesagt hat; die Dinger liefern nur sehr wenig Strom und sind schnell müde, was ja auch deine Szenarien beweisen, was klappt und was nicht klappt.

Für Anwendungen, wo nur sehr wenig Strom gezogen wird, sind die ok; für einen Arduino, der an seinen I/O Strom liefern soll, besser eine Powerbank einsetzen, wenn kein Netzteil möglich ist.

Ich kenne jetzt deine Schaltung nicht im Detail; wenn aber der Arduino für sich selbst und für seine Ausgänge zu wenig Strom bekommt, dann kann die nachfolgende Schaltung auch nicht mehr recht funktionieren.

Also: 1. GND verbinden und 2. für anständige Stromversorgung des Arduinos sorgen.

Hallo zusammen! :slight_smile:

ja, der fehlende GND Anschluss war das Problem! nun funktioniert alles korrekt so wie es soll. lol jetzt wo ich weiß was der Fehler war…schäme ich mich sogar ein wenig dafür…euch mit so einer Kleinigkeit/so einem Anfängerfehler belästigt zu haben…

Nochmals vielen vielen Dank an alle für Eure tollen Erklärungen! ihr habt mir echt weiter geholfen!

LG Winni

Ich möchte Dich an folgende Dinge erinnern:

sschultewolter: Am besten direkt auf FastLed umsteigen, die ist deutlich besser. ... Zumal hier auch mal schnell 16A bei 5V fließen können!

... wenn Du alle Leuchtpunkte weiß leuchten läßt. Außerdem sind dicke Kabel, ich verwende Lautsprecherkabel mit markierter Polung, notwendig, um den Spannungsabfall auf der Leitung klein zu halten.

Möglicher Lösungsansatz: 12 V Motorrad/Autobatterie (oder irgend sowas mit höherer Spannung), die Streifen in mehrere Spannungsversorgungsabschnitte einteilen und mit Stepdown-Wandlern 5 V erzeugen. Wenn die Spannung der Batterie kleiner wird, bleiben die 5 V dennoch konstant.