Archiv:Lichtsteuerung: Difference between revisions

From Chaosdorf Wiki
(→‎Manuell: hosts)
m (detypo'd)
Line 14: Line 14:
Kernstück des Ganzen ist aktuell {{H|feedback}}, ein Raspberry Pi. An den GPIO-Pins hängt ein Optokopplerboard, um mit den 3V3 des Raspberry 12V-Signale zu schalten. Diese verteilen sich über eine Reihe von Kabeln im Clubraum und enden in 230V-Relais direkt an den zu schaltenden Verbrauchern.
Kernstück des Ganzen ist aktuell {{H|feedback}}, ein Raspberry Pi. An den GPIO-Pins hängt ein Optokopplerboard, um mit den 3V3 des Raspberry 12V-Signale zu schalten. Diese verteilen sich über eine Reihe von Kabeln im Clubraum und enden in 230V-Relais direkt an den zu schaltenden Verbrauchern.


Vorteil von GPIO-Pins ist, dass der Status nicht nur geschrieben, sondern auch jederzeit ausgelesen werden kann. Da es aber nur eine sehr begrenzte Anzahl gibt, werden wir bald auf ein
Vorteil von GPIO-Pins ist, dass der Status nicht nur geschrieben, sondern auch jederzeit ausgelesen werden kann. Da es aber nur eine sehr begrenzte Anzahl gibt, werden wir bald auf ein Schieberegister zurückgreifen und den aktuellen Lichtstatus in Software speichern müssen.
Schieberegister zurückgreifen und den aktuellen Lichtstatus in Software speichern müssen.


(TODO: Bilder und mehr Details)
(TODO: Bilder und mehr Details)
Line 26: Line 25:
=== Automatik ===
=== Automatik ===


Die Außenbeleuchtung wird automatisch nach der aktuellen Tageszeit geschaltet. Benutzt wird dazu
Die Außenbeleuchtung wird automatisch nach der aktuellen Tageszeit geschaltet. Benutzt wird dazu die Perl-Library Astro::Sunrise, die anhand unserer Koordinaten und dem aktuellen Datum recht akkurate Zeiten für Sonnenauf- und -untergang [https://github.com/chaosdorf/outdoor-light-control/blob/master/bin/is_sundown berechnet]. Per [https://github.com/chaosdorf/outdoor-light-control/blob/master/etc/cron cronjob] wird alle 6 Minuten überprüft, ob Nacht ist oder nicht, und entsprechend die Beleuchtung geschaltet.
die Perl-Library Astro::Sunrise, die anhand unserer Koordinaten und dem aktuellen Datum recht akkurate Zeiten für Sonnenauf- und -untergang [https://github.com/chaosdorf/outdoor-light-control/blob/master/bin/is_sundown berechnet]. Per [https://github.com/chaosdorf/outdoor-light-control/blob/master/etc/cron cronjob] wird alle 6 Minuten überprüft, ob Nacht ist oder nicht, und entsprechend die Beleuchtung geschaltet.


=== Manuell ===
=== Manuell ===


Grundlage ist ein [https://github.com/derf/dorfmap/blob/master/public/map.png Grundriss] des Clubraums. Aus einer [https://github.com/derf/dorfmap/blob/master/coordinates Koordinatendatei] wird ausgelesen, wo welche Lampe ist, und abhängig von ihrem Status ein entsprechendes Symbol angezeigt. Automatisch gesteuerte Lampen sind readonly, alle anderen können durch einen Klick aufs Symbol getoggelt werden.
Grundlage ist ein [https://github.com/derf/dorfmap/blob/master/public/map.png Grundriss] des Clubraums. Aus einer [https://github.com/derf/dorfmap/blob/master/coordinates Koordinatendatei] wird ausgelesen, wo welche Lampe ist, und abhängig von ihrem Status ein entsprechendes Symbol angezeigt. Automatisch gesteuerte Lampen sind read-only, alle anderen können durch einen Klick aufs Symbol getoggelt werden.


Weil die Karte eh schon da ist, wird außerdem der Status von einigen Servern / Embedded Hosts, unseren WLAN-APs und den Druckern angezeigt. Der ist sinnvollerweise auch readonly, die Hots werden einfach angepingt. Eingeschaltete Hosts sind grün, ausgeschaltete grau oder rot.
Weil die Karte eh schon da ist, wird außerdem der Status von einigen Servern / Embedded Hosts, unseren WLAN-APs und den Druckern angezeigt. Der ist sinnvollerweise auch read-only, die Hosts werden einfach angepingt. Eingeschaltete Hosts sind grün, ausgeschaltete grau oder rot.


Es gibt eine Reihe von Shortcuts, die mehrere Aktionen zusammenfassen. "Shutdown" schaltet z.B.
Es gibt eine Reihe von Shortcuts, die mehrere Aktionen zusammenfassen. "Shutdown" schaltet z.B. alle Lampen aus und den Raumstatus auf nicht-öffentlich, "Putzen" sorgt für viel Licht, etc.
alle Lampen aus und den Raumstatus auf nicht-öffentlich, "Putzen" sorgt für viel Licht, etc.


Todo: Rate-Limiting für Leuchtstoffröhren (damit Spielerei an der dorfmap nicht zu sehr auf die Lebensdauer geht)
Todo: Rate-Limiting für Leuchtstoffröhren (damit Spielerei an der dorfmap nicht zu sehr auf die Lebensdauer geht)

Revision as of 20:26, 6 March 2013

Lichtsteuerung beta
Dorfmap.png
blinkenlichten
Beteiligt derf
Quelltext github

Benutze Beleuchtung mit Hackspace.

Hardware

Kernstück des Ganzen ist aktuell feedback, ein Raspberry Pi. An den GPIO-Pins hängt ein Optokopplerboard, um mit den 3V3 des Raspberry 12V-Signale zu schalten. Diese verteilen sich über eine Reihe von Kabeln im Clubraum und enden in 230V-Relais direkt an den zu schaltenden Verbrauchern.

Vorteil von GPIO-Pins ist, dass der Status nicht nur geschrieben, sondern auch jederzeit ausgelesen werden kann. Da es aber nur eine sehr begrenzte Anzahl gibt, werden wir bald auf ein Schieberegister zurückgreifen und den aktuellen Lichtstatus in Software speichern müssen.

(TODO: Bilder und mehr Details)

Software

Automatik

Die Außenbeleuchtung wird automatisch nach der aktuellen Tageszeit geschaltet. Benutzt wird dazu die Perl-Library Astro::Sunrise, die anhand unserer Koordinaten und dem aktuellen Datum recht akkurate Zeiten für Sonnenauf- und -untergang berechnet. Per cronjob wird alle 6 Minuten überprüft, ob Nacht ist oder nicht, und entsprechend die Beleuchtung geschaltet.

Manuell

Grundlage ist ein Grundriss des Clubraums. Aus einer Koordinatendatei wird ausgelesen, wo welche Lampe ist, und abhängig von ihrem Status ein entsprechendes Symbol angezeigt. Automatisch gesteuerte Lampen sind read-only, alle anderen können durch einen Klick aufs Symbol getoggelt werden.

Weil die Karte eh schon da ist, wird außerdem der Status von einigen Servern / Embedded Hosts, unseren WLAN-APs und den Druckern angezeigt. Der ist sinnvollerweise auch read-only, die Hosts werden einfach angepingt. Eingeschaltete Hosts sind grün, ausgeschaltete grau oder rot.

Es gibt eine Reihe von Shortcuts, die mehrere Aktionen zusammenfassen. "Shutdown" schaltet z.B. alle Lampen aus und den Raumstatus auf nicht-öffentlich, "Putzen" sorgt für viel Licht, etc.

Todo: Rate-Limiting für Leuchtstoffröhren (damit Spielerei an der dorfmap nicht zu sehr auf die Lebensdauer geht)