Sphinx: Unterschied zwischen den Versionen
Micha (Diskussion | Beiträge) |
Jochen (Diskussion | Beiträge) |
||
Zeile 32: | Zeile 32: | ||
[[Datei:Sphinx_schema_v-0-1.png|400px]] | [[Datei:Sphinx_schema_v-0-1.png|400px]] | ||
− | Den ersten, rudimentären Schaltplan haben wir schnell zusammengestellt. Die nächsten Schritte werden das Umsetzen des Ganzen in ein Platinenlayout und der Einbau in das Wandgehäuse. Der Schaltplan kann als [[Datei:Sphinx_schema_v-0-1.pdf|PDF]] bezogen werden. Zum Erstellen der Schaltpläne und des Layouts wird KiCAD verwendet. | + | Den ersten, rudimentären Schaltplan haben wir schnell zusammengestellt. Die nächsten Schritte werden das Umsetzen des Ganzen in ein Platinenlayout und der Einbau in das Wandgehäuse. Der Schaltplan kann als [[Datei:Sphinx_schema_v-0-1.pdf|PDF]] bezogen werden. Zum Erstellen der Schaltpläne und des Layouts wird KiCAD verwendet. Die jeweils letzte Schaltplanversion ist [[http://jochenbauer.net/publicfiles/sphinx_latest hier]] verfügbar. |
Version vom 16. September 2013, 19:46 Uhr
Die Sphinx ist unser automatisches Zugangssystem für Mitglieder. Jedes Vereinsmitglied bekommt einen eigenen Account, kann sich per ssh auf der Sphinx anmelden und sich so Zugang zum Space verschaffen.
Funktion
Die Sphinx soll, wenn sie fertig ist, zwei Modi beherrschen.
Auto-Mode
Wenn sich schon jemand im Space befindet und auch Nichtmitglieder freien Zugang zu unserem Space haben sollen, kann das Schließsystem im Auto-Mode betrieben werden. Dann soll die Wohnungstür nicht abgeschlossen sein, sondern lediglich von einem Türschließer angelehnt bleiben, um von außen einfach aufdrückbar zu sein. Um den Summer zu betätigen reicht es in diesem Fall, die Klingel etwa 3 Sekunden lang zu drücken und die Haustür öffnet sich.
Manuelles Aufschließen
Wenn noch niemand da ist oder der Auto-Mode nicht aktiv ist, kann sich jedes Vereinsmitglied vor der Tür in ein W-Lan einloggen und sich per ssh mit der Sphinx verbinden. Dann stehen verschiedene Befehle zur Verfügung:
- buzz: Summer an der Haustür betätigen
- open: Tür oben aufschließen
- close: Tür oben abschließen
- help: Verfügbare Befehle anzeigen
So ist der Zugang für jedes Mitglied ermöglicht.
Aufbau des Türsystems
Das Herzstück der Sphinx bildet das elektronische Schließsystem Abus HomeTec CFA 1000. Dieses bietet Pins, die wir zum Öffnen und Schließen ansteuern können. Jochen hat dazu eine Schaltung entworfen, die Taster zum Schalten und eine stabile Spannungsversorgung für das Türsystem zur Verfügung stellt. Die Platine kann auch mit den GPIOs von einem Raspberry Pi angesprochen werden, um softwareseitig auf- und zuzuschließen.
Für den Auto-Mode muss die Klingel abgefragt werden. Wenn die Klingel gedrückt wird, kommt oben eine schöne sinusförmige Spannung mit etwa 12V effektiv an. Diese wird mit einem Brückengleichrichter mit nachgeschalteter Last und Glättungskondensator zu einer Gleichspannung gemacht, die wir mit einem Linearspannungsregler LF33 auf einen Pegel von 3,3V für den Pi gebracht wird. Der Pi kann jetzt also an einer steigenden Flanke am GPIO ein Klingeln erkennen. An einem anderen GPIO-Pin des Pi kann der Summer an der Haustür geschaltet werden. Die 3,3V des GPIO schalten über einen Transistor eine Steuerspannung von 5V auf ein Relais, das den Kontakt für den Summer schließt.
Den ersten, rudimentären Schaltplan haben wir schnell zusammengestellt. Die nächsten Schritte werden das Umsetzen des Ganzen in ein Platinenlayout und der Einbau in das Wandgehäuse. Der Schaltplan kann als Datei:Sphinx schema v-0-1.pdf bezogen werden. Zum Erstellen der Schaltpläne und des Layouts wird KiCAD verwendet. Die jeweils letzte Schaltplanversion ist [hier] verfügbar.
Software
Auf dem Türserver (statische IP 192.168.178.222, immer an) hat jeder mit Türzugang einen Linux Useraccount (PAM) mit einem Homeverzeichnis und einer .ssh/authorized_keys. Die Nutzer der Gruppe tuer erhalten beim Login eine in Python geschriebene custom Shell (tyshell), die zum Öffnen und Schließen der Wohnungstür sowie zum Betätigen des Summers verwendet werden kann.
Die tyshell sendet die Kommandos dann per UNIX socket ( /run/tuer.sock ) das Kommando an den Türdaemon (tuerd). Der tuerd führt dann sequentiell alle erhaltenen Kommandos aus, kapselt also letztlich komplett die ausgehende Kommunikation über die GPIO Pins.
Des Weiteren läuft ein zweiter Daemon, der die Klingel überwacht (ringd). Wenn dieser das geheime Klingelmuster erkennt, sendet er "buzz" an den tuerd, der daraufhin den Summer betätigt.
Geplant ist außerdem ein Daemon, der eine Webcam durch den Türspion überwacht. Sobald er einen QR-Code eines Mitglieds (im Homeordner des Users unter ".qrpw.txt") scant, sendet er "open" an den tuerd, um die Wohnungstür zu öffnen. Mit dem Klingelmuster + QR Code kann man dann also komplett ohne elektronische Geräte den Space betreten.
Zugang erhalten
Die Türadmins sind Ralf, Constantin und Chriss. Wer Zugang möchte, soll einer dieser Personen den gewünschten Nutzernamen und einen SSH-Publickey zukommen lassen (Mittwochs manuell per USB Stick oder per signierter EMail).
Was fehlt noch
- Reedkontakte
- Türschließer
- Programmlogik
Ansprechpartner
Software
- Ralf
- Constantin
Hardware
- Jochen
- Micha