Zugangskontrolle

Aus Magrathea Laboratories e.V.
(Weitergeleitet von Janitor)
Zur Navigation springen Zur Suche springen

Janitor

   
Janitor 1.jpg
Der Pförtner und Hauswart des Hackerspace
Status In Planung / Umsetzung
Lizenz  WTFPL
Mitglieder Fooker
Janitor 2.jpg

Das elektronische Zugangssystem Janitor erlaubt allen Mitgliedern den Zugang zum Hackerspace, ohne dass dafür ein physikalischer Schlüssel benötigt wird. Darüber hinaus erlaubt Janitor den Modus des Hackerspace (geöffnet, privat, usw.) zu wählen.


Funktionsweise

Die Bedienung erfolgt durch ein Kontrollpanel im inneren des Hackerspace oder per SSH-Login auf dem Janitor-Controller.


Kontrollpanel

Das Kontrollpanel erlaubt über vier Knöpfe die Wahl des aktiven Modus des Hackerspace 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 Hackerspace 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 Hackerspace 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 Hackerspace 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 Hackerspace ist nicht für die Öffentlichkeit geöffnet.
Die Türe ist verschlossen und auf der Webseite wird der Hackerspace als geschlossen angezeigt. Trotzdem sind sämtliche Funktionen (Licht, Elektronik, usw.) aktiv.
Diese Funktion sollte nur verwendet werden, wenn jemand im Hackerspace schläft.
Rot (shutdown)
Der Hackerspace ist geschlossen.
Die Türe ist verriegelt, alle Funktionen wie Licht, Elektronik, usw. sind ausgeschaltet und auf der Webseite wird der Hackerspace als geschlossen angezeigt.
Diese Funktion sollte verwendet werden, wenn der letzte den Hackerspace 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 WLAN:

ssh janitor@janitor

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 Hackerspace bekanntgegeben.

Hierzu werden folgende Topics verwendet:

maglab/space/janitor/status
Der Status des Gerätes (online) - wird automatisch auf offline gesetzt, sobald das Gerät die Verbindung verliert.
maglab/space/janitor/mode
Der aktuell gewählte Modus: public, private, hibernate oder shutdown.
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.
… weitere Daten zur Seite „Zugangskontrolle
Hat Unterobjekt„Hat Unterobjekt (Has subobject)“ ist ein softwareseitig fest definiertes Attribut und stellt einen Datenverbund dar. Es wird von Semantic MediaWiki zur Verfügung gestellt.