Makowe przygody z elektroniką [#8]
W końcu nadszedł ten moment, kiedy w ramach naszej przygody z elektroniką zajmiemy się połączeniem tworzonych układów z tzw. Internetem rzeczy. Dzięki temu zyskamy nowe możliwości sprawiające, że nasze projekty będą mogły stać się praktycznymi pomocnikami w codziennym, zabieganym życiu.
Strona 1 z 2
Temat integracji elektroniki z Internetem rzeczy może stanowić śmiało temat niejednego grubego podręcznika. Na szczęście istnieją proste sposoby na uzyskanie zadowalających połączeń, bez konieczności zagłębiania się w zaawansowane mechanizmy do których dojedziemy w dalszych częściach kursu. Na tym etapie skupimy się na możliwie prostym połączeniu układu elektronicznego z chmurą IoT (z ang. „Internet of Things”, Internet rzeczy), która będzie stanowić rolę agregatora gromadzonych danych. Naszym pierwszym projektem będzie monitor temperatury i wilgotności powietrza oparty na module NodeMCU z ESP8266 oraz chmurze Ubidots.
Potrzebne materiały
- moduł NodeMCU z ESP8266
- rezystor 10kΩ
- czujnik DHT22 (lub opcjonalnie DHT11)
- płytka stykowa
- kabelki połączeniowe
- zasilacz z kabelkiem zakończonym złączem microUSB (do zasilenia NodeMCU)
Czym jest NodeMCU z ESP8266?
Jest to układ elektroniczny oparty o moduł Wi-Fi ESP8266 dodatkowo wyposażony w:
- 10 pinów GPIO (każdy z nich może być sterowany sygnałem PWM),
- magistralę I2C,
- 1-Wire,
- 10-bitowy przetwornik analogowo-cyfrowy
- antenę PCB.
Co ważne na płytce został umieszczony konwerter USB-UART (CP2102) umożliwiający programowanie bezpośrednio poprzez port USB z wykorzystaniem środowiska Arduino IDE. W praktyce oznacza to, że możemy programować ten układ prawie tak samo jak klasyczne Arduino UNO, musimy jedynie zwrócić uwagę na różnicę w wejściach i wyjściach:
Konfiguracja chmury Ubidots
- Zakładamy konto na https://app.ubidots.com/accounts/signup/
- Po zalogowaniu przechodzimy do zakładki „My profile” korzystając z rozwijalnego menu w prawym górnym rogu ekranu.
- Wybieramy z lewego menu „API Keys”.
- Generujemy nowy „Authentications Tokens” korzystając z przycisku „Create Token” (możemy nadać mu dowolną nazwę).
- Kopiujemy wygenerowany token (będzie nam potrzebny do konfiguracji w kodzie źródłowym programu).
Konfiguracja środowiska Arduino IDE do współpracy z NodeMCU i chmurą Ubidots
- Otwieramy środowisko Arduino IDE
- Wybieramy z górnego menu Arduino > Preferences
- Wpisujemy adres http://arduino.esp8266.com/stable/package_esp8266com_index.json do pola „Dodatkowe adresy URL do menadżera płytek” (można podać kilka w osobnych liniach)
- Przechodzimy do okna Narzędzia > Płytki (lub konkretna wybrana wcześniej płytka) > Menadżer płytek
- Wpisujemy ESP8266 w wyszukiwarkę i instalujemy odszukaną paczkę.
- Przechodzimy do Narzędzia > Płytka i wybieramy „NodeMCU 1.0(ESP12E module)”
- Pobieramy bibliotekę UbidotsMicroESP8266
- Wybieramy Szkic > Dołącz bibliotekę > Dodaj bibliotekę .ZIP…
- Wybieramy pobraną w punkcie 7 bibliotekę UbidotsMicroESP8266 i akceptujemy jej instalację.
- Zamykamy i ponownie uruchamiamy środowisko Arduino.