Kurs Intel Edison – #8 – Konfiguracja Intel IoT Analytics

Kurs Intel Edison – #8 – Konfiguracja Intel IoT Analytics

W poprzedniej części kursu zobaczyliśmy jak od podstaw napisać własny serwer www. Okazuje się, że takie rozwiązanie ma kilka mankamentów.

Pierwszym jest komplikacja kodu programu, drugi to brak dostępu do naszego modułu spoza sieci lokalnej (o ile nie mamy publicznego adresu IP). Na szczęście są lepsze, darmowe rozwiązania, o których więcej w tym artykule.

Teraz poznamy rozwiązanie dostarczone przez Intela, które pozwala na pozbycie się powyższych problemów. Intel Cloud Analytics, jest to w pełni darmowa platforma, pozwalająca na zbieranie i przetwarzanie danych oraz zdalne sterowanie urządzeniami.

Zestaw elementów do kursu

 999+ pozytywnych opinii  Gwarancja pomocy  Wysyłka w 24h

Elementy konieczne do wykonania ćwiczeń zebrane zostały w gotowe zestawy, które można nabyć w Botlandzie. W kuferku znajdziecie ponad 180 elementów w tym moduł Intel Edison!

Zamów w Botland.com.pl »

Na początek musimy założyć konto na stronie projektu: https://dashboard.us.enableiot.com

iot_01

Strona główna projektu Intel IoT Analytics.

Proces rejestracji jest typowy, wystarczy kliknąć na link widoczny w dolnej części strony (Sign Up Here), a następnie wypełnić formularz danymi:

iot_02

Rejestracja do Intel IoT Analytics.

Po potwierdzeniu naszego adresu email, będziemy mogli zalogować się do systemu:

iot_03

Panel główny Intel IoT Analytics.

Na ekranie zobaczymy tzw. dashboard z informacjami podsumowującymi projekt. W lewej części okna znajdziemy rozwijane menu:

iot_04

Rozwijane menu Intel IoT Analytics.

W dalszej części będziemy wykorzystywać dostępne w nim opcje, teraz krótko o każdej z nich:

  • Dashboard - widok początkowy z podsumowaniem stanu naszego projektu,
  • Charts - wykresy danych z czujników,
  • Rules - definicje alarmów (np. o przekroczeniu dopuszczalnej temperatury),
  • Devices - lista zarejestrowanych urządzeń oraz ich konfiguracja,
  • Control - sterowanie urządzeniami wykonawczymi (tzw. aktuatorami),
  • Account - ustawienia konta,
  • Alerts - zgłoszone alarmy,
  • About - informacja o systemie.

Ponieważ nie mamy jeszcze skonfigurowanych żadnych urządzeń, musimy dodać nasz moduł Intel Edison do systemu. W tym celu łączymy się z nim za pomocą portu szeregowego lub ssh.

Na początek powinniśmy upewnić się, czy data ustawiona w module jest poprawna. Edison pobiera datę i godzinę z serwera NTP, jednak na wszelki wypadek lepiej sprawdzić to poleceniem date:

iot_06

Sprawdzenie ustawionej daty.

Domyślny obraz systemu, który jest zainstalowany na naszym module Edison posiada już oprogramowanie IoT Kit służące do komunikacji z Cloud Analytics.

W tle działa usługa (daemon), iotkit-agent, a do komunikacji z chmurą mamy program iotkit-admin. Aby upewnić się, że wszystko działa, wydajemy polecenie: iotkit-admin test

iot_07

Test iotkit-admin na Intel Edison.

Więcej o działaniu pakietu IoT znajdziemy na stronie producenta. Jako ilustrację dołączam schemat blokowy ze strony Intela:

Iot_agent

Zasada działania chmury Intel IoT Analytics.

W największym uproszczeniu - na module Edison, w tle, działa usługa iot-agent. Komunikuje się ona z serwerem Cloud Analytics wysyłając dane z czujników oraz pobierając polecenia dla aktuatorów. Cała komunikacja odbywa się automatycznie i nie musimy się nią zbytnio zajmować.

Rejestracja urządzenia w chmurze

Każde urządzenie podłączone do systemu musi posiadać swój identyfikator. Domyślnie jest to MAC adres karty sieciowej. Aby sprawdzić jaki jest adres naszego urządzenia, wydajemy polecenie:

iot-admin get-device-id

iot_08

Sprawdzenie adresu MAC modułu Intel Edison.

Istnieje również możliwość zmiany identyfikatora urządzenia (poleceniem set-device-id). Aby połączyć nasz moduł z systemem Cloud Analytics, musimy uzyskać kod aktywacyjny.

Logujemy się więc do systemu (o ile nie byliśmy już zalogowani) i wybieramy opcję Account. Następnie ikonkę z oczkiem widoczną po prawej stronie pola Activation Code:

iot_10

Kopiowanie kodu aktywacyjnego.

Teraz wracamy do konsoli modułu Edison i uruchamiamy polecenie: iotkit-admin activate <code>, gdzie zamiast <code> podajemy kod aktywacyjny ze strony:

iot_11

Aktywacja urządzenia w chmurze.

Urządzenie powinno zostać podłączone do systemu. Gdy wrócimy do strony początkowej (Dashboard-u), zobaczymy że jest już jedno, aktywne urządzenie:

iot_12

Podgląd aktywnych urządzeń połączonych z naszą chmurą.

Więcej informacji o naszym urządzeniu możemy zobaczyć wchodząc w opcję Device:

iot_13

Edycja informacji dotyczących naszego urządzenia.

Rejestracja komponentów systemu

Mamy już nasz moduł moduł w systemie, jednak nie skonfigurowaliśmy jeszcze żadnych czujników. W nazewnictwie Cloud Analytics, zarówno czujniki, jak i elementy wykonawcze (aktuatory) nazywane są komponentami.

Można dodawać własne typy komponentów lub wykorzystywać wbudowane. Listę początkowych typów komponentów zobaczymy wybierając opcję menu Account, a następnie zakładkę Catalog:

iot_14

Katalog domyślnie dostępnych komponentów.

Dostępne rodzaje komponentów można również zobaczyć z poziomu Edisona, wydając polecenie iotkit-admin catalog

iot_15

Podgląd dostępnych komponentów z poziomu Edisona.

Aby powiadomić system, że pewien czujnik jest podłączony do naszego modułu, musimy go zarejestrować. Rejestrując podajemy nazwę czujnika oraz typ komponentu. Przykładowo, możemy mieć 2 termometry - jeden w pokoju, drugi za oknem. Oba będą wówczas połączone z komponentem temperature.v1.0, ale fizycznie będą to zupełnie różne czujniki.

Jako przykład zarejestrujemy termometr. Niech nazywa się "testowy" i odwołuje do komponentu "temperature.v1.0". Rejestracja czujnika odbywa się z poziomu konsoli Edison-a. Wydajemy polecenie: iotkit-admin register testowy temperature.v1.0

iot_18

Rejestracja nowego czujnika w chmurze.

Za chwilę zobaczymy jak nasz czujnik wygląda w Cloud Analytics, jednak najpierw dodajmy kilka przykładowych danych. Do wysyłania takich "udawanych" pomiarów służy polecenie:

 iotkit-admin observation <czujnik> <wynik>

Gdzie zamiast <czujnik> podajemy nazwę czujnika, a <wynik> zastępujemy wartością. Jako przykład dodajmy odczyty: 1.1, 5.1, 2.2, 3.14:

iot_19

Wysyłanie do chmury przykładowych odczytów.

Teraz możemy wrócić do Cloud Analytics i zobaczyć efekty. Najpierw zobaczmy parametry naszego urządzenia. Pojawiła się opcja Components, w niej znajdziemy nasz nowo zarejestrowany czujnik. Klikając na nim, poznamy szczegóły jego działania - typ danych, jednostki itd.

Wiemy, że nasz czujnik jest już widoczny w systemie. Wybierzmy więc z menu zakładkę Charts, aby zobaczyć wykres danych z czujnika. W polu Selecte Device wybieramy nasz moduł, następnie wybieramy czujnik w polu Component i powinniśmy zobaczyć pierwszy wykres:

iot_22

Graficzne przedstawienie danych, które trafiły do chmury.

Podsumowanie

W pierwszej chwili konfiguracja może wydawać się nieco zawiła. Jednak postępowanie krok-po-kroku według instrukcji to nic trudnego. Co najważniejsze, gdy już raz przejdziemy powyższą procedurę będzie już tylko łatwiej.

Mając skonfigurowany moduł, będziemy mogli napisać własny program odczytujący dane z czujników. Temat ten rozwiniemy w kolejnej części kursu programowania modułu Intel Edison.

Nawigacja kursu

Nie chcesz przeoczyć kolejnych części kursu? Skorzystaj z poniższego formularza i zapisz się na powiadomienia o nowych artykułach!

Autor kursu: Piotr (Elvis) Bugalski
Redakcja: Damian (Treker) Szymański

chmura, Edison, Intel, IoT, kursEdison

Trwa ładowanie komentarzy...