Animiertes Flurlicht

Regenbogen-Beleuchtung

Das Licht in meinem Flur wird von einem Raspberry Pi mit 2x 5m LED-Streifen und 2 Bewegungsmeldern gesteuert.

Für die Steuerung der LED-Streifen wäre nicht unbedingt ein Raspberry Pi nötig, die Logik ließe sich auch mit einem Arduino abbilden. Allerdings wollte ich meinen Code mit Ruby schreiben und später auch noch weitere Funktionen mit dem Rechner im Flur implementieren.

Vorbereitung

Folgende Komponenten sind nötig:

  1. Raspberry Pi
  2. SD-Karte
  3. ein oder zwei selbstklebende LED-Streifen WS2801
  4. ein oder zwei Bewegungsmelder (z.B. HC-SR501)
  5. >=120W-Netzteil, 5V
  6. einige Kabel

WS2801-LED-Streifen

Aufbau

Die LED-Streifen haben vier Anschlüsse: +5V, Ground, Clock und Data. Die ersten beiden müssen mit dem Netzteil verbunden werden, die anderen mit dem Raspberry Pi. Der Raspberry Pi muss wiederrum an den Ground vom Netzteil angeschlossen werden. Die Bewegungsmelder werden ebenfalls +5V, Ground und jeweils eine Datenleitung benötigen.

Die LED-Streifen habe ich an die Decke geklebt und die Datenleitungen auf der gegenüberliegenden des Raspis verbunden. Die Stromleitungen habe ich jeweils an den spitzen des ‘U’ angeschlossen, damit sie nicht zu lang werden.

Verkabelung der LED-Streifen

Die Bewegungsmelder sind in der Mitte des Flurs und schauen jeweils nach links und rechts, so dass der Raspberry Pi auf die Richtung reagieren kann, aus der man in den Flur geht.

Der Raspberry Pi könnte über das Netzteil mit betrieben werden, indem man den 5V-Pin (und Ground) des Pis mit dem Netzteil verbindet, das würde aber die Sicherung umgehen, soweit ich weiß. Ich habe also ein separates USB-Netzteil genommen, das mit später auch erlaubt, mit einem Relais das große Netzteil abzuschalten, wenn es länger nicht gebraucht wird. Nachts etwa.

Bewegungsmelder

Die Bewegungsmelder sind recht einfach anzuschließen. Sie benötigen 5V vom Netzteil und haben jeweils einen Datenausgang, den man mit dem Rasperry Pi verbinden kann. Wenn sie eine Bewegung feststellen, liegt Spannung am Ausgang an, sonst nicht. Ich habe die Bewegungssensoren an die Decke gehängt. Damit sie in der richtigen Position halten, brauchte ich eine Art Gehäuse, das ich aus Bügelperlen gebaut habe. :)

Bewegunssensoren im Bügelperlengehäuse

Die Bügelperlen habe ich an eine dünne Holzplatte geklebt. Silikon eignet sich hier nicht (für euch erprobt) aber normaler Haushaltskleber tuts eigentlich. Das ganze Ding habe ich dann an die Decke geschraubt.

Bewegungssensoren an der Decke

Verkabelung

Die Bewegungssensoren müssen im Grunde einfach nur an einen der freien GPIO-Pins angebracht werden. Die Bildersuche von Google liefert dieverse Treffer zur Belegung, ein Beispiel für die zur Zeit aktuellen Raspberry-Pi-Modelle wäre ein Artikel auf diyhacking.com. Ich habe die Pins 23 und 24 genommen, diese Werte sind auch im späteren Gem zur Lichtsteuerung voreingetragen.

Die LED-Streifen müssen über die SPI-Schnittstelle des Raspberry Pis angeschlossen werden. Das sind die Pins 19 und 23. 19 ist der Datenausgang, 23 die Clock, die das Timing für das Signal vorgibt.

Pin 6 zum Beispiel ist Ground und muss mit dem Netzteil verbunden werden, damit alle Geräte einen gemeinsamen Nullpunkt haben.

Verkabelung des Raspberry Pi

Software

In den Konfigurationssoftware des Raspberry Pi findet sich in den erweiterten Einstellungen die Option, um die SPI-Schnittstelle zu aktivieren. Nach einem Neustart müsste die Geräte /dev/spidev0.0 und /dev/spidev0.1 zur Verfügung stehen.

Ist die Verkabelung genau wie hier beschrieben, kann der Ruby-Gem ws_light direkt genutzt werden:

gem install ws_light
ws_light

Ich habe bisher noch keine Konfigurationsdatei vorgesehen. Wenn Bedarf besteht, kann ich das aber schnell nachrüsten.

Ansonsten lässt sich der Gems auch selbst anpassen, der Code liegt auf github. Die Konfiguration der GPIO-PINs für die Bewegungsmelder ist in der Datei bin/ws_light.

Tagsüber

Nachts

Rückmeldungen

Diese Zusammenfassung ist womöglich als Anleitung für eine Anfängerin noch etwas zu knapp. Ich würde mich über Rückmeldungen freuen und gebe auch gerne Hilfestellung.

- to blog -

blog built using the cayman-theme by Jason Long. LICENSE