Udostępnij za pośrednictwem


Połącz urządzenie Raspberry Pi 3 z rozwiązaniem do monitorowania zdalnego i wyślij symulowane dane telemetryczne przy użyciu Node.js

W tym samouczku pokazano, jak za pomocą urządzenia Raspberry Pi 3 symulować dane dotyczące temperatury i wilgotności do wysyłania do chmury. W tym samouczku są używane następujące elementy:

  • Raspbian OS, język programowania Node.js i zestaw SDK usługi Microsoft Azure IoT dla Node.js w celu zaimplementowania przykładowego urządzenia.
  • Wstępnie skonfigurowane rozwiązanie do monitorowania zdalnego pakietu IoT Suite jako zaplecza opartego na chmurze.

Omówienie

Ten samouczek obejmuje następujące kroki:

  • Wdróż wystąpienie wstępnie skonfigurowanego rozwiązania do monitorowania zdalnego w ramach subskrypcji platformy Azure. Ten krok automatycznie wdraża i konfiguruje wiele usług platformy Azure.
  • Skonfiguruj urządzenie do komunikowania się z komputerem i rozwiązaniem do monitorowania zdalnego.
  • Zaktualizuj przykładowy kod urządzenia, aby nawiązać połączenie z rozwiązaniem do monitorowania zdalnego i wysłać symulowane dane telemetryczne, które można wyświetlić na pulpicie nawigacyjnym rozwiązania.

Wymagania wstępne

Do wykonania kroków tego samouczka jest potrzebna aktywna subskrypcja platformy Azure.

Uwaga

Jeśli jej nie masz, możesz utworzyć bezpłatne konto próbne w zaledwie kilka minut. Aby uzyskać szczegółowe informacje, zobacz Bezpłatna wersja próbna platformy Azure.

Wymagane oprogramowanie

Potrzebujesz klienta SSH na komputerze stacjonarnym, aby umożliwić zdalny dostęp do wiersza polecenia w urządzeniu Raspberry Pi.

Wymagany sprzęt

Komputer stacjonarny umożliwiający zdalne łączenie się z wierszem polecenia w urządzeniu Raspberry Pi.

Zestaw startowy Microsoft IoT dla urządzenia Raspberry Pi 3 lub równoważnych składników. W tym samouczku są używane następujące elementy z zestawu:

  • Raspberry Pi 3
  • Karta MicroSD (z NOOBS)
  • Kabel USB Mini
  • Kabel Ethernet

Aprowizacja rozwiązania

Jeśli jeszcze nie przeprowadzono aprowizacji wstępnie skonfigurowanego rozwiązania do monitorowania zdalnego na Twoim koncie:

  1. Zaloguj się do azureiotsuite.com przy użyciu poświadczeń konta platformy Azure, a następnie kliknij + , aby utworzyć rozwiązanie.
  2. Kliknij pozycję Wybierz na kafelku Zdalne monitorowanie.
  3. W polu Nazwa rozwiązania wprowadź nazwę wstępnie skonfigurowanego rozwiązania do monitorowania zdalnego.
  4. W polach Region i Subskrypcja wybierz wartości, których chcesz użyć do aprowizacji rozwiązania.
  5. Kliknij pozycję Utwórz rozwiązanie, aby rozpocząć proces aprowizowania. Zwykle trwa on kilka minut.

Oczekiwanie na ukończenie procesu aprowizowania

  1. Kliknij kafelek swojego rozwiązania zawierający informację o stanie aprowizacji.
  2. Zwróć uwagę na informację o stanach aprowizacji podczas wdrażania usług Azure w Twojej subskrypcji platformy Azure.
  3. Po ukończeniu aprowizowania stan zmieni się na wartość Gotowe.
  4. Kliknij kafelek, aby wyświetlić szczegóły rozwiązania w prawym okienku.

Uwaga

Jeśli podczas wdrażania wstępnie skonfigurowanego rozwiązania pojawią się problemy, zapoznaj się z tematami Uprawnienia w witrynie azureiotsuite.com i Często zadawane pytania. Jeśli problemy będą się powtarzać, utwórz żądanie pomocy w portalu.

Czy istnieją jakieś szczegóły dotyczące Twojego rozwiązania, które nie są wyświetlane, a Twoim zdaniem powinny być widoczne? Prześlij nam swoje propozycje dotyczące funkcji, korzystając ze strony User Voice (Opinie użytkowników).

Ostrzeżenie

Rozwiązanie do monitorowania zdalnego aprowizuje zestaw usług platformy Azure w ramach subskrypcji platformy Azure. Wdrożenie odzwierciedla rzeczywistą architekturę przedsiębiorstwa. Aby uniknąć niepotrzebnych opłat za użycie platformy Azure, usuń wystąpienie wstępnie skonfigurowanego rozwiązania w azureiotsuite.com po zakończeniu pracy z nim. Jeśli ponownie potrzebujesz wstępnie skonfigurowanego rozwiązania, możesz go łatwo odtworzyć. Aby uzyskać więcej informacji na temat ograniczania zużycia podczas uruchamiania rozwiązania do monitorowania zdalnego, zobacz Konfigurowanie wstępnie skonfigurowanych rozwiązań usługi Azure IoT Suite na potrzeby pokazu.

Wyświetlanie pulpitu nawigacyjnego

Pulpit nawigacyjny pozwala zarządzać wdrożonym rozwiązaniem. Można na przykład wyświetlać dane telemetryczne, dodawać urządzenia i wywoływać metody.

  1. Jeśli aprowizacja została ukończona, a na kafelku wstępnie skonfigurowanego rozwiązania jest wyświetlany stan Gotowe, wybierz pozycję Uruchom, aby otworzyć portal rozwiązania do monitorowania zdalnego na nowej karcie.

    Uruchamianie wstępnie skonfigurowanego rozwiązania

  2. Domyślnie w portalu rozwiązania jest wyświetlany pulpit nawigacyjny. Korzystając z menu po lewej stronie, można przejść do innych obszarów portalu rozwiązania.

    Pulpit nawigacyjny wstępnie skonfigurowanego rozwiązania do monitorowania zdalnego

Dodawanie urządzenia

Aby urządzenie mogło nawiązać połączenie ze wstępnie skonfigurowanym rozwiązaniem, musi ono zidentyfikować się względem usługi IoT Hub za pomocą prawidłowych poświadczeń. Poświadczenia urządzenia możesz pobrać z pulpitu nawigacyjnego rozwiązania. W dalszej części tego samouczka podasz te poświadczenia urządzenia w Twojej aplikacji klienckiej.

Jeśli jeszcze tego nie zrobiono, dodaj urządzenie niestandardowe do rozwiązania do monitorowania zdalnego. Wykonaj następujące kroki na pulpicie nawigacyjnym rozwiązania:

  1. W lewym dolnym rogu pulpitu nawigacyjnego kliknij pozycję Dodaj urządzenie.

    Dodawanie urządzenia

  2. W panelu Urządzenie niestandardowe kliknij pozycję Dodaj nowe.

    Dodawanie urządzenia niestandardowego

  3. Wybierz pozycję Pozwól mi zdefiniować własny identyfikator urządzenia. Wprowadź identyfikator urządzenia, taki jak rasppi, kliknij przycisk Sprawdź identyfikator , aby sprawdzić, czy nazwa w rozwiązaniu nie została jeszcze użyta, a następnie kliknij przycisk Utwórz , aby aprowizować urządzenie.

    Dodawanie identyfikatora urządzenia

  4. Zanotuj poświadczenia urządzenia (identyfikator urządzenia, IoT Hub nazwa hosta i klucz urządzenia). Aplikacja kliencka na urządzeniu Raspberry Pi wymaga tych wartości, aby nawiązać połączenie z rozwiązaniem do monitorowania zdalnego. Następnie kliknij przycisk Gotowe.

    Wyświetlanie poświadczeń urządzenia

  5. Wybierz urządzenie na liście urządzeń na pulpicie nawigacyjnym rozwiązania. Następnie w panelu Szczegóły urządzenia kliknij pozycję Włącz urządzenie. Stan Twojego urządzenia to teraz Uruchomione. Rozwiązanie do monitorowania zdalnego może teraz odbierać dane telemetryczne z Twojego urządzenia i wywoływać metody na tym urządzeniu.

Przygotowywanie urządzenia Raspberry Pi

Instalowanie programu Raspbian

Jeśli jest to pierwszy raz, gdy używasz urządzenia Raspberry Pi, musisz zainstalować system operacyjny Raspbian przy użyciu noOBS na karcie SD dołączonej do zestawu. W przewodniku po oprogramowaniu Raspberry Pi opisano sposób instalowania systemu operacyjnego na urządzeniu Raspberry Pi. W tym samouczku założono, że na urządzeniu Raspberry Pi zainstalowano system operacyjny Raspbian.

Uwaga

Karta SD dołączona do zestawu startowego Microsoft Azure IoT dla urządzenia Raspberry Pi 3 ma już zainstalowany system NOOBS. Możesz uruchomić urządzenie Raspberry Pi z tej karty i zainstalować system operacyjny Raspbian.

Aby ukończyć konfigurację sprzętu, należy wykonać następujące czynności:

  • Podłącz urządzenie Raspberry Pi do zasilacza dołączonego do zestawu.
  • Podłącz urządzenie Raspberry Pi do sieci przy użyciu kabla Ethernet dołączonego do zestawu. Alternatywnie można skonfigurować łączność bezprzewodową urządzenia Raspberry Pi.

Konfiguracja sprzętu urządzenia Raspberry Pi została ukończona.

Logowanie się i uzyskiwanie dostępu do terminalu

Dostępne są dwie opcje uzyskiwania dostępu do środowiska terminalowego na urządzeniu Raspberry Pi:

  • Jeśli masz klawiaturę i monitor podłączony do urządzenia Raspberry Pi, możesz użyć graficznego interfejsu użytkownika Raspbian, aby uzyskać dostęp do okna terminalu.

  • Uzyskaj dostęp do wiersza polecenia na urządzeniu Raspberry Pi przy użyciu protokołu SSH z komputera stacjonarnego.

Korzystanie z okna terminalu w graficznym interfejsie użytkownika

Domyślne poświadczenia raspbian to nazwa użytkownika pi i hasło raspberry. Na pasku zadań w graficznym interfejsie użytkownika możesz uruchomić narzędzie Terminal przy użyciu ikony, która wygląda jak monitor.

Logowanie przy użyciu protokołu SSH

Do uzyskiwania dostępu do urządzenia Raspberry Pi możesz użyć protokołu SSH. W artykule SSH (Secure Shell) opisano sposób konfigurowania protokołu SSH na urządzeniu Raspberry Pi oraz sposobu nawiązywania połączenia z systemu Windows lub Linux & mac OS.

Zaloguj się przy użyciu nazwy użytkownika pi i hasła raspberry.

Opcjonalnie: Udostępnianie folderu na urządzeniu Raspberry Pi

Opcjonalnie możesz udostępnić folder na urządzeniu Raspberry Pi w środowisku pulpitu. Udostępnianie folderu umożliwia korzystanie z preferowanego edytora tekstów klasycznych (takiego jak Visual Studio Code lub Sublime Text) w celu edytowania plików na urządzeniu Raspberry Pi zamiast używania nano lub vi.

Aby udostępnić folder w systemie Windows, skonfiguruj serwer Samba na urządzeniu Raspberry Pi. Alternatywnie użyj wbudowanego serwera SFTP z klientem SFTP na pulpicie.

Pobieranie i konfigurowanie przykładu

Teraz możesz pobrać i skonfigurować aplikację klienta monitorowania zdalnego na urządzeniu Raspberry Pi.

Instalowanie środowiska Node.js

Jeśli jeszcze tego nie zrobiono, zainstaluj Node.js na urządzeniu Raspberry Pi. Zestaw SDK IoT dla Node.js wymaga wersji 0.11.5 Node.js lub nowszej. W poniższych krokach pokazano, jak zainstalować Node.js w wersji 6.10.2 na urządzeniu Raspberry Pi:

  1. Użyj następującego polecenia, aby zaktualizować urządzenie Raspberry Pi:

    sudo apt-get update
    
  2. Użyj następującego polecenia, aby pobrać pliki binarne Node.js do urządzenia Raspberry Pi:

    wget https://nodejs.org/dist/v6.10.2/node-v6.10.2-linux-armv7l.tar.gz
    
  3. Użyj następującego polecenia, aby zainstalować pliki binarne:

    sudo tar -C /usr/local --strip-components 1 -xzf node-v6.10.2-linux-armv7l.tar.gz
    
  4. Użyj następującego polecenia, aby sprawdzić, czy pomyślnie zainstalowano Node.js 6.10.2:

    node --version
    

Klonowanie repozytoriów

Jeśli jeszcze tego nie zrobiono, sklonuj wymagane repozytoria, uruchamiając następujące polecenia w terminalu na urządzeniu Pi:

cd ~
git clone --recursive https://github.com/Azure-Samples/iot-remote-monitoring-node-raspberrypi-getstartedkit.git

Aktualizowanie parametry połączenia urządzenia

Otwórz przykładowy plik źródłowy w edytorze nano , używając następującego polecenia:

nano ~/iot-remote-monitoring-node-raspberrypi-getstartedkit/simulator/remote_monitoring.js

Znajdź wiersz:

var connectionString = 'HostName=[Your IoT hub name].azure-devices.net;DeviceId=[Your device id];SharedAccessKey=[Your device key]';

Zastąp wartości symbolu zastępczego urządzeniem i IoT Hub informacje utworzone i zapisane na początku tego samouczka. Zapisz zmiany (Ctrl-O, Enter) i zamknij edytor (Ctrl-X).

Uruchamianie aplikacji przykładowej

Uruchom następujące polecenia, aby zainstalować pakiety wymagań wstępnych dla przykładu:

cd ~/iot-remote-monitoring-node-raspberrypi-getstartedkit/simulator
npm install

Teraz możesz uruchomić przykładowy program na urządzeniu Raspberry Pi. Wprowadź polecenie:

sudo node ~/iot-remote-monitoring-node-raspberrypi-getstartedkit/simulator/remote_monitoring.js

Następujące przykładowe dane wyjściowe są przykładem danych wyjściowych wyświetlanych w wierszu polecenia w urządzeniu Raspberry Pi:

Dane wyjściowe z aplikacji Raspberry Pi

Naciśnij klawisze Ctrl-C , aby w dowolnym momencie zamknąć program.

Wyświetlanie danych telemetrycznych

Urządzenie Raspberry Pi wysyła teraz dane telemetryczne do rozwiązania do monitorowania zdalnego. Dane telemetryczne można wyświetlić na pulpicie nawigacyjnym rozwiązania. Możesz również wysyłać komunikaty do urządzenia Raspberry Pi z poziomu pulpitu nawigacyjnego rozwiązania.

  • Przejdź do pulpitu nawigacyjnego rozwiązania.
  • Wybierz urządzenie na liście rozwijanej Urządzenie do wyświetlenia .
  • Dane telemetryczne z urządzenia Raspberry Pi są wyświetlane na pulpicie nawigacyjnym.

Wyświetlanie danych telemetrycznych z urządzenia Raspberry Pi

Działanie na urządzeniu

Na pulpicie nawigacyjnym rozwiązania można wywoływać metody na urządzeniu Raspberry Pi. Gdy urządzenie Raspberry Pi łączy się z rozwiązaniem do monitorowania zdalnego, wysyła informacje o obsługiwanych metodach.

  • Na pulpicie nawigacyjnym rozwiązania kliknij pozycję Urządzenia , aby odwiedzić stronę Urządzenia . Wybierz urządzenie Raspberry Pi na liście urządzeń. Następnie wybierz pozycję Metody:

    Wyświetlanie listy urządzeń na pulpicie nawigacyjnym

  • Na stronie Wywołaj metodę wybierz pozycję LightBlink na liście rozwijanej Metoda .

  • Wybierz pozycję WywołajMethod. Symulator wyświetla komunikat w konsoli urządzenia Raspberry Pi. Aplikacja na urządzeniu Raspberry Pi wysyła potwierdzenie z powrotem do pulpitu nawigacyjnego rozwiązania:

    Pokaż historię metod

  • Diodę LED można włączyć i wyłączyć przy użyciu metody ChangeLightStatus z wartością LightStatusValue ustawioną na wartość 1 dla opcji włączonej lub 0 dla wyłączonej.

Ostrzeżenie

Jeśli opuścisz rozwiązanie do monitorowania zdalnego uruchomione na koncie platformy Azure, opłaty są naliczane za czas jego uruchomienia. Aby uzyskać więcej informacji na temat ograniczania zużycia podczas uruchamiania rozwiązania do monitorowania zdalnego, zobacz Konfigurowanie wstępnie skonfigurowanych rozwiązań usługi Azure IoT Suite na potrzeby pokazu. Usuń wstępnie skonfigurowane rozwiązanie z konta platformy Azure po zakończeniu korzystania z niego.

Następne kroki

Odwiedź Centrum deweloperów usługi Azure IoT, aby uzyskać więcej przykładów i dokumentacji dotyczącej usługi Azure IoT.