LED-Licht |
Einleitung![]() Die Realisierung habe ich wie die vorangegangenen zwei Experimente mit Elementen von Tinkerforge und einem Raspberry Pi durchgeführt. Primäres Ziel war, einen Flur zu erleuchten, wenn sich jemand in diesen Bereich begibt. Findet dort keine Bewegung mehr statt, sollte das Licht langsam erlöschen. Da das System dauernd läuft, sollte es allerdings keine LCD-Anzeige zur Steuerung haben, wie die anderen beiden Geräte, sondern einen Drehknopf, um Kleinigkeiten einzustellen. Eigentlich soll man an so einer Lampe ja eh nicht viel einstellen, die soll ja nun hauptsächlich leuchten.
AufbauDas LED-Licht besteht zur Zeit aus folgenden Komponenten:
Arbeitsweise![]() Die Lichtleiste ist nun einen Meter lang (mit 32 LEDs) und erhellt den (nicht allzu grossen) Flur akzeptabel. Fürs Saubermachen reicht es nicht, aber dafür ist die normale Flurleuchte da. Als Beleuchtung für das sichere Bewegen im Flur reicht die Helligkeit mehr als aus. Und notfalls könnte man da auch noch einen weiteren Meter LED-Streifen anschliessen, aber das wird erstmal nicht nötig sein. Das LED-Licht soll zwar primär leuchten, wenn es nötig ist, aber da man dem Java-Programm natürlich noch diversen Blödsinn beibringen kann, kann das Licht auch noch ein wenig mehr. Die einzelnen Modi werden durch kurzes Drücken des Drehknopfes umgestellt:
Für den eigentlichen Zweck als Beleuchtung ist natürlich nur der erste Modus wirklich sinnvoll, der Rest ist mehr ein "Gag". Und als Lampe funktioniert das Konstrukt stabil, wenngleich es aber auch nicht unbedingt eine besonders preiswerte Lösung ist. Aber irgendwie individuell ;-) Erweiterung 1Ich habe verschiedene Funksteckdosen im Einsatz, z.B. um die MP3-Station oder die LED-Tafel vom Strom zu trennen, wenn sie nicht laufen. Zu Funksteckdosen gibt es ja immer Fernbedienungen, aber im Laufe der Zeit wuchs die Anzahl an, erst von 4 oder 5 (das hat dann mit einer Fernbedienung funktioniert) auf 6-8 (da waren es dann schon zwei Fernbedienungen). Und dann konnte ich da noch eine und ...Es kam mir dann die Idee, ich könnte dann doch man schauen, ob ich nicht das Flurlicht, dessen Raspberry eh dauernd läft, als Ansteuerung eines Moduls (von Tinkerforge) verwenden, mit dem ich die Funksteckdosen steuern könnte.
Hierbei hat sich dann gezeigt, das es nicht so einfach ist, auch
Funksteckdosen zu finden, die man damit auch ansteuern kann. Das Modul
kann Empfangsmodule auf Basis der CHipsätze PT2262 und HX2262 ansprechen
(alle auf 433MHz), aber bei vielen Funksteckdosen weiss man gar nicht,
was dort verbaut wird (gern auch proprietäres Zeug, was sich nur mit
der Fernbedienung des Herstellers ansprechen lässt). Ich habe nach
einiger Suche dann aber geeignete Funksteckdosen gefunden.
Die Ansteuerung selbst findet natürlich in dem Java Programm statt, welches auch die anderen Elemente (LED-Streifen, Bewegungssensoren) ansteuert. Dort läuft ja auch der Mini-Webserver, über den sich die Steckdosen dann ein- und ausschalten lassen. Funksteckdosen, welche auf diese Art angesteuert werden, haben leider keinen Rückkanal, daher kann man nicht konstrollieren, ob die Dose wirklich geschaltet hat. Man muss daher darauf achten, das die Dosen so gesetzt werden, das diese auch vernünftig geschaltet werden können, denn wenn diese zum Beispiel ungeschickt hinter elektronischen Geräschaften verbaut werden, können diese unter Umständen nicht oder nicht zuverlässig geschaltet werden. Zur stabileren Ansteuerung von "Wackelkandidaten" verwende ich zudem eine konfigurierbare Anzahl von Ansteuerversuchen ("Funkimpulsen") pro Steckdose, um (hoffentlich) sicher zu gehen, das die Dose auch wirklich schaltet. Erweiterung 2![]() Allerdings wäre eine Anzeige zum aktuellen Zustand der Steckdosen schon sinnvoll (die MP3-Station zeigt in ihrem Display schliesslich auch allerlei Inforamtionen an). Allerdings verbraucht das dort verbaute LCD-Display zwar nicht so besonders viel Strom (zumindest wenn die Hintergrundbeleuchtung aus ist), aber eben doch einiges. Wenn man dann bedenkt, das dieses Display dann dauernd laufen würde .... Da traf es sich gut, das Tinkerforge inzwischen auch ein E-Paper Display im Angebot hat. Ausser beim Setzen der Anzeigedaten verbrauchen solche Teile gar keinen Strom (ok, der im Bricklet verbaute Chipsatz verbraucht dennoch ein klein wenig Strom, alleine deswegen, weil er ja auf Kommandos vom Steuer-Brick lauschen muss, aber das ist deutlich weniger als das LCD-Display braucht). So habe ich dann ein Konstrukt ersonnen mit einem E-Paper-Display und dem Sensor-Tastenefeld, und dies an den Schrank gesetzt, hinter welchem der Raspberry für das Flurlicht steckt. Über das Tastenfeld kann ich nun die einzelnen Funksteckdosen ein- und ausschalten, und das Display zeigt den Schaltzustand an. Die Ansteuerung der Steckdosen findet natürlich über die gleichen Funktionen statt wie bei der Ansteuerung über den Webbrowser, und die Anzeige zeigt dies ebenfalls an.
Der Nanoleaf-Controller lässt sich über eine Web-API ansprechen, deren Dokumentation erfreulicherweise von Nanoleaf erhältlich ist. Es hat einige Versuche gebraucht, um ein Objekt zu erstellen, welches sauber mit Daten gefüttert werden kann dann mit dem Controller interagiert, aber das funktionierte nach einiger Zeit recht gut. Die Ansteuerung über die Weboberfläche war dann eher Fleißarbeit. Im Gegensatz zu den Funksteckdosen, deren Konfiguration ja eher statisch ist, können hier ja problemlos neue Muster auf den Controller geladen werden (weiterhin über die App, das selbst zu machen tue ich mir nicht an). Somit muss die Liste der Muster vom Controller extrrahierbar sein, und die Liste mit verwendbaren Mustern (die soll eingeschränkt sein, quasi eine Favoritenliste) muss über den Webbrowser pflegbar sein. Nachdem die Ansteuerung des Nanoleaf-Panels über den Webbrowser funktionierte, habe ich dann auch eine Steuermöglichkeit über das Tastenfeld eingebaut. Da die Tasten und die Anzeige für die Steckdosen im Prinzip belegt war, habe ich eine Doppelbelegung eingebaut: Durch eine freie Taste (die letzte) kann man zwischen der Steuerung der Steckdosen und der Steuerung des Panels umschalten. Dort kann man dann das Panel ein- und ausschalten, sowie zwischen den Mustern (aus der Favoritenliste) wählen. ©2020 Holger Thiele generiert aus "ledlicht.template" vom 19 05 2020 ![]() |