Home » Machine Learning » Arduino #9: Sensor Suhu DHT11 dan DHT22

Arduino #9: Sensor Suhu DHT11 dan DHT22

by YogaBayu
by YogaBayu
DHT11 (kiri) dan DHT22 (kanan)

Hai kembali lagi dengan saya dalam lanjuttan pembahasan menganai sensor suhu. Pada pembahasan kali ini saya akan membahas mengenai sensor suhu yang banyak digunakan dalam dunia industri yaitu sensor DHT. sensor DHT sendiri ada 2 jenis yang umum digunakan yaitu DHT 11 dan DHT 22, kedua sensor ini adalah sensor ganda yang dapat digunakan untuk mengukur nilai suhu dan kelembaban udara.

Kedua jenis sendor DHT tersebut sangat populer untuk teman – teman yang hobi tentang otak – atik sensor suhu karena memiliki harga yang murah dan performa yang bagus. DHT22 merupakan jenis yang lebih mahal jika dibandingkan dengan DHT11 dan harganya ini sebanding dengan spesifikasi yang lebih baik tentunya.

Cara kerja Dasar sensor DHT11/DHT22

Cara kerja kedua jenis sensor DHT ini sama yaitu terdiri dari komponen untuk mengukur kelembaban, sensor suhu NTC (bisa juga termistor), dan sebuah IC pada bagian belakang sensor.

bagian dalam sensor DHT

Untuk melakukan pengukuran kelembaban, sensor DHT menggunakan komponen pengukuran kelembaban berupa dua elektroda dengan substrat penahan kelembaban diantara kedua elektroda. Jadi ketika kelembaban berubah maka konduktivitas dari substrat ini berubah atau resistansi diantara kedua elektroda juga berubah kemudian perubahan resistansi ini akan diukur oleh IC yang membuat nilai kelembaban dapat dibaca oleh mikrokontroller.

ada juga versi DHT yang menggunakan NTC atau termistor untuk mengukur suhu udara. Termistor ini sebenarnya adalah resistor yang resistansinya dipengaruhi oleh suhu disekitarnya. Termistor dibuat dengan bahan semikonduktif seperti keramik atau polimer untuk memberikan perubahan resistansi yang lebih besar meskipun dengan perubahan suhuh lingkungan yang kecil. Istilah NTC sendiri berarti “Negative Temperature Coefficient” yang berarti resistansi menurun seiring dengan kenaikan suhu.

Sensor DHT11

Sensor DHT11 adalah sensor suhu dan kelembaban udara yang dapat teman – teman beli baik dalam bentuk satuan atau dalam bentuk modul yang sudah tinggal pakai. Dalam DHT11 sendiri ada yang memiliki 4 pin dan 3-pin, tetapi yang akan digunakan adalah 3 pin yaitu VCC, data, GND. Nah, bagaimana dengan yang 4 pin ?? diantara 4 pin ada pin NC (Not Connected), jika teman – teman memiliki yang 4 pin maka perhatikan tulisan dibelakang sensor atau lihat pada datasheetnya terlebih dahulu sebelum memakai.

Apa perbedan sensor DHT11 yang sudah dalam bentuk modul dan dalam bentuk satuan ?, perbedaan nya adalah pada modul terdapat kapasitor dan resistor pull-up yang telah dipasang bersamaan dengan sensor pada papan pcb kecil. Berikut Spesifikasi dari sensor DHT11:

  • Tegangan input : 3.5 V – 5.5 V
  • Arus listrik: 0.3 mA (saat pengukuran) dan 60uA (stanby)
  • Rentang pengukuran Suhu udara : 0oC -50 oC dengan akurasi adalah +- 2oC
  • Rentang pengukuran kelembaban udara : 20% – 90 % dengan akurasi adalah +-5%
  • Tingkat pengambilan sampel: 1Hz (1 pengukuran setiap sekon)

Sensor DHT22

Sensor DHT22 adalah generasi penerus dari DHT11. Yang juga dapat kita neli dengan bentuk satuan atau modul (lengkap dengan kapasitor dan resistor pull-up). DHT22 memiliki harga yang sedikit mahal jika dibandingkan dengan DHT11 tetapi memiliki rentang pengukuran dan memiliki akurasi yang sedikit lebih baik.

Sensor DHT22 umum nya digunakan sebagai sensor suhu dan kelembaban udara. Sensor ini dilengkapi dengan NTC (salah satu jenis termistor) untuk mengukur suhu dan memiliki resolusi 8-bit yang dapat terhubung ke mikrokontroller. Berikut spesifikasi lengkap dari sensor DHT22:

  • Tegangan input : 3.5 V – 5.5 V
  • Arus listrik: 0.3 mA (saat pengukuran) dan 60uA (stanby)
  • Rentang pengukuran Suhu udara : -40oC sampai +125 oC dengan akurasi adalah +- 0.5oC
  • Rentang pengukuran kelembaban udara : 0% – 100 % dengan akurasi adalah 2 – 5%
  • Tingkat pengambilan sampel: 0.5 Hz (1 pengukuran setiap 2 sekon)

Cara pengukuran sensor

Alat dan Bahan:

  • Arduino Board (saat ini saya menggunakan Arduino Mega 2560)
  • Sensor DHT11 atau DHT22
  • Kabel jumper Secukupnya
  • PC atau Laptop yang sudah terinstal Arduino IDE dan library sensor DHT

Rangkaian:

Sensor DHT dengan 4 pin (VCC, GND, NC, data) terhubung dengan mikrokontroller arduino mega. jika teman – teman menggunakan sensor DHTxx tanpa ada modulnya maka tambahkan resistor pull-up 5K-10K ohm, resistor ini digunakan agar output sensor dalam kondisi HIGH atau dengan kata lain jika keluaran dari sensor ini berada dalam kondisi diantara HIGH dan LOW (ditengah-tengah/mengambang nilainya) maka dengan adanya resistor ini ketika keadaan seperti itu terjadi output sensor dalam keadaan HIGH. Namun jika teman teman menggunakan versi sensor disertai dengan modul tidak perlu adanya resistor pull-up ini karena dalam modul sudah ada.

Program Arduino IDE:

#include "DHT.h" //masukkan library dht, dapat teman - teman cari di dalam Arduino IDE->skecth->include library->manage library->cari dht yang dibuat oleh ladyada

#define DHTPIN 8     // pin yang terkoneksi ke arduino

//hilangkan tanda komentar untuk mengganti jenis DHT
//#define DHTTYPE DHT11   // DHT 11
#define DHTTYPE DHT22   // DHT 22 

DHT dht(DHTPIN, DHTTYPE);

void setup() {
  Serial.begin(9600);
  dht.begin();
}

void loop() {
  
  float h = dht.readHumidity();
  
  float t = dht.readTemperature();


  Serial.print("Kelembaban: ");
  Serial.print(h);
  Serial.print(" %\t");
  Serial.print("Suhu: ");
  Serial.print(t);
  Serial.println(" *C ");
  
  delay(2000);
}

Dalam pembacaan suhu nya satuan default yang digunakan dalam library tersebut adalah Celcius jika ingin menggunakan derajat Fahrenheit maka silahkan teman – teman ganti

float t = dht.readTemperature(); —->>> float t = dht.readTemperature(true);

sekian penjelasan dari saya mengenai sensor DHT mulai dari jenis dan penggunaan nya, semoga bermanfaat dan terima kasih.

You may also like