12
Feb 2015
Marko

Wifi Led mit raspberry pi schalten

In dieser Anleitung erkläre ich euch wie ihr ein LED-Band mit einem entsprechenden W-Lan Controller verbindet und dieses dann mit eurem Raspberry pi automatisieren könnt.
Am Ende des Artikels gibt es dann noch einige php-Schnipsel für die Bastler unter euch.

Aber eins nach dem anderen:

Eigentlich wollte ich ja nur eine neue Led-Beleuchtung im Wohnzimmer anbringen.
Daher habe ich mir erst einmal ein 5 Meter LED-Band gekauft:

Das Set besteht aus einem 5m Led-Band, einem Empfänger und einer Infrarot-Fernbedienung.

Relativ schnell wurde mir die Fernbedienung zu öde deshalb suchte ich eine Möglichkeit die LED-Beleuchtung via App steuern zu können.

Das Zauberwort heißt LW-12

LAGUTE LW-12 Wifi WLAN LED RGB Strips Controller für iOS, Android System*


Dieses Teil wird einfach anstelle des Infrarot Empfängers an das LED-Band angeschlossen. Der LW-12 eröffnet dann ein W-Lan auf dem Ihr euch einloggen und die LEDs steuern könnt. Mit wenigen Konfigurationsschritten kann sich der LW-12 auch in euer bestehendes W-Lan einloggen, so müsst ihr nicht erst das Netz wechseln bevor ihr das Licht  vom Smartphone steuern könnt.

Apps gibt es für IOS und Android.

Kommen wir nun aber zu dem spannenderen Teil, in dem ich erkläre wie ihr den LW-12 mittels PHP von eurem Raspberry PI aus steuert.

Hierfür habe ich ein zunächst eine PHP-Klasse geschrieben diese ermöglicht es ein LW12 zu steuern. Die Datei findet ihr inter folgendem link (LW12.php)

Ein PHP-Script um ein LW-12 auf weißes licht zu schalten könnte also wie folgt aussehen:
<php
$x = new LW12("192.168.1.123");
$x->fadeTo(100,100,100);

das war es auch schon, ihr müsst natürlich die IP eures LW-12 eintrage.  ROT, GRÜN und BLAU muss jeweils immer als Wert  von 0 – 100 angegeben werden.

Die Methode fadeTo(R,G,B) fadet die Farbe auf den angegebenen Wert, die Methode setColor(R,G,B) setzt die Farbe direkt. Außerdem fadet off()  einfach alles auf 0.

Den rest habe ich direkt in der Datei mit Kommentaren versehen.

Wer es ein wenig flexibler mag kann sich die Datei LW12Controll.php anschauen, dieses Script ermöglicht es die Farben via GET-Request (Browserzeile) oder via Termial zu setzen. z.b.
http(s)://RAPI_IP/lw12Controll.php?ip=LW12_IP&r=100&g=100&b=100

bzw im terminal mit folgenden Parametern

//Parameter 1 = ip vom LW12
//Parameter 2 = ROT-Wert
//Parameter 3 = GRÜN-Wert
//Parameter 4 = BLAU-Wert

php -f lw12Controll.php 192.168.1.123 100 100 100

Eigentlich sollte sich das von alleine erklären, wer Fragen hat ist eingeladen die Kommentarfunktion zu benutzen.

Zwei Besonderheiten gibt es allerdings noch, zum einen speichert das LW12 Script die aktuelle Farbe in einer Textdatei (status.txt) hier müsst ihr via CHMOD Schreibrechte gewähren.

Zum anderen kann man den LW12 mit der APP auch komplett aus schalten, mein Script setzt hingegen nur alle werte auf 0 um das Licht aus zu machen. Ihr müsst also auf jeden Fall darauf achten, dass ihr mit der APP den LW12 eingeschaltet habt sonst lässt sich die Farbe nicht mit PHP setzen. Verbesserungen und Anregungen sind wie immer sehr willkommen.


6 Kommentare zu "Wifi Led mit raspberry pi schalten"

Kommentar verfassen

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