Jak zrobić stację pogodową za pomocą Arduino?

Jak zrobić stację pogodową za pomocą Arduino?

Arduino zdobyło sobie bardzo długą listę użytkowników, a także projektów, które w oparciu o tą płytkę można zbudować – jednym z nich, jest stacja pogodowa.

Sprawdzaj pogodę na własnoręcznie zbudowanej stacji meteorologicznej!

W niniejszym artykule, prezentujemy przykładowy projekt stacji pogodowej DIY, wykonanej w oparciu o platformę Arduino UNO R3. Projekt obejmuje opis podłączenia poszczególnych podzespołów, a także kod programu napisanego w środowisku Arduino IDE.

Stacja pogodowa na Arduino – moduł czujnika temperatury i wilgotności DHT11 – zasada działania

W tym projekcie skorzystamy ze zintegrowanego czujnika pomiarowego DHT11 od Seeed Studio. Moduł ten jest czujnikiem temperatury i wilgotności. Jego niewielkie wymiary pozwalają na montaż w każdej obudowie, nawet o najmocniej ograniczonej ilości fizycznego miejsca. Czujnik DHT11 jest przystosowany do współpracy z płytkami bazowymi opartymi na mikrokontrolerach. Jego konstrukcja umożliwia precyzyjne wykonywanie pomiarów temperatury otoczenia z dokładnością na poziomie ±1°C, a także pomiarów wilgotności powietrza z dokładnością na poziomie ±1%. Zakres praktycznych zastosowań czujnika DHT11, obejmuje m.in. monitoring warunków środowiskowych na uprawach roślin, współpracę z systemami nawilżania i pochłaniania wilgoci z powietrza oraz pomiar warunków pogodowych. Zasada działania czujnika DHT11 opiera się na pojemnościowym czujniku wilgotności i termistorze. Pomiary są wykonywane na wolnym powietrzu. Wyjście czujnika stanowi sygnał cyfrowy. Z tego względu, tworząc kod programu pod niniejszą aplikację, konieczne jest zainstalowanie dodatkowej biblioteki, dzięki której będziemy mogli na podstawie cyfrowego sygnału z czujnika, odczytać rzeczywistą wartość wilgotności i temperatury. Pojedynczy pomiar jest wykonywany w 2-sekundowych odstępach czasowych.

Stacja meteo na Arduino – podłączenie czujnika

Teraz zaczniemy podłączanie elementów naszej stacji pogodowej, rozpoczynając od czujnika temperatury i wilgotności. Czujnik DHT11 ma trzy wyprowadzenia. Wyprowadzenie “S” podłączamy do pinu “5V” w Arduino, a wyprowadzenie “-” do masy (“GND”). Natomiast środkowe wyprowadzenie podłączamy do pinu “A1”.

Stacja meteo na Arduino – podłączenie wyświetlacza LCD

Wyświetlacz LCD będzie nam pokazywał odczyt temperatury i wilgotności w czasie rzeczywistym. Sposób podłączenia jego wyprowadzeń jest następujący:

D7 ­–> pin “D2” w Arduino

D6 –> pin “D3” w Arduino

D5 –> pin “D4” w Arduino

D4 –> pin “D5” w Arduino

E – > pin “D11” w Arduino

RS –> pin “D12” w Arduino

VDD –> pin “5V” w Arduino

A –> pin “5V” w Arduino

VSS –> pin “GND” w Arduino

K –> pin “GND” w Arduino

RW –> pin “GND” w Arduino

VO –> Środkowe wyprowadzenie potencjometru do regulacji kontrastu wyświetlacza. Skrajne piny potencjometru należy podłączyć odpowiednio dowolnie z pinami “5V” i “GND” w Arduino

Stacja pogodowa na Arduino – kod programu

Poniższy kod programu należy skopiować do środowiska Arduino IDE oraz wgrać do pamięci Arduino. Aby kod prawidłowo działał, konieczne jest zainstalowanie biblioteki dht.h, która obsługuje czujnik DHT11. Bibliotekę można pobrać z repozytorium GitHub.

#include <liquidcrystal.h> //inicjacja biblioteki obslugujacej wyswietlacz LCD

#include <dht.h> //inicjacja biblioteki obslugujacej czujnik DHT11

#define dht_dpin A1 //przypisanie pinowi A1 nazwy dht_dpin A1

LiquidCrystal lcd(12, 11, 5, 4, 3, 2); //Ustawienie pinow dla wyswietlacza LCD

void setup(){

;lcd.begin(16, 2);

lcd.print("TEMP WILGOTNOSC");

Serial.begin(57600); //rozpoczecie transmisji szeregowej z predkoscia 57600 baudow

}

void loop(){

lcd.setCursor(1,3);

DHT.read11(dht_dpin);

//lcd.print(abs(moisture));

//Serial.println(moisture);

lcd.print(round(DHT.TEMP)); //wyswietlanie zaokraglowej wartosci temp.

lcd.print("*C "); //wyswietlanie znaku stopni Celsjusza

lcd.print(round(DHT.WILGOTNOSC)); //wyswietlanie zaokraglonej wartosci wilgotnosci

lcd.print("% ");

}

Stacja pogodowa na Arduino – opcje dodatkowe

Aby stacja była bardziej wygodna w użytkowaniu, polecamy cały projekt umieścić w obudowie z tworzywa sztucznego lub pleksiglasu. Do tego celu, najlepiej skorzystać z gotowej obudowy wycinanej laserowo, która pomieści płytkę Arduino, wyświetlacz i czujnik DHT11. Jeśli natomiast chcemy ustawić kontrast wyświetlacza na stałe, wówczas potencjometr można schować do środka obudowy, bez konieczności nawiercania dodatkowego otworu.

Jak oceniasz ten wpis blogowy?

Kliknij gwiazdkę, aby go ocenić!

Średnia ocena: 1 / 5. Liczba głosów: 1

Jak dotąd brak głosów! Bądź pierwszą osobą, która oceni ten wpis.

Zobacz również

Leave a Reply

Your email address will not be published.