İçindekiler:

DHT11 / DHT22 ve Arduino Kullanarak Sıcaklık ve Nem Ölçümü: 4 Adım
DHT11 / DHT22 ve Arduino Kullanarak Sıcaklık ve Nem Ölçümü: 4 Adım

Video: DHT11 / DHT22 ve Arduino Kullanarak Sıcaklık ve Nem Ölçümü: 4 Adım

Video: DHT11 / DHT22 ve Arduino Kullanarak Sıcaklık ve Nem Ölçümü: 4 Adım
Video: Arduino İle Sıcaklık ve Nem Ölçer(Termometre ve Higrometre) Yapımı 2024, Kasım
Anonim
Image
Image

Bu Arduino Eğitiminde, Arduino kartı ile sıcaklık ve nemi ölçmek için DHT11 veya DHT22 sensörünün nasıl kullanılacağını öğreneceğiz.

Gereçler

  • Arduino UNO'su
  • DHT11 veya DHT22
  • 16 x 2 LCD Ekran
  • ekmek tahtası
  • Atlama Kabloları
  • Arduino Kablosu

Adım 1: Giriş:

Tanıtım
Tanıtım
Tanıtım
Tanıtım

Bu sensörler elektronik meraklıları için çok popüler çünkü çok ucuzlar ama yine de mükemmel performans sağlıyorlar. İşte bu iki sensör arasındaki ana özellikler ve farklar:

DHT22, açıkça daha iyi özelliklere sahip olan daha pahalı versiyondur. Sıcaklık ölçüm aralığı +-0.5 derece doğrulukla -40 ila +125 santigrat derece arasındadır, DHT11 sıcaklık aralığı ise +-2 derece doğrulukla 0 ila 50 santigrat derecedir. Ayrıca DHT22 sensörü, %2-5 doğrulukla %0 ila %100 arasında daha iyi nem ölçüm aralığına sahipken, DHT11 nem aralığı %5 doğrulukla %20 ila %80 arasındadır.

DHT11'in DHT22'den daha iyi olduğu iki özellik vardır. Bu, DHT11 için 1Hz veya saniyede bir okuma olan örnekleme hızıdır, DHT22 örnekleme hızı ise 0, 5Hz veya iki saniyede bir okumadır ve ayrıca DHT11'in gövde boyutu daha küçüktür. Her iki sensörün çalışma voltajı 3 ila 5 volt arasındayken, ölçüm sırasında kullanılan maksimum akım 2,5mA'dır.

Adım 2: Şemalar:

Şemalar
Şemalar

Adım 3: Kaynak Kodu:

/* © Techtronic Sert */

#include "DHT.h" //DHT kitaplığını dahil et

#include //LikitCrystal kitaplığını dahil et #define DHTPIN 12 //DHT pinini tanımla #define DHTTYPE DHT11 //DHTTYPE DHT11/DHT22 tanımla

LiquidCrystal lcd(2, 3, 4, 5, 6, 7); //LCD pinlerini tanımlayın (RS, E, D4, D5, D6, D7)

DHT dht(DHTPIN, DHTTYPE);

geçersiz kurulum()

{ dht.begin(); lcd.başla(16, 2); //LCD'yi başlatır ve boyutları belirtir } void loop() { float temp = dht.readTemperature(); float humi = dht.readHumidity(); lcd.setCursor(0, 0); lcd.print("Sıcaklık: "); lcd.print(temp); lcd.print("C"); lcd.setCursor(0, 1); lcd.print("Humi: "); lcd.print(humi); lcd.print(" %"); gecikme(2000); }

/*

© Techtronic Sert

*/

Önerilen: