- Súčasti sú povinné
- Elektromagnetický zámok
- Schéma zapojenia
- Nainštalujte dosku ESP32 na Arduino IDE
- Vysvetlenie kódu
- Testovanie
Bezpečnosť sa v dnešnej dobe týka nanajvýš kohokoľvek, či už je to bezpečnosť dát alebo bezpečnosť jeho domova. S pokrokom v technológiách a čoraz väčším využívaním internetu vecí sa v dnešnej dobe stali veľmi bežné digitálne zámky dverí. Digitálny zámok nevyžaduje žiadny fyzický kľúč, ale na ovládanie zámku dverí používa RFID, odtlačok prsta, ID tváre, PIN, heslá atď. V minulosti sme vyvinuli mnoho aplikácií digitálnych dverových zámkov využívajúcich tieto rôzne technológie. V tomto tutoriáli sme zostavili systém digitálneho zamykania ovládaný Face ID pomocou ESP32-CAM.
Modul AI-Thinker ESP32-CAM je nízkonákladová vývojová doska s fotoaparátom OV2640 veľmi malej veľkosti a slotom pre kartu micro SD. Má čip ESP32 S so zabudovaným pripojením Wi-Fi a Bluetooth, s 2 vysokovýkonnými 32-bitovými procesormi LX6, 7-stupňovou architektúrou potrubia. Predtým sme systém ESP32-CAM podrobne vysvetlili a použili sme ho na zostavenie zvončeka Wi-Fi door Video. Tentokrát použijeme ESP32-CAM na zostavenie systému zámku dverí založeného na rozpoznávaní tváre pomocou modulu relé a solenoidového zámku.
Súčasti sú povinné
- ESP32 CAM
- Rada FTDI
- Reléový modul
- Elektromagnetický zámok
- Prepojovacie drôty
Elektromagnetický zámok
Elektromagnetický zámok funguje na elektronicko-mechanickom uzamykacom mechanizme. Tento typ zámku má slimák so šikmým rezom a dobrú montážnu konzolu. Po pripojení napájania vytvára DC magnetické pole, ktoré posúva slimáka dovnútra a udržuje dvere v odomknutej polohe. Slimák si zachová svoju pozíciu, kým neodpojíte napájanie. Po odpojení napájania sa slimák presunie von a uzamkne dvere. V uzamknutom stave nepoužíva žiadnu energiu. Na pohon solenoidového zámku potrebujete zdroj energie, ktorý môže dať 12V @ 500mA.
Predtým sme použili solenoidový zámok na výrobu RFID dverného zámku založeného na Arduine.
Schéma zapojenia
Schéma zapojenia pre systém uzamykania dverí ESP32-CAM je uvedená nižšie:
Vyššie uvedený obvod je kombinovaný s doskou FTDI, reléovým modulom a solenoidovým zámkom. Doska FTDI sa používa na blikanie kódu do ESP32-CAM, pretože nemá USB konektor, zatiaľ čo reléový modul slúži na zapnutie alebo vypnutie elektromagnetického zámku. Kolíky VCC a GND na doske FTDI a reléovom module sú pripojené k kolíku Vcc a GND ESP32-CAM. TX a RX dosky FTDI sú pripojené k RX a TX ESP32 a pin IN reléového modulu je pripojený k IO4 ESP32-CAM.
ESP32-CAM |
Rada FTDI |
5V |
VCC |
GND |
GND |
UOR |
TX |
UOT |
RX |
ESP32-CAM |
Reléový modul |
5V |
VCC |
GND |
GND |
IO4 |
IN |
Poznámka: Pred nahraním kódu pripojte IO0 k zemi. IO0 určuje, či je ESP32 v blikajúcom režime alebo nie. Keď je GPIO 0 pripojený k GND, ESP32 je v blikajúcom režime.
Po pripojení hardvéru podľa schémy zapojenia by to malo vyzerať asi takto:
Nainštalujte dosku ESP32 na Arduino IDE
Tu sa Arduino IDE používa na programovanie ESP32-CAM. Za týmto účelom si najskôr nainštalujte doplnok ESP32 na Arduino IDE.
Ak chcete do svojho Arduino IDE nainštalovať dosku ESP32, choďte na File> Preferences.
Teraz skopírujte odkaz nižšie a prilepte ho do poľa „Ďalšie adresy URL správcu dosky“, ako je to znázornené na obrázku nižšie. Potom kliknite na tlačidlo „OK“:
https://dl.espressif.com/dl/package_esp32_index.json
Teraz choďte na Nástroje> Doska> Správca dosiek
V aplikácii Board Manager vyhľadajte ESP32 a nainštalujte „ESP32 by Espressif Systems“.
Vysvetlenie kódu
Rozpoznávanie tváre sme si s ESP32 vysvetlili v predchádzajúcom článku; tu upravíme rovnaký kód na ovládanie zámku solenoidových dverí. Celý kód je rozdelený do štyroch častí. Jedným z nich je hlavný kód pre modul kamery a relé, kde ESP32 uzamkne alebo odomkne dvere podľa rozpoznávania tváre, a ďalšie tri kódy sú pre webovú stránku, index kamery a kolíky kamery. Celý kód je uvedený na konci tejto stránky. Tu vysvetľujeme niektoré dôležité časti kódu.
Začnite program zahrnutím všetkých súborov knižnice.
#include "esp_camera.h" #include
V nasledujúcom riadku odkomentujte kamerový modul, ktorý používate s ESP32. V kóde je definovaných päť rôznych modelov kamier. V tomto prípade používame model AI-THINKER.
// # definovať CAMERA_MODEL_WROVER_KIT // # definovať CAMERA_MODEL_ESP_EYE // # definovať CAMERA_MODEL_M5STACK_PSRAM // # definovať CAMERA_MODEL_M5STACK_WIDE # definovať CAMERA_MODEL_AI_THINKER
Potom vložte svoje sieťové poverenia do nasledujúcich premenných:
const char * ssid = "Názov Wi-Fi"; const char * heslo = "heslo Wi-Fi";
Potom definujte kolík, kde je pripojený reléový modul. Na uzamknutie dverí po odomknutí v definovanom časovom intervale použijeme funkciu millis () , tu je to 5 sekúnd.
# definovať relé 4 dlhé prevMillis = 0; int interval = 5 000;
Vo funkcii setup () inicializujte Serial Monitor s prenosovou rýchlosťou 115200 na účely ladenia. Potom v ďalších riadkoch definujte pinový režim pre reléový modul a tiež najskôr nastavte relé do nízkej polohy.
void setup () {Serial.begin (115200); pinMode (relé, VÝSTUP); digitalWrite (relé, LOW);
Vo vnútri funkcie loop () skontrolujte, či sa tvár zhoduje so zaregistrovanou tvárou. Ak áno, potom dvere na 5 sekúnd odomknite a po 5 sekundách dvere opäť uzamknite.
void loop () {if (matchFace == true && activeRelay == false) {activeRelay = true; digitalWrite (relé, VYSOKÉ); prevMillis = millis (); } if (activeRelay == true && millis () - prevMillis> interval) {activeRelay = false; matchFace = false; digitalWrite (relé, LOW); }
Testovanie
Nakoniec nahrajte kód, pripojte dosku FDTI k notebooku a vyberte ako dosku „ESP32 Wrover Module“. Zmeňte tiež ďalšie nastavenia, ako je znázornené na nasledujúcom obrázku:
Nezabudnite pred nahraním kódu pripojiť pin IO0 na GND a tiež stlačte tlačidlo resetovania ESP32 a potom kliknite na tlačidlo nahrávania.
Poznámka: Ak sa vám pri nahrávaní kódu vyskytnú chyby, skontrolujte, či je IO0 pripojený k GND, a či ste vybrali správne nastavenia v ponuke Nástroje.
Po nahraní kódu odstráňte kolíky IO0 a GND. Potom otvorte sériový monitor a zmeňte prenosovú rýchlosť na 115200. Potom stlačte tlačidlo resetovania ESP32, vytlačí sa IP adresa ESP a port č. na sériovom monitore.
Teraz prejdite do prehľadávača a zadajte adresu IP ESP, ktorá sa kopíruje zo sériového monitora, aby ste získali prístup k streamovaniu z kamery. Dostanete sa na streamovaciu stránku. Streamovanie videa spustíte kliknutím na tlačidlo „Spustiť stream“ v dolnej časti stránky.
Aby sme rozpoznali tváre pomocou ESP32-CAM, najskôr musíme tváre zaregistrovať. Za týmto účelom zapnite v nastaveniach funkcie rozpoznávania a detekcie tváre a potom kliknite na tlačidlo Zaregistrovať tvár. Zachrániť tvár trvá niekoľko pokusov. Po uložení tváre rozpozná tvár ako subjekt 0, kde nula je číslo tváre.
Po zaregistrovaní tvárí, ak je vo video kanáli rozpoznaná tvár, program ESP32 nastaví reléový modul vysoko na odomknutie dverí.
Takto je možné použiť ESP32-CAM na vytvorenie bezpečnostného systému založeného na rozpoznávaní tváre. Kompletný kód je možné stiahnuť z tohto odkazu. Uvádza sa tiež spolu s ukážkovým videom.