Menampilkan Data Sensor pada TFT LCD dengan ESP32: Panduan Lengkap

3 min read 22-08-2024
Menampilkan Data Sensor pada TFT LCD dengan ESP32: Panduan Lengkap

Teknologi Internet of Things (IoT) semakin berkembang pesat, dan ESP32 menjadi salah satu pilihan populer untuk proyek-proyek berbasis IoT. Dalam artikel ini, kita akan membahas cara menampilkan data sensor pada TFT LCD menggunakan ESP32. Proses ini melibatkan penginputan data dari sensor, pemrosesan data tersebut, dan akhirnya menampilkan data di layar TFT LCD. Mari kita mulai!

Apa Itu ESP32?

ESP32 adalah modul Wi-Fi dan Bluetooth yang dirancang oleh Espressif Systems. Modul ini memiliki kemampuan pemrosesan yang tinggi, dilengkapi dengan dua inti CPU, dan memiliki banyak pin GPIO yang membuatnya ideal untuk proyek-proyek IoT. Selain itu, ESP32 juga mendukung berbagai protokol komunikasi seperti I2C, SPI, dan UART.

Memilih TFT LCD

Untuk proyek ini, kita akan menggunakan TFT LCD. Ada beberapa jenis TFT LCD yang bisa digunakan, tetapi dalam panduan ini kita akan fokus pada penggunaan TFT LCD 2.4 inci dengan driver ILI9341. Layar ini cukup populer di kalangan penggemar DIY dan mudah untuk diintegrasikan dengan ESP32.

Komponen yang Diperlukan

Sebelum memulai, pastikan Anda memiliki komponen berikut:

  1. ESP32
  2. TFT LCD 2.4 inci (ILI9341)
  3. Sensor (misalnya DHT11 untuk suhu dan kelembapan)
  4. Breadboard dan kabel jumper
  5. Software Arduino IDE

Skematik Koneksi

Berikut adalah skematik sederhana untuk menghubungkan komponen:

ESP32         TFT LCD
-------       ---------
GND   -------- GND
5V    -------- VCC
GPIO23 -------- SCK
GPIO18 -------- MOSI
GPIO22 -------- DC/RS
GPIO21 -------- CS
GPIO19 -------- RESET

Catatan: Pastikan untuk menyesuaikan pin GPIO sesuai dengan preferensi Anda.

Menginstal Perpustakaan

Sebelum kita mulai menulis kode, kita perlu menginstal beberapa perpustakaan di Arduino IDE:

  1. TFT_eSPI: Perpustakaan untuk mengontrol TFT LCD.
  2. DHT sensor library: Perpustakaan untuk membaca data dari sensor DHT11.

Untuk menginstal perpustakaan ini, buka Arduino IDE, pilih Sketch > Include Library > Manage Libraries. Cari dan instal kedua perpustakaan tersebut.

Kode Program

Sekarang kita akan menulis kode untuk membaca data dari sensor dan menampilkannya di TFT LCD. Berikut adalah contoh kode:

#include <TFT_eSPI.h>
#include <DHT.h>

// Definisi pin
#define DHTPIN 4    // Pin yang terhubung ke sensor DHT
#define DHTTYPE DHT11   // Jenis sensor DHT

DHT dht(DHTPIN, DHTTYPE);
TFT_eSPI tft = TFT_eSPI(); // Membuat objek TFT

void setup() {
  Serial.begin(115200);
  
  // Inisialisasi TFT
  tft.init();
  tft.setRotation(1);
  tft.fillScreen(TFT_BLACK); // Mengisi layar dengan warna hitam
  
  // Inisialisasi DHT
  dht.begin();
  
  // Menampilkan header
  tft.setTextColor(TFT_WHITE);
  tft.setTextSize(2);
  tft.setCursor(10, 10);
  tft.println("Data Sensor:");
}

void loop() {
  // Membaca data dari sensor
  float h = dht.readHumidity();
  float t = dht.readTemperature();

  // Mengecek apakah pembacaan tidak berhasil
  if (isnan(h) || isnan(t)) {
    Serial.println("Gagal membaca dari sensor!");
    return;
  }

  // Menampilkan suhu dan kelembapan
  tft.fillRect(10, 30, 200, 100, TFT_BLACK); // Menghapus area untuk pembaruan
  tft.setCursor(10, 30);
  tft.setTextColor(TFT_GREEN);
  tft.setTextSize(2);
  tft.print("Humidity: ");
  tft.print(h);
  tft.println(" %");

  tft.setCursor(10, 60);
  tft.setTextColor(TFT_YELLOW);
  tft.setTextSize(2);
  tft.print("Temp: ");
  tft.print(t);
  tft.println(" *C");

  delay(2000); // Delay 2 detik sebelum pembaruan berikutnya
}

Penjelasan Kode

  1. Inklusi Library: Kita mengimpor dua library yang dibutuhkan yaitu TFT_eSPI dan DHT untuk pengendalian TFT LCD dan membaca data dari sensor DHT.

  2. Inisialisasi: Dalam fungsi setup(), kita menginisialisasi komunikasi serial, TFT LCD, dan sensor DHT.

  3. Loop: Dalam fungsi loop(), kita membaca data dari sensor, memeriksa apakah pembacaan sukses, dan jika berhasil, kita menampilkan data kelembapan dan suhu ke layar TFT LCD. Ada jeda 2 detik sebelum update berikutnya untuk memberikan waktu yang cukup antara pembacaan.

Mengupload dan Menjalankan Program

Setelah selesai menulis kode, sambungkan ESP32 ke komputer Anda menggunakan kabel USB. Pilih papan yang sesuai dari menu Tools di Arduino IDE dan klik tombol upload untuk mengirimkan kode ke ESP32.

Kesimpulan

Sekarang Anda memiliki panduan lengkap tentang cara menampilkan data sensor pada TFT LCD menggunakan ESP32. Proyek ini membuka banyak kemungkinan untuk pengembangan proyek IoT Anda, seperti menampilkan informasi lainnya, atau bahkan menghubungkan ke internet untuk membagikan data sensor secara real-time.

Dengan mempelajari cara kerja ESP32 dan pengimplementasian sensor serta TFT LCD, Anda bisa mulai mengeksplorasi banyak fitur menarik lainnya dalam dunia IoT. Selamat mencoba!