Neopixel sind kleine RGB LEDs Wobei R-G-B für die Fragen rot, grün und blau steht. Aus diesen drei Farben können tausende andere Farben gemischt werden, je nachdem wie hell man die RGB Farben ansteuert. Dabei haben die neopixel nur drei Anschlüsse egal wie viele einzelne neopixel verwendet werden.
Normale RGB LEDs haben 4 Anschlüsse eben rot, grün, blau und GND. Um Farben zu mischen muss jede Frage einzelnen über einen PWM PIN angesteuert werden. Möchte man zwei RGB LEDs unterschiedliche leuchten lassen braucht man deshalb schon 6 Anschlüsse usw. Was im Programm und in der Verdrahtung extrem aufwendig ist. Möchte man 10 RGB LEDs unterschiedliche ansteuern braucht man also 30 PINs. Das gleiche mit neopixel braucht nur 3 PINs.
Es gibt neopixel als einzlnen pixel, als Ringe, als Streifen oder als ganze Bänder.
Angeschlossen werden die neopixel immer gleich.
- VCC an die 5 Volt des Arduino (es sein es werden so viele verwendet dass die Versorgung über den Arduino nicht möglich ist)
- GND an den GND (-) des Arduino
- DIN an einen beliebigen PIN des Arduino
- zwischen VCC und GND einen 1000uF Kondensator
- Vor DIN einen 470 Ohm Widerstand
Die Programmierung in letsgoING Ardublock ist sehr einfach es müssen nur wenige Blöcke eingestellt werden. Als erstes muss der PIN ausgewählt werden an dem der DIN Anschluss des neopixel angeschlossen ist. Dieser PIN muss durchgehende immer gleich sein. Danach muss angegeben werden wie viele Pixel angeschlossen sind. Wird zum Beispiel der Streifen mir 8 Pixel verwendet muss eine 8 eingetragen werden. Damit ist der Setup Teil erledigt.
Nun kann im Loop teil weiter gemacht werden. Dieser kann wie der Name des Programmteiles (Loop) schon sagt ständig verwendet werden. Es können also alle angeschlossenen Pixel in der Farbe und Helligkeit verändert werden. Als erstes muss "Nummer Pixel" eingetragen werden welcher Pixel verändert werden soll. Es ist nur darauf zu achten dass der erste Pixel die Nummer 0 ist. Solle beim dritten Pixel also die Frage geändert werden, muss hier die Nummer 2 eingetragen werden.
Also letzes muss noch die Farbe des Pixel bestimmt werden (Achtung die Farben sind vertauscht). Dazu bei jeder Farbe die eine Zahl zwischen 0 und 255 eintragen, wobei 0 aus und 255 ganz an ist. Der Block "Pixel Helligkeit" regelt nun die gesamt Helligkeit von 0 bis 255. Dieser Block kann aber auch einfach weg gelassen werden.
Zum Schluss kommt noch der Block "Daten an Pixel senden", dieser Block sendet wie der Name schon sagt die Daten tatsächlich nun an den Pixel.
Die Frage für jeden Pixel einzeln zu ändern ist natürlich extrem aufwendig. Das kann aber über variablen einfach und schnell geändert werden. Zudem muss die Bibliothek (#include Adafruit_NeoPixel.h) eingebunden werden damit ihr den Code hochlanden könnt. Das alles und noch etwas mehr zeige ich euch in einem kurzen YouTube Video.