Stimmungsbeleuchtung

Beleuchtungskörper, die man per Fernbedienung in verschiedene Farben versetzen kann, sind mittlerweile recht beliebt. Bis LED-Leuchten dimmbar geworden sind, hat es einige Zeit gedauert, mittlerweile hält immer mehr Technik in großformatigen Leuchten Einzug, wo man per Knopfdruck verschiedene Programme ablaufen lassen kann.

Warum also nicht über eine eigene Lösung nachdenken, die nicht nur Farben und Helligkeit steuern kann, sondern auch im heimischen Netzwerk integriert ist und auf äußere Einflüsse reagiert? So ist unser „Mood lighting“ als Stimmungsbeleuchtung entstanden, im Austausch einer bestehenden Leuchte im Hausflur.

Die neue Leuchte sollte die alte ohne Eingriff in die Hausinstallation ersetzen und wie gehabt über den bestehenden Netzschalter einfach ein- und ausgeschalten werden.

Bausteine wie der ESP von Espressif und ähnliche sind da günstigerweise gegen das abrupte Abschalten der Versorgungsspannung unempfindlich, da hier kein Dateisystem auf einem Datenträger beschädigt werden kann. Ein ESP32 ist für unseren Zweck hier völlig ausreichend, entsprechende WROOM-Boards haben WiFi integriert und man kann sie dadurch recht einfach vernetzen.

Dadurch sind wir „online“ und haben die nötige Intelligenz zur Verfügung. Zum Beleuchten bieten sich LEDs an. Am besten Vollfarbige und ohne diese aufwändig verbinden zu müssen. Neopixel gibt es mittlerweile nicht nur als einzelnen Dot oder in kleinen geometrischen Formen, sondern auch als lange Bänder konfektioniert. Schneidet man die zurecht, lassen sich preiswert größere Flächen mit einer Vielzahl von farbigen LEDs bestücken, die sich alle über einen Eindraht-Bus einzeln in Farbe und Helligkeit ansteuern lassen.

Natürlich soll die Leuchte auch ein angenehmes Äußeres haben und da sollte auf ein im Handel erhältliches Modell zurückgegriffen werden. Gerade auch, um einen schönen Schirm verwenden zu können.

Dazu wurde eine einfache „Sternchenleuchte“ ohne teure Elektronik beschafft und das Innere herausgenommen. Den originalen Trafo und die Hochvolt-LEDs benötigen wir nicht mehr. Unsere neuen Einbauten richten sich nun also nach den inneren Gehäusemaßen der umzurüstenden Leuchte.

Da Neopixel und Board mit der gleichen Spannung betrieben werden, lässt sich beides mit einem kompakten LED-Netzteil versorgen, was am Ausgang 5 Volt Gleichspannung und genügend Strom für unsere geplanten 56 Pixel abgibt. Die haben wir auf einem neuen, runden Zwischenboden angeordnet.

Das neue Netzteil ist in der Rückwand etwas versenkt worden, damit alles noch genügend Abstand zum Schirm hat. Auf der Rückseite vom Zwischenboden wurde dann der ESP befestigt und die Verkabelung gemacht.

Da wir den Mikrocontroller über den USB-Anschluss am PC programmieren, kann die Leuchte erst komplettiert werden, wenn die Software steht. Da heißt es jetzt also, sich Gedanken über den gewünschten Ablauf zu machen.

Den Ablauf übernehmen einge Zeilen C-Code, zur Programmierung der Firmware haben wir wieder die Arduino-IDE genutzt. Damit die mit dem ESP32 zusammenarbeitet, muss der dem Boardverwalter der IDE mitgeteilt werden. Dazu gibt es hilfreiche Anleitung im Web. Spielt alles zusammen, kann man sein fertiges Skript zum ESP uploaden. Alternativ geht natürlich auch ein externer Editor, wie „Atom“ zum Beispiel.

Wer möchte, kann unser „Mood lighting“-Skript wieder auf Github unter https://github.com/swenae/moodlighting einsehen.

Der Eindraht-Bus zur Steuerung der Neopixel liegt bei uns auf Pin17 des ESP. Nach dem Einschalten der Versorgungsspannung läuft das kleine Programm ab. Im Setup wird versucht, eine Internet-Verbindung herzustellen. Danach erzeugen die ersten Sekunden etwas Effekt und schalten die Leuchte dann aber auch hell genug, denn schließlich soll auch ordentlich beleuchtet werden. Danach geht das Skript in den sich wiederholenden Loop und arbeitet auch mit zufälligen Effekten.

Wartet man dann noch ein Stück, wird auf die übers Web eingespeisten Daten reagiert. Ist draußen also Regenwetter, bekommt man mehrheitlich Türkis vorgesetzt, bei Sonne eher Orange. Am Abend ist unabhängig vom Wetter rötlicher Sonnenuntergang angesagt, in der Nacht überwiegen Blautöne und die Helligkeit wird reduziert.

OK, das geht ohne eine gewisse Basis nicht so einfach, aber bei uns zu Hause läuft schon ein kleiner Server, welcher verschiedene Aufgaben in der Heimautomation übernimmt. Es sind auch diverse Sensoren im Innen- und Außenbereich und eine Wetterstation angebunden. Das macht es uns leichter, die benötigten Daten, wie Helligkeit oder Regenfall für die Leuchte aufzubereiten.

In unserem Projekt geschieht die Außenverbindung der Leuchte über eine einfache Datei-Schnittstelle. So schaut der ESP nun per http.GET() auf eine Textdatei im heimischen Netzwerk, wo folgende Dezimalwerte lesbar sind:

0 Standardprogramm
1 Morgen
2 Mittag
3 Abend
4 Dunkel / Nacht
5 Regen
6 Sonne / hohe Temperatur
7 schalte volles Licht

Woher die eingespeiste Information in der Inputdatei kommt, ist eigentlich unerheblich. So kann man sie auch mit ganz anderen Steuerungen verknüpfen und mit etwas Änderung im Skript zur Anzeige von jedweder Information aus dem Internet ausbauen.

Mit sanftem Auf- und Abschwellen einzelner Bereiche der Pixel-Matrix sollte ein gewisser Plasma-Effekt bei der Beleuchtung erzielt werden, durch die Übergabewerte überhaupt nur mäßig beeinflusst. Mit diversem Funkeln wird der Glitzereffekt unter der Haube unterstützt. Unter dem matten Deckel der Leuchte sind die LEDs aber nicht mehr einzeln auszumachen, alles ergibt eine schöne gleichmäßige Leuchtfläche.

Die fertige Flurleuchte ist bei uns Teil von einem Wandspiegel und nimmt dort in der rechten oberen Ecke Platz. Einfach gegen die alte Leuchte ausgetauscht, wird sie wie vorher mit dem gewohnten Lichtschalter bedient.

So macht es Spaß, alles auch mal länger zu betrachten und nicht gleich wieder auszuschalten. Eine Fernbedienung braucht es für unsere Zwecke nicht, wäre über WiFi oder Bluetooth aber durchaus machbar. Wenn die Leuchte den Netzwerkrouter nicht erreicht, wird das Standardprogramm abgefahren. So eine Stimmungsleuchte hab‘ ich mir jedenfalls schon länger gewünscht…

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.