Spisu treści:

Graficzna stacja pogodowa: 7 kroków (ze zdjęciami)
Graficzna stacja pogodowa: 7 kroków (ze zdjęciami)

Wideo: Graficzna stacja pogodowa: 7 kroków (ze zdjęciami)

Wideo: Graficzna stacja pogodowa: 7 kroków (ze zdjęciami)
Wideo: Outfity za ponad 200.000zł! 2024, Lipiec
Anonim
Graficzna stacja pogodowa
Graficzna stacja pogodowa

Zawsze chciałeś mieć graficzną stację pogodową? A z dokładnymi czujnikami? Może ten projekt jest dla Ciebie. Dzięki tej stacji pogodowej możesz zobaczyć, co „robi” pogoda. Na przykład temperatury mogą wzrosnąć lub spaść. Ze zwykłego termometru nie można zobaczyć historii temperatury. Dzięki tej stacji pogodowej masz historię 26 godzin, wyświetlaną na ponad 320 pikselach wyświetlacza TFT. Co 5 minut do wykresu dodawany jest piksel, który pozwoli Ci zobaczyć, czy ma trend wzrostowy czy spadkowy. Odbywa się to dla temperatury, wilgotności, ciśnienia powietrza i CO2 w różnych kolorach. Temperatura na zewnątrz jest również wliczony w cenę. W ten sposób możesz „przewidzieć” pogodę na podstawie tego, co robi ciśnienie powietrza.

Normalne stacje pogodowe mają czujniki, które są czasami niedokładne. Na przykład dla temperatury zwykle mają dokładność +/- 2 stopnie. Do tej stacji pogodowej używane są dokładniejsze czujniki. Czujnik temperatury HDC1080 ma dokładność +/- 0,2 stopnia, co jest znacznie lepsze. To samo dotyczy wilgotności i ciśnienia powietrza.

W górnej części wyświetlacza TFT pomiary czujników są wyświetlane i odświeżane co 5 sekund. Pomiary te są również dostępne przez RS232.

Główne cechy:

  • Wykresy w różnych kolorach do rozpoznawania trendów
  • Dokładne czujniki temperatury, wilgotności i ciśnienia powietrza.
  • Dane kalibracji fabrycznej i temperatura czujnika są odczytywane z czujników tam, gdzie to możliwe i stosowane do kodu w celu uzyskania najdokładniejszych pomiarów.
  • Temperatury są dostępne w stopniach Celsjusza (domyślnie) lub Fahrenheita.
  • Temperatura zewnętrzna przez moduł bezprzewodowy (opcja)
  • Interfejs RS232 do zdalnego monitorowania.
  • Ładny mały design (nawet moja żona toleruje to w naszym salonie;-)

Mam nadzieję, że badanie warunków pogodowych sprawi ci taką samą przyjemność jak ja!

Krok 1: Części

Części
Części
Części
Części
Części
Części

1 x moduł TFT 2.8 cala bez panelu dotykowego ILI9341 Drive IC 240 (RGB) * 320 Interfejs SPI

1 x mikrokontroler Microchip 18f26k22 28-PIN PDIP

1 x moduł HDC1080, GY-213V-HDC1080 wysokiej dokładności cyfrowy czujnik wilgotności z czujnikiem temperatury

1 x GY-63 MS5611 Moduł czujnika wysokości atmosferycznej o wysokiej rozdzielczości IIC / SPI

1 x czujnik co2 na podczerwień MH-Z19 do monitora co2;

1 x (opcjonalnie) moduły bezprzewodowe NRF24L01+PA+LNA (z anteną)

1 x 5 V do 3,3 V DC-DC Moduł obniżający napięcie zasilania AMS1117 800MA

1 x kondensator ceramiczny 100nF

2 x płyta akrylowa 6*12 cm grubość 5mm lub 100*100mm grubość 2mm

1 x złącze Micro USB Gniazdo 5-pinowe Gniazdo Micro USB DIP4 nogi Cztery nogi Wkładanie płyty siedziska mini złącze USB

1 x czarny uniwersalny telefon z systemem Android Micro USB EU Plug Travel AC ładowarka ścienna Adapter do telefonów z systemem Android

1 x dwustronna płytka drukowana.

Niektóre nylonowe podkładki/śruby M3

-

Do temperatury zewnętrznej (opcjonalnie)

1 x 28-pinowy mikrokontroler Microchip 16f886 PDIP

1 x Wodoodporny czujnik temperatury sondy temperatury DS18b20 Pakiet ze stali nierdzewnej -100 cm drutu

1 x rezystor 4k7

1 x moduł bezprzewodowy NRF24L01+;

1 x kondensator ceramiczny 100nF

1 x płytka prototypowa PCB

1 x 85x58x33mm Wodoodporna przezroczysta osłona Plastikowa obudowa do elektronicznego pudełka do projektowania kabli

1 x plastikowy uchwyt na pudełko do przechowywania baterii z przewodami do 2 x AA 3.0V 2AA

2 baterie AA

Krok 2: PCB

PCB
PCB
PCB
PCB
PCB
PCB

Do tego projektu użyłem dwustronnej płytki drukowanej. Dostępne są pliki Gerbera. Ta płytka drukowana mieści się z tyłu wyświetlacza TFT. Czujnik temperatury montowany jest z tyłu, aby zapobiec nagrzewaniu się obwodu. Podłącz NRF24L01+ w następujący sposób do mikrokontrolera:

pin 2 - numer CSN NRF24L01+

pin 8 – GND NRF24L01+

pin 9 - CE NRF24L01+

pin 22 - SCK NRF24L01+

pin 23 - MISO NRF24L01+

pin 24 - MOSI NRF24L01+

pin 20 – VCC NRF24L01+

n.c - przerwanie przerwania NRF24L01+

Krok 3: Temperatura zewnętrzna

Temperatura na zewnątrz
Temperatura na zewnątrz
Temperatura na zewnątrz
Temperatura na zewnątrz

Mikrokontroler 16f886 służy do odczytu czujnika temperatury DS18B20 co 5 minut. Temperatura ta jest przekazywana przez moduł bezprzewodowy NRF24L01+. Tutaj wystarczy prototypowa płytka stykowa PCB. Użyj następującej konfiguracji pinów mikrokontrolera:

pin 2 - numer CSN NRF24L01+

pin 8 - GND

pin 9 - CE NRF24L01+

pin 14 - SCK NRF24L01+

pin 15 - MISO NRF24L01+

pin 16 - MOSI NRF24L01+

pin 20 - +3 V baterii AA

pin 21 - IRQ NRF24L01+

pin 22 - dane DS18B20 (użyj rezystora 4k7 jako pull up)

Krok 4: Wyjście RS232

Wyjście RS232
Wyjście RS232

Co 5 sekund pomiary są dostarczane przez RS232 na pinie 27 (9600 bodów). Możesz podłączyć ten interfejs do komputera i użyć programu terminalowego (np. Putty), aby uzyskać dane. Pozwala na wykorzystanie pomiarów do innych celów.

Krok 5: Kod

Kod
Kod
Kod
Kod

Czujniki użyte w tym projekcie wykorzystują różne interfejsy mikrokontrolera 18f26k22. Tak samo jest z pierwszym interfejsem szeregowym używanym przez czujnik CO2 MH-Z19. Ten interfejs jest ustawiony na 9600 bodów. Drugi interfejs szeregowy tego mikrokontrolera służy do dostarczania pomiarów czujnika na pinie 27 co 5 sekund, dzięki czemu można go podłączyć do komputera (również ustawiony na 9600 bodów). Czujnik temperatury/wilgotności HDC1080 oraz czujnik ciśnienia powietrza MS5611 działają na interfejsie i2c. Wyświetlacz TFT i moduł bezprzewodowy NRF24L01+ działają na tym samym interfejsie SPI skonfigurowanym na 8 Mhz. Sam mikrokontroler 18f26k22 jest ustawiony na 64 MHz. Domyślnie temperatury są w stopniach Celsjusza. Podłączając pin 21 do uziemienia, uzyskujesz temperaturę w stopniach Fahrenheita. Podziękowania dla Achima Döblera za jego bibliotekę graficzną µGUI i Harry'ego W (1and0) za jego 64-bitowe rozwiązanie.

Mikrokontroler 16f886 służy do pomiaru temperatury zewnętrznej. Czujnik temperatury DS18B20 jest odczytywany co 5 minut (stosowany jest tutaj protokół one-wire) i przesyłany interfejsem SPI za pośrednictwem modułu bezprzewodowego NRF24L01+. Przez większość czasu ten mikrokontroler jest w trybie niskiego zużycia energii, aby oszczędzać baterie. Oczywiście obsługiwane są również ujemne temperatury. Jeśli ta funkcja temperatury zewnętrznej nie jest używana, nie pojawi się na ekranie TFT, więc jest opcjonalna.

Do programowania mikrokontrolerów 18f26k22 i 16f886 potrzebny jest programator pickit3. Możesz użyć darmowego oprogramowania do programowania Microchip IPE (nie zapomnij ustawić VDD na 3,0 V i zaznaczyć pole wyboru „Obwód docelowy mocy z narzędzia” w „Opcje ICSP” w menu „Zasilanie”).

Krok 6: Wrażenie poklatkowe

Image
Image

Poklatkowe wrażenie, jak wygląda około 15 godzin monitoringu pogody. Białej mgiełki na wyświetlaczu w rzeczywistości nie ma.

  • Na czerwono temperatura wewnętrzna
  • Na pomarańczowo temperatura na zewnątrz
  • Na niebiesko wilgotność
  • Na zielono ciśnienie powietrza
  • W kolorze żółtym co2

Krok 7: Ciesz się

Ciesz się tym projektem !!

Ale w zasadzie błędem jest próbowanie oparcia teorii wyłącznie na obserwowalnych wielkościach. W rzeczywistości dzieje się dokładnie odwrotnie. To teoria decyduje o tym, co możemy obserwować.

~ Albert Einstein w fizyce i nie tylko Wernera Heisenberga s. 63

Zalecana: