DHT11 DHT21 VE DHT22 SENSÖRLERİNİN KARŞILAŞTIRILMASI VE ARDUİNO İLE KULLANIMI

 

DHT11, DHT21 ve DHT22 sensörleri, sıcaklık ve nem ölçümleri için kullanılır. Bu sensörler, birçok farklı alanda kullanılabilir, örneğin:

  • Ev otomasyonu: Sıcaklık ve nem ölçümleri ev otomasyon sistemlerinde kullanılabilir. Örneğin, evin iç sıcaklığını ve nem oranını kontrol etmek için kullanılabilir.
  • Tarım: Sıcaklık ve nem ölçümleri tarım alanında önemlidir. Örneğin, bitkiler için optimal sıcaklık ve nem oranlarını sağlamak için kullanılabilir.
  • HVAC: Sıcaklık ve nem ölçümleri HVAC (Isıtma, Ventilasyon ve Klima) sistemlerinde kullanılabilir. Örneğin, bir binada sıcaklık ve nem oranlarını kontrol etmek için kullanılabilir.
  • Laboratuvarlar: Sıcaklık ve nem ölçümleri laboratuvarlarda kullanılabilir. Örneğin, laboratuvarlar için optimal sıcaklık ve nem oranlarını sağlamak için kullanılabilir.
  • Fabrikalar: Sıcaklık ve nem ölçümleri fabrikalarda kullanılabilir. Örneğin, fabrikalar için optimal sıcaklık ve nem oranlarını sağlamak için kullanılabilir.

Bu sadece bazı örneklerdir, sensörler birçok farklı alanda kullanılabilir. Önemli olan sensörlerin özellikleri ve projenizin gereksinimlerine uygun olarak seçim yapmaktır.

DHT11 DHT21 VE DHT22 SENSÖRLERİN KARŞILAŞTIRILMASI

DHT11, DHT21 ve DHT22 sensörleri, sıcaklık ve nem okuma işlemleri için kullanılan benzer sensörlerdir. Ancak, bu sensörler arasında bazı farklılıklar bulunmaktadır:

DHT11 sensörü, sıcaklık ölçümlerinde +/- 2°C hassasiyeti ve nem ölçümlerinde +/- 5% hassasiyeti sunar.

DHT21 sensörü (a.k.a AM2301), sıcaklık ölçümlerinde +/- 0.5°C hassasiyeti ve nem ölçümlerinde +/- 2-5% hassasiyeti sunar.

DHT22 sensörü (a.k.a AM2302), sıcaklık ölçümlerinde +/- 0.5°C hassasiyeti ve nem ölçümlerinde +/- 2-5% hassasiyeti sunar.

DHT22 sensörü DHT11 ve DHT21 sensörlerinden daha yüksek hassasiyet sunmaktadır. Ayrıca DHT22 sensörü daha yüksek çözünürlükte ölçüm yapabilmekte ve daha uzun bir ömür süresine sahip olabilmektedir. Ancak DHT22 sensörünün fiyatı DHT11 sensörüne göre daha yüksek olabilir. Bu nedenle projenizin gereksinimlerine göre en uygun sensörü seçebilirsiniz.

DHT11 SENSÖRLERİN SENSÖRÜNÜN ARDUİNO İLE KULLANIMI

DHT11 sıcaklık ve nem sensörü, Arduino ile kullanmak için çok kolaydır. Aşağıdaki bağlantı şemasını kullanabilirsiniz:

VCC | 3.3V

Data | D2

NC |

GND | GND

 

Not: DHT11 sensörü sadece 3.3V geriliminde çalışır ve direk 5V’a bağlamak sensörü hassasiyetini azaltabilir veya arızalandırabilir.

Aşağıda DHT11 sensörünü kullanmak için bir örnek kod bulabilirsiniz. Bu kod, sensörün okuduğu sıcaklık ve nem değerlerini seri port üzerinden yazdırır.

#include <DHT.h>

#define DHTPIN 2

#define DHTTYPE DHT11

DHT dht(DHTPIN, DHTTYPE);

 

void setup() {

Serial.begin(9600);

dht.begin();

}

 

void loop() {

float h = dht.readHumidity();

float t = dht.readTemperature();

 

if (isnan(h) || isnan(t)) {

Serial.println(“Error reading from DHT sensor!”);

return;

}

 

Serial.print(“Humidity: “);

Serial.print(h);

Serial.print(“%  “);

Serial.print(“Temperature: “);

Serial.print(t);

Serial.println(“°C “);

 

delay(2000);

}

 

 

Kodun çalışması için DHT sensörü için bir kütüphane kullanılmıştır. Bu bibliyotek DHT.h olarak adlandırılmıştır ve kodun başında include edilmiştir. Eğer kütüphane yüklü değilse, Arduino IDE kullanarak yüklemelisiniz. Ayrıca bağlantıda belirttiğim gibi sensörün gerilimini kontrol etmeniz önemlidir.

DHT.h kütüphanesi, Arduino için DHT11, DHT21 ve DHT22 sıcaklık ve nem sensörleri için yazılmış bir kütüphanedir. Bu kütüphaneyi kullanarak DHT sensörlerinin okuma işlemlerini kolayca gerçekleştirebilirsiniz.

DHT.h kütüphanesini Arduino IDE kullanarak indirebilirsiniz. Arduino IDE’nin “Sketch” menüsünden “Include Library” seçeneğine tıkladıktan sonra “DHT sensor library” yazısını aratabilirsiniz ve kurulumu gerçekleştirebilirsiniz.

Ayrıca buradan da indirebilirsiniz : https://github.com/adafruit/DHT-sensor-library

Bu kütüphaneyi kullanmak için öncelikle kütüphaneyi Arduino projene dahil etmelisiniz. Ardından, kodun başında #include <DHT.h> satırını eklemelisiniz. Bu satır, kütüphanenin fonksiyonlarını kullanabilmeniz için gereklidir.

DHT sensörünü kullanmak için, öncelikle DHT sınıfının bir nesnesini oluşturmalısınız. Örneğin, DHT dht(DHTPIN, DHTTYPE); şeklinde. Bu satır, DHT sensörünün bağlı olduğu pini ve tipini belirler.

Sonra, sensörün okuma işlemi için dht.readHumidity() ve dht.readTemperature() fonksiyonlarını kullanabilirsiniz. Bu fonksiyonlar, sensör tarafından okunan nem ve sıcaklık değerlerini geri döndürür.

DHT.h kütüphanesi ile ilgili daha detaylı bilgiye github sayfasındaki dokümantasyon bölümünden ulaşabilirsiniz.

DHT21 SENSÖRÜNÜN ARDUİNO İLE KULLANIMI

DHT21 sıcaklık ve nem sensörü, Arduino ile kullanmak için çok kolaydır. Aşağıdaki bağlantı şemasını kullanabilirsiniz:

VCC | 3.3V

Data | D2

NC |

GND | GND

Not: DHT21 sensörü sadece 3.3V geriliminde çalışır ve direk 5V’a bağlamak sensörü hassasiyetini azaltabilir veya arızalandırabilir.

DHT11 sensörü için yazılan KOD DHT21 içinde aynıdır. Sadece DHTTYPE değişkeninin DHT21 yerine DHT11 olması gerekir. Ayrıca DHT21 sensörü için DHT.h kütüphanesi de kullanılmıştır. Bu kütüphaneyi eğer daha önceden yüklememişseniz, Arduino IDE kullanarak yüklemelisiniz. Ayrıca bağlantıda belirttiğim gibi sensörün gerilimini kontrol etmeniz önemlidir.

DHT21 sensörünün kullanımı DHT11 sensörü ile aynıdır ve kodda yaptığınız değişiklik sadece sensör tipinin değiştirilmesidir. Örnek kodda belirtilen dht.begin(); kodu sensörü başlatır ve dht.readHumidity(); ve dht.readTemperature(); fonksiyonları sensör tarafından okunan nem ve sıcaklık değerlerini geri döndürür.

Kodu yükledikten sonra seri port üzerinden gönderilen verileri seri monitor ile izleyebilirsiniz. Bu veriler sensör tarafından okunan sıcaklık ve nem değerleridir.

DHT22 SENSÖRÜNÜN ARDUİNO İLE KULLANIMI

DHT11, DHT21 ve DHT22 sensörleri için yazılan kodlar arasında benzerlikler bulunmaktadır. Bu benzerlikler sensörlerin çalışma prensibi nedeniyle ortaya çıkmaktadır. Örnek olarak verdiğim kod DHT11, DHT21 ve DHT22 sensörleri için aynıdır. Sadece sensör tipinin değiştirilmesi gerekir. Örnek kodda DHTTYPE değişkeninin değeri DHT11, DHT21 veya DHT22 olarak değiştirilerek farklı sensörler kullanılabilir.

Ancak, sensörlerin özellikleri farklı olduğu için hassasiyetleri ve çözünürlükleri farklıdır. Bu nedenle sensörler arasında hassasiyet ve çözünürlükleri dikkate alarak seçim yapmalısınız. Ayrıca örnek kodun arduino pin bağlantılarının sensör tipine göre değişebileceğini unutmayın.