Pogodełko – IoT w pogodzie – część 1

Szukaliśmy w Nettigo pomysłu na projekt, który będzie kompletnym, niedrogim a jednocześnie interesującym wprowadzeniem w elektronikę i świat IoT. Ma dotrzeć do ludzi, którzy nie mają żadnego doświadczenia z programowaniem i elektroniką, a bark im determinacji by samemu zgłębiać te zagadnienia. Idealnie by projekt dawał szybko radość ze zbudowania czegoś samemu a jednocześnie nie ograniczał możliwości poznawczych. Po złożeniu projektu ma on działać i pozwalać sie w następnych krokach modyfikować. W ten sposób pozwoli zaznajomić się z zagadnieniami programowania, IoT i elektroniki. Wpadliśmy na pomysł, który po zbudowaniu prototypu otrzymał nazwę Pogodełko. Dlaczego? Wkrótce się przekonacie.

Zacznijmy od początku. Platforma, której chcieliśmy użyć powinna być zgodna z Arduino, tak by w miarę łatwo było znaleźć informacje potrzebne do programowania. Następnie – powinna być wyposażona w dobre możliwości komunikacyjne ze światem zewnętrznym a jednocześnie była przystępna cenowa.

Znam jedną taką platformę – nodeMCU. Niedrogie kontrolery, można je programować z użyciem Arduino IDE, mają bogate wsparcie społeczności. Do tego WiFi na pokładzie i cena w okolicy 25 zł. Świetnie. Teraz pytanie, czym się to nodeMCU ma zająć?

Przeglądając komponenty, które mamy w ofercie, naszym oczom rzucił się adapter z BMP280. Jest to czujnik firmy Bosch, który mierzy ciśnienie i temperaturę. Doskonale nadaje się jako czujnik do stacji pogodowej.

Jak zaprezentować użytkownikowi dane? Oczywiście, mając WiFi na nodeMCU mamy sporo możliwości. Można dane wysyłać do zewnętrznych serwisów, zrobić stronę WWW prezentującą dane a może jeszcze coś innego. Wymaga to jednak trochę konfiguracji, której chcielibyśmy w pierwszym kroku uniknąć, dlatego zdecydowaliśmy się na użycie wyświetlacza LCD i z adapterem I2C.

Całość wystarczy zmontować korzystając z krótkich przewodów żeńsko-żeńskich, podłączyć do zasilania przez kabel micro-usb i gotowe! Decydując się na zestaw Pogodełko otrzymasz wstępnie zaprogramowane nodeMCU, tak by po podłączeniu zgodnie ze schematem otrzymać działający układ.

Jaki schemat połączeń? Ano taki:

Kilka uwag:

  • kolory przewodów nie mają znaczenia
  • upewnij się że wszystko podłączyłeś jak na schemacie zanim podłączysz kabel microusb do nodeMCU
  • wyświetlacz LCD i adapter na schemacie jest reprezentowany tylko przez sam adapter (to czarne po prawej stronie). Fizycznie będzie on przylutowany z tyłu wyświetlacza LCD.

Gdy wszystko gotowe i sprawdzone podłączamy kabel microusb do nodeMCU i …

No cóż, pięknie nie jest, ale to prototyp

Co jeśli nie działa?

Jeśli wyświetlacz wyświetla kwadraty, albo nic, tylko aktywne jest podświetlenie, weź mały śrubokręt i wyreguluj kontrast – na niebieskim potencjometrze na adapterze przylutowanym z tyłu do LCD.

Co to jest Pogodełko?

Czemu Pogodełko? Ano, po złożeniu prototypu, w moje ręce wpadło pudełko, w którym chcemy wysyłać cały zestaw. Nastąpił jakiś zapłon i… nożyk introligatorski poszedł w ruch. Kilka cięć, przełożenie kabelka, użycie kartki jaki izolatora i… mamy kompletny projekt wraz z obudową!

Zniszczenia po walce ;)
Jednak dało się wcisnąć ekran!
Widok od tyłu – zwróć uwagę jak kabel USB wcześniej przecisnąłem przez otwór w spodzie pudełka
Kartka papieru oddziela płytkę nodeMCU od wyświetlacza, by uniknąć zwarć. Moduł BMP wyprowadzamy na zewnątrz przy zamknięciu pudełka.

Uwaga – to ważny element. Kartka papieru zapewni izolację między metalowymi elementami na wyświetlaczu a nodeMCU. Bez niej może wystąpić zwarcie i nodeMCU może ulec uszkodzeniu.

Delikatnie zamykamy pudełko, może wymagać dociśnięcia, przesunięcia modułów.

Tym samym pokazałem Wam proces powstawania prototypu :) Wy nie musicie się tak męczyć i pewnie rezultat końcowy będzie znacznie ładniejszy. Po pierwsze na stronie Pogodełka znajdziesz plik PDF, który możesz wydrukować. Jest szablon do naklejenia na pudełko (pamiętaj, że mówimy o dolnej ścianie pudełka, a górna krawędź ma być przy miejscu gdzie się pudełko zamyka). Dzięki obrysowi ekranu LCD możesz wyciąć znacznie dokładniej miejsce na wyświetlacz. No i nie będziesz musiał ręcznie opisywać projektu.

Żeby nie być gołosłownym – tak się prezentuje to samo Pogodełko, po użyciu nowego pudełka, naklejeniu szablonu oraz delikatnym wycięciu obszaru na LCD:

Pogodełko – tym razem na porządnie

Jeśli przyjrzysz się uważnie, również kabel USB poprowadzony jest z boku – nożyczkami przebiłem otwór w bocznych ściankach i przyciąłem zakładkę górnej klapy, by można potem swobodnie zamknąć pudełko.

W skrócie

Pogodełko, to zestaw w którym otrzymasz:

  • zaprogramowane nodeMCU
  • czujnik BMP280
  • wyświetlacz LCD 16×2 z konwerter I2C
  • zestaw krótkich przewodów żeńsko-żeńskich do połączenia całości
  • pudełko

Co potrzebujesz by projekt wykonać i uruchomić?

  • kabel micro USB do zasilania
  • nożyczki/nożyk introligatorski
  • drukarkę, papier i klej ;) by wydrukować panel czołowy i zrobić z papieru izolację

Co dalej?

Zostańcie z nami – za chwilę opublikuję następną część mówiąca jak można zaprogramować i zmodyfikować nasze Pogodełko. Tam też kod źródłowy, który jest wgrywany na Pogodełko, oraz nieco więcej dlaczego tak a nie inaczej podłączyliśmy BMP280 (SPI) i LCD (I2C) do nodeMCU.