RANGKAIAN SENSOR KELEMBAPAN DAN SUHU MENGGUNAKAN ARDUINO

Sensor  kelembaban  adalah  suatu  alat  ukur  yang  digunakan  untuk  membantu dalam proses  pengukuran  atau  pendefinisian  yang  suatu  kelembaban  uap air yang  terkandung  dalam  udara. Jenis  - jenis  sensor  kelembaban  diantaranya  Cspacitive  Sensors,  Electrical  conductivity  Sensors, Thermal  Conductivity  Sensors,  Optical  Hygrometer,  dan  Oscillating  Hygrometer.

Sensor suhu adalah alat yang digunakan untuk mengubah besaran panas menjadi besaran listrik yang dapat dengan mudah dianalisis besarnya. Ada beberapa metode yang digunakan untuk membuat sensor ini, salah satunya dengan cara menggunakan material yang berubah hambatannya terhadap arus listrik sesuai dengan suhunya.

Arduino adalah pengendali mikro single-board yang bersifat open-source, diturunkan dari Wiring platform, dirancang untuk memudahkan penggunaan elektronik dalam berbagai bidang. Hardwarenya memiliki prosesor Atmel AVR dan softwarenya memiliki bahasa pemrograman sendiri.

Sensor suhu dan kelembaban DHT11 merupakan sensor untuk mensensing objek suhu dan kelembaban pada 1 module yang dimana memiliki output sinyal digital yang sudah terkalibrasi.
Module sensor ini tergolong kedalam elemen resistif seperti perangkat pengukur suhu seperti contohnya yaitu NTC.
Keunggulan dari sensor DHT11 dibanding dengan yang lainnya antara lain memiliki kualitas pembacaan data sensing yang sangat baik, responsif (cepat dalam pembacaan kondisi ruangan), serta tidak mudah terinterverensi.



Spesifikasi :
·         Tegangan masukan : 5 Vdc
·         Rentang temperatur :0-50 ° C kesalahan ± 2 ° C
·         Kelembaban :20-90% RH ± 5% RH error


 Berikut rangkaian sensor kelembapan dan suhu menggunakan ARDUINO dan DHT11:


Daftar Komponen:
1. ARDUINO                  1 buah
2. DHT11                         1 buah
3. LCD Character            1 buah
4. Resistor 4K7               1 buah
5. Potensio 10K              1 buah

Kode:

#include <LiquidCrystal.h>
LiquidCrystal lcd(4, 5, 0, 1, 2, 3);
byte degree_symbol[8] = 
              {
                0b00111,
                0b00101,
                0b00111,
                0b00000,
                0b00000,
                0b00000,
                0b00000,
                0b00000
              };
int gate=11; 
volatile unsigned long duration=0;
unsigned char i[5];
unsigned int j[40];
unsigned char value=0;
unsigned answer=0;
int z=0;
int b=1;
void setup() 
{

lcd.begin(16, 2);
 lcd.print("Temp = ");
 lcd.setCursor(0,1);
 lcd.print("Humidity = ");
 lcd.createChar(1, degree_symbol);
 lcd.setCursor(9,0);
 lcd.write(1);
 lcd.print("C");
 lcd.setCursor(13,1);
 lcd.print("%");
}

void loop() 
{

 delay(1000);
 while(1)
 {
  delay(1000);
  pinMode(gate,OUTPUT);
  digitalWrite(gate,LOW);
  delay(20);
  digitalWrite(gate,HIGH);
  pinMode(gate,INPUT_PULLUP);//by default it will become high due to internal pull up
 // delayMicroseconds(40);

  
  duration=pulseIn(gate, LOW);
  if(duration <= 84 && duration >= 72)
  {
      while(1)
      {
        duration=pulseIn(gate, HIGH);
        
        if(duration <= 26 && duration >= 20){
        value=0;}
        
        else if(duration <= 74 && duration >= 65){
        value=1;}
        
        else if(z==40){
        break;}
        
        i[z/8]|=value<<(7- (z%8));
        j[z]=value;
        z++;
      }
    }
answer=i[0]+i[1]+i[2]+i[3];

if(answer==i[4] && answer!=0)
{
lcd.setCursor(7,0);
lcd.print(i[2]);
lcd.setCursor(11,1);
lcd.print(i[0]);
}

z=0;
i[0]=i[1]=i[2]=i[3]=i[4]=0;
 }
}



Berikut Video Tutorial Cara Membuatnya: