Spisu treści:
- Krok 1: Zbierz materiały
- Krok 2: Konstrukcja mechaniczna
- Krok 3: Projekt elektryczny
- Krok 4: Zacznijmy kodować
- Krok 5: Baza danych
Wideo: Solarna stacja pogodowa: 5 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:30
Czy kiedykolwiek chciałeś otrzymywać informacje o pogodzie w czasie rzeczywistym ze swojego podwórka? Teraz możesz kupić stację pogodową w sklepie, ale te zwykle wymagają baterii lub muszą być podłączone do gniazdka. Ta stacja pogodowa nie musi być podłączona do sieci, ponieważ ma panele słoneczne, które obracają się w kierunku słońca, co zapewnia większą wydajność. Dzięki modułom RF może przesyłać dane ze stacji na zewnątrz do Raspberry Pi w domu. Raspberry Pi obsługuje stronę internetową, na której można przeglądać dane.
Krok 1: Zbierz materiały
Materiały
- Raspberry Pi 3 model B+ + adapter + karta Micro SD 16GB
- Arduino Uno
- Arduino Pro Mini + podstawowy breakout FTDI
- 4 panele słoneczne 6V 1W
- 4 18650 baterii
- Wzmacniacz 5v
- 4 ładowarki akumulatorów TP 4056
- Czujnik temperatury i wilgotności Adafruit DHT22
- Czujnik ciśnienia barometrycznego BMP180
- 4 LDR
- Odbiornik i nadajnik RF 433
- 2 silniki krokowe Nema 17
- 2 sterowniki silników krokowych DRV8825
- LCD 128*64
- Wiele przewodów
Narzędzia i materiały
- Klej
- Deski
- Piła
- Śruby + śrubokręt
- Taśma klejąca
- 2 aluminiowe paski
Krok 2: Konstrukcja mechaniczna
Korpus stacji pogodowej wykonany jest ze sklejki. Nie musisz używać drewna, możesz je wykonać z dowolnego materiału. W przypadku mocowań silnika wywierciłem całość w kawałku drewna, a następnie wkręciłem płaską śrubę do wału silnika, co działa lepiej niż się spodziewałem. W ten sposób nie musisz drukować w 3D mocowania silnika i jest to łatwe do wykonania. Następnie wygiąłem 2 aluminiowe paski, aby bardzo mocno trzymać silniki. Następnie wyciąłem deskę i wywierciłem w niej otwory na panele słoneczne. Następnie przyklej na nim panele słoneczne i przylutuj przewody do paneli słonecznych. Wtedy będziesz musiał również zrobić krzyżyk z czarnego materiału. Jeśli nie masz nic czarnego, możesz użyć czarnej taśmy. Ten krzyż będzie trzymał LDR w każdym rogu, dzięki czemu Arduino może porównać pomiary z LDR i obliczyć, w jakim kierunku musi się skręcić. Więc wywierć małe dziurki w każdym rogu, aby zmieścić tam LDR. Teraz pozostało tylko zrobić płytę podstawy i coś, do czego można włożyć elektronikę. W płycie podstawy trzeba będzie wywiercić w niej otwór, aby poprowadzić wszystkie przewody. Jeśli chodzi o pomiary, nie podam żadnych, ponieważ tak naprawdę od Ciebie zależy, jak chcesz to zaprojektować. Jeśli masz inne silniki lub inne panele słoneczne, będziesz musiał sam obliczyć pomiary.
Krok 3: Projekt elektryczny
Moc
Cały system działa na bateriach (z wyjątkiem Raspberry Pi). Umieściłem szeregowo 3 baterie. 1 bateria ma średnio 3,7 V, więc 3 w szeregu dają około 11 V. Ten 3-sekundowy pakiet baterii jest używany do silników i nadajnika RF. Pozostała bateria służy do zasilania Arduino Pro Mini i czujników. Do ładowania akumulatorów użyłem 4 modułów TP4056. Każda bateria ma 1 moduł TP4056, każdy moduł jest podłączony do panelu słonecznego. Ponieważ moduł ma B (wejście) i B (wyjście), mogę je ładować osobno i rozładowywać szeregowo. Upewnij się, że kupujesz odpowiednie moduły TP4056, ponieważ nie wszystkie moduły mają B(in) i B(out).
Kontrola
Arduino Pro Mini steruje czujnikami i silnikami. Pin surowy i uziemiający Arduino jest podłączony do wzmacniacza 5V. Wzmacniacz 5V jest podłączony do pojedynczej baterii. Arduino Pro Mini ma bardzo niski pobór mocy.
składniki
DHT22: Podłączyłem ten czujnik do VCC i uziemienia, następnie podłączyłem pin danych do pinu cyfrowego 10.
BMP180: Podłączyłem ten czujnik do VCC i Ground, podłączyłem SCL do SCL na Arduino i SDA do SDA na Arduino. Bądź ostrożny, ponieważ piny SCL i SDA na Arduino Pro Mini znajdują się na środku płytki, więc jeśli przylutowałeś piny do płytki i umieściłeś ją w płytce stykowej, nie zadziała, ponieważ będziesz mieć zakłócenia z innych pinów. Wlutowałem te 2 piny na górze płytki i bezpośrednio do niej podłączyłem przewód.
Nadajnik RF: Podłączyłem go do akumulatora 3s, aby uzyskać lepszy sygnał i większy zasięg. Próbowałem podłączyć go do 5 V z Arduino, ale wtedy sygnał RF jest bardzo słaby. Następnie podłączyłem pin danych do pinu cyfrowego 12.
LDR: Podłączyłem 4 LDR do pinów analogowych A0, A1, A2, A3. Połączyłem LDR z rezystorem 1K.
Silniki: Silniki są napędzane przez 2 moduły sterujące DRV8825. Są bardzo przydatne, ponieważ zajmują tylko 2 linie wejściowe (kierunek i krok) i mogą wytwarzać do 2 A na fazę do silników. Mam je podłączone do cyfrowych pinów 2, 3 i 8, 9.
LCD: Podłączyłem lcd do Raspberry Pi, aby pokazać jego adres IP. Do regulacji podświetlenia użyłem trymera.
Odbiornik RF: Podłączyłem odbiornik do Arduino Uno na 5V i uziemieniu. Odbiornik nie powinien przyjmować więcej niż 5V. Następnie podłączyłem pin danych do pinu cyfrowego 11. Jeśli możesz znaleźć bibliotekę dla tych modułów RF, która działa na Raspberry Pi, nie musisz używać Arduino Uno.
Raspberry Pi: Raspberry Pi jest podłączony do Arduino Uno za pomocą kabla USB. Arduino przekazuje sygnały RF do Raspberry Pi za pośrednictwem połączenia szeregowego.
Krok 4: Zacznijmy kodować
Do zakodowania Arduino Pro Mini potrzebny będzie programator FTDI. Ponieważ Pro Mini nie ma portu USB (aby oszczędzać energię), będziesz potrzebować tej tabliczki zaciskowej. Zaprogramowałem kod w Arduino IDE, myślę, że to najłatwiejszy sposób. Prześlij kod z pliku i powinno być gotowe.
Aby zakodować Arduino Uno, podłączyłem go do komputera za pomocą kabla USB. Po wgraniu kodu podłączyłem go do Raspberry Pi. Udało mi się również zmienić kod na Raspberry Pi, ponieważ zainstalowałem Arduino IDE i mogłem go stamtąd zaprogramować. Kod jest bardzo prosty, pobiera dane z odbiornika i przesyła je przez port szeregowy do Raspberry Pi.
Aby zakodować Raspberry Pi, zainstalowałem Raspbian. Następnie użyłem Putty, aby połączyć się z nim przez połączenie SSH. Następnie konfiguruję Raspberry, abym mógł połączyć się z nim przez VNC, a tym samym mieć GUI. Zainstalowałem serwer Apache i zacząłem kodować backend i frontend dla tego projektu. Kod znajdziesz na github:
Krok 5: Baza danych
Do przechowywania danych używam bazy danych SQL. Bazę danych wykonałem w MySQL Workbench. Baza danych zawiera odczyty czujnika i dane czujnika. Mam 3 tabele, jedną do przechowywania wartości czujników ze znacznikami czasu, drugą do przechowywania informacji o czujnikach i ostatnią do przechowywania informacji o użytkownikach. Nie używam tabeli Users, ponieważ nie kodowałem tej części projektu, ponieważ nie było jej w moim MVP. Pobierz plik SQL i uruchom go, a baza danych powinna być gotowa.
Zalecana:
Profesjonalna stacja pogodowa wykorzystująca ESP8266 i ESP32 DIY: 9 kroków (ze zdjęciami)
Profesjonalna stacja pogodowa przy użyciu ESP8266 i ESP32 DIY: LineaMeteoStazione to kompletna stacja pogodowa, która może być połączona z profesjonalnymi czujnikami firmy Sensirion, a także z niektórymi komponentami Davis Instrument (deszczomierz, anemometr) Projekt jest przeznaczony do samodzielnej stacji pogodowej, ale wymaga tylko
Stacja pogodowa NaTaLia: stacja pogodowa zasilana energią słoneczną Arduino Wykonana we właściwy sposób: 8 kroków (ze zdjęciami)
Stacja pogodowa NaTaLia: Stacja pogodowa zasilana energią słoneczną Arduino Wykonana we właściwy sposób: po roku udanej pracy w 2 różnych lokalizacjach dzielę się planami projektu stacji pogodowej zasilanej energią słoneczną i wyjaśniam, jak ewoluował w system, który może naprawdę przetrwać przez długi czas okresy z energii słonecznej. Jeśli obserwujesz
Stacja pogodowa DIY i stacja czujników WiFi: 7 kroków (ze zdjęciami)
DIY Stacja pogodowa i stacja z czujnikami WiFi: W tym projekcie pokażę Ci, jak stworzyć stację pogodową wraz ze stacją czujników WiFi. Stacja czujnikowa mierzy lokalne dane dotyczące temperatury i wilgotności i przesyła je przez Wi-Fi do stacji pogodowej. Stacja pogodowa wyświetla następnie t
ESP32 Solarna stacja pogodowa: 4 kroki (ze zdjęciami)
ESP32 Solar Weather Station: W moim pierwszym projekcie IoT chciałem zbudować Stację Pogodową i przesłać dane do data.sparkfun.com. Mała korekta, kiedy zdecydowałem się otworzyć konto w Sparkfun, nie akceptowali większej liczby połączeń, więc ja wybierz inny moduł zbierający dane IoT, który
Solarna stacja pogodowa Raspberry Pi: 7 kroków (ze zdjęciami)
Solarna stacja pogodowa Raspberry Pi: zachęcony ukończeniem moich dwóch poprzednich projektów, kamery kompaktowej i przenośnej konsoli do gier, chciałem znaleźć nowe wyzwanie. Naturalnym postępem był zdalny system zewnętrzny… Chciałem zbudować stację pogodową Raspberry Pi, która