środa, 11 stycznia 2017

SOLAR POWERED ESP8266 WEATHER STATION

Energooszczędny, przenośny monitor podstawowych warunków atmosferycznych.



Korzystając z wolnego czasu i chęci monitorowania temperatury na zewnątrz,
zmobilizowałem się do wykonania bardzo minimalistycznej stacji meteo.

Podstawowe cechy
Niezależne zasilanie minimalistycznym ogniwem solarnym 6V / 1W
Brak okablowania - dowolna mobilność po posesji, jedyne ograniczenie to zasięg sieci wifi.
Pomiar temperatury, ciśnienia oraz wilgotności.
Monitoring wyników via Net,  http://cbaprs.de lub http://aprs.fi


Dla kogo?
SOLAR wifi-WX powstał dla chcących mieć podgląd na warunki atmosferyczne bez konieczności zasilania z sieci i nie chcących ciągnąć jakiejkolwiek instalacji elektrycznych.
Użytkownicy CB-radio, PMR i innych podobnych zabawek śmiało mogą korzystać z portalu http://cbaprs.de , który jest darmowy i ogólnodostępny.
Sądzę iż mieszkańcy blokowisk, działek też znajdą miejsce do bezinwazyjnej instalacji takiego maleństwa.

W praktyce:
Testowo uruchomiłem dwie stacje

http://cbaprs.dyndns.org/find.cgi?call=ROBUR

http://aprs.fi/#!call=SQ5EKU-1

 Pierwszy to poligon przeróżnych testów, drugi zaś jest testem energetycznym.

 Stacja SQ5EKU-1 została odpalona bez panela solarnego z ogniwem 18650 o pojemności około 1500mAh.

Poniżej pracujący prototyp z BMP180 bez solara w obudowie Z23
Jak długo to popracuje dowiemy się za kilka lub kilkanaście dni.

Co na pokładzie:
Panel solarny 6V / 1W o wymiarach
Całość osadzona na PCB uniwersalnym 5/7 cm
Ogniwo 18650 / 1,5Ah 4,2V
Ładowarka z zabezpieczeniem przed nadmiernym rozładowaniem i przeładowaniem ogniwa, oparta o układ TP4056.
DHT22 - czujnik temperatury oraz wilgotności
BMP180 / BMP280 Pomiar ciśnienia oraz dodatkowa temperatura.
ESP8266 esp-01  układ wifi w który zostało za-implantowane oprogramowanie całego urządzenia.


25,01,2017

W trakcie eksperymentów z prezentowanym układem wyszło na jaw kilka baboli.

- zastosowany czujnik ciśnienia BMP180 jest wadliwy. Miałem tego świadomość ponieważ leżał w śmieciach...
Wada objawiała się przypadkowymi skokami mierzonego ciśnienia.
Zastosowanie liczenia średniej z kilku pomiarów zniwelowało w stopniu zadowalającym przypadłość tego czujnika.
Bez wątpienia winowajcą jest termometr wewnątrz ciśnieniomierza.
Na kilkanaście sztuk które przewinęły mi się przez ręce, taki lipny trafił mi się tylko jeden. Warto mieć to na uwadze gdyby ktoś miał podobne problemy z BMP085, BMP180 lub BMP280.
- Dziwne zachowanie pomiarów wilgotności DHT22 to prawdopodobnie efekt wielokrotnego przemieszczania urządzenia dwór/dom.

Test zasilania z jednego ogniwa bez wspomagania solarem przerwałem po kilkunastu dniach ponieważ pomiar ciśnienia nie dawał mi spokoju.
Prezentowany układ co około 5 minut wysyłał raport pogodowy, wstępne założenie zastosowania Panela Solarnego 1Wat powinno wystarczyć do doładowania ogniwa nawet przy mizernej pogodzie.

10,02,2017
Po wielu testach powstał egzemplarz wysyłający jednocześnie dane do sieci APRS jak również CBAPRS.

Po kilku dniach zabawy dochodzę do wniosku, że opisywane w internecie projekty oparte na układzie ESP8266 szczególnie pisane w arduino to zazwyczaj partyzantka. Materiały które napotykałem zazwyczaj opisywały rozwiązania chwilowe, liczące na łut szczęścia. 
Ostatecznie więcej softu zajmuje zapobieganie przeróżnym zjawiskom niepożądanym, a nie żeli sama obsługa czujników i sieci.
Układ pobiera 50 - 70 mA, aby w stanie spoczynku zejść poniżej 1mA należy na ESP-01 zrobić zworę  jak na rysunku poniżej.
Jeśli ktoś nie czuje się na siłach może skorzystać z innego PCB np ESP-12 gdzie to pin ten mamy wyprowadzony na złącze (GPIO 16).

Ostatecznie użyłem
- ESP-01
- DHT22
- BMP280
- układ ładowania na układzie TP4056
- Panel słoneczny 6V / 1W
- Akumulator 3,7V LI-PO 1200mAh

Bawiących się układem ESP8266 pragnę uczulić o dbałość o właściwe zasilanie układu. Napięcie powinno zawierać się w przedziale 2,8V do max 3,6V. Przy 3,6V układ mocno się grzeje i ma tendencje do wieszania.
Aby układ działał stabilnie na lini zasilania należy dać kondensator min. 220uF, przy 470uF działa już bardzo stabilnie nawet przy słabym zasięgu WIFI.


 Prototyp zamknięty w pudełku nie wiele większym od paczki fajek z wmontowanym czujnikiem DHT22 oraz zamontowanym panelem słonecznym.
Jak widać sprzęcik jest minimalistyczny, zero okablowania :)
Należy go zamontować w miejscu gdzie nigdy bezpośrednio nie będzie na niego padało światło słoneczne.
Akumulator wystarcza na ponad trzy tygodnie pracy bez podładowywania go energią słoneczną.
Wydaje się że nawet bez bezpośredniego padania promieni słonecznych na panel układ powinien się bilansować. Jak jest faktycznie przekonam się za kilka tygodni.

Kilka wykonanych prototypów zapewne jakiś czas będzie działać testowo dla sprawdzenia trwałości takiego rozwiązania. Ogólnie nie widzę większego sensu dla kontynuowania prac nad tym projektem.
Doświadczenie druciarstwa ARDUINOWEGO zdobyte, aby nie uczyć dziadostwa innych użytkowników APRSu, dla nich skupię się nad rozwiązaniami via Radio....

W wolnym czasie postaram się jedynie dopisać prosty konfigurator dla użytkowników CBAPRS, wychodzi na to że będzie to jedyna grupa do której będzie skierowany ten pomysł.

Pomysł na urządzenie był dobry, ostatecznie działał poprawnie. Jednak zabawę w płytki prototypowe uważam za fatalny pomysł na dłuższą mete! Ponieważ padł mi dysk z danymi, projekt został definitywnie zutylizowany. Podobny lecz bardziej rozwojowy pisany od nowa  HUYnia jest kontynuacją zabawy z ESP8266, na miarę możliwości czasowych będzie systematycznie rozwijany.