Herkese Merhaba, bu yazımızda DHT11 ve DHT22’in ne olduğunu, özelliklerini, ayrıntılı kullanımını anlatacağım. Kolay gelsin! 😁
DHT11 ve DHT22 Nedir ve Hangi Amaçla Kullanılır?
DHT11 veya DHT22, Ortamdaki nemi ve sıcaklığı ölçmek için kullanılan küçük bir sensördür. Çeşitli ısı birimlerini celcius, farhenayt ve kelvin değerlerinde verileri ve nemi % cinsinden ölçmek için kullanılır. DHT22 daha iyi özelliklere sahip olup, daha stabil ve daha pahalıdır.
DHT11 ve DHT22’nin Özellikleri ve Farkları
DHT11 | DHT22 | |
---|---|---|
Çalışma Voltajı | 3 - 5V | 3 - 5V |
Akım mAh Max. | 2.5mAh | 2.5mAh |
Nem | 20-80% / 5% | 0-100% / 2-5% |
Sıcaklık | 0-50°C / ± 2°C | -40 ile 80°C / ± 0.5°C |
Ölçüm Hızı | 1 Hz (~1 Saniyede Yenileme) | 0.5 Hz (~2 Saniyede Yenileme) |
Fiziki Ölçüler | 15.5mm x 12mm x 5.5mm | 15.1mm x 25mm x 7.7mm |
Avantajlar | Ucuz | Daha Doğru Tahmin |
Daha ayrıntılı bilgiler için DHT11 ve DHT22 datasheed’lerini inceleyebilirsiniz.
İç yapılarına değinmeden kullanımına geçelim. (Eğer isterseniz iç yapısından da bahsedebilirim. Yorumlara! 👇🏻 🫣 😁)
DHT11 ve DHT22 Kullanımı
DHT11 ile DTH22’nin kullanımıyla ilgili serial monitörde değerleri görebileceğimiz bir kod yazacağız.
Öncelikle DHT11 veya DHT22’yi kullanıyorsanız buradan kütüphaneyi indirin. ‘Releases’ bölümünden en son sürümü indirin. Kütüphanemiz indiğine göre artık Arduino’ya kütüphanemizi yükleyelim.
Nasıl yüklemeniz gerektiğini bilmiyorsanız buradan öğrenebilirsiniz. 😊
Arduino ile Bağlantı Şeması
Kütüphanemizi de eklediğimize göre artık kodlamaya geçebiliriz!
Arduino ile Kullanımı
#include "DHT.h" // DHT kütüphanesi
#define DHTPIN 2 // DHT data pini
DHT dht(DHTPIN, DHT11);
void setup() {
Serial.begin(9600); // seri haberleşme başlatılır
dht.begin(); // DHT'yi başlatılır
}
void loop() {
delay(2000); // her okuma arasında 2sn beklenir
float nem = dht.readHumidity(); // nem bilgisi alınır
float sicaklik = dht.readTemperature(); // sıcaklık bilgisi alınır
// Okunan değerler seri porttan gönderilir
Serial.print("Nem ");
Serial.print(nem);
Serial.print(" %\t");
Serial.print("Sıcaklık: ");
Serial.print(sicaklik);
Serial.println(" *C ");
}
Github profilimden de inceleyebilirsiniz. 🫠
Bu şekilde nem ve sıcaklık değerlerini anlık olarak alabiliyoruz! Sormak istediğiniz sorunuz veya sorununuz varsa yorumlardan söyleyebilirsiniz! Sağlıcakla! 😊