Free text:
'''door2''' ist ein System zur Öffnung der Tür/Schließmechanismus via ssh-Zugang. __toc__ * release-candidate-Status * [https://github.com/chaosdorf/door2 Quellcode] (z.Z. nicht-öffentlich) == Benutzung == Der ssh-Service richtet sich an Clubmember. Member können sich von Wesen (derzeit {{u|dfjera}}, {{u|derf}}) ein ssh-Key eintragen lassen. Der Zugriff ist dann aus dem Dorf-Wifi möglich. Nach Verbindung stehen verschiedene Befehle bereit. Mittels ''open'' kann die Türöffnungssequenz gestartet werden (Ablauf/Timinig ähnlich iButton-Nutzung). Dieser Befehl kann natürlich direkt übergeben werden: <code>ssh door@door2.chaosdorf.space open</code> '''Achtung''', der Username ist "door" ohne Ziffer, der Hostname hingegen "door2" mit Ziffer. Hinweis: während einer laufenden Türöffnung werden weitere Öffnungsbefehle ignoriert. Die Nutzung auf einem Smartphone ist z.B. mittels der App [https://github.com/mwarning/trigger „Trigger“] vergleichsweise einfach möglich. === Adminhinweise: User/Key hinzufügen === <code>door2</code> ist der Adminaccount, <code>door</code> der User zur Türsteuerung! # <code>ssh door2@door2.chaosdorf.space</code> # <code>vim /home/door/sshkeys/<nowiki>{{username}}</nowiki></code> # <code>/usr/local/doorcontrol/generateAuthorizedKeys.sh</code> (generiert /home/door/.ssh/authorized_keys neu) == Hardware == Die Türöffnung wird per Raspberry Pi → Arduino Nano → Optokoppler-Inputs eines Relaisboards (im ACS-Gehäuse) → Türsummer durchgeführt. === Arduino-Inputs === Via USB (im Regelfall <tt>/dev/ttyUSB0</tt>) mit 57600 Baud. * <tt>oO</tt> Summer der Außentür für etwa 5 Sekunden betätigen * <tt>iI</tt> Summer der Innentür für etwa 5 Sekunden betätigen. Die Zeichenfolgen (<tt>oO</tt> bzw. <tt>iI</tt>) müssen innerhalb von maximal einer Sekunde eingegeben werden, andernfalls geht der Arduino von einem Übertragungsfehler aus. Bei Hardwarefehlern führt ein Watchdog einen Reset aus. === Arduino-Outputs === {| class="wikitable" |+ Pin-Layout |- ! Seite SW !! Seite Arduino HW !! Seite Relay !! Funktion Relay |- | AVR PB3 || Arduino D11 || weißes Kabel || Öffner außen (Haustür zur Straße) |- | AVR PB4 || Arduino D12 || gelbes Kabel || Öffner innen (Clubraumtür zum Hausflur) |- | AVR PB2 || Arduino D10 || (unbelegt - für zukünftige Anwendungen am Arduino vorbereitet) || |} Die Outputs werden jeweils über einen 68Ω-Widerstand mit 5V geschaltet und verfügen zusätzlich über 10kΩ Pull-Down-Widerstände. === Alte Fassung (RasPi-GPIOs) === Die GPIO-Pins des Pi's wurden in einer älteren Fassung wie folgt genutzt: {| class="wikitable" |+ PIN-Layout |- ! Pin !! Usage !! Cable-Identification !! destination |- | 39 || GND || brown -> black || GND relay |- | 40 (GPIO 21) || output || red -> white || relay outside door |- | 38 (GPIO 20) || output || orange/yellow -> yellow || relay inside door |} Die Kabel von 39,40,38 führten zu einer Zwischenplatine mit je einem 1kΩ Pull-down-Widerstand auf GND und von dort aus zu dem Schaltrelaisboard mit Optokopplern, an welches erst die Haus-Türöffner angebunden sind. Das Relaisboard erhält seine Stromversorgung vom [[ACS]]. == Weiterentwicklung == Es ist möglich weitere Pins für andere Funktionen zu Verwenden. Ideen: * Klingel-mqtt-Gateway * Signalinput von NZ300 == Abgrenzung door2, ACS, NZ == Die Aufteilung und Zuständigkeit der Systeme im aktuellen de-facto-Zustand ist nicht ganz klar dokumentiert. * Die Ansteuerung der Türöffner passiert via Relays, diese sind formal nicht Teil des ACS. * Das ACS macht nur die Klingel und iButton-Funktionalität und steuert dann die Relays an. * Das NZ signalisiert nach Input von ACS die Klingel. * door2 stellt ein ssh-Service bereit, über den auch die Tür-Relais angesteuert werden können.
Save page Show preview Show changes Cancel