Połącz Raspberry Pi z QNAP NAS przez QIoT Suite Lite
Rozpocznij pracę z Raspberry Pi (Nodejs)
W tym samouczku nauczysz się podstaw pracy z Raspberry Pi (który działa w systemie Raspbian opartym na systemie Debian). Następnie nauczysz się łączyć swoje urządzenia z serwerem QNAP NAS za pomocą pakietu QIoT Suite Lite.
Upewnij się, że Raspberry Pi i serwer NAS znajdują się w tej samej sieci LAN.
1. Połącz Raspberry Pi z serwerem QNAP NAS
Skonfiguruj urządzenie Raspberry Pi z systemem operacyjnym, ustaw środowisko programistyczne i wdróż aplikację w Raspberry Pi.
1.1 Co będzie Ci potrzebne
- Raspberry Pi
- Karta SD (zalecana jest karta SD o pojemności 8 GB, klasy 4) z zainstalowanym systemem NOOBS.
- Monitor HDMI.
- Klawiatura i mysz USB.
- Zasilanie elektryczne: Urządzenie Pi wymaga zasilania przez micro USB o natężeniu co najmniej 2 A przy napięciu 5 V dla modelu 3B lub 700 mA przy napięciu 5 V w przypadku modeli wcześniejszych.
1.2 Skonfiguruj system Raspbian
- Włóż kartę SD zawierającą wyodrębnione pliki NOOBS do Raspberry Pi
- Podłącz klawiaturę, mysz i monitor HDMI do Raspberry Pi. Podłącz zasilacz. Raspberry Pi nie ma włącznika zasilania i włączy się automatycznie po podłączeniu zasilacza.
- W wyświetlonym menu należy określić jaki system operacyjny ma zostać zainstalowany oraz wybrać język i układ klawiatury. Zaznacz pole wyboru obok opcji Raspbian i kliknij polecenie Zainstaluj.

- Proces instalacji może trwać do 20 minut, a po zakończeniu pulpit Raspbian zostanie uruchomiony ponownie.

- Skonfiguruj połączenie Wi-Fi – W środowisku stacjonarnym znajdź ikonę sieci bezprzewodowej w menu w prawym górnym rogu, a następnie kliknij ją, aby wyświetlić listę dostępnych sieci Wi-Fi.

- Aby połączyć się z Raspberry Pi z innego urządzenia, musisz znać adres IP swojego urządzenia Raspberry Pi. Za pomocą terminala (naciśnij jednocześnie klawisze Ctrl + Alt + t, aby otworzyć terminal) wprowadź nazwę hosta -I.

Więcej informacji na temat konfiguracji Raspberry Pi można znaleźć pod adresem: https://www.raspberrypi.org/learning/software-guide/
1.3 Zainstaluj Nodejs i wymagane biblioteki
- Zainstaluj node.js v6

Aby uzyskać przykładowy kod dla QIoT Suite Lite odwiedź QNAP github
2. Utwórz swoje urządzenie w QIoT Suite Lite
2.1 Zainstaluj oprogramowanie QIoT Suite Lite
- QIoT Suite Lite można zainstalować z App Center.

- Uruchom QIoT Suite Lite i zaloguj się. Domyślna nazwa użytkownika oraz hasło to „admin”.

2.2 Utwórz nową aplikację IoT
Aplikacje IoT są połączeniem Rzeczy, Reguł i Pulpitów nawigacyjnych. Zalecamy, aby w pierwszej kolejności utworzyć „Rzeczy” w Aplikacji IoT. Ta Aplikacja IoT umożliwia prowadzenie rejestru wszystkich urządzeń podłączonych do serwera NAS.
Reguły umożliwiają budowanie aplikacji IoT, które gromadzą, przetwarzają, analizują i przeprowadzają działania na danych wygenerowanych przez podłączone urządzenia. Reguły mogą być zastosowane do danych z jednego lub wielu urządzeń i mogą podejmować jedno lub wiele działań równolegle.
Pulpity nawigacyjne zamieniają dane w dane analityczne oraz raporty, które zapewniają wgląd w czasie rzeczywistym.
Wszystkie te elementy zapewniają użytkownikowi kompletne środowisko Aplikacji IoT.
- Jeżeli korzystasz z QIoT Suite Lite po raz pierwszy, do Twojej dyspozycji jest kreator ułatwiający szybką konfigurację aplikacji IoT.
- Aby uruchomić kreatora szybkiej konfiguracji, kliknij „Kreator szybkiej konfiguracji”. Po przeczytaniu wprowadzenia do QIoT Suite Lite w wyświetlonym oknie, kliknij przycisk Dalej.


- Utwórz nową aplikację IoT
- Wprowadź nazwę aplikacji IoT, np. app_1.
- Nazwa Reguły i nazwa Pulpitu nawigacyjnego zostaną wygenerowane automatycznie na podstawie wpisanej nazwy Aplikacji IoT.
- Kliknij „Dalej”, aby dokończyć tworzenie nowej aplikacji IoT.

- Kliknij „+ Dodaj”, aby dodać urządzenie tej aplikacji.

- Następnie kliknij „+ Dodaj” w „Dodaj rzecz”:
- Wprowadź nazwę urządzenia (np. raspberrypi) i podaj informacje dotyczące urządzenia (np. numer seryjny i nazwę producenta) w polu Dodaj atrybut.
- Jeżeli urządzenie jest już obsługiwane przez QIoT(Arduino Yun, Raspberry Pi, Edison, and Linkit 7688 (Duo)), wybierz wstępnie zdefiniowany typ rzeczy.
- Kliknij Dodaj, aby dodać urządzenie.

- Wprowadź adres IP, Nazwę użytkownika i Hasło urządzenia, a następnie kliknij ikonę Połącz. QIoT Suite Lite sprawdzi połączenie z urządzeniem. Po sprawdzeniu poprawności połączenia kliknij polecenie Dalej.

- Na karcie „Zasoby” kliknij polecenie „Dodaj zasób”.

- Następnie kliknij „Dodaj zasób” w „Dodaj zasób rzeczy”:
- Wprowadź nazwę oraz identyfikator czujnika w polu Nazwa Zasobu i Identyfikator Zasobu. Zwróć uwagę, że Identyfikator Zasobu zostanie użyty do utworzenia Tematu w brokerze QIoT. Identyfikator powinien być unikalny dla urządzenia i dla tego samego urządzenia nie powinny być dozwolone żadne duplikaty.

- Wprowadź nazwę oraz identyfikator czujnika w polu Nazwa Zasobu i Identyfikator Zasobu. Zwróć uwagę, że Identyfikator Zasobu zostanie użyty do utworzenia Tematu w brokerze QIoT. Identyfikator powinien być unikalny dla urządzenia i dla tego samego urządzenia nie powinny być dozwolone żadne duplikaty.
- Na karcie „Klucze API”:
- Jeżeli chcesz zagnieździć widżety pulpitów nawigacyjnych QIoT w witrynach internetowych lub uzyskiwać dostęp do interfejsów API QIoT z aplikacji zewnętrznych, przejdź do karty Klucze API i kliknij polecenie „Wygeneruj nowy klucz API”. Kliknij „Gotowe”.

- Jeżeli chcesz zagnieździć widżety pulpitów nawigacyjnych QIoT w witrynach internetowych lub uzyskiwać dostęp do interfejsów API QIoT z aplikacji zewnętrznych, przejdź do karty Klucze API i kliknij polecenie „Wygeneruj nowy klucz API”. Kliknij „Gotowe”.
- Twoja aplikacja IoT zostanie teraz utworzona. Przykładowe kody Node.js i powiązane pliki (certyfikat, informacje o zasobach) zostaną przesłane na podaną ścieżkę w twoim urządzeniu.

- Zostanie utworzony przykładowy pulpit nawigacyjny.

- Przejdź do karty Reguła, aby zdefiniować przepływ lub reguły przetwarzania danych wysyłanych z urządzenia oraz sposób ich przedstawiania na pulpicie nawigacyjnym.

3. Połącz urządzenie z pakietem QIoT Suite Lite za pomocą MQTTS
3.1 Uruchom przykładowy kod
- Otwórz aplikację terminala (np. PuTTY) na komputerze. Połącz się z urządzeniem za pośrednictwem SSH i wprowadź folder, w którym znajduje się przykładowy kod (np. /home/root/bundle).

- Zainstaluj zależność przykładowego kodu i wprowadź następujące polecenie

- Uruchom przykładowy kod

- Urządzenie wyśle komunikat do tematu „temp” lub zdefiniowanego

3.2 Inny protokół
- Kliknij przycisk „Podłącz urządzenie”
- Możesz wybrać inny protokół, którego chcesz użyć

- SSH do twojego urządzenia i wprowadź następujące polecenie.

4. Zintegruj Power BI
4.1 Załóż swoje pierwsze konto Power BI
- Zarejestruj bezpłatne konto PowerBI pod adresem https://powerbi.microsoft.com/en-us/

- Po dokonaniu rejestracji zostanie wyświetlona następująca strona. Możesz kliknąć „na razie pomiń”, aby rozpocząć tworzenie zestawu danych.

4.2 Skonfiguruj zestaw danych transmisji strumieniowej API
- Utwórz „Zestawy danych”
- Kliknij „Utwórz” w prawym górnym rogu ekranu
- Następnie kliknij „Zestaw danych transmisji strumieniowej”

- Wybierz „API” jako źródło danych, a następnie kliknij „Dalej”.

- Zdefiniuj wartości od strumienia, aby w polu tekstowym uzyskać wynik JSON. Uzyskanego kodu JSON użyjemy do wypchnięcia danych do aplikacji IoT. Kliknij „Utwórz”, aby zakończyć.

- Po utworzeniu strumienia danych otrzymasz REST API URL, który aplikacje IoT mogą wywoływać za pomocą żądań POST w celu wypychania danych na żywo do utworzonego zestawu danych transmisji strumieniowej.

4.3 Skonfiguruj węzły Node-RED w aplikacji IoT
- Utwórz aplikację IoT w QIoT Suite. Poniżej przedstawiono pierwszy przepływ węzła Node-RED. Następnie możesz zacząć tworzyć swój własny przepływ IoT. Więcej informacji na temat węzłów Node-RED można znaleźć pod adresem https://nodered.org/

- Przed rozpoczęciem wypychania danych na żywo do Power BI. Potrzebujemy węzła „funkcji”, aby przekształcać dane IoT na zestaw danych transmisji strumieniowej. Tutaj możesz zastąpić msg.payload swoim zestawem danych JSON.

- Następujący kod funkcji:

- Potrzebujemy węzła „żądanie http”, aby umożliwić wypychanie danych na żywo do Power BI. Wystarczy przeciągnąć i upuścić węzeł „żądanie http” i połączyć z końcówką węzła „funkcja”.

- Skopiuj i wklej adres REST API URL otrzymany z konsoli Power BI, a następnie ustaw metodę http na POST. Kliknij „Wdróż”, aby zachować zmiany

- Przebieg węzła Node-RED będzie wyglądał jak poniżej.

4.4 Dodaj kafelki, aby wyświetlać dane w czasie rzeczywistym
- Utwórz „Pulpit nawigacyjny”
- Kliknij „Utwórz” w prawym górnym rogu ekranu
- Następnie kliknij „Pulpit nawigacyjny”
- Wprowadź nazwę pulpitu nawigacyjnego i kliknij „Utwórz”, aby dokończyć tworzenie pulpitu nawigacyjnego.


- Kliknij „Dodaj kafelek” w prawym górnym rogu ekranu

- Wybierz „NIESTANDARDOWE DANE TRANSMISJI STRUMIENIOWEJ” i kliknij „Dalej”.

- Wybierz „zestawy danych” i kliknij „Dalej”.

- Wybierz typ wizualizacji (np. wskaźnik) i ustaw wartość, wartość minimalną i wartość maksymalną.

- Uzyskasz zestaw danych transmisji strumieniowej, z którym możesz pracować i uzyskać pomiar w czasie rzeczywistym, wyglądający jak przykład poniżej
