Pogodełko, gdy dotrze do Ciebie jest już wyposażone we wsad, który na wyświetlaczu LCD pokazuje mierzone wartości. Ale chciałoby się mieć więcej danych oraz by te dane archiwizować. No a wykresy to jest to co wszyscy lubią najbardziej. Skoro serce Pogodełka jest oparte o ESP8266, a dokładniej o nodeMCU v3, więc mamy do dyspozycji łączność WiFi. Jeśli tylko postawisz Pogodełko w miejscu w którym masz dostęp do Internetu przez WiFi - możesz mieć swoje pierwsze urządzenie IoT (Internet of Things). Pogodełko wyśle wszystko w chmurę. Tak.
Wymagania
Na potrzeby gromadzenia i wizualizacji danych wybraliśmy serwis openSenseMap, powstały w Niemczech serwis do zbierania danych z czujników środowiskowych. Różni się tym od komercyjnych rozwiązań (jak np ThingSpeak), że wszystkie dane, które są wysyłane do openSenseMap są powszechnie dostępne.
Aby Twoje Pogodełko mogło korzystać z serwisu niezbędne będą następujące kroki:
- Rejestracja w openSenseMap i utworzenie sensora w tym serwisie
- Wgranie nowego wsadu do Pogodełka
- Konfiguracja Pogodełka do wysyłania danych do openSenseMap
Plan już mamy, więc po kolei - do dzieła:
Rejestracja w openSenseMap
Proces jest standardowy, jak w wielu innych serwisach. Idziemy na stronę rejestracji użytkownika i wypełniamy pola. Podajemy adres email, który trzeba będzie potem potwierdzić (tradycyjnie, trzeba kliknąć link, który zostanie do nas wysłany). Po skończeniu tego procesu trzeba utworzyć sensor w serwisie. Sensor, jako platforma, jedno urządzenie. Może ono mieć wiele czujników. I tak Twoje pogodełko będzie jednym sensorem (w serwisie używana jest nazwa senseBox), który ma czujniki temperatury i ciśnienia. Dla wariantu z czujnikiem BME280 również trzeci czujnik - wilgotności.
Dodanie sensora może się odbyć z kokpitu, przez kliknięcie przycisku New senseBox. Również gdy kończysz rejestrację w serwisie, zostaniesz od razu przekierowany do tworzenia senseBoxa. Pierwszy krok to akceptacja warunków. Pamiętaj, wszystko co wpiszesz w openSenseMap będzie publicznie dostępne.
Następny krok też jest dość intuicyjny. Podajesz nazwę swojego urządzenia (Name of Your station), wybierasz indoor jako Exposure (czyli informacja że Twój czujnik jest w pomieszczeniu zamkniętym, nie na zewnątrz). Na mapie w sekcji Location wskaż miejsce, gdzie jest zainstalowany.
W sekcji Hardware kliknij na Manual config. Wypełnij pola sensorów (kliknij Add sensor by pojawiły się kolejne), w takiej kolejności jak na zdjęciu. Ikony, nazwy możesz pozmieniać nieco, ale pamiętaj, że Pogodełko będzie wysyłać dane w takiej kolejności, więc wpisanie najpierw ciśnienia a potem temperatury oznaczać będzie, że podczas konfiguracji nowego wsadu Pogodełka będziesz musiał kombinować. Zrób kolejność wielkości fizycznych jak na zdjęciu, będzie prościej.
Dla Pogodełek z czujnikiem BMP280, wpisz tylko dwie pozycje (temperatura i ciśnienie) dla tych z BME280 dodaj trzecią pozycję.
Kliknij Next by zobaczyć podsumowanie i jeśli się wszystko zgadza - kliknij Finish. Pamiętaj, że dane które tam wyślesz będą w domenie publicznej. I o to chodzi, bo mamy dość zamkniętych serwisów trzymających dane tylko dla siebie!
Dostaniesz tabelkę z danymi Twojego sensora. Najważniejsze teraz to senseBoxID oraz identyfikatory poszczególnych sensorów. Zostaw otwartą tą stronę, dane te przydadzą się za chwilę. Oczywiście te ID są też dostępne w kokpicie, ale tutaj masz je wszystkie na jedynym ekranie.
Wgranie nowego wsadu
Ściągnij binarny wsad dla różnych wersji:
Wybierz właściwy w zależności od Twojego Pogodełka. Jeśli się pomylisz, podczas startu Pogodełko na wyświetlaczu napisze, że nie może znaleźć sensora. Moduł nie zostanie uszkodzony, będziesz mógł ponowić próbę. Skorzystaj z ogólnej instrukcji wgrywania wsadów na nodeMCU. Gdy uda Ci się wgrać, przystąpimy do konfiguracji nowego Pogodełka.
Wprowadzimy je w specjalny tryb, w którym będzie access pointem. Podłączymy się do niego i skonfigurujemy dane potrzebne do wysyłania danych do openSenseMap. Po wgraniu wsadu odczekaj kilkanaście sekund. Sprawdź w komputerze, powinieneś zobaczyć nową sieć WiFi o nazwie "APConfig XXXXXX". Oczywiście zamiast iksów będą tam litery i cyfry - specjalny identyfikator modułów ESP. Hasło do tej sieci to pogodelko. Bez polskich znaków, pisane małymi literami. Podłącz się do tej sieci. Gdy to zrobisz, w przeglądarce wpisz adres http://192.168.4.1/admin. Zobaczysz stronę konfiguracji Pogodełka.
Kolejne pola to:
- nazwa sieci WiFi (SSID)
- hasło do sieci WiFi
- senseBox ID
- SensorID dla temperatury
- SensorID dla ciśnienia
- SensorID dla wilgotności (jeśli masz BME280)
Pamiętaj, wpisz swoje senseBox ID oraz sensor ID. Nie zapomnij wpisać również nazwy sieci WiFi (SSID) oraz hasła do niej. Kliknij update i zrestartuj nodeMCU. Na ekranie LCD zaraz po uruchomieniu powinien pojawić się komunikat o podłączeniu się do sieci. To znaczy, że konfiguracja sieci WiFi jest w porządku, Pogodełko się podłączyło, w ciągu 2-3 minut w serwisie openSenseMap powinny pojawić się pierwsze odczyty. Pogodełko wysyła dane co 60 sekund, stąd ten interwał.
Jeśli Pogodełko ma skonfigurowane WiFi to po starcie przez kilka sekund wyświetli adres IP które otrzymało (na razie nie ma żadnej strony WWW pod tym adresem), jest to informacja dla Ciebie, że konfiguracja WiFi jest OK.
Efekt końcowy
W swoim kokpicie (dashboard) na stronie openSenseMap znajdziesz swój senseBox. Kliknij na "Show" a zobaczysz mapę z zaznaczoną lokalizacją sensora. Z prawej możesz rozwinąć wykresy, gdzie można przeglądać historyczne dane z Twojego sensora. Od teraz możesz w każdej chwili sprawdzić jakie warunki panują tam gdzie postawiłeś Pogodełko.
Reset konfiguracji Pogodełka
Jeśli kiedykolwiek na nowo będziesz potrzebować ustawić konfigurację pogodełka, skorzystaj z procedury rekonfiguracji. Naciśnij raz przycisk reset w nodeMCU. Następnie po upływie sekundy ale nie później niż po 5 sekundach naciśnij reset drugi raz. Pogodełko wystartuje w trybie konfiguracji podobnym do tego opisanego wyżej. Różnica będzie taka, że pojawi się nowa sieć WiFi o nazwie APConfig bez ciągu dodatkowych znaków. Ponadto nie będzie zabezpieczona hasłem. Podłącz się do niej, wejdź na adres http://192.168.4.1/admin i wpisz nową konfigurację.
Musisz nacisnąć przycisk Update na stronie Pogodełka, inaczej nowa konfiguracja nie zapisze się. Inaczej mówiąc przypadkowe wciśnięcie dwa razy reset nie usunie już istniejącej konfiguracji. Dopiero wpisanie nowej i naciśnięcie przycisku Update nadpisze starą konfigurację.