Zugangskontrolle
Janitor
![]() | |
Der Pförtner und Hauswart des Hackspace | |
Status | In Planung / Umsetzung |
Lizenz | WTFPL |
Mitglieder | Fooker |
Das elektronische Zugangssystem Janitor erlaubt allen Mitgliedern den Zugang zum Hackspace, ohne dass dafür ein physikalischer Schlüssel benötigt wird. Darüber hinaus erlaubt Janitor den Modus des Hackspace (geöffnet, privat, usw.) zu wählen.
Inhaltsverzeichnis
Funktionsweise
Die Bedienung erfolgt durch ein Kontrollpanel im inneren des Hackspace oder per SSH-Login auf dem Janitor-Controller.
Kontrollpanel
Das Kontrollpanel erlaubt über vier Knöpfe die Wahl des aktiven Modus des Hackspace und sorgt gleichzeitig dafür, dass die Türe in den entsprechenden Status (offen oder geschlossen) versetzt wird. Der aktive Modus wird dadurch angezeigt, dass der jeweilige Knopf blinkt.
- Grün (public)
- Der Hackspace ist für die Öffentlichkeit geöffnet.
- Die Türe ist nicht verschlossen, sämtliche Funktionen (Licht, Elektrik, usw.) sind aktiv und auf der Webseite wird der Hackspace als geöffnet angezeigt.
- Diese Funktion sollte immer gewählt werden sobald jemand da ist.
- Gelb (private)
- Wie public, nur dass die Tür verschlossen ist.
- Wenn ein Gast den Hackspace betreten möchte, muss er klopfen.
- Diese Funktion sollte sollte nur gewählt werden, wenn man die Tür nicht im Sichtfeld hat oder zu viele Menschen auf der Straße herum torkeln.
- Blau (hibernate)
- Der Hackspace ist nicht für die Öffentlichkeit geöffnet.
- Die Türe ist verschlossen und auf der Webseite wird der Hackspace als geschlossen angezeigt. Trotzdem sind sämtliche Funktionen (Licht, Elektronik, usw.) aktiv.
- Diese Funktion sollte nur verwendet werden, wenn jemand im Hackspace schläft.
- Rot (shutdown)
- Der Hackspace ist geschlossen.
- Die Türe ist verriegelt, alle Funktionen wie Licht, Elektronik, usw. sind ausgeschaltet und auf der Webseite wird der Hackspace als geschlossen angezeigt.
- Diese Funktion sollte verwendet werden, wenn der letzte den Hackspace verlässt.
Das Betätigen eines Knopfes kann folgenden Effekt haben:
- Wird ein anderer als der aktive Knopf betätigt, wechselt der Raum in den entsprechenden Modus. Beispiel: Der Raum ist offen (Grün) und die gelbe Taste wird betätigt: Der Raum wechselt in den Modus privat und die Türe wird verriegelt.
- Wird der bereits aktive Knopf nochmals betätigt, wird die Türe entriegelt und kann exakt 1x geöffnet werden, bevor der vorige Modus wieder aktiv wird. Beispiel: Der Raum ist im Modus privat (Türe verriegelt) und der gelbe Knopf wird erneut gedrückt: Die Türe wird entriegelt und kann geöffnet werden. Sobald die Türe wieder zufällt, wird sie wieder verriegelt und der Raum ist wieder im Modus privat.
- Wenn der rote Knopf (shutdown) betätigt wird während ein anderer Status aktiv ist wird das Schloss entriegelt um den Raum verlassen zu können. Sobald die Tür geschlossen wird, wird das Schloss verriegelt.
SSH-Login
Damit der Raum von außen geöffnet werden kann, steht ein Login auf dem Janitor-Controller zur Verfügung, der die zuvor beschriebene Funktion (gleiche Taste wird erneut gedrückt, Türe wird für exakt einen Zyklus geöffnet) abbildet. Zugang per SSH-Login erhalten Mitglieder des maglab. Benötigt wird ein SSH-Schlüsselpaar.
Der öffentliche Schlüssel muss dem privaten Repository member-keys hinzugefügt werden:
git.maglab.space/board/janitor-keys (Nur für Mitglieder sichtbar)
Der Login erfolgt mit folgenden Zugangsdaten im maglab oder Freifunk WLAN:
ssh janitor@janitor.int.maglab.space
Statusanzeige
Der Status der Tür wird auf der Homepage angezeigt. Hierbei werden die Modi public und private als geöffnet angezeigt und die beiden anderen Modi als geschlossen.
Zusätzlich wird der Zustand noch über die Space-API publiziert.
Technische Details
Das Projekt besteht aus folgenden Komponenten:
- Motorschloss
- Als Motorschloss wird ein KeyMatic verwendet bei dem das Funkmodul ausgebaut wurde und die Knöpfe des Geräts durch Leitungen ersetzt wurden.
- Steuereinheit
- Das Gehirn des Geräts wird ein Raspberry Pi dieser erlaubt den Zugang via SSH um die Tür zu öffnen / schließen und den Raum-Status zu wählen.
- Zustandswähler
- Um den Zustand des Raumes am gerät zu wählen werden auf der Innenseite vier Taster mit der Bedeutung shutdown, hibernate, private, public angebracht.
- Durch Drücken des jeweiligen Tasters wird der Raumstatus als aktueller Raumstatus gewählt.
- Zustandssignalisierung
- Auf der Außenseite des Geräts wird der Status durch LEDs angezeigt, so dass der Zustand öffentlich sichtbar ist.
- Klingel (In Arbeit)
- Für die Klingel wird ein Taster durch den Türrahmen nach außen geführt.
- Tür-Sensoren
- Um festzustellen ob die Tür geschlossen ist, werden zwei Reed-Schalter am Türrahmen verbaut und in Serie mit dem Raspberry Pi verbunden.
- WiFi-Zugang (In Arbeit)
- Der Raspberry Pi strahlt ein eigenes WiFi über einen USB-WiFi-Dongle aus, das zusätzlich zu dem Space-WiFi verwendet werden kann um die Tür zu öffnen.
- Das WiFi ist als Fallback gedacht um möglichst unabhängig von der restlichen Infrastruktur zu bleiben.
- Stromversorgung (In Arbeit)
- Die Stromversorgung des Motorschloss und der Steuereinheit wird durch ein USB-Netzteil und eine Power-Bank realisiert.
- Die Power-Bank wird permanent durch das USB-Netzteil geladen, welches wiederum den Raspberry Pi und das Motorschloss versorgt.
MQTT
Der Gewählte Zustand sowie Ereignisse der Tür werden auf dem MQTT-Bus des Hackspace bekanntgegeben.
Hierzu werden folgende Topics verwendet:
maglab/space/janitor/status
- Der Status des Gerätes (
online
) - wird automatisch aufoffline
gesetzt, sobald das Gerät die Verbindung verliert.
maglab/space/janitor/mode
- Der aktuell gewählte Modus:
public
,private
,hibernate
odershutdown
.
maglab/space/janitor/door
- Tür wurde physikalisch geöffnet (
open
) oder geschlossen (closed
).
maglab/space/janitor/locked
- Schloss wurde verriegelt (
locked
) oder entriegelt (unlocked
).
maglab/space/janitor/bell
- Klingel wurde betätigt.