Membangun Mesin Penghitung Otomatis dengan ESP32

3 min read 23-08-2024
Membangun Mesin Penghitung Otomatis dengan ESP32

Dalam era teknologi yang semakin maju, banyak aplikasi sederhana namun bermanfaat yang dapat dibangun menggunakan mikrokontroler, salah satunya adalah mesin penghitung otomatis. Dalam artikel ini, kita akan membahas cara membuat mesin penghitung otomatis menggunakan board ESP32. Dengan kemampuannya yang canggih dan konektivitas Wi-Fi dan Bluetooth, ESP32 adalah pilihan yang ideal untuk proyek ini.

Apa itu ESP32?

ESP32 adalah mikrokontroler yang dirancang oleh Espressif Systems. Mikrokontroler ini sangat populer di kalangan pemula dan profesional karena keunggulannya dalam performa, daya, dan konektivitas. ESP32 memiliki dua inti CPU, Wi-Fi, Bluetooth, dan berbagai antarmuka I/O yang mendukung berbagai sensor dan perangkat.

Komponen yang Diperlukan

Untuk membangun mesin penghitung otomatis dengan ESP32, Anda memerlukan komponen berikut:

  1. ESP32 Development Board: Sebagai otak dari proyek ini.
  2. Sensor UV / Infrared (IR) atau Sensor Ultrasonik: Untuk mendeteksi objek yang akan dihitung.
  3. LCD Display: Untuk menampilkan hasil penghitungannya.
  4. Push Button: Untuk mereset penghitung.
  5. Resistor, Breadboard, dan Jumper Wire: Untuk menyambungkan semua komponen.
  6. Power Supply: Baterai atau adaptor untuk menghidupkan perangkat.

Skematik Rangkaian

Sebelum mulai menyolder atau merakit, sangat penting untuk memiliki skematik rangkaian. Berikut adalah penjelasan sederhana tentang bagaimana Anda bisa menyusun rangkaian :

Contoh Sambungan

  • Hubungkan pin VCC sensor ke pin 3.3V di ESP32.
  • Hubungkan pin GND sensor ke pin GND di ESP32.
  • Hubungkan pin output sensor ke salah satu pin input digital pada ESP32 (misalnya pin 23).
  • Hubungkan LCD ke ESP32 dengan menggunakan I2C atau paralel, tergantung pada jenis LCD yang Anda gunakan.
  • Tambahkan tombol reset yang terhubung ke pin digital ESP32 dan GND.

Menulis Kode untuk ESP32

Setelah semua komponen dihubungkan, langkah selanjutnya adalah menulis kode untuk mengatur perangkat. Anda dapat menggunakan Arduino IDE untuk ini. Berikut adalah contoh kode sederhana untuk mesin penghitung otomatis:

#include <Wire.h>
#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27, 16, 2); // Inisialisasi LCD (ganti alamat sesuai dengan modul Anda)

const int sensorPin = 23; // Pin sensor
const int buttonPin = 22; // Pin tombol reset
volatile int count = 0; // Variabel penghitung
bool lastSensorState = LOW; // Status sensor terakhir

// Fungsi interrupt untuk menghitung saat objek terdeteksi
void countObject() {
    if (digitalRead(sensorPin) == HIGH) {
        count++;
        lcd.setCursor(0, 1);
        lcd.print("Count: ");
        lcd.print(count);
        delay(100); // Debouncing
    }
}

void setup() {
    Serial.begin(115200);
    lcd.begin();
    lcd.backlight();
    lcd.setCursor(0, 0);
    lcd.print("Counting...");
    
    pinMode(sensorPin, INPUT); // Set pin sensor sebagai input
    pinMode(buttonPin, INPUT_PULLUP); // Set pin tombol sebagai input
    attachInterrupt(digitalPinToInterrupt(sensorPin), countObject, RISING); // Mengatur interrupt
}

void loop() {
    if (digitalRead(buttonPin) == LOW) { // Jika tombol ditekan
        count = 0; // Reset penghitung
        lcd.setCursor(0, 1);
        lcd.print("Count: 0      ");
        delay(500); // Debouncing
    }
}

Penjelasan kode

  • Inisialisasi: Dalam setup(), kita menginisialisasi LCD dan mengatur mode pin.
  • Interrupt: Fungsi countObject() dipanggil setiap kali sensor mendeteksi objek.
  • Button Reset: Jika tombol reset ditekan, penghitung akan direset ke nol.

Pengujian Proyek

Setelah kode diunggah ke board ESP32, langkah selanjutnya adalah menguji mesin penghitung otomatis:

  1. Hidupkan perangkat dan pastikan LCD menyala.
  2. Gerakkan objek di depan sensor, dan periksa apakah jumlah pada LCD bertambah dengan benar.
  3. Tekan tombol reset untuk memastikan penghitung kembali ke nol.

Pengembangan Lebih Lanjut

Setelah berhasil membangun dan menguji mesin penghitung otomatis, Anda bisa mengembangkan proyek ini lebih lanjut:

  1. Koneksi Internet: Gunakan Wi-Fi pada ESP32 untuk mengirim data ke server atau aplikasi mobile.
  2. Database: Simpan jumlah hitungan ke dalam database untuk analisis lebih lanjut.
  3. App Mobile: Bangun aplikasi mobile untuk memonitor dan mengelola penghitung dari jarak jauh.

Kesimpulan

Membangun mesin penghitung otomatis menggunakan ESP32 adalah proyek yang menyenangkan dan mendidik. Dengan menggunakan kombinasi sensor, LCD, dan ESP32, Anda dapat membuat aplikasi yang sederhana namun sangat berguna. Proyek ini tidak hanya membantu Anda memahami pemrograman mikrokontroler tetapi juga memberi Anda pengalaman dalam merancang sistem otomatis. Selamat mencoba dan semoga berhasil dalam proyek Anda!