Sphinx: Unterschied zwischen den Versionen

Aus Hacksaar Wiki
Zur Navigation springen Zur Suche springen
Zeile 20: Zeile 20:
 
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.
 
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.
  
[[Datei:Sphinx_taster.jpg|200px|thumb|left|Tasterplatine für die Ansteuerung des Schließsystems]][[Datei:Sphinx_spannung.jpg|200px|thumb|left|Spannungsversorgung mit ordentlichem Puffer]]
+
[[Datei:Sphinx_taster.jpg|200px]]
 +
[[Datei:Sphinx_spannung.jpg|200px]]
 +
[[Datei:Sphinx_hometec.jpg|200px]]
  
 
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.
 
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.
 
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.
  
[[Datei:Sphinx_relais.jpg|200px|thumb|right|Relaiskarte für den Summer]]
+
[[Datei:Sphinx_relais.jpg|200px|Relaiskarte für den Summer]]
  
 +
== 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.
  
== SoftwareNeu ==
+
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.
 
 
Auf dem Türserver (statische IP 192.168.178.222, immer an) hat jeder mit Türzugang einen Linux Useraccount (PAM) mit einem Homeverzeichnis mit 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 sequentialisiert alle erhaltenen Kommandos aus, kapselt also letztendlich komplett die ausgehende Kommunikation über die GPIO Pins.
 
 
 
Des Weiteren läuft noch ein 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.
 
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.
Zeile 46: Zeile 45:
 
Die Türadmins sind Ralf, Constantin und Micha. 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).
 
Die Türadmins sind Ralf, Constantin und Micha. 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
 
 
 
 
 
 
 
 
= Alter Artikel: SPaceSchließsystem =
 
 
 
Hier kommen die Infos rein, die während des Baus unseres Schliesssystems, das jedem Mitglied ohne physikalischen Schlüssel Zugang zu den Räumen per Netzwerkzugriff ermöglichen soll, anfallen.
 
 
 
Die Vorarbeiten von Jochen bzgl. elektrischen Schliesszylinder sollten mit den Software-Erweiterungen und QR-Code Zugangstests erweitert dokumentiert werden.
 
 
 
== Elektrischen Schliesszylinder und Modifikationen ==
 
 
 
Nutzung eines elektrischen Schliesszylinders. Modifikation um Platine zur Betätigung der Hardwareknöpfe mittels Mikrokontrollers.
 
 
 
Anschluss des Summers....
 
 
 
Abfrage der Klingel....
 
 
 
== Datenbank-Backend und Netzwerkzugriff ==
 
 
 
...wie ist die Software-Seite geplant?
 
 
 
== QR-Code Zugang ==
 
 
 
...hier Infos zu QR-Code Generierung und Logik....
 
 
 
= Alter Artikel: "TÜR" =
 
 
 
Unser Türzugangssystem ist noch nicht fertig (in progress) und noch nicht dokumentiert (TODO). In der Zwischenzeit siehe hier: [http://pad.hacksaar.de/p/T%C3%BCr Pad zum Thema Tür]
 
 
 
== STATUS ==
 
 
 
in Progress: Hier fehlen noch einige Infos . Projekt ist noch nicht abgeschlossen
 
 
 
== Ziel ==
 
 
 
Über eine oder mehrere Schnittstellen soll es den Vereinsmitgliedern möglich sein, selbstständig Zutritt zum Space zu verschaffen.
 
 
 
Es soll ein Zugangslogbuch erstellt werden.
 
 
 
=== Ausgangslage ===
 
 
 
Zwei Türen, die zeitlich unabhängig voneinander geschalten werden müssen.
 
 
 
Tür Nr. 1: Aktivieren des Summer für X Sekunden
 
 
 
Tür Nr. 2:
 
 
 
  - falls geschlossen: Aufsperren
 
- falls aufgeschlossen: Schnapper aktivieren
 
- (falls aufgeschlossen): Abschließen
 
 
 
== Idee ==
 
 
 
Zugangsberechtigung soll über eine schon existierende Benutzerverwaltung, die aufgebohrt wird, realisiert werden.
 
 
 
== Hardware ==
 
 
 
Zum Schließen von Tür 2 wird ein automatisches Sperrsystem genutzt. TODO: Ausführliche Erklärung
 
 
 
Zum Steuern des Sperrsystem von Tür 2 und zum Aktivieren des Summer von Tür 1 wird ein Raspberry Pi(?) eingesetzt.
 
 
 
== Software ==
 
 
 
Bash-Script
 
 
 
API Usage für vorhanden Benutzerverwaltung...
 
 
 
== Ansprechpartner ==
 
 
 
mehrere.. TODO
 

Version vom 16. September 2013, 17:49 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 jemand im Space befindet, soll die Tür oben offen bleiben, ein Türschließer hält sie zu, so dass sie aufgedrückt werden kann. Um die Tür zum Treppenhaus zu öffnen, kann in diesem Modus die Klingel betätigt werden, wodurch der Summer an der Haustür ausgelöst wird.

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.

Sphinx taster.jpg Sphinx spannung.jpg Sphinx hometec.jpg

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.

Relaiskarte für den Summer

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.

Aktuell kann der Code hier geklont werden: [1]. Später wird der Code auf dem hacksaar-Server liegen.

Zugang erhalten

Die Türadmins sind Ralf, Constantin und Micha. 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