Zum Inhalt springen
Arduino Lego Beleuchtung

Lego-Modelle beleuchten mit LEDs und Arduino

Du lernst, wie du deine Lego-Modelle mit einzelnen LEDs oder adressierbaren RGB-LED-Streifen ausstattest und per Arduino steuerst. Dieser Artikel zeigt dir Verdrahtung, PWM-Dimmung und Animationen für realistische Lichteffekte von Gebäuden, Fahrzeugen oder Raumschiffen.

Beispiele für die Anwendung:

  • Fensterbeleuchtung in Lego-Häusern mit warmweißen LEDs und Dämmerungssimulation
  • Blinkende Warn- und Signallichter in Lego-Feuerwehrautos oder Polizeifahrzeugen
  • RGB-Beleuchtung für Lego-Raumschiffe mit Farbwechsel-Animationen
  • Straßenlaternen in Lego-Cities mit automatischer Tag/Nacht-Schaltung
  • Leuchtende Cockpit-Instrumente in Lego-Technic-Modellen

Die Beleuchtung von Lego-Modellen verbindet Modellbau mit Elektronik. Du kannst Standard-LEDs (3 mm oder 5 mm) für punktuelle Beleuchtung oder adressierbare WS2812B-LEDs für RGB-Effekte verwenden. Das Arduino-Board steuert die LEDs über digitale Pins (an/aus) oder PWM-Pins (gedimmt). Bei mehreren LEDs empfehlen sich Transistoren (z. B. BC547) oder MOSFET (z. B. IRLZ34N) zur Lastverstärkung. Widerstände begrenzen den LED-Strom auf sichere 10–20 mA.

Typische Stolpersteine: Zu enge Verkabelung in kleinen Lego-Steinen, zu hohe Ströme ohne Vorwiderstand (LEDs brennen durch) und falsche Polung. Plane die Kabelführung vor dem Zusammenbau und verwende dünne Lackdrähte (0,1–0,2 mm) oder flache Silikon-Litzen. Für größere Installationen mit vielen LEDs nutzt du externe 5-V-Netzteile und gemeinsame Masse mit dem Mikrocontroller.


Sieh dir jetzt meinen neuen Arduino-Videokurs an: Jetzt ansehen!


Teileliste (Bill of Materials):

  • Mikrocontroller: Arduino UNO/Nano
  • LEDs: 3 mm oder 5 mm LEDs (warmweiß, rot, blau, grün), oder WS2812B-Strip (individuell adressierbar)
  • Vorwiderstände: 220–330 Ω für 5 V (pro LED bei Standard-LEDs)
  • Transistoren (optional): BC547 (NPN) für mehrere LEDs oder MOSFET IRLZ34N für LED-Strips
  • Verbindungskabel: Dünne Lackdrähte (0,1–0,2 mm Durchmesser) oder 26 AWG Silikon-Litze
  • Stromversorgung: USB-Kabel (für wenige LEDs) oder 5-V-Netzteil (2–3 A für LED-Strips)
  • Breadboard & Jumper-Kabel: Für Prototyping und Tests

Pinout & Verdrahtung:

Beachte: Standard-LEDs benötigen Vorwiderstände (220–330 Ω). WS2812B-LEDs benötigen einen Widerstand vor dem Data-In (330 – 500 Ω).

Standard-LED (mit Vorwiderstand):

Arduine mit LED und Vorwiderstand

Bibliotheken & Installation:

Für Standard-LEDs sind keine Bibliotheken nötig (PWM via analogWrite()). Für adressierbare WS2812B-LEDs:

  • FastLED (empfohlen): Im Arduino Library Manager nach „FastLED“ suchen und installieren.
  • Adafruit NeoPixel: Alternative, im Library Manager nach „Adafruit NeoPixel“ suchen. Einfachere API, aber weniger Effekte.

Verwendung mit Arduino (UNO/Nano):

Hier ein einfaches Beispiel für eine dimmbare LED an Pin D9. Nutze PWM, um die Helligkeit stufenlos zu regeln – perfekt für sanfte Fensterbeleuchtung.

const int ledPin = 9; // PWM-fähiger Pin für LED

void setup() {
  pinMode(ledPin, OUTPUT); // LED-Pin als Ausgang konfigurieren
  Serial.begin(115200); // Serielle Kommunikation starten
}

void loop() {
  for (int brightness = 0; brightness <= 255; brightness++) { // Helligkeit hochfahren
    analogWrite(ledPin, brightness); // PWM-Wert setzen (0-255)
    delay(10); // Kurze Pause für sanften Übergang
  }
  
  for (int brightness = 255; brightness >= 0; brightness--) { // Helligkeit runterfahren
    analogWrite(ledPin, brightness); // PWM-Wert setzen
    delay(10); // Kurze Pause
  }
  
  Serial.println("Fade-Zyklus abgeschlossen"); // Info im Serial Monitor
}

Serieller Monitor: Stelle 115200 Baud ein, um die Meldungen zu sehen.

Troubleshooting:

  • LED leuchtet nicht: Polung prüfen (langes Bein = Anode/+, kurzes = Kathode/-). LED kann durchgebrannt sein – mit Multimeter im Dioden-Modus testen.
  • LED zu dunkel oder flackert: Vorwiderstand zu groß (unter 220 Ω testen, aber nicht unter 100 Ω bei 5 V). Bei WS2812B: Externe 5-V-Versorgung nutzen, USB-Strom reicht ab 5–10 LEDs nicht.
  • WS2812B zeigt falsche Farben: Data-Leitung zu lang oder ohne Level-Shifter bei 3,3-V-Boards. Füge 330–470 Ω Widerstand zwischen Pin und Data-In ein. Gemeinsame Masse zwischen Board und Netzteil prüfen.
  • LEDs leuchten nach Programmende weiter: Normal bei WS2812B (speichern Zustand). Sende explizit „alle aus“-Befehl im Code (z. B. FastLED.clear(); FastLED.show();).
  • ESP8266 bootet nicht mit WS2812B an GPIO2 (D4): GPIO2 muss beim Boot HIGH sein. Nutze GPIO5 (D1) oder füge Pull-Up-Widerstand (4,7 kΩ) zwischen GPIO2 und 3,3 V ein.
  • Arduino UNO stürzt bei vielen LEDs ab: Stromversorgung über USB reicht nicht. Nutze externes 5-V-Netzteil (2–3 A) mit gemeinsamer Masse zum Arduino.
  • FastLED-Bibliothek kompiliert nicht: Stelle sicher, dass die neueste Version installiert ist (Library Manager → Updates prüfen). Bei ESP8266: Board-Paket Version 3.0+ verwenden.
  • Kabel brechen in Lego-Modellen: Verwende flexible Silikon-Litze statt Kupferlackdraht für bewegliche Teile. Zugentlastung durch Heißkleber oder kleine Kabelbinder an kritischen Stellen.

Projektideen:

  • Lego-Stadtbeleuchtung mit Tag/Nacht-Rhythmus: Fotowiderstand (LDR) misst Umgebungshelligkeit, LEDs schalten automatisch bei Dämmerung ein. Perfekt für realistische Dioramen.
  • Feuerwehrauto mit Blaulicht-Animation: Zwei blaue LEDs blinken abwechselnd mit delay() und digitalWrite(). Erweitere mit Summer für Sirenenton.
  • Raumschiff mit RGB-Triebwerksbeleuchtung: WS2812B-Strip zeigt Farbverläufe von Blau zu Weiß bei „Beschleunigung“. Steuere per Taster oder Potentiometer.
  • Leuchtturm mit rotierendem Lichtkegel: Eine helle weiße LED auf Servomotor montiert, dreht sich langsam. Servo + LED kombiniert für realistische Küstenszene.
  • Lego-Eisenbahn mit Signallichtern: Rote/grüne LEDs an Gleissegmenten, schaltbar per Taster oder Reed-Schalter bei Zugdurchfahrt. Simuliert echte Bahnsignale.
  • Haunted House mit flackernden LEDs: random()-Funktion erzeugt unregelmäßige Helligkeitswerte für Kerzen- oder Geistereffekte. Kombiniere mit kleinem Lautsprecher für Soundeffekte.
  • Lego-Apollo-Rakete mit Countdown-Beleuchtung: LEDs leuchten nacheinander auf bis zum „Start“, dann alle gleichzeitig hell. Kombiniere mit 7-Segment-Display für Countdown-Anzeige.

Weiterführend/Alternativen:

  • WS2811 vs. WS2812B: WS2811 ist ein externer Chip (billiger für große Installationen), WS2812B ist integriert (einfacher zu verbauen). Beide mit FastLED kompatibel.
  • APA102 (DotStar): Höhere Datenrate als WS2812B, weniger anfällig für Timing-Probleme. Benötigt zwei Pins (Data + Clock), aber kein präzises Timing. Besser für lange Strips (>100 LEDs).
  • Einzelne RGB-LEDs (Common Cathode): Benötigen drei PWM-Pins pro LED, aber kein spezielles Protokoll. Gut für 1–5 RGB-LEDs ohne Bibliotheken.
  • LED-Matrix (z. B. 8×8 MAX7219): Für Text/Animationen in Lego-Gebäuden. Gesteuert via SPI, nur 3 Pins nötig. Bibliothek: „MD_MAX72XX“ oder „LedControl“.
  • Externe LED-Controller (z. B. PCA9685): 16-Kanal-PWM-Controller über I2C, spart Pins am Mikrocontroller. Perfekt für 10+ einzelne LEDs mit individueller Dimmung.
  • Fiber-Optik-Kabel in Lego: Dünne Lichtleiter (0,25–0,75 mm) führen Licht von einer zentralen LED zu mehreren Stellen. Kein Verkabelungsaufwand in engen Bereichen, aber nur weiße Beleuchtung.

Wenn dir das Projekt gefallen hat und du von weiteren interessanten Projekten inspiriert werden willst, sieh dir doch mal mein neues E-Book »Arduino Projekte Volume 1« an!

  • Die beliebtesten Arduino-Projekte von StartHardware
  • Inklusive Schaltplan, Beschreibung und Code
  • Arduino-Schnellstart-Kapitel
  • Kompakter Programmierkurs


0 0 votes
Article Rating
Abonnieren
Benachrichtige mich bei

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre, wie deine Kommentardaten verarbeitet werden.

0 Comments
Newest
Oldest Most Voted
Inline Feedbacks
Alle Kommentare anzeigen
0
Ich würde mich über deine Meinung freuen.x