6 Nisan 2016 Çarşamba

Arduino DHT11 Isı ve Nem Sensörü Kullanımı

Merhaba arkadaşlar uzun bir aranın ardından bugün sizlere arduino da dht11 sensörü ile ortam sıcaklık ve nem ölçümünün nasıl kullanılacağını dilim döndüğünde anlatmaya çalışacağım.

Öncelikle internetten arduino ide programını indiriyoruz. Bu program bizim arduino kartlarımızı programlamamızı sağlayan ücretsiz sunulan ide. Ben şahsen arduino ide programını pek sevmesemde bu yazımızda bu ide üzerinden gideceğiz.

(Alternatif olarak CodeBlock Arduino ide sini kullanmanızı  tavsiye ediyorum. Hem daha profesyonel bir program hemde autocomplate v.b bir çok özelliği içerisinde barındırıyor. Bir sonraki yazımızda bu idenin kurulumu ve kullanımı ile ilgili bir yazı paylaşmayı düşünüyorum)

Programı indirmek için tıklayınız.

Programı indirdikten sonra stantart program kurulumu gibi next ile adımları tamamlıyoruz. Akabinde Arduino IDE programımızı çalıştırıyoruz.  Programın ilk açılış ekranı aşağıdaki gibidir. Arduino programlar Sketch olarak adlandırıldığından ilk sketch dosyamız açılıyor.


Yukarıda ki resimde de görüldüğü gibi ilk program açılışında setup ve loop fonksiyonları otomatik geliyor. Arduino programı için olmazsa olmaz fonksiyonlarımız bunlar. Hiç bir şekilde bu fonskiyonları silmeyiniz aksi halde program hata verecektir.

Setup() : kartın ilk çalışmaya başladığında gerekli olan işlemleri bir defaya mahsus yapan  fonksiyondur.

Loop(): ise tıpkı while(1) de olduğu gibi sonsuz kere çalışan döngümüzdür.

Bu kısa bilgilerin ardından hemen programımıza kütüphanemizi ekleyelim.

 Dht11 kütüphanesini indirmek için tıklayınız.

Kütüphanemizi de indirdikten sonra tekrardan arduino ide mize dönüp yükleme işlemini gerçekleştiriyoruz.



Resimdeki numaralandırılmış adımları takip ediyoruz ve 3 numaralı alana tıkladığımızda bizden .zip uzantılı dosyanın konumunu soruyor. Kütüphaneyi indirdiğimiz konuma gidip kütüphanemizi seçip ok diyoruz. Böylelikle kütüphanemiz yüklenmiş oluyor.

Şimdi ilk sketch dosyamızın içindeki tüm kodları silip aşağıdaki kodları yapıştırıyoruz.

 
#include <dht11.h>
int pin = 2; // bağlantı yapılacak bacak no
DHT11 dht11(pin);


void setup() {
  // put your setup code here, to run once:
  Serial.begin(9600);
}

void loop() {
  // put your main code here, to run repeatedly:
  Serial.println();
  int err;
  float temp, humi;
  if ((err = dht11.read(humi, temp)) == 0)
  {
    Serial.print("Sıcaklık:");
    Serial.print(temp);
    Serial.print(" Nem:");
    Serial.print(humi);
    Serial.println();
  }
  else
  {
    Serial.println();
    Serial.print("Hata No :");
    Serial.print(err);
    Serial.println();
  }
  delay(DHT11_RETRY_DELAY); //delay for reread

}


 Bağlantı şeması




Faydalı olması dileğiyle.