- Komponen Diperlukan
- Kunci Solenoid
- Diagram Sirkuit
- Instal ESP32 Board di Arduino IDE
- Penjelasan Kode
- Menguji
Keamanan menjadi perhatian paling utama bagi siapa pun saat ini, baik itu keamanan data atau keamanan rumah mereka sendiri. Dengan kemajuan teknologi dan meningkatnya penggunaan IoT, kunci pintu digital menjadi hal yang sangat umum akhir-akhir ini. Kunci digital tidak memerlukan kunci fisik apa pun tetapi menggunakan RFID, sidik jari, ID Wajah, pin, kata sandi, dll. Untuk mengontrol kunci pintu. Sebelumnya, kami telah mengembangkan banyak aplikasi kunci pintu digital menggunakan berbagai teknologi ini. Dalam tutorial ini kami membangun sistem kunci Pintu Digital yang dikontrol ID Wajah menggunakan ESP32-CAM.
Modul AI-Thinker ESP32-CAM adalah papan pengembangan berbiaya rendah dengan kamera OV2640 ukuran sangat kecil dan slot kartu micro SD. Ia memiliki chip ESP32 S dengan built-in Wi-Fi dan konektivitas Bluetooth, dengan 2 CPU LX6 32-bit berkinerja tinggi, arsitektur pipeline 7-tahap. Kami sebelumnya telah menjelaskan ESP32-CAM secara detail dan menggunakannya untuk membangun bel pintu Video pintu Wi-Fi. Kali ini kita akan menggunakan ESP32-CAM untuk membangun Sistem Kunci Pintu berbasis Pengenalan Wajah dengan menggunakan modul Relay dan Kunci Solenoid.
Komponen Diperlukan
- ESP32 CAM
- Dewan FTDI
- Modul Relai
- Kunci Solenoid
- Kabel Jumper
Kunci Solenoid
Kunci solenoid bekerja pada mekanisme penguncian elektronik-mekanis. Jenis kunci ini memiliki siput dengan potongan miring dan braket pemasangan yang bagus. Saat daya diterapkan, DC menciptakan medan magnet yang menggerakkan siput ke dalam dan menjaga pintu tetap dalam posisi tidak terkunci. Siput akan mempertahankan posisinya sampai dayanya dilepaskan. Saat daya terputus, siput bergerak keluar dan mengunci pintu. Itu tidak menggunakan daya apa pun dalam keadaan terkunci. Untuk menggerakkan kunci solenoida, Anda memerlukan sumber daya yang dapat memberikan 12V @ 500mA.
Kami sebelumnya menggunakan kunci solenoida untuk membangun kunci pintu RFID berbasis Arduino.
Diagram Sirkuit
Diagram Sirkuit untuk Sistem Kunci Pintu Pengenalan Wajah ESP32-CAM diberikan di bawah ini:
Rangkaian diatas dipadukan dengan board FTDI, Relay Module, dan Solenoid Lock. Papan FTDI digunakan untuk mem-flash kode ke ESP32-CAM karena tidak memiliki konektor USB sementara modul relai digunakan untuk mengaktifkan atau menonaktifkan kunci Solenoid. Pin VCC dan GND dari papan FTDI dan modul Relay terhubung ke pin Vcc dan GND ESP32-CAM. TX dan RX dari papan FTDI terhubung ke RX dan TX dari ESP32 dan pin IN dari modul relai terhubung ke IO4 dari ESP32-CAM.
ESP32-CAM |
Dewan FTDI |
5V |
VCC |
GND |
GND |
UOR |
TX |
UOT |
RX |
ESP32-CAM |
Modul Relai |
5V |
VCC |
GND |
GND |
IO4 |
DI |
Catatan: Sebelum mengupload kode, hubungkan IO0 ke ground. IO0 menentukan apakah ESP32 dalam mode berkedip atau tidak. Ketika GPIO 0 terhubung ke GND, ESP32 berada dalam mode berkedip.
Setelah menghubungkan perangkat keras sesuai dengan diagram rangkaian, akan terlihat seperti di bawah ini:
Instal ESP32 Board di Arduino IDE
Di sini Arduino IDE digunakan untuk memprogram ESP32-CAM. Untuk itu, pertama, instal add-on ESP32 di Arduino IDE.
Untuk menginstal papan ESP32 di Arduino IDE Anda, buka File> Preferensi.
Sekarang salin tautan di bawah ini dan tempelkan ke bidang "URL Manajer Papan Tambahan" seperti yang ditunjukkan pada gambar di bawah. Kemudian, klik tombol "OK":
https://dl.espressif.com/dl/package_esp32_index.json
Sekarang pergi ke Tools> Board> Boards Manager
Di Board Manager, cari ESP32 dan instal "ESP32 oleh Espressif Systems".
Penjelasan Kode
Kami menjelaskan Pengenalan Wajah dengan ESP32 di artikel sebelumnya; di sini kita akan memodifikasi kode yang sama untuk mengontrol kunci pintu solenoida. Kode lengkap dibagi menjadi empat bagian. Salah satunya adalah kode utama untuk kamera dan modul relai di mana ESP32 mengunci atau membuka kunci pintu sesuai dengan pengenalan wajah, dan tiga kode lainnya untuk halaman web, indeks kamera, dan pin kamera. Kode lengkap diberikan di akhir halaman ini. Di sini kami menjelaskan beberapa bagian penting dari kode.
Mulailah program dengan memasukkan semua file perpustakaan.
#include "esp_camera.h" #include
Di baris berikutnya, hapus komentar modul kamera yang Anda gunakan dengan ESP32. Dalam kode tersebut, lima model kamera yang berbeda ditentukan. Dalam hal ini, kami menggunakan Model AI-THINKER.
// # mendefinisikan CAMERA_MODEL_WROVER_KIT // # mendefinisikan CAMERA_MODEL_ESP_EYE // # mendefinisikan CAMERA_MODEL_M5STACK_PSRAM // # mendefinisikan CAMERA_MODEL_M5STACK_WIDE #menentukan CAMERA_MODEL_AI_THINKER
Setelah itu, masukkan kredensial jaringan Anda di variabel berikut:
const char * ssid = "Nama Wi-Fi"; const char * password = "Kata sandi Wi-Fi";
Kemudian tentukan pin tempat modul relai dihubungkan. Kami akan menggunakan fungsi millis () untuk mengunci pintu setelah membukanya dalam interval waktu yang ditentukan, ini dia 5 detik.
# tentukan relai 4 prevMillis panjang = 0; interval int = 5000;
Dalam fungsi setup () , inisialisasi Monitor Serial pada baud rate 115200 untuk keperluan debugging. Kemudian di baris berikutnya, tentukan mode pin untuk modul relai dan juga setel relai pada posisi rendah pada awalnya.
void setup () {Serial.begin (115200); pinMode (relai, OUTPUT); digitalWrite (relay, LOW);
Di dalam fungsi loop () , periksa apakah wajah cocok dengan wajah yang didaftarkan. Jika ya, maka buka kunci pintu selama 5 detik dan setelah 5 detik kunci pintu kembali.
void loop () {if (matchFace == true && activeRelay == false) {activeRelay = true; digitalWrite (relai, TINGGI); prevMillis = millis (); } if (activeRelay == true && millis () - prevMillis> interval) {activeRelay = false; matchFace = false; digitalWrite (relay, LOW); }
Menguji
Terakhir untuk mengunggah kode, hubungkan papan FDTI ke laptop Anda, dan pilih 'Modul Wrover ESP32' sebagai papan Anda. Juga, ubah pengaturan lain seperti yang ditunjukkan pada gambar di bawah ini:
Jangan lupa untuk menghubungkan pin IO0 ke GND sebelum mengupload kode dan juga tekan tombol reset ESP32 lalu klik tombol upload.
Catatan: Jika Anda mendapatkan kesalahan saat mengunggah kode, periksa apakah IO0 terhubung ke GND, dan Anda memilih pengaturan yang benar di menu Alat.
Setelah mengupload kode, hapus pin IO0 dan GND. Kemudian buka monitor serial dan ubah baud rate menjadi 115200. Setelah itu, tekan tombol reset ESP32, ini akan mencetak alamat IP ESP dan nomor port. di monitor serial.
Sekarang arahkan ke browser dan masukkan alamat IP ESP yang disalin dari monitor Serial untuk mengakses streaming kamera. Ini akan membawa Anda ke halaman streaming. Untuk memulai streaming video, klik tombol 'Mulai Streaming' di bagian bawah halaman.
Untuk mengenali wajah dengan ESP32-CAM, pertama, kita harus mendaftarkan wajah tersebut. Untuk itu, aktifkan fitur Pengenalan wajah dan deteksi dari pengaturan lalu klik tombol Daftarkan Wajah. Butuh beberapa kali upaya untuk menyelamatkan wajah. Setelah menyimpan wajah, ini mendeteksi wajah sebagai subjek 0 di mana nol adalah nomor wajah.
Setelah mendaftarkan wajah, jika wajah dikenali dalam umpan video, ESP32 akan membuat modul relai tinggi untuk membuka kunci pintu.
Jadi, begitulah ESP32-CAM dapat digunakan untuk membangun sistem keamanan berbasis pengenalan wajah. Kode Lengkap dapat diunduh dari tautan ini dan juga diberikan di bawah ini bersama dengan video demonstrasi.