DHT22: Charakterystyka i Zastosowanie w Pomiarach Wilgotności Względnej
- Szczegóły
Czujnik DHT22 jest popularnym wyborem w projektach, które wymagają pomiaru temperatury i wilgotności. Wyróżnia się on na tle innych czujników z tej serii przede wszystkim zakresem pomiarowym i dokładnością wskazań.
Specyfikacja Techniczna DHT22
Tym, co odróżnia czujnik DHT22 od podobnych elementów z tej serii produktowej są przede wszystkim zakresy pomiarowe oraz dokładność wskazań. Czujnik DHT22 pracuje w pełnym zakresie wilgotności względnej, tj. od 0% RH do 100% RH, zapewniając dokładność +/- 2% RH i rozdzielczość 0,1% RH. W przypadku temperatury mamy tutaj do czynienia z zakresem od -40°C do +80°C i bardzo przyzwoitą dokładnością oraz rozdzielczością na poziomie, odpowiednio, +/- 0,5°C i 0,1°C. Czas odpowiedzi czujnika na skokową zmianę temperatury wynosi zaledwie 2 sekundy, co pozwala na pracę nawet w bardzo dynamicznych systemach sterowania.
Kluczowe Cechy DHT22:
- Zakres pomiaru wilgotności: 0-100% RH
- Dokładność pomiaru wilgotności: ±2% RH
- Rozdzielczość pomiaru wilgotności: 0.1% RH
- Zakres pomiaru temperatury: -40°C do +80°C
- Dokładność pomiaru temperatury: ±0.5°C
- Rozdzielczość pomiaru temperatury: 0.1°C
- Czas odpowiedzi: 2 sekundy
Komunikacja i Budowa
Czujnik temperatury i wilgotności DHT22 komunikuje się z nadrzędnym mikrokontrolerem za pomocą 1-liniowego interfejsu szeregowego. Cała ramka ma długość 40 bitów i obejmuje następujące pola danych: części całkowitą i ułamkową odczytu wilgotności (po 8 bitów), części całkowitą i ułamkową odczytu temperatury (również po 8 bitów) oraz sumę kontrolną (1 bajt).
Co ważne, całość - zarówno przetworniki, jak i układ pomiarowy wraz z cyfrowym interfejsem komunikacyjnym - jest zamknięta w niewielkiej, perforowanej obudowie z tworzywa sztucznego i mieści się w wymiarach 20 x 15,1 x 7,7 mm.
Zastosowanie w Projektach
Czujnik DHT22 jest często wykorzystywany w projektach stacji pogodowych. Można go używać z mikrokontrolerami, takimi jak Arduino, do monitorowania temperatury i wilgotności wewnątrz i na zewnątrz pomieszczeń.
Przeczytaj także: Poradnik: walka z wilgocią w mieszkaniu
Przykład Użycia: Stacja Pogodowa
Jednym z pomysłów jest zbudowanie "stacji pogodowej", która pokazywałaby temperaturę oraz wilgotność w pomieszczeniu i na zewnątrz. Do pomiaru temperatury wewnątrz można użyć czujnika DHT11, a do pomiaru na zewnątrz czujnika DHT22 ze względu na jego większą dokładność. Czujnik DHT22 można połączyć z Arduino za pomocą przewodu, a całość zasilić kablem USB podpiętym do ładowarki od telefonu.
Kod Przykładowy (Arduino)
Poniżej przedstawiono fragment kodu Arduino, który ilustruje odczyt danych z czujników DHT22 i BME280 oraz wyświetlanie ich na ekranie LCD:
#include <DHT.h>#include <LiquidCrystal.h>#include <Wire.h>#include <SPI.h>#include <Adafruit_Sensor.h>#include <Adafruit_BME280.h>// Definicja pinu i typu czujnika DHT#define DHTPIN 8#define DHTTYPE DHT22// Definicja pinów magistrali SPI#define BME_SCK 13#define BME_MISO 12#define BME_MOSI 11#define BME_CS 10// Definicja pinów LCDLiquidCrystal lcd(7, 6, 5, 4, 3, 2);// Definicja DHTDHT dht(DHTPIN, DHTTYPE);// Użyte zmiennefloat Tzew;float Wilg;float temperatura;float cisnienie;float wilgotnosc;#define SEALEVELPRESSURE_HPA (1013.25) // Cisnienie na poziomie morza#define ALTITUDE 160.0 // Wysokosc wzgledna w metrach dla miejsca pomiaru - u mnie 160 m npmAdafruit_BME280 bme(BME_CS); // Inicjalizacja czujnika BME w trybie hardware SPIvoid setup() { Serial.begin(9600); Serial.println(F("Start Testu")); lcd.begin(24, 2); // Start LCD 24x2 bool status; status = bme.begin(); if (!status) { Serial.println("Brak sensora BME 280 - sprawdz polaczenie"); while (1); } Serial.println("OK");}void loop() { temperatura = bme.readTemperature(); // Odczyt temperatury z czujnika BME cisnienie = bme.readPressure(); // Odczyt cisnienia z czujnika BME cisnienie = bme.seaLevelForAltitude(ALTITUDE, cisnienie); // Przeliczenie cisnienia dla danej wysokosci npm wilgotnosc = bme.readHumidity(); // Wilgotnosc z czujnika BME Tzew = dht.readTemperature(); // Temperatura z czujnika DHT Wilg = dht.readHumidity(); // Wilogotnosc z czujnika DHT lcd.setCursor(0, 0); lcd.print("Tzew: "); lcd.print(Tzew); lcd.print(" Twew: "); lcd.print(temperatura); lcd.setCursor(0, 1); lcd.print("Cisn: "); lcd.print(cisnienie / 100); lcd.print(" Wilg: "); lcd.print(Wilg); delay(1000);}Inne Zastosowania
Oprócz stacji pogodowych, czujnik DHT22 może być używany w:
- Systemach HVAC (ogrzewanie, wentylacja, klimatyzacja)
- Monitoringu środowiska
- Automatyce budynkowej
- Systemach nawadniania
Wiele procesów przemysłowych zależy od precyzyjnej kontroli wilgotności powietrza. Dlatego czujniki takie jak DHT22 są nieocenione w zapewnieniu optymalnych warunków.
Przeczytaj także: Wakacje w Bodrum
Przeczytaj także: Poradnik pomiaru wilgotności
tags: #dht #22 #wilgotność #względna #charakterystyka

