Inhaltsverzeichnis:
- Schritt 1: iPhone-App
- Schritt 2: Verschlüsselung
- Schritt 3: Komponentenliste
- Schritt 4: Netzwerk
- Schritt 5: Montage
- Schritt 6: Micro-USB
- Schritt 7: Fernbedienungsverkabelung
- Schritt 8: Der Fall
- Schritt 9: App-Demo
- Schritt 10: Referenzen
Video: Gate Mate - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:21
Der Gate Mate kann Ihr Tor oder Ihre Garage per Sprachbefehl oder automatisch mit Geofencing oder auf Knopfdruck bedienen. Gate Mate besteht aus zwei Hauptkomponenten, der App und der Hardware.
Die Hardware besteht aus zwei ESP8266-Mikrocontrollern und einer Kamera. Die Arducam-Kamera und ein ESP8266 übernehmen den Videostream und der andere ESP8266 koordiniert die Kamerabewegung, den Tastendruck und die Kommunikation mit der App. Das gesamte System ist wirklich wie eine Symphonie aus Funkwellen und Elektronen, die perfekt harmonieren, um Ihr Tor oder Garagentor zu betreiben.
Die iOS Gate Mate App, leider noch kein Android, kann sich von überall auf der Welt mit der Hardware verbinden, was wirklich sehr praktisch ist, wenn Sie das Gate öffnen müssen, wenn Sie nicht zu Hause sind oder den Videostream sehen möchten.
Viele verschiedene Frequenzen und Protokolle werden bei automatischen und ferngesteuerten (rc) Toren und Garagen verwendet. In diesem Projekt verwenden wir Ihre vorhandene Fernbedienung und einen Optokoppler, um den Tastendruck zu emulieren. Die meisten Fernbedienungen verwenden Sicherheitsmaßnahmen, um Angriffe zu verhindern, bei denen der Code erfasst und wiedergegeben wird. Wir verwenden auch ein ziemlich tolles Verschlüsselungs- und Authentifizierungsschema, um die Kommunikation von der App über das Internet, über Ihr Heimnetzwerk und zur Gate Mate-Hardware zu sichern und zu authentifizieren.
Das sind die Highlights
- Ein ESPino (ESP8266) und ein PC817 Opto-Coupler werden verwendet, um einen Tastendruck auf dem RC zu emulieren.
- Mit der Kamera wird eine Pan-Tilt-Baugruppe verwendet, damit der Blickwinkel angepasst werden kann.
- Für den Videofeed an die iOS App wird ein Arducam 2MP V2 Mini Camera Shield mit ESP8266 Nano Esp-12F verwendet.
- Die Kommunikation zwischen ESPino, Arducam Nano und der iPhone App erfolgt über
- Eine Routerkonfiguration einschließlich statischer LAN-IPs und NAT-Portweiterleitung zusammen mit einem DDNS oder einer statischen IP ist erforderlich.
- AES CBC Encryption und HMAC SHA256 werden verwendet, um die Kommunikation zu sichern und zu authentifizieren.
- Die Spracherkennung kann mit den Befehlen „Öffnen“, „Stopp“und „Schließen“verwendet werden.
- Mit einem Geofence kann das Tor oder die Garage automatisch geöffnet oder geschlossen werden.
- Die vorhandene Fernbedienung wird verwendet.
Der gesamte Code wird im Gate Mate Github bereitgestellt
Schritt 1: iPhone-App
iOS-App
Schritt 2: Verschlüsselung
Das Verschlüsselungsschema beinhaltet die Verwendung von AES CBC und HMAC SHA256 für eine sichere Kommunikation und Authentifizierung. In der App und in der.ino-Datei ist eine 32-stellige Passphrase erforderlich, die natürlich übereinstimmen muss.
Schritt 3: Komponentenliste
Der Espino wird verwendet, weil er an ein Steckbrett angeschlossen werden kann und mit einem Micro-USB (Kommunikation und Strom) geliefert wird. Sie könnten einfach das ESp8266-Modul kaufen, aber Sie müssten es auf einem Breakout-Board montieren und einen FTDI für Kommunikation und Stromversorgung verwenden.
Für den Videofeed wird das Arducam 2MP V2 Mini Camera Shield mit ESP8266 Nano verwendet.
Die Hauptkomponenten kamen von UCTronics und Thai Easy Elec
www.uctronics.com
www.thaieasyelec.com/en/
Andere Kleinigkeiten
- M3 PCB-Abstandshalter
- Steckbrett
- Klares Acrylgehäuse
- PC817 Optokoppler
- 500 Ohm Widerstand
- Auswahl an Jumpern und Drähten etc
- 5V Netzteil mit Netzteil
- Zwei Micro-USB-Kabel
Schritt 4: Netzwerk
Um die iOS-App zu verwenden, wenn keine Verbindung zu Ihrem Heimnetzwerk besteht, d. h. bei Verwendung von Mobilfunkdaten oder einem anderen WLAN-Netzwerk, müssen Sie Ihren Router so konfigurieren, dass der Datenverkehr zum richtigen Gerät geleitet wird.
Außerdem benötigen Sie entweder eine statische IP, einen DDNS-Dienst oder die Bereitschaft, den IP-Eintrag in der App von Zeit zu Zeit zu aktualisieren, wenn Ihr ISP Ihre öffentliche IP-Adresse ändert.
Die Router-Konfiguration ist wirklich sehr einfach und beinhaltet die Zuweisung statischer interner / privater IPs sowohl für den Arducam Nano als auch für den Espino (der LAN-Teil) und den direkten Verkehr auf den zugewiesenen Ports an die zugewiesenen IPs (den NAT-Teil). Zum Beispiel setzen Sie in Ihrem Router die statische IP-Adresse des Arducam Nano auf 192.168.1.21 und dann in der Datei GateMateArduNano.ino den Webserver auf Port 83 (ESP8266WebServer Server(83)), zuletzt NAT in Ihren Router-Einstellungen auf Leiten Sie jeglichen Verkehr auf Port 83 an 192.168.1.21 weiter. Für den ESPino könnten Sie die statische IP auf 192.168.1.22 setzen, im GateMateEspino.ino den Webserver auf Port 84 #ESP8266WebServer Server(84) setzen und NAT für Weiterleitung und Verkehr auf Port 84 auf 192.168.1.22 einrichten.
Schritt für Schritt
1. Wenn Sie die IP in der App einstellen und vergessen möchten, können Sie entweder einen DDNS-Dienst einrichten oder Ihren ISP kontaktieren und eine statische öffentliche IP anfordern, die normalerweise dafür berechnet wird. Ich habe https://www.dynu.com verwendet und sie sind großartig für einen kostenlosen DDNS-Dienst.
2. Rufen Sie die MAC-Adresse von Espino und Arducam Nano ab. Sie können die SSID und das Passwort in den.inos einstellen, sie mit Ihrem Heimnetzwerk verbinden lassen und dann über die erweiterten Einstellungsseiten Ihres Routers die MACs finden
3. Konfigurieren Sie Ihren Router so, dass dem Espino und Arducam Nano statische IPs zugewiesen werden. Verwenden Sie insbesondere die MAC-Adressen, um statische IP-Einträge auf der LAN-Setup-Seite zu erstellen.
4. Konfigurieren Sie die NAT Ihres Routers für die Portweiterleitung zu Ihrem Arducam Nano und Espino, damit Sie über das Internet über die Ihrem ISP zugewiesene öffentliche IP-Adresse darauf zugreifen können. Wenn Sie mit Ihrem privaten Netzwerk verbunden sind, haben Arducam Nano und ESPino interne statische IP-Adressen, die aus dem Internet nicht sichtbar sind. Wie oben lauscht der Arducam Nano auf Port 83 und der Espino auf Port 84 (siehe diese Zeile in den jeweiligen Ino-Dateien - ESP8266WebServer server(##). Erstellen Sie auf der NAT-Setup-Seite Einträge, damit jeglicher Verkehr auf den zugewiesenen Ports an die richtigen statischen IPs weitergeleitet.
Es gibt viele verschiedene Router und ddns-Dienste, so dass die Bereitstellung spezifischer Details den Rahmen dieses Projekts sprengen würde. Aber wenn Sie nur die NAT- und LAN-Einstellungen für Ihren speziellen Router und Ihre DNS-Dienste googeln, sollte alles sehr einfach und einfach einzurichten sein.
Schritt 5: Montage
Ein Knopf macht eine Sache, er überbrückt eine Lücke im Stromkreis, um den elektrischen Pfad zu vervollständigen. Ein Optokoppler kann verwendet werden, um die Taste zu emulieren und einen Stromkreis zu steuern, der vollständig von Ihrem Mikrocontroller isoliert ist, in diesem Fall die Fernbedienung (rc), die über einen eigenen kleinen Stromkreis und eine eigene Batterie verfügt.
Der Vorteil der Verwendung eines Optokopplers anstelle beispielsweise eines Transistors besteht darin, dass wir die Massereferenzen, also die gesamten Schaltungen, getrennt halten können. Wir müssen uns also keine Gedanken darüber machen, wie wir den Boden des RC mit dem Boden des ESP8266 kombinieren.
Als erstes müssen Sie also herausfinden, welche Seite der Taste mit dem Kollektor des PC817 und welche mit dem Emitter verbunden werden soll. Öffnen Sie Ihren RC und messen Sie mit einem Multimeter den Widerstand, um herauszufinden, welche Seite des Knopfes mit dem Pluspol der Batterie verbunden ist. Diese hohe Seite wird mit dem Kollektor verbunden, der Pin 4 des PC817 ist.
Brechen Sie den Lötkolben aus und
- Löten Sie einen Draht an den hohen Seitenschenkel des Knopfes und verbinden Sie das andere Ende mit dem Kollektor (Pin4) des PC817.
- Löten Sie einen Draht an den unteren Schenkel des Knopfes und verbinden Sie das andere Ende mit dem Emitter (Pin3) des PC817.
Der letzte Schritt für den Optokoppler besteht darin, Pin 4 vom ESP8266 mit der Anode (Pin1) des PC817 zu verbinden und die Kathode (Pin2) über einen 500-Ohm-Widerstand mit Masse zu verbinden.
Um die Pinbelegung oder andere Spezifikationen zu überprüfen, finden Sie hier das PC817-Spezifikationen PC817-Datenblatt
Wahrscheinlich ein guter Ort, um die Schwenk-Neige-Arm-Baugruppe pdf Pan Tilt pdf aufzunehmen
Der Rest der Verbindungen ist wirklich einfach, beziehen Sie sich einfach auf das Fritzing und die Bilder.
Schritt 6: Micro-USB
Zwei Micro-USB-Kabel wurden gekürzt, wobei die Strom- und Erdungskabel mit den Strom- und Erdungskabeln eines 5-V-Wandadapter-Netzteils verbunden sind. Ein Micro-USB ist mit der Arducam Nano Camera und der andere mit dem ESPino ESP8266 verbunden.
Schritt 7: Fernbedienungsverkabelung
Dies ist eine Nahaufnahme der Drähte, die an der RC-Taste befestigt sind, ganz einfach wird ein Draht an beiden Beinen angelötet. Bei Aktivierung kann der Strom durch den Optokoppler anstelle des Tasters fließen, der einen Tastendruck emuliert, und dann sendet der rc seinen sicheren Code an den Elektromotor, um das Tor oder die Garage zu öffnen oder zu schließen.
Schritt 8: Der Fall
Das fertige Gehäuse, die Pan-Tilt-Baugruppe und das Steckbrett werden mit M3-Edelmuttern und -Schrauben am Deckel befestigt, der RC wird mit doppelseitigem Klebeband befestigt. Ein kleines Loch wird durch den Knopf des Gehäuses gebohrt, damit das Stromkabel herauskommen und das Gehäuse bündig an einer Wand sitzen kann. Mit einem Dübel, Mauerwerk oder anderem und mit einem kleinen Loch in das Acrylgehäuse gebohrt kann es an einer dem Tor oder der Einfahrt oder dem Garagentor zugewandten Wand befestigt werden. Nun, es kann wirklich überall hingehen, solange das Fernbedienungssignal den Empfänger am Motor erreicht.
Schritt 9: App-Demo
Gate Mate im App Store
Schritt 10: Referenzen
www.teknojelly.com/gate-mate/
github.com/ArduCAM
github.com/esp8266
github.com/kakopappa/arduino-esp8266-aes-e…
github.com/intrbiz/arduino-crypto
Das ist ein Wrap, zögern Sie nicht, mir eine Nachricht zu hinterlassen, wenn Sie etwas sehen, das verbessert oder behoben werden könnte oder etwas geklärt werden muss