The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 12: | Line 12: | ||
== Web == | == Web == | ||
Die Lichtsteuerung findet sich unter [http://dorfmap/ dorfmap] im Chaosdorfnetz. Das Interface basiert auf | Die Lichtsteuerung findet sich unter [http://dorfmap/ dorfmap] im Chaosdorfnetz. Das Interface basiert auf AngularJS und wird von {{U|marudor}} entwickelt. Für sehr alte Geräte (und ggf. Smartphonebrowser) gibt es ein weniger hübsches Legacy-Interface unter [http://dorfmap/m dorfmap/m]. | ||
== Hardware == | == Hardware == | ||
[[File: | [[File:Avrmf.png|Generischer SI2C Slave|200x200px|framed|right]] | ||
[[File:Chaosdoorlicht.png|Außenbeleuchtung|200x200px|framed|right]] | |||
Kernstück des Ganzen | Kernstück des Ganzen sind [[SI2C]]-Instanzen an {{H|feedback}} und {{H|donationprint}}. Daran hängen die Steuer-AVRs der jeweiligen Geräte und tun (wenn sie mit der richtigen Adresse angesprochen werden) Dinge. | ||
Einige Verbraucher werden noch direkt über GPIO-Pins (Optokoppler + Transistor) geschaltet, das ist aber Legacy und wird abgebaut. | |||
Die Schaltspannung der Schieberegister ist 12V und geht wahlweise direkt zum Kleinverbraucher oder zu einem 230V-Relais. | Die Schaltspannung der Schieberegister ist 12V und geht wahlweise direkt zum Kleinverbraucher oder zu einem 230V-Relais. | ||
Line 31: | Line 34: | ||
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/dorfmap-deb/blob/master/bin/is_sundown berechnet]. Per [https://github.com/chaosdorf/dorfmap-deb/blob/master/debian/dorfmap-deb.cron.d cronjob] wird alle 6 Minuten überprüft, ob Nacht ist oder nicht, und entsprechend die Beleuchtung geschaltet. | 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/dorfmap-deb/blob/master/bin/is_sundown berechnet]. Per [https://github.com/chaosdorf/dorfmap-deb/blob/master/debian/dorfmap-deb.cron.d cronjob] wird alle 6 Minuten überprüft, ob Nacht ist oder nicht, und entsprechend die Beleuchtung geschaltet. | ||
Der [[Printer/HP2100]] und die [[Windowgarden]]-Pumpe werden nach | Der [[Printer/HP2100]] und die [[Windowgarden]]-Pumpe werden nach 20 Minuten automatisch abgeschaltet. | ||
=== Manuell === | === Manuell === | ||
Grundlage ist ein [https://github.com/chaosdorf/dorfmap/blob/master/public | Grundlage ist ein [https://github.com/chaosdorf/dorfmap/blob/master/public/map.png Grundriss] des Clubraums. Aus einer [https://github.com/chaosdorf/dorfmap/blob/master/coordinates Koordinatendatei] wird ausgelesen, wo welche Lampe ist, und abhängig von ihrem Status ein entsprechendes Symbol angezeigt. Bei automatisch gesteuerten Lampen wird die Automatik gesteuert, 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. | 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. | ||
Line 45: | Line 48: | ||
Es existiert eine (noch nicht finale) JSON-API. In einigen Fällen wird auch Textausgabe unterstützt. Für Textformat <tt>.txt</tt> an Anfragen anhängen (oder <tt>curl -H 'Accept: text/plain'</tt> benutzen), für JSON entsprechend <tt>.json</tt> bzw. <tt>application/json</tt>. | Es existiert eine (noch nicht finale) JSON-API. In einigen Fällen wird auch Textausgabe unterstützt. Für Textformat <tt>.txt</tt> an Anfragen anhängen (oder <tt>curl -H 'Accept: text/plain'</tt> benutzen), für JSON entsprechend <tt>.json</tt> bzw. <tt>application/json</tt>. | ||
<tt>/get</tt> liefert derzeit auch PNGs. Sie entsprechen den in der Übersicht verwendeten. | <tt>/get</tt> liefert derzeit auch PNGs. Sie entsprechen den in der Übersicht verwendeten.n | ||
{| class="wikitable" | {| class="wikitable" | ||
! Request | ! Request !! Aktion !! Rückgabe | ||
! | |||
! Aktion | |||
|- | |- | ||
| | | <tt>/action/shutdown</tt> || Setzt Raum in Shutdownmodus (s.u.) || Beliebig | ||
| | |||
| | |||
|- | |- | ||
| | | <tt>/action/unshutdown</tt> || Setzt Raum in Nicht-Shutdownmodus (s.u.) || Beliebig | ||
| | |||
| | |||
|- | |- | ||
| | | <tt>/ajax/blinkencontrol?device='''device'''</tt> || || Liste aller Animationen und aktuelles von '''device''' | ||
|- | |- | ||
| | | <tt>/ajax/charwrite</tt> || || Liste aller Modi | ||
| | |||
| | |||
|- | |- | ||
| | | <tt>/ajax/infoarea</tt> || || HTML-Text der Infoarea (Stromverbrauch etc.) | ||
| | |||
| | |||
|- | |- | ||
| | | <tt>/ajax/menu</tt> || || Liste aller Shortcuts, Presets und Layer | ||
| | |||
|- | |- | ||
| | | <tt>/get/'''id'''</tt> || Keine || Aktueller Status des Verbrauchers (1 == an, 0 == aus, -1 == unbekannt) | ||
|- | |- | ||
| | | <tt>/off/'''id'''</tt> || Schaltet Verbraucher aus || Beliebig | ||
| | |||
| | |||
|- | |- | ||
| | | <tt>/on/'''id'''</tt> || Schaltet Verbraucher an || Beliebig | ||
| | |||
|- | |- | ||
| | | <tt>/list/all</tt> || || Liste aller Verbraucher mit Name, Typ, Status, Lesbar, Schreibbar | ||
| | |||
| | |||
|- | |- | ||
| | | <tt>/list/readables</tt> || || Liste aller Verbraucher mit auslesbarem Status | ||
| | |||
| | |||
|- | |- | ||
| | | <tt>/list/writables</tt> || || Liste aller Verbraucher mit schreibbarem Status | ||
| | |||
| | |||
|- | |- | ||
| | | <tt>/space_api</tt> || || Hackerspacestatus für die [http://spaceapi.net/ spaceAPI] | ||
| | |- | ||
| Hackerspacestatus für die [http://spaceapi.net/ spaceAPI] | | <tt>/toggle/'''id'''</tt> || Schaltet Verbraucher von An → Aus bzw. Aus → An || Beliebig | ||
|- | |- | ||
|} | |} | ||
Line 108: | Line 85: | ||
== Angeschlossene Geräte == | == Angeschlossene Geräte == | ||
Die genaue Zuordnung zwischen Kabel / GPIO-Pin und Gerät ist auf {{H|donationprint}} und {{H|feedback}} dokumentiert. Jede Automatik ist individuell deaktivierbar. | |||
{| class="wikitable" | {| class="wikitable" | ||
Line 118: | Line 95: | ||
|- | |- | ||
| LED-Leiste über Chaosdorflogo, Schleuse || Automatik: Nicht Shutdown && Nacht (+90 Minuten Dämmerung) | | LED-Leiste über Chaosdorflogo, Schleuse || Automatik: Nicht Shutdown && Nacht (+90 Minuten Dämmerung) | ||
|- | |||
| RGB-LED-Leiste, Lounge || Manuell: [[Blinkencontrol]] | |||
|- | |||
| Weißer LED-Strahler, Lounge || Manuell | |||
|- | |||
| Grüner LED-Strahler, Lounge || Manuell | |||
|- | |- | ||
| Luft-/Wasserpumpe [[Windowgarden]], Lounge || Manuell an, automatisch nach 5 Minuten aus | | Luft-/Wasserpumpe [[Windowgarden]], Lounge || Manuell an, automatisch nach 5 Minuten aus | ||
|- | |- | ||
| [[Printer/HP2100]] || Manuell an, automatisch nach | | Kaltweiße LED-Platte, Treppe || Manuell | ||
|- | |||
| 4x7Segment-Anzeige, Lounge || Wahlweise Uhrzeit / Hostcount / eigener Text | |||
|- | |||
| [[Printer/HP2100]] || Manuell an, automatisch nach 20 Minuten aus | |||
|- | |||
| Blassblaue LED-Röhre, Hackcenter || Manuell | |||
|- | |||
| Lampe im eMac-Gehäuse, Hackcenter || Manuell | |||
|- | |||
| LED-Leuchten-Reihe, Hackcenter || Manuell | |||
|- | |||
| Blauer LED-Streifen, Hackcenter || Manuell | |||
|- | |- | ||
| | | Warmweiße LED-Spots, Hackcenter || Manuell | ||
|- | |- | ||
| | | Helle weiße Doppelröhre, Hackcenter || Manuell | ||
|- | |||
| [[Verstärker]], Serverraum || Manuell: [[Verstärkerschaltung]] | |||
|} | |} | ||
Line 132: | Line 129: | ||
Was weiterhin angezeigt wird: | Was weiterhin angezeigt wird: | ||
* Drucker (readonly, per ping, alle 5 Minuten aktualisiert) | |||
* WLAN-APs (readonly, per ping, alle 5 Minuten aktualisiert) | * WLAN-APs (readonly, per ping, alle 5 Minuten aktualisiert) | ||
* Server | * Server (readonly, per ping, alle 5 Minuten aktualisiert) | ||
* Türstatus (readonly, alle 5 Minuten aktualisiert) | |||
== Shutdown-Konzept == | == Shutdown-Konzept == | ||
Per Default (z.B. nach einem Stromausfall) befindet sich das Dorf im Shutdown. | |||
Per Default (z.B. nach einem Stromausfall) befindet sich das Dorf im Shutdown | |||
=== Shutdown einschalten === | === Shutdown einschalten === | ||
* Klick auf <tt>Actions > Shutdown</tt> in [http://dorfmap/ dorfmap] oder dreisekündiges Drücken des schwarzen Tasters am [[Spendenterminal]] | * Klick auf <tt>Actions > Shutdown</tt> in [http://dorfmap/ dorfmap] oder dreisekündiges Drücken des schwarzen Tasters am [[Spendenterminal]] (bis die grüne LED ausgeht) | ||
* Beleuchtung im Hackcenter geht sofort aus | |||
* Beleuchtung in der Schleuse (Logo und über der Tür) geht nach 1 bis 6 Minuten aus | * Beleuchtung in der Schleuse (Logo und über der Tür) geht nach 1 bis 6 Minuten aus | ||
* Beleuchtung im Schaufenster leuchtet weiterhin, falls Nacht ist | * Beleuchtung im Schaufenster leuchtet weiterhin, falls Nacht ist | ||
=== Shutdown ausschalten | === Shutdown ausschalten === | ||
* Klick auf <tt>Actions > Unshutdown</tt> oder irgendeine steuerbare Lampe in [http://dorfmap/ dorfmap] oder dreisekündiges Drücken des schwarzen Tasters am [[Spendenterminal]] | * Klick auf <tt>Actions > Unshutdown</tt> oder irgendeine steuerbare Lampe in [http://dorfmap/ dorfmap] oder dreisekündiges Drücken des schwarzen Tasters am [[Spendenterminal]] (bis die grüne LED angeht) | ||
* Falls eine Lampe angeklickt wurde, wird diese eingeschaltet | * Falls eine Lampe angeklickt wurde, wird diese eingeschaltet | ||
* Beleuchtung in der Schleuse (Logo und über der Tür) geht nach 1 bis 6 Minuten an, falls Nacht ist; alternativ sobald die Sonne untergegangen ist | * Beleuchtung in der Schleuse (Logo und über der Tür) geht nach 1 bis 6 Minuten an, falls Nacht ist; alternativ sobald die Sonne untergegangen ist | ||