LEGO Beleuchtungsseite Titelbild

Passend zu unserer Rubrik „LEGO Sets selbst beleuchten“ dient diese Seite als Nachschlagewerk und Übersichtsseite für alle, die neu in das Thema einsteigen oder ihr Wissen noch einmal auffrischen wollen. Dazu werden die wichtigsten Themen und Begriffe hier kurz erläutert. Für tiefergehende Beschreibungen sind zudem weiterführende Links eingebunden.

Diese Seite soll nicht alles noch einmal aufzählen, was anderswo im Internet bereits ausführlich erklärt steht, sondern vorallem als zentraler ANlaufpunkt rund um das Thema Beleuchtung und als Hilfe zur Selbsthilfe dienen.

Artikel zum Thema “LEGO Sets selbst beleuchten”

Corner Garage beleuchtet
Anleitungen
LEGO Sets selbst beleuchten: Eine Anleitung zum Einstieg
6. Februar 2021 65

Nicht erst seit dem Marketing-Testlauf unter dem Namen „Night Mode“ auf der LEGO World Kopenhagen im Februar 2020 sind Beleuchtungskits für LEGO Modelle ein heiß diskutiertes Thema in der Community. In dieser neuen Artikelreihe berichten […]

Weitere Artikel zum Thema Beleuchtung

Werkzeuge

Nicht jedes Projekt benötigt besonders ausgefeiltes Werkzeug. Essentiell ist neben diversen Verbrauchsmaterialien zunächst nur ein Lötkolben, zu Beginn genügt ein Standardmodell aus dem Baumarkt. Hilfreich ist auch eine sogenannte Dritte Hand, die die Platine oder das Werkstück festhalten kann, während man in einer Hand den Lötkolben und in der anderen Hand das Lötzinn hält.

Mit einer Entlötsaugpumpe kann man erhitztes Lötzinn absaugen, um Korrekturen vorzunehmen und Bauteile wieder auszubauen oder zu tauschen. Eine Abisolierzange ist nützlich, um die Isolierung an Kabelenden vor dem Verlöten zu entfernen. Dies lässt sich mit etwas Übung aber auch geldsparend mit einer kleinen Zange oder einem feinen Messer bewerkstelligen.

Wer kompletter Neueinsteiger beim Thema Löten ist, findet im Internet viele Erklärungen und Tutorials rund um die richtigen Methoden und Vorgehensweisen. Eine sehr ausführliche Zusammenfassung ist zum Beispiel auf der Seite von Conrad zu finden.

Material

Materialien wie elektronische Bauteile, Kabel, Stecker und Lötzinn sind für die vorgestellten Projekte natürlich unerlässlich. Für eigene Aufbauten und Tests bietet sich zudem ein „Breadboard“ (Steckbrett) an, auf das man Bauteile aufstecken kann, ohne Löten zu müssen. Dadurch kann die Schaltung während der Entwurfsphase jederzeit korrigiert werden. Zusätzlich gibt es allerlei Zubehör, wie Steckbrücken, die zur Verbindung der Bauteile auf dem Steckbrett dienen.

Leuchtdioden (LEDs)

Bedrahtete Leuchtdioden (auch THT – “Through Hole Technology” – LEDs genannt, da man sie zum Festlöten durch Löcher mit Kontaktrand steckt) mit 3 mm und 5 mm Durchmesser gehören vermutlich zu den populärsten Bauteilen, wenn es um kleine Elektronik-Basteleien zu Hause geht. LEDs sind günstige Bauteile im Cent-Bereich, unterscheiden sich jedoch essenziell von “altbekannten” Leuchtmitteln wie etwa Glühbirnen. Zum einen können sie nur in eine Richtung von Strom durchflossen werden (es ist also nicht egal, welches Beinchen an Plus und welches an Minus angeschlossen wird) zum anderen benötigen sie eine definierte Spannung und besitzen einen maximal zulässigen Strom. Diese Werte sind abhängig von den verwendeten Halbleitermaterialien der Diode, hängen also vereinfacht gesagt mit der Farbe der LED zusammen.

Meistens sind in den gängigen Elektronik-Onlineshops (Conrad, Reichelt, …) alle wichtigen Daten bereits im Produktnamen enthalten. So handelt es sich bei „LED bedrahtet Rot Rund 5mm 14 mcd 60° 20 mA 2,25V“ um eine LED mit „Beinchen“ und 5 mm Durchmesser, die eine Spannung von 2,25 Volt und einen Strom von 20 Milliampere benötigt. Die beiden verbliebenen Werte „14 mcd“ und „60°“ geben die Lichtstärke in Millicandela und den Öffnungswinkel an, in dem das Licht abgestrahlt wird. Zur Einordnung der Helligkeit anhand der angegebenen Werte gilt prinzipiell: je höher die Lichtstärke bei gleichem Abstrahlwinkel, desto heller ist die LED. Da wir unsere Modelle aber nicht in direktem Sonnenlicht, sondern eher in gedimmten Räumen zum Leuchten bringen wollen, reichen die günstigen Varianten mit 10 mcd bis 50 mcd zunächst aus.

Wie bereits erwähnt, leuchten LEDs nur bei einem korrekten Einbau. Um diesen zu vereinfachen, besitzen THT-LEDs ein langes und ein kurzes Beinchen. Das kurze Beinchen ist hierbei die Kathode (= “Minus”), das lange Beinchen die Anode (= “Plus”). Hat man die Drähte schon zugelängt und weiß deshalb nicht mehr, welches kurz und welches lang war, hat die Kuppel der LED zusätzlich eine leicht abgeflachte Stelle an der Seite der Kathode. Somit kann die Polung jederzeit eindeutig festgestellt werden.

Beim Schaltzeichen einer LED (siehe nächstes Bild) zeigt die Spitze des Dreiecks in Richtung des Minus-Pols der Spannungsquelle.

Vorwiderstände

Schaltplan LED

Eine Leuchtdiode benötigt, wie oben bereits erwähnt, eine gewisse Spannung und einen Strom bei dem sie “sich wohlfühlt”. Aufgrund ihres geringen Innenwiderstandes würde die LED beim Anlegen der verlangten Spannung jedoch von einem sehr hohen Strom durchflossen, was schnell zu einer Zerstörung des Bauteils führt. Deshalb wird ein sogenannter Vorwiderstand benötigt, um Strom und Spannung auf die gewünschten Werte zu begrenzen. Dabei gilt: Je größer der Widerstand, desto kleiner der Strom. Gleichzeitig fällt über einem größeren Widerstand aber mehr Spannung ab. Da in einem Schaltkreis allerdings nur eine gewisse Spannung (die Versorgungsspannung) zur Verfügung steht, verbleibt bei einem größeren Vorwiderstand somit weniger Spannung, die über der LED abfällt. Möchte man also den benötigten Vorwiderstand für eine LED berechnen, muss man die benötigte Spannung für die LED von der Versorgungsspannung abziehen und das Ergebnis durch den benötigten Strom teilen:

R = (UV – ULED) / ILED

Viele Webseiten können bei diesem Schritt der Auslegung auch mithelfen, wenn man die Werte für Versorgungs- und LED-Spannung sowie den benötigten Strom eingibt. Ein Beispiel wäre hier der LED-Rechner auf der Website von Reichelt Elektronik. Solange die verwendete Quelle ausreichend Strom liefern kann, lassen sich mehrere (auch verschiedenfarbige) LEDs mit jeweils passendem Vorwiderstand parallel schalten.

In einem Widerstand wird elektrische Energie in Wärme umgewandelt. Wird der Widerstand zu heiß, etwa durch zu viel Strom, kann das Bauteil beschädigt werden. Die anfallende Leistung erhält man, indem man den Widerstandswert mit dem Quadrat des (durch ihn fließenden) Stroms multipliziert:

P = R x I²

Den maximalen Wert, mit dem man den Widerstand belasten kann, findet man in der Produktbeschreibung oder im Datenblatt (beispielsweise 0,25 W).

Schaltung LED Parallel

Die LEDs zum Leuchten bringen

Bevor wir die ersten LEDs verbauen, müssen wir uns Gedanken über ihre Stromversorgung machen. Auch hier gibt es wieder unzählige Möglichkeiten, die je nach Vorlieben, verfügbaren Materialien oder Anwendungsfall besser oder schlechter geeignet sein können. Ich bevorzuge aus verschiedenen Gründen eine Grundversorgung mit einer Spannung von 5 Volt. Dies hat mehrere Vorteile: Die Spannungsdifferenz zur LED ist relativ niedrig, somit entsteht weniger Verlustleistung am Vorwiderstand (es muss weniger Energie “verbrannt” werden). Desweiteren sind 5 V eine Standardgröße in der Microcontroller-Welt. Viele Bauteile lassen sich mit einer Versorgungsspannung von 5 V betreiben und Arduino sowie Raspberry Pi besitzen 5 V – Ausgänge, um externe Komponenten zu versorgen. Zusätzlich kann man sich diese Versorgungsspannung einfach mittels einer USB-Powerbank beschaffen.

Wer es lieber einfach mag, kann auch zu haushaltsüblichen Batterien greifen. Diese lassen sich im Falle von 9V-Blockbatterien mit einem einfachen Clip, oder im Falle von AA-Batterien mit einer kleinen Batteriebox in den eigenen Stromkreis integrieren. Je höher die Spannung der Quelle ist, desto mehr Spannung muss über dem Vorwiderstand abfallen, um auf die Betriebsspannung der LED zu gelangen. Durch den größeren Widerstandswert, der bei einer höheren Eingangsspannung benötigt wird, wird auch die Verlustleistung größer (siehe oben). Prinzipiell sollte man deshalb immer überprüfen, ob das verwendete Bauteil auch für die anfallende Leistung ausgelegt ist.

Raspberry Pi

Der bekannte kleine Einplatinen-Computer wurde ursprünglich entwickelt, um der sinkenden Zahl von Informatikstudenten an der University of Cambrigde entgegenzuwirken. Das erste Modell kam 2012 auf den Markt und sollte Schulkindern die Gelegenheit geben, mit einem kostengünstigen PC im Kleinformat programmieren zu lernen und experimentieren zu können. Die Geräte wurden schnell bei Bastlern beliebt, da den möglichen Anwendungen quasi keine Grenzen gesetzt sind. Von einem heimischen Netzwerkspeicher über eine SmartHome-Zentrale bis hin zur Beleuchtung von LEGO Sets ist so ziemlich alles möglich.

Mittlerweile gibt es bereits die vierte Version des Raspberry Pi, die im Vergleich zum Vorgängermodell ein ordentliches Upgrade an Hardware spendiert bekommen hat, dafür jedoch auch leider mehr kostet. Für die hier vorgestellten Projekte reichen jedoch auch ältere Modelle aus, wer bei einer Neuanschaffung lieber erstmal etwas günstiger fahren möchte kann zum Beispiel auf das Raspberry Pi 3 B+ zurückgreifen.

Raspberry Pi einrichten

Besitzt ihr ein neues Gerät, benötigt ihr als erstes ein Betriebssystem. Statt den bekannteren Windows oder MacOS verwendet das Raspberry Pi ein eigens auf den kleinen Computer abgestimmtes Betriebssystem, das auf Linux basiert. Den Download dazu findet ihr hier: Raspberry Pi OS (ehemals “Raspbian”). Neben diesem “Standard-Betriebssystem” existieren noch einige weitere Systeme, als Einsteiger darf man sich jedoch ruhig an die empfohlenen Auswahlmöglichkeiten im Verlauf der Installation halten.

Eine bebilderte Anleitung (auf Englisch) findet ihr direkt auf der Seite der Raspberry Pi Foundation: Setting up your Raspberry Pi

Es existieren zahlreiche Wege, ein Betriebssystem auf der SD-Karte zu installieren, weshalb hier auch keine eigene Anleitung veröffentlicht wird. Wer Begriffe wie “Raspberry Pi einrichten” oder Ähnliches im Internet sucht, findet auch etliche deutschsprachige Anleitungen.

GPIO-Pins mit Python steuern

Die GPIO-Pinleiste ist in unseren Projekten die Basis zur Steuerung der verbauten LEDs. GPIO steht für “General Purpose Input / Output”, also allgemein verwendbare Ein- und Ausgänge. Die genauen Funktionen der einzelnen Pins lassen sich hier nachlesen. Für unsere Zwecke benötigen wir zu Beginn ersteinmal nur die einfachen Funktionen „Ein / Aus“ und eine sogenannte Pulsweitenmodulation (PWM). Zur Kommunikation mit anderen Geräten (zum Beispiel Displays oder Sensoren) beherrschen bestimmte Pins auch unterschiedliche Bussysteme, wie SPI oder I2C. Diese speziellen Funktionen werden in den hier vorgestellten Projekten jedoch nicht benötigt.

Achtung: Die steuerbaren GPIO-Ausgänge können maximal 50 mA liefern. Die 5 V-Pins sind jedoch die leistungsstärksten des Geräts, und können den USB-Eingangsstrom (~1 A) abzüglich aller anderen Verbraucher auf der Platine liefern (weitere Informationen (Englisch)). Zudem darf ein an den 5 V-Pins angeschlossenes Kabel auf keinen Fall einen anderen Pin oder eine leitende Stelle auf der Platine berühren, da sonst im ungünstigsten Fall das Raspberry Pi beschädigt werden kann!

Um einzelne LEDs ansteuern zu können, muss man die gewünschte Funktion in einem Programm auf dem Raspberry Pi festlegen. Beliebte und geeignete Programmiersprachen sind hierbei unter Anderem Python oder C. Für meine Beispiele in den Artikeln habe ich Python verwendet. Wer bereits Erfahrung mit C hat oder sammeln möchte, kann diese Sprache ebenso gerne verwenden. Um die ersten Python Programme zu schreiben, eignet sich die IDE (Integrated Development Environment = integrierte Entwicklungsumgebung) “Thonny”. Für erste Schritte mit diesem Programm empfehle ich diesen Beitrag im “Developer-Blog”. Andere IDEs wie Geany eignen sich aber ebenso gut für alles hier Vorgestellte.

Damit die erste LED leuchtet, benötigt man nur eine Hand voll Befehle. Zuerst müssen wir die Bibliothek “RPi.GPIO” importieren, damit das Programm weiß, wie es mit den Befehlen auf die GPIO-Pins zugreifen soll.

import RPi.GPIO as GPIO

Als nächstes muss festgelegt werden, auf welche Art die Pins angesprochen werden sollen, also welche Konvention der Nummerierung verwendet wird. Sollen die Pin-Nummern verwendet werden (GPIO 17 wäre dann die Nummer 11), benutzt man:

GPIO.setmode(GPIO.BOARD)

Soll jedoch die Nummer des GPIOs verwendet werden, schreibt man:

GPIO.setmode(GPIO.BCM)

Die Nummer 17 entspricht dann auch GPIO 17. Anschließend muss man die verwendeten Pins einrichten und ihre Funktion spezifizieren. Unterschieden wird zwischen Ausgang (OUT) und Eingang (IN). Ausgänge können z.B. LEDs steuern, Eingänge können den Zustand von Knöpfen oder Schaltern abfragen und auswerten.

GPIO.setup(nummer, GPIO.OUT)
GPIO.setup(nummer, GPIO.IN)

Nun ist alles bereit und die eingerichteten Pins können verwendet werden:

GPIO.output(nummer, GPIO.HIGH) #schaltet den Pin mit der Nummer nummer ein (=LED leuchtet)
GPIO.output(nummer, GPIO.LOW) #schaltet den Pin mit der Nummer nummer aus

Um den eingestellten Zustand (ein / aus) für eine gewünschte Zeit zu halten, eignet sich der Befehl

time.sleep(sekunden) #Programm wartet für die angegebene Zeit, bevor es den nächsten Befehl ausführt

Da dieser Befehl in einer anderen Bibliothek enthalten ist, müssen wir an den Anfang des Programms noch eine weitere Zeile einfügen:

import time

Diese Befehle sollten für den ersten Test und das erste Erfolgserlebnis ausreichen. Eine ausführlichere Erklärung mit weiteren Befehlen und vielen Good-Practices (cleanup, exceptions, etc.) findet ihr im Netz auf dieser Seite. Ein Beispielprogramm zur Steuerung der Ampel aus meinem ersten Artikel lässt sich hier herunterladen: Ampelschaltung.py

Pulsweitenmodulation (PWM)

Änderungen in der Helligkeit von LEDs werden meistens mithilfe einer PWM umgesetzt. Hierbei wird der Strom in gewissen Abständen an- und wieder ausgeschaltet, anstatt den Wert des Stroms zu reduzieren. Das Verhältnis von “An”-Zeit zu “Aus”-Zeit resultiert dann in einer bestimmten Helligkeit. Würde dies langsam geschehen, würde das menschliche Auge ein Blinken wahrnehmen, bei mehreren 100 Hz nimmt man es jedoch als gleichmäßiges schwächeres Leuchten wahr.

Zur Verwendung einer PWM müssen die GPIO-Ports wie folgt definiert werden:

GPIO.setup(pin, GPIO.OUT)
name = GPIO.PWM(pin, frequenz) #Frequenz in Hz

Den “Duty Cycle”, also die Auslastung eines Zyklus kann man mit

name.start(dutyCycle)

setzen, wobei dutyCycle mit einem Wert zwischen 0 und 100 (Auslastung in Prozent) gesetzt werden muss. Weitere Befehle sind:

name.ChangeDutyCycle(newDutyCycle) #Ändert die Auslastung auf den Wert newDutyCycle
name.ChangeFrequency(newFrequency) #Ändert die Frequenz auf den Wert newFrequency (in Hz)
name.stop() #Beendet die PWM

Zufallszahlen

Mithilfe der Funktion

randint(low, high)

lassen sich (ganze) Zufallszahlen generieren, die im Intervall [low, high] liegen. Dazu muss lediglich zu Beginn des Programms noch das entsprechende Package importiert werden:

from random import randint

Ein Beispielprogramm für den Einsatz von Zufallszahlen und PWM, um ein flackerndes Lagerfeuer zu erzeugen findet ihr hier: Lagerfeuer.py

Programme in den Autostart einbinden

Während man ein Programm schreibt und testet, genügt es vollkommen die Software manuell auszuführen, um einen Zwischenstand oder das Gesamtergebnis sehen zu können. Baut man die Beleuchtung jedoch in ein größeres Modell ein, ist es unpraktisch jedes Mal Bildschirm, Tastatur und Maus ans Raspberry anzuschließen (oder sich per SSH zu verbinden), um den Programmablauf zu starten. Einen eleganten Ausweg bietet die Möglichkeit, das gewünschte Programm einfach in den Autostart des Computers einzubinden, sodass dieses nach dem Hochfahren automatisch ausgeführt wird. Eine ausführliche Schritt-für-Schritt Anleitung dazu gibt es im deutschen Raspberry Pi Forum.

Ich hoffe, dass diese Erläuterungen dem ein oder anderen Leser beim Bau einer ersten eigenen Beleuchtung helfen konnten und eure Experimentierfreude geweckt haben. Mit weiteren Artikeln zum Thema Beleuchtung wird diese Hilfestellung immer wieder erweitert und mit neu vorgestellten Techniken aktualisiert. Wie so oft gilt aber auch hier: Probieren geht über Studieren und mit etwas Übung erscheint alles nicht mehr so kompliziert wie zu Beginn!

Hinweis: Dieser Beitrag enthält sogenannte Affiliatelinks zu Online-Shops (z.B. LEGO, Amazon, eBay oder Alternate) und ist daher als “enthält Werbung” gekennzeichnet. Wenn ihr einen dieser Links nutzt und anschließend im verlinkten Shop einkauft, bekommen wir dafür eine Provision vom Händler. Damit unterstützt ihr also StoneWars.de (mehr dazu hier) und ermöglicht es uns, frei von Bannerwerbung und bezahlten Inhalten zu bleiben. Vielen Dank dafür!

Abonnieren
Benachrichtige mich bei
guest
0 Kommentare
Inline Feedbacks
Zeige alle Kommentare