Blog post featured image

Longboard Beleuchtung

Dies ist ein Repost aus meinem alten Blog von 2015.

Die Tage werden kürzer, es ist wieder viel zu schnell Dunkel, da wird man auf dem Longboard gerne mal übersehen. Damit dies ein Ende nimmt habe ich mein Longboard mit Hilfe eines Arduino Nanos und WS2812 RGB LEDs aka Adafruit Neopixels beleuchtet.

Was wird alles benötigt?

Beginnen wir mit unseren Zutaten. Bei den Elektronik Teilen habe ich mich für günstige China Clones von eBay entschieden, auch wenn die Lieferzeiten ewig sind, ist es trotzdem um ein vielfaches günstiger als die Marken Ware. Ist am Ende doch das selbe. Für die WS2812 RGB LEDs habe habe ich mich entschieden, da man sie einfach programmieren kann um schöne Effekte hin zu bekommen. Normale superhelle LEDs in Rot und Weiss hätten es vermutlich auch getan. Würden beim Anschalten aber nicht so witzig blinken und in der Zukunft kann man darauf basierend auch einen Blinker realisieren. Den Spannungswandler benötigen wir um aus den 9V, 5V für die LEDs und den Arduino zu machen. Der Wandler schafft bis zu 3A im Dauerbetrieb was für die LEDs und den Arduino mehr als ausreichend ist. Mit dem Arduino sprechen wir die LEDs an um sie zum Leuchten zu bringen. Den WS2812 reicht es nicht einfach Spannung anzulegen.

Produkt Preis
1x Arduino Nano oder China Clon 2,89€
1x Spanungswandler / DC-DC Step Down Module 1,53€
4x WS2812 5050 RGB LED Lamp Panel 7,56€
1x Kippschalter 1,45€
1x 9V Batterie 1,95€
1x 9V Batterie Clip 0,24€
4x 3,5×40 Spax Universal Schrauben aus dem Baumarkt 0,25€
1x altes Netzwerkkabel oder Kabel die ihr eben habt 0,00€
8x diverse Mini Schrauben aus dem E-Schrott 0,00€
ein vorhandenes Longboard an das die Lichter sollen 😉 0,00€
Gesamt 15,87€

An Werkzeug benötigt ihr:

  • Lötkolben & Lötzinn
  • Helfende Hand oder irgend was zum Kleinteile festhalten
  • Seitenschneider
  • Kleine Spitz-Zange / Pinzette
  • Schraubendreher
  • Multimeter
  • 3D Drucker
  • Mac/PC & Mini USB Kabel
  • Heißklebepistole oder Epoxy

Aufbau Elektronik

Die Verkabelung ist für dieses Projekt recht simpel. Zu erst wollte ich den Arduino und die LEDs jeweils mit einem USB Stecker versehen weshalb ich einen Spannungswandler mit USB Buchse gekauft hatte. Letzten Endes habe ich die Kabel für den Arduino und die LEDs doch direkt an der Unterseite parallel verlötet. Zum Testen hatte ich eine Klemme angelötet, später die LEDs jedoch direkt. Von der Batterie aus geht die Masse direkt in den Spannungswandler, am Plus Kabel habe ich den Schalter dazwischen gelötet. Das Datenkabel geht (best practice eigentlich am besten mit einem ~300Ohm Widerstand) direkt auf Digital Pin 6. longboard_licht_01

Als Kabel für die LEDs habe ich ein altes Netzwerkkabel auseinander genommen und drei Adern mit einander verdreht. Grün = Daten Orange = +5V Weiss/ Orange = Masse

Jetzt einfach vom Arduino das Datenkabel an DIN der ersten LED, vom Spannungswandler +5V an 4-7VDC und Masse auf GND löten. Das selbe vom DOUT zum DIN der nächsten LED und so weiter. Zudem habe ich noch die Beinchen des Arduino Nanos entlötet damit er später besser ins Gehäuse passt.

longboard_licht_02

longboard_licht_03

longboard_licht_04

Ich kann empfehlen einen Blick in den NeoPixel Überguide von Adafruit zu werfen! Dort findet ihr die wichtigsten Infos rund um die WS2812 RGB LEDs / NeoPixels.

Programmierung

Um den Arduino Nano programmieren zu können wird die Arduino IDE und in meinem Fall für den MAC einen Treiber benötigt, da der China Arduino mit einem anderen FTDI Chip zum Programmieren ausgestattet ist als das Original. Dieser Artikel erklärt wie ihr den Treiber installiert. Wer das erste mal mit dem Arduino experimentiert sollte auch einen Blick in die „Getting Started“ Sektion auf arduino.cc werfen!

Um die LEDs anzusprechen verwende ich die Adafruit NeoPixel Library. Sie ist mit den WS2812 LEDs kompatibel, einfach zu programmieren und funktioniert. 😉 Der Code führt beim Anschalten eine Nightrider/Cylon Lauflicht Sequenz, ein blaues Doppelblinken durch und schaltet anschließend die LEDs vorne auf hell Weiss und hinten auf hell Rot. Hier der Code:

Code auf Github

#include <Adafruit_NeoPixel.h> // Library einbinden

#define N_LEDS 32 //Anzahl LEDs
#define PIN     6 //Output Pin für den LED Daten Input

//NeoPixels initialisieren 
Adafruit_NeoPixel strip = Adafruit_NeoPixel(N_LEDS, PIN, NEO_GRB + NEO_KHZ800);

int delayval = 1000; //1000 Milli Sekunden
int delayval2 = 100; //100 Milli Sekunden
int start = 0; //Läuft das Skript zum ersten mal?

void setup() {
  strip.begin();
}

void loop() {

  if(start == 0){ // Skript läuft das erste mal! Anschalt Sequenz anzeigen.

   // Lauflicht Rot      
   for(int i=0;i<N_LEDS;i++){ 

      strip.setPixelColor(i, strip.Color(255,0,0));       
      strip.setPixelColor(N_LEDS-i, strip.Color(255,0,0));
      strip.setPixelColor(i-1, strip.Color(5,0,0)); 
      strip.setPixelColor(N_LEDS-i+1, strip.Color(5,0,0)); 
      strip.show();
      delay(delayval2);   

    }       

    // Blau Blinken
    for(int i=0;i<N_LEDS;i++){
      strip.setPixelColor(i, strip.Color(0,0,255)); // Blau an
      strip.show();   
    }

    delay(delayval2);    // warten

    for(int i=0;i<N_LEDS;i++){
      strip.setPixelColor(i, strip.Color(0,0,0)); // Blau aus
      strip.show();   
    }              

    delay(delayval2);   // warten

    for(int i=0;i<N_LEDS;i++){
      strip.setPixelColor(i, strip.Color(0,0,255)); // Blau an
      strip.show();   
    }              

    delay(delayval2); // warten
    delay(delayval2); // warten

    // Start vorbei, nicht noch mal ausführen
    start=1; 
  }

  //Lichter vorne Weiss anschalten
  for(int i=0;i<(N_LEDS/2);i++){
    strip.setPixelColor(i, strip.Color(255,255,255));
    strip.show();   
  }          

  // Lichter hinten Rot anschalten
  for(int i=(N_LEDS/2);i<N_LEDS;i++){
    strip.setPixelColor(i, strip.Color(255,0,0));
    strip.show();   
  }

  delay(delayval);

}

So sieht das Ganze in Aktion aus:

Montage der LED Strips

Das ganze wurde einfach mit Heißkleber an das Board geklebt. Gibt es eine zweite Version, werde ich eine Fuge fräßen, die Kabel hineinlegen, mit Epoxyd Harz ausfüllen, schleifen und drüber lackieren. Sieht dann um einiges besser aus. Für die erste Prototypen Version tut es aber auch der gute alte Heißkleber.

longboard_licht_05

longboard_licht_06

longboard_licht_07

longboard_licht_08

3D Design / 3D Druck des Gehäuses

Als letzten Schritt hatte ich noch ein Gehäuse für die Elektronik erstellt. Das Design habe ich mit Autodesk 123D Design erstellt. Die Software ist kostenlos, Plattformübergreifend und für kleinere CAD Projekte super geeignet. Auf YouTube findet ihr genug Tutorials für den Einstieg, z.B. von Adafruit oder Shapeways.

Das Design ist eine kleine Kiste die Oben offen ist, an den Ecken Löcher für die Schrauben hat, ein Loch für den Schalter, zwei Halbkreise am oberen Rand für die Kabel und kleine Standoffs auf die der Arduino und der Spannungswandler geschraubt werden. Die Batterie wird einfach mit daneben gelegt.

123D

Nach dem Exportieren in eine STL, wurde das ganze in Cura gesliced und auf dem PrintrBot Simple Metal in rotem PLA gedruckt. Slicer Einstellungen: Schichthöhe: 0,2mm Infill: 0% Wandstärke:0,8mm Geschwindigkeit: 50mm/s Temperatur: 205°C

lblight_cura

Zum Schluss die Kabel vom Longboard direkt an den Arduino und den Spanungswandler gelötet, alles in die Box gepackt, verschraubt und an das Deck geschraubt.

longboard_licht_09

longboard_licht_10

Um die Kabel etwas zu verstecken, fixieren wurde ganz zum Schluss noch Schwarz/Gelbes Klebeband, was zufällig super zum Deck passt, aufgeklebt.

01longboard_final

Fertig. 🙂

Back to top