Arduino i obsługa czujnika temperatury i wilgotności DHT21
Moduł DHT21 służy do pomiaru temperatury oraz wilgotności powietrza. Prezentowany przykład pokazuje w jaki sposób wykorzystać jego możliwości za pośrednictwem Arduino.
W przykładzie zostały zastosowane następujące elementy:
Podłączenie DHT21 z Arduino:
W celu odczytania wartości temperatury i wilgotności z czujnika należy połączyć układ z Arduino w następujący sposób:
Pin DHT21 | Pin Arduino |
---|---|
VCC (czerwony) | 5 V |
DATA (żółty) | 2 |
GND (czarny) | GND |
Schemat połączenie czujnika DHT21 z Arduino Uno.
Program do Arduino
Na początku bibliotekę należy dodać do środowiska Arduino (Szkic -> Include Library -> Add .ZIP Library...).
W przykładzie został wykorzystany następujący kod:
#includedht DHT21; #define DHT21PIN 2 //przypisanie pinu 2 Arduino jako odczyt z sensora void setup() { Serial.begin(115200); //inicjalizacja monitora szeregowego Serial.println("Program testowy DHT21"); Serial.println(); } void loop() { int chk = DHT21.read(DHT21PIN); //sprawdzenie stanu sensora, a następnie wyświetlenie komunikatu na monitorze szeregowym Serial.print("Stan sensora: "); switch (chk) { case DHTLIB_OK: Serial.print("OKt"); break; case DHTLIB_ERROR_CHECKSUM: Serial.println("Błąd sumy kontrolnej"); break; case DHTLIB_ERROR_TIMEOUT: Serial.println("Koniec czasu oczekiwania - brak odpowiedzi"); break; default: Serial.println("Nieznany błąd"); break; } Serial.print("Wilgotnosc (%): "); //wyświetlenie wartości wilgotności Serial.print((float)DHT21.humidity, 2); Serial.print("tt"); Serial.print("Temperatura (C): "); //wyświetlenie temperatury Serial.println((float)DHT21.temperature, 2); delay(1000); //opóźnienie między kolejnymi odczytami - 1 s }
Wynik działania tego programu możemy zaobserwować na screenie:
Zrzut ekranu szeregowego monitora.