Wednesday, March 21, 2018

Sensor DHT11 (Untuk Mengukur Kelembaban Udara dan Suhu) Menggunakan Arduino

    Ada beberapa jenis sensor yang umum dikenal, diantaranya sensor DHT11, DHT21 atau DHT22. Nama lain yang lebih baru digunakan adalah AM2302 (untuk DHT22) dan AM2301(untuk DHT21). Namun demikian, istilah 'DHT' masih sering digunakan.
      Dalam satu modul, kita dapat memperoleh informasi tentang kelembaban dan suhu sekaligus. Ketiga jenis sensor ini dapat diperoleh di pasaran dengan harga yang cukup terjangkau.
Humidity DHT11 Arduino
                                             
                                         Sensor DHT 11

Komponen
     Sensor ini memiliki empat kaki, yaitu pin VCCDataNC, dan GND. Jika kita membelinya berupa modul (seperti pada Gambar 1), kaki NC bisanya tidak dikeluarkan, sehingga yang ada hanyalah pin VCCData, dan GND. Perhatikanlah penempatan pin ini dengan cermat, sebab akan berbeda urutannya, tergantung pabrikan yang memproduksi modul tersebut.
   Saat ini kita menggunakan Arduino UNO. Pin Data pada sensor akan terhubung dengan pin digital 2 pada Arduino UNO. Kedua pin yang lain, yaitu VCC dan GND dari sensor dan Arduino akan saling terhubung.

dht11.png

Software
         Sebelum memprogram sensor ini, kita akan menginstal pustaka (library) melalui IDE Arduino. Unduhlah pustaka yang disertakan pada tutorial ini, dan install-lah. Caranya, bukalah IDE Arduino, kemudian tambahkan pustaka dengan mencari: Sketch -> Include Library -> Add .ZIP Library.... Pilihlah library yang telah diunduh sebelumnya.
          Atau, jika komputer kita terkoneksi internet, lakukanlah instalasi secara online dengan mencari Sketch -> Include Library -> Manage Libraries... . Ketiklah kata kunci 'DHT11' dan carilah salah satu pustaka yang tersedia. Pada tutorial kali ini, kita menggunakan pustaka DHT milik Adafruit. 

dht11-pustaka.jpg

Humidity DHT11 Arduino
Instalasi Library DHT secara online
Selanjutnya, ketiklah contoh program berikut. Lihatlah hasilnya melalui serial monitor.
?
Contoh Pemrograman DHT11 pada Arduino
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include "DHT.h"
// pin digital yang digunakan
#define DHTPIN 2
// saat ini saya pakai sensor DHT11.
// uncomment sensor yang diinginkan
#define DHTTYPE DHT11
//#define DHTTYPE DHT22  
//#define DHTTYPE DHT21
DHT dht(DHTPIN, DHTTYPE);
void setup() {
  Serial.begin(9600);
  dht.begin();
}
void loop() {
  // Baca kelembaban
  float h = dht.readHumidity();
  // Baca temperatur dalam celcius
  float t = dht.readTemperature();
  //tampilkan pada serial monitor 
  Serial.print("Kelembaban: ");
  Serial.print(h);
  Serial.print(" Suhu: ");
  Serial.println(t);
  //delay sesaat sebelum pembacaan selanjutnya
  delay(1000);
}
Amatilah contoh tampilan serial monitor dengan klik menu serial monitor atau tekan ctrl+shift+m, dan lihat hasilnya seperti berikut:

Kelembaban: 68.90 Suhu: 29.80
Kelembaban: 68.80 Suhu: 29.80
Kelembaban: 68.80 Suhu: 29.80
Kelembaban: 68.80 Suhu: 29.80
Kelembaban: 68.80 Suhu: 29.80
Kelembaban: 68.80 Suhu: 29.80
Kelembaban: 68.80 Suhu: 29.80
Kelembaban: 68.70 Suhu: 29.80
Kelembaban: 68.70 Suhu: 29.80
Kelembaban: 68.70 Suhu: 29.70
Kelembaban: 68.70 Suhu: 29.70
Demikian tutorial kali ini. Semoga bermanfaat 

No comments: