Tampil Suhu & Kelembapan DHT22 di LCD Arduino

Tampil Suhu & Kelembapan DHT22 di LCD Arduino

Panduan lengkap menampilkan data suhu dan kelembapan dari sensor DHT22 ke LCD I2C dengan Arduino Uno. Disertai wiring diagram, kode, dan penjelasan.

Sensor DHT22 adalah sensor suhu dan kelembapan yang umum digunakan dalam berbagai proyek mikrokontroler karena memiliki akurasi tinggi dan mudah digunakan. Dengan menghubungkan sensor ini ke LCD I2C 16×2, kamu dapat memantau suhu dan kelembapan secara real-time tanpa membuka Serial Monitor.

Alat dan Bahan

KomponenJumlahKeterangan
Arduino Uno1Mikrokontroler utama
Sensor DHT221Sensor suhu dan kelembapan digital
LCD I2C 16×21Layar untuk menampilkan data
Kabel jumper6-8Untuk koneksi antar komponen

Wiring DHT22 dan LCD I2C ke Arduino Uno

Rangkai komponen sesuai gambar berikut:

DHT22

Pin DHT22Arduino Uno
VCC5V
DATA/SDAPin 7
GNDGND

LCD I2C

Pin LCDArduino Uno
VCC3.3V
GNDGND
SDAA4
SCLA5

Kode Program DHT22 + LCD Arduino

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

// Inisialisasi LCD: alamat I2C 0x27, ukuran 16x2
LiquidCrystal_I2C lcd(0x27, 16, 2);

// Konfigurasi DHT22
#define DHTPIN 7       // Pin data DHT22 ke pin 7 Arduino
#define DHTTYPE DHT22  // Tipe sensor

DHT dht(DHTPIN, DHTTYPE);

void setup() {
  lcd.begin(16, 2);
  lcd.backlight();

  dht.begin(); // Inisialisasi sensor
  Serial.begin(9600);
}

void loop() {
  float suhu = dht.readTemperature();      // default: Celsius
  float lembap = dht.readHumidity();

  if (isnan(suhu) || isnan(lembap)) {
    lcd.clear();
    lcd.setCursor(0, 0);
    lcd.print("Sensor Error");
    Serial.println("Gagal baca sensor!");
    delay(1000);
    return;
  }

  Serial.print("Suhu: ");
  Serial.print(suhu);
  Serial.print(" *C\t");
  Serial.print("Lembap: ");
  Serial.print(lembap);
  Serial.println(" %");

  lcd.clear();
  lcd.setCursor(0, 0);
  lcd.print("Suhu: ");
  lcd.print(suhu, 1);
  lcd.print(" C");

  lcd.setCursor(0, 1);
  lcd.print("Lembap: ");
  lcd.print(lembap, 1);
  lcd.print(" %");

  delay(2000);
}

Penjelasan Kode

  • dht.readTemperature() membaca suhu dalam derajat Celcius.
  • dht.readHumidity() membaca kelembapan dalam persen (%).
  • LCD menampilkan:
    • Baris 1: Suhu
    • Baris 2: Kelembapan
  • isnan() digunakan untuk memastikan pembacaan sensor valid.
  • lcd.clear() menghapus tampilan sebelum menampilkan data baru.

Melihat Data Lewat Serial Monitor

Selain ditampilkan ke LCD, data juga dikirim ke Serial Monitor, cocok untuk keperluan debugging atau pengamatan lebih detail.

Cara membuka Serial Monitor:

  1. Buka Arduino IDE
  2. Klik Tools → Serial Monitor atau tekan Ctrl + Shift + M
  3. Pastikan baud rate = 9600
  4. Hasil akan muncul seperti ini:
Suhu: 24.0 *C		Lembap: 40.0 %

Jika data tidak muncul, pastikan koneksi USB benar dan COM port sesuai.

Tips Penggunaan

  • Gunakan delay minimal 2 detik agar pembacaan sensor stabil dan tidak error.
  • Hindari menyentuh sensor langsung agar akurasi tidak terganggu.
  • Gunakan sensor ini untuk monitoring suhu ruangan, green house, atau proyek IoT.

📖 Referensi sensor DHT22 dari Adafruit:
https://learn.adafruit.com/dht

Kesimpulan

Dengan hanya beberapa kabel dan sedikit kode, kamu bisa menampilkan data suhu dan kelembapan dari sensor DHT22 langsung ke LCD I2C 16×2. Solusi ini sangat cocok untuk proyek monitoring lingkungan, sistem otomasi ruangan, dan pembelajaran IoT dasar menggunakan Arduino Uno.

Diskusi lebih lanjut kontak di bawah :

Media sosial lainnya :

Baca juga :

Pantau Jarak HC-SR04 di LCD I2C Arduino Uno

Baca Input Sensor Sentuh Arduino Uno