Centralnym elementem projektowanej przeze mnie stacji meteo jest oczywiście płytka PCB z elektroniką. To do niej podłączone są wszystkie czujniki oraz znajduje się na niej główny procesor. Projekt płytki jest rozwinięciem poprzedniej wersji, która działa od półtora roku. Jednak wraz z upływem czasu zauważyłem w niej pewne niedociągnięcia oraz miejsce na usprawnienia. Stąd właśnie dziś prezentuję jej kolejną wersję, która dzięki zdobytym przez ten czas doświadczeniom pozwoli stworzyć bardziej zaawansowane i niezawodne urządzenie.
ESP8266 – główny procesor
Niezmiennie od pierwszych prototypów stacji, głównym procesorem jest układ firmy Espressif – ESP8266. Wbudowane w ten układ WiFi zapewnia mi banalnie prostą komunikację serwerem. Kolejnym jego atutem jest spora ilość pamięci flash i RAM oraz możliwość programowania w Arduino. Wybrałem wersję ESP-07 ze względu na obecne na nim złącze pozwalające podłączyć zewnętrzną antenę. Stacja znajduje się w pewnej odległości od budynku, więc antena pozwala zapewnić lepszą stabilność sygnału WiFi.
Zegar RTC i przetwornik ADC
Poza głównym procesorem, na płytce znajdują się jeszcze dwa układy scalone. Pierwszy z nich, to od dawna stosowany przeze mnie zegar RTC DS3231, który zapewnia stacji zawsze aktualny czas. Synchronizację czasu stacja przeprowadza poprzez WiFi z moim serwerem, na którym znajduje się część webowa systemu.
Zadaniem przetwornika ADC (zastosowałem ADS1115) jest przede wszystkim pomiar napięcia generowanego przez wiatromierz. Na podstawie tego napięcia, stacja może później obliczyć prędkość wiatru w m/s. Kolejnym zadaniem jest kontrola napięcia zasilania czujnika. Dwa pozostałe wejścia przetwornika wyprowadzone są na goldpiny do ewentualnego późniejszego, jeszcze nieprzewidzianego zastosowania.
Dedykowane złącza
Jednym z błędów jaki popełniłem w poprzedniej wersji stacji, a które postanowiłem rozwiązać teraz było nie stosowanie złącz pod konkretne czujniki. Na goldpiny wyprowadzone były takie sygnały jak I2C czy zasilanie i każdy kabel rozdzielał się na przewody podłączone w różnych miejscach płytki. W efekcie czego w obudowie stacji panował chaos i plątanina kabli. Dlatego tym razem zdecydowałem się zastosować dedykowane złącza, dla każdego z podłączanych czujników. Dzięki temu jeden przewód od razu jest połączony tylko w jednym punkcie z płytką PCB.
Projekt płytki PCB
Projekt płytki wykonałem w programie Eagle. Finalnie jest to dwuwarstwowa płytka PCB o wymiarach w przybliżeniu 100x50mm. Ze względu na to, że nie miałem jeszcze okazji wykonywać dwuwarstwowej płytki PCB domowym sposobem, zadanie to postanowiłem zlecić profesjonalistom. Wsparcie w tym zakresie zapewniła mi firma PCBWay, która zdecydowała się za sponsorować ten projekt.
Plik projektu w formacie gerber przesłałem na tej stronie. Po dosłownie kilku chwilach został on zaakceptowany przez PCBway i mogłem kontynuować zamówienie. Na stronie mogłem śledzić kolejne etapy produkcji aż do wysyłki paczki. Wybrałem dostawę poprzez PostNL gdyż czas nie był dla mnie priorytetem w przeciwieństwie do kosztów transportu 🙂 Mimo wszystko czas dostawy okazał się naprawdę dobry i wyniósł niecałe 3 tygodnie. Niestety zmiana przepisów w sprawie podatku VAT od towarów z Chin sprawiła, że taki podatek musiałem zapłacić przy odbiorze paczki.
Jak możecie zauważyć na załączonych zdjęciach, płytka wykonana jest profesjonalnie i wygląda bardzo schludnie. Soldermaska, warstwa opisowa i pocynowane pola lutownicze dodają powagi temu projektowi. Jest to bardzo ważne, gdyż urządzenie będzie pracować na dworze, gdzie warunki atmosferyczne nie będą jej oszczędzać.
Podczas lutowania elementów SMD zastosowałem po raz pierwszy w życiu pastę lutowniczą ze sproszkowanym spoiwem oraz lutownicę Hot Air. Efekt przerósł moje oczekiwania, był naprawdę fenomenalny. Na poniższych zdjęciach możecie zobaczy <prawie> finalny efekt. Zabrakło jeszcze układu przetwornika ADC, gdyż jak dotąd paczka jeszcze do mnie nie dotarła 🙂
Moduł zasilania
Jak możecie zauważyć, płytka nie posiada wbudowanego żadnego stabilizatora napięcia czy zasilacza. Rolę tą będzie pełnił osobny moduł zasilacza, który dostarczy do głównej płytki wszystkie niezbędne napięcia czyli: 3,3V, 5V i 12V. Oprócz tego płytka zasilacza będzie podłączona magistralą I2C aby przekazywać dane z układów scalonych na niej zwartych, takich jak:
- INA219 – moduł pomiaru mocy – do pomiaru mocy z panela słonecznego
- PCF8591P – przetwornik ADC – do pomiaru napięć baterii, przetwornic itp
- PCF8574AN – ekspander wyprowadzeni mikrokontrolera – do przełączania źródeł zasilania
Moduł zasilania ze względu na fakt, iż zawierać będzie sporo gotowych płytek (ładowarka Li-ion, moduł z INA219) najprawdopodobniej powstanie na płytce prototypowej. Nie wykluczam jednak, że w przypływie energii zechcę jednak zaprojektować dedykowaną płytkę, jeśli tak się stanie z pewnością opiszę ją tutaj na stronie 🙂
0 komentarzy