Arduino programmieren LED?

5 Antworten

Vom Beitragsersteller als hilfreich ausgezeichnet

Ein direktes Ansteuern jeder einzelnen LED ist, wie bereits RareDevil und IBAxhascox veranschaulicht haben, mit einem Arduino nicht sinnvoll realisierbar. Man könnte die Anzahl der Ein- und Ausgabeports zwar durch Erweiterungen erhöhen, aber der Verkabelungsaufwand wäre enorm.

Ein realisierbarer Gedanke wäre der Einsatz von adressierbaren LED. Diese werden in Reihe über ein dreipoliges Kabel verbunden. Eine Ader liefert konstant die Versorgungsspannung, eine ist für Masse und eine Datenleitung, die du an einen Port des Arduinos anschließt. Über die Datenleitung kannst du einen beliebigen RGB-Wert an eine bestimmte LED senden, da jede LED einen kleinen Chip eingebaut hat, der prüft, ob die Daten für die jeweilige LED gedacht sind und die RGB-Werte speichert, bis wieder neue übertragen werden.

Der Haken ist natürlich, dass adressierbare LED deutlich teuerer sind, als Standard-LED. Musst so mit Preisen zwischen 30 und 70 Cent pro LED rechnen.

Ein Arduino hat wahrscheinlich nicht genügend einzelne GPIO Ports, du musst also noch irgendein Erweiterungsboard dazu kaufen, oder eine clevere Schaltung machen, denn 250 LEDs anzusteuern braucht viele Ports... Aber das geht bestimmt, der Arduino kann die zufällig ein/aus schalten und dimmen, (mit PWM) der Arduino hat aber auch nicht sehr viele PWM Outputs....

Das Problem ist die hohe Anzahl der LEDs.

HAt bestimmt jemand eine gute Idde :)

Lichterketten auf Basis WS2811 verwenden und in abgehängter Decke montieren. Diese WS2811-basierten LED-Ketten (oder alternativ auch Stripware auf Basis WS2812B) lassen sich über einen SPI-ähnlichen Bus ansteuern und sind untereinander (begrenzt) kaskadierbar. Die Kabelanschlusslängen sind allerdings etwas begrenzt, sonst wird es flackerig.

Jeder Pixel kann dann RGB-mäßig einzeln angesteuert werden.

Du wirst vermutlich bei größerer Decke mehrere Busse brauchen, die dann jeweils auch einzeln mit Daten zu beschicken sind.

Da die Dinger recht mit einer recht hohen Bustaktfrequenz angesteuert werden müssen, könnte ein einzelner Arduino aber unter Umständen Probleme bekommen, damit fertig zu werden. Es gibt aber auch Umsetzer z. B. von Art-Net auf diese LED-Strip-Protokolle. Dann kann man einfach über Ethernet via Art-Net (letztlich eine Art DMX-Substitut in UDP-Paketen) die Daten anliefern, das Steuerkistchen kümmert sich darum, dass die einzelnen Strips/Lichterketten periodisch mit Daten beschickt werden, und Du brauchst nur noch irgendeine Software zu bauen, die den Sollzustand errechnet und per UDP raushaut. Das kann dann z. B. über einen Raspberry Pi erfolgen.

25m² mal 10 LED sind 250stk. Der große Arduino hat 54 Ausgänge (wenn keiner als Eingang verwendet werden soll). Davon sind aber nur wenige mit PWM (Pulsweitenmodulation) ansteuerbar, was DU zum Dimmen benötigst. Mit nur einem Arduino wird das also schwer. Ob man die anderen Ausgänge mit einem selbstgeschriebenen PWM-Code versorgen kann, hab ich noch nicht ausprobiert. Alles in allem wird das ein sehr umfangreiches Projekt. Evt kannst Du die PWN als Dimmerimpulse steuern und dann eine art Matrix aufbauen. Ist aber eine Herausforderung an den Code, das gescheit zu programmieren...

Wie willst Du die Decke überhaupt machen? Einfach LED's drunter und mit Drähtchen verbinden wohl nicht, oder? Das wird ja ein Kabelbaum... Wenn Du sie abhängen möchtest (Mit Rigips z.B. und Hohlraum drüber) wäre evt eine fertige Sternenhimmelanlage mit Glasfasern einfacher...

Sowas zum Beispiel

Ergibt sowas in der Richtung:

Ergibt dann sowas ungefähr

Ich hab jetzt die Frage nicht so genau gelesen^^ Aber ein Kollege hat damit einen Halloweenkürbis so gebaut, dass es aussieht als würde darin eine echte Kerze stehen... Also ich würde mal sagen damit ist so ziemlich alles möglich