Arduino Lektion 31: 12bit RGB NeoPixel Ring

Ein Pixel Ring ist wie die Bezeichnung es erahnen läßt ein Ring aus eine Anzahl n NeoPixel. Es gibt diese Ringe in diversen Ausführungen. In diesem Beispiel möchte ich gerne den „12bit RGB NeoPixel Ring“ vorstellen.

12bit NeoPixel Ring Ansicht vorne
12bit NeoPixel Ring Ansicht vorne

Auf der Rückseite sind die Anschlüsse für die Verbindung zum Arduino (IN) bzw. zu einem weiteren Ring (OUT) vorhanden.

Betreibt man mehrere Ringe hintereinander ist dabei die maximale Stromstärke welche der Arduino Microcontroller am 5V Ausgang anbietet zu beachten. zbsp. der Arduino UNO liefert am 5V PIN max. 200mA.

12bit NeoPixel Ring Ansicht hinten
12bit NeoPixel Ring Ansicht hinten

Als erstes müssen also nun die drei Leitungen für Strom & Daten an den Ring gelötet werden, ich nutze dafür Breadboardkabel da diese gleich mit passendem Stecker für den Arduino UNO geliefert werden.

Breadboardkabel am 12bit NeoPixel Ring
Breadboardkabel am 12bit NeoPixel Ring

Bezugsquellen

Ein NeoPixel Ring wird in diversen Onlineportalen angeboten (amazon.de, ebay.de) das günstigste Preis / Leistungsverhältnis habe ich bei ebay.de gesehen und „zugeschlagen“. Die Lieferzeit war mit ca. 2 Wochen relativ kurz und sehr verträglich des weiteren hatte der Preis von 1,77€ inkl. kostenlosem Versand für zusätzlichen Reiz gesorgt.

Bauformen

Es gibt die NeoPixel einzeln als Ring, Stipe und Board somit sind den Ideen für eigene Entwicklungen keine Grenzen gesetzt.

16bitNeoPixelBoard & 12bitNeoPixelRing
16bitNeoPixelBoard & 12bitNeoPixelRing

 

Technische Daten

  • Durchmesser 38mm
  • Gewicht ca. 3,3g
  • Spannung 5V

Schaltplan

Der 12bit NeoPixel Ring verfügt über 3 PINs welche mit IN, VCC und GND bezeichnet sind. Diese PINs werden wiefolgt am Arduino UNO angeschlossen.

12bit NeoPixel Ring Arduino UNO
 IN  digital PIN 8*
 VCC  5V
 GND  GND

*Der digitale PIN kann natürlich frei gewählt werden sollte aber dann im Quellcode angepasst werden.

Quellcode

Ein einfaches Beispiel

Für den Betrieb des 12bit NeoPixel Ring wird eine Bibliothek bereitgestellt diese kann im GitHub Repository von Adafruit heruntergeladen werden. Nachdem also nun die Bibliothek heruntergeladen und installiert wurde kann mit dem Quellcode begonnen werden.

Im nachfolgenden werde ich der kürze halber den „12bit NeoPixel Ring“ nurnoch als Ring bezeichnen.

Als erstes muss natürlich die Bibliothek eingebunden werden, dazu wird in die erste Zeile das Include geschrieben:

Im nächsten Schritt muss nun noch definiert werden auf welchem PIN der Ring angeschlossen wurde:

Sollte der Ring also an einem anderen PIN angeschlossen worden sein muss dieses hier angepasst werden.

Zusätzlich wird nun eine Variable definiert wieviele NeoPixel der Ring hat, dadurch kann dieses Beispiel ganz leicht für andere Ringe zbsp. mit 16 oder 24 NeoPixel abgewandelt werden.

Nun müssen wir das Adafruit_NeoPixel Objekt initialisieren dazu werden folgende Parameter erwartet:

  • Anzahl der NeoPixel,
  • PIN an welchem der Ring angeschlossen wurde,
  • Pixel Typ
    • NEO_GRB  – GRB bitstream
    • NEO_RGB  – RGB bitstream
    • NEO_KHZ800 – 800 KHz
    • NEO_KHZ400 – 400 KHz

Nun folgt auch schon die Setup Funktion in welcher die Grundeinstellungen gesetzt werden.

In der Loop Funktion, welche die gesamte Laufzeit des Arduinos ausgeführt wird, kommt nun der Farbwechsel pro NeoPixel hinzu. In diesem Beispiel sollen alle NeoPixel für 1 sek. in der Farbe Rot aufleuchten und dann nach Grün wechseln.

Video


Ein Kompass mit dem 3 Achsen Lagesensor HMC5883L

Den 3 Achsen Lagesensor habe ich Tutorial Arduino Lektion 14: 3 Achsen Lagesensor, HMC5883L ausgiebig beschrieben daher möchte ich auf diesen Sensor nicht im speziellen eingehen.

Ziel dieses kleinen Projektes soll es sein ein 3 Achsen Lagesensor als Kompass zu benutzen es soll dabei der Norden mit einem Roten NeoPixel markiert werden, die restlichen NeoPixel sollen in der Farbe Grün aufleuchten.

Dieses ist nur ein Beispiel und kann gewiss keinen Kompass ablösen!

 

Benötigte Komponenten:

Aufbau

Da der 12bit NeoPixel Ring nur über 12 LEDs verfügt ergibt dieses eine Auflösung 30° das ist in der Praxis natürlich nicht verwendbar jedoch als kleines Beispiel völlig ausreichend.

Modul Arduino UNO
Bezeichnung PIN
 12bit NeoPixel Ring IN digital PIN 8
 VCC  5V
 GND  GND
 HMC5883L VCC 5V
GND GND
SCL analog PIN 5
SDA analog PIN 4
Einfacher Kompass mit 3Achsen Lagesensor & 12bit NeoPixel Ring
Einfacher Kompass mit 3Achsen Lagesensor & 12bit NeoPixel Ring

Wichtig

Es sind 12 NeoPixel in dem Ring gezählt wird aber von 0 bis 11 d.h. wenn man das NeoPixel an der Position 1 aktivieren bzw. verändern möchte muss man die Position 0 ansprechen.

Quellcode

Video

Arduino Kompass mit 12bit NeoPixel Ring & 3 Achsen Lagesensor (HMC5338L)

Downloads

 

 

Fazit

Beim experimentieren mit dem 12bit NeoPixel Ring ist mir aufgefallen das dieser einen defekten NeoPixel hat, das dieses mal vorkommen kann und bei einem Preis von 1,77€ inkl. Versandkosten dieses in China als Massenware produziert wird ist dann auch klar. Aber die Helligkeit ist sehr gut, in den Videos musste ich den Wert „5“ für die Helligkeit wählen da sonst die Kamera damit nicht zurecht kommen würde. Ansonsten ist dieser Ring bzw. das Board sehr gut verarbeitet und hat sonst keine nennbare Mängel.

Ersten Kommentar schreiben

Antworten

Deine E-Mail-Adresse wird nicht veröffentlicht.


*