Bikin Absensi Wajah Pake ESP32-CAM & Google Sheets, Gaskeun!
Ribet Absen Manual? Saatnya Sat-set Pake IoT!
Pernah gak sih lu ngerasa mager banget pas harus absen manual pake tanda tangan atau fingerprint yang sering error? Belum lagi kalo kertas absennya ilang, wah bisa berabe urusan sama HRD atau dosen. Nah, daripada ngeluh mulu, mending kita manfaatin teknologi yang ada. Hari ini kita bakal bahas cara bikin sistem absensi otomatis yang keren tapi low budget pake ESP32-CAM dan datanya langsung masuk ke Google Sheets secara real-time. Gak perlu server mahal, cukup modal WiFi sama niat doang, lur!
Kenapa Harus ESP32-CAM?
Mungkin lu mikir, 'Ngab, kenapa gak pake webcam laptop aja?'. Ya elah, masa laptop lu taruh di depan pintu seharian? ESP32-CAM ini ukurannya mungil banget, harganya cuma seharga kopi di cafe hits (sekitar 60-80 ribuan), tapi udah dapet modul WiFi sama kamera 2MP. Ini adalah solusi paling masuk akal buat lu yang pengen belajar IoT tanpa harus ngerampok bank dulu. Wkwk.
Alat dan Bahan (Siapin Dulu Biar Gak Panik)
- ESP32-CAM: Otak sekaligus matanya.
- FTDI Adapter (USB to TTL): Buat nge-upload program karena ESP32-CAM gak punya port USB sendiri.
- Kabel Jumper: Buat nyambungin sana-sini.
- Akun Google: Buat akses Google Sheets sama Apps Script.
- Breadboard: Biar rangkaian lu gak berantakan kayak kamar kosan.
Langkah 1: Setting Google Sheets (Si Otak Penyimpanan)
Kita bakal pake Google Sheets sebagai database. Kenapa? Karena gratis dan gampang diakses dari mana aja. Pertama, buat spreadsheet baru, kasih nama 'Absensi_IoT'. Di kolom A kasih header 'Waktu', kolom B 'ID Kamera', dan kolom C 'Link Gambar'.
Abis itu, klik Extensions > Apps Script. Hapus semua kode bawaan, terus ganti sama kode ini biar Sheets lu bisa nerima data dari ESP32:
function doPost(e) {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var data = JSON.parse(e.postData.contents);
var now = new Date();
sheet.appendRow([now, data.device_id, data.image_url]);
return ContentService.createTextOutput("Success");
}Jangan lupa klik Deploy > New Deployment, pilih type 'Web App', dan set 'Who has access' ke 'Anyone'. Simpan URL Web App-nya, karena ini kunci buat ESP32 lu ngirim data. Gaskeun!
Langkah 2: Coding ESP32-CAM (Biar Makin Pinter)
Sekarang buka Arduino IDE lu. Pastiin lu udah install board ESP32 di Manager Board. Kalo belum, ya install dulu lah, jangan males! Kita bakal pake library esp_camera.h buat handle kameranya. Inti dari kode ini adalah ngambil gambar pas ada trigger, terus ngirim data itu lewat HTTP POST ke Google Apps Script tadi.
#include "esp_camera.h"
#include
#include
const char* ssid = "WiFi_Rumah_Lu";
const char* password = "Passwordnya_Apa";
const char* scriptUrl = "URL_GOOGLE_APPS_SCRIPT_LU";
void setup() {
Serial.begin(115200);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("WiFi Connected!");
// Konfigurasi kamera di sini...
}
void loop() {
// Logika buat ambil foto dan kirim ke Google Sheets
// Gunakan HTTPClient buat kirim data POST
} Penjelasan singkatnya: ESP32 bakal konek ke WiFi, ngambil frame dari sensor kamera, terus dikirim dalam bentuk base64 atau langsung ke cloud storage (kayak Imgur atau Drive) baru link-nya dikirim ke Google Sheets. Kalo lu mau beneran pro, lu bisa tambahin sensor PIR biar dia cuma motret pas ada orang lewat depan kamera. Biar gak boros memori juga, ngab.
Langkah 3: Wiring yang Bener (Jangan Sampai Kebakar!)
Ini bagian krusial. Pas nge-upload program pake FTDI, pastiin jumper GPIO 0 disambungin ke GND. Ini buat masuk ke mode programming. Kalo gak disambungin, mau sampe lebaran monyet juga gak bakal ke-upload programnya. Wkwk. Skemanya kira-kira begini:
- VCC FTDI -> 5V ESP32-CAM (pake 5V ya biar stabil).
- GND FTDI -> GND ESP32-CAM.
- TX FTDI -> RX ESP32-CAM.
- RX FTDI -> TX ESP32-CAM.
Kalo udah kelar upload, cabut jumper GPIO 0 ke GND, terus pencet tombol reset di ESP32-CAM buat jalanin programnya.
Tips Biar Hasilnya Maksimal
Seringkali hasil foto ESP32-CAM itu agak buram atau gelap. Biar hasilnya tetep estetik dan muka lu kelihatan jelas pas absen, pastiin pencahayaannya cukup. Jangan naruh kamera di tempat yang backlight, nanti muka lu cuma kelihatan hitam kayak bayangan mantan. Selain itu, pake antena eksternal kalo posisi ESP32-CAM lu jauh dari router WiFi, soalnya modul bawaannya kadang sinyalnya agak 'mager'.
Kesimpulan yang Gak Kaku
Bikin sistem ginian sebenernya gampang-gampang susah, yang penting teliti pas wiring sama coding. Dengan modal receh, lu udah bisa bikin sistem absensi yang gak kalah sama kantoran startup di Jakarta. Proyek ini juga bisa lu kembangin lagi, misalnya ditambahin Face Recognition pake OpenCV biar makin canggih dan gak bisa dititip absen sama temen. Gimana? Gampang banget kan? Langsung aja dipraktekin di rumah atau di kampus!
Kira-kira fitur apa lagi ya yang seru buat ditambahin ke sistem absensi berbasis IoT ini?
FAQ (Pertanyaan Umum)
Q: Bang, kok ESP32-CAM gue panas banget?
A: Wajar lur, dia emang gampang anget kalo streaming atau proses gambar. Pastiin dapet supply 5V yang stabil dan jangan ditaruh di tempat kedap udara banget.
Q: Bisa gak datanya dikirim ke Excel?
A: Bisa aja, tapi lebih ribet karena Excel butuh plugin atau API tambahan. Pake Google Sheets udah paling sat-set buat pemula.
Q: Resolusi fotonya bisa diganti?
A: Bisa banget, tinggal atur di frame_size-nya. Tapi inget, makin gede resolusinya, makin lama upload-nya. Jangan bikin WiFi lu nangis!
Komentar (0)
Tinggalkan Jejak