Sdílet prostřednictvím


Připojte Raspberry Pi 3 k řešení pro vzdálené monitorování a povolte aktualizace vzdáleného firmwaru pomocí Node.js

V tomto kurzu se dozvíte, jak používat sadu Microsoft Azure IoT Starter Kit pro Raspberry Pi 3 k:

  • Vyvíjejte čtečku teploty a vlhkosti, která může komunikovat s cloudem.
  • Povolte a proveďte vzdálenou aktualizaci firmwaru a aktualizujte klientskou aplikaci na Raspberry Pi.

Tutoriál používá:

  • Raspbian OS, Node.js programovací jazyk a microsoft Azure IoT SDK pro Node.js k implementaci ukázkového zařízení.
  • Předkonfigurované řešení vzdáleného monitorování sady IoT Suite jako cloudový back-end.

Přehled

V tomto kurzu provedete následující kroky:

  • Nasaďte instanci předkonfigurovaného řešení vzdáleného monitorování do vašeho předplatného Azure. Tento krok automaticky nasadí a nakonfiguruje více služeb Azure.
  • Nastavte zařízení a senzory pro komunikaci s počítačem a řešením pro vzdálené monitorování.
  • Aktualizujte vzorový kód zařízení, abyste se připojili k řešení pro vzdálené monitorování, a odešlete telemetrii, kterou můžete zobrazit na řídicím panelu řešení.
  • Pomocí ukázkového kódu zařízení aktualizujte klientskou aplikaci.

Požadavky

K dokončení tohoto kurzu potřebujete aktivní předplatné Azure.

Poznámka:

Pokud účet nemáte, můžete si během několika minut vytvořit bezplatný zkušební účet. Podrobnosti najdete v článku Bezplatná zkušební verze Azure.

Požadovaný software

Na stolním počítači potřebujete klienta SSH, abyste mohli vzdáleně přistupovat k příkazovému řádku na Raspberry Pi.

  • Systém Windows neobsahuje klienta SSH. Doporučujeme používat PuTTY.
  • Většina linuxových distribucí a Mac OS zahrnuje nástroj SSH příkazového řádku. Další informace naleznete v tématu SSH pomocí Linuxu nebo Mac OS.

Požadovaný hardware

Stolní počítač, který umožňuje vzdálené připojení k příkazovému řádku na Raspberry Pi.

Microsoft IoT Starter Kit pro Raspberry Pi 3 nebo ekvivalentní komponenty. V tomto kurzu se používají následující položky ze sady:

  • Raspberry Pi 3
  • Karta MicroSD (se softwarem NOOBS)
  • Mini kabel USB
  • Ethernetový kabel
  • Snímač BME280
  • Prkénko na krájení
  • Propojovací vodiče
  • Rezistory
  • LED diody

Zřízení řešení

Pokud jste ještě ve svém účtu nezřídili předkonfigurované řešení vzdáleného monitorování:

  1. Přihlaste se k azureiotsuite.com pomocí přihlašovacích údajů účtu Azure a kliknutím na + vytvořte řešení.
  2. Klikněte na Vybrat na dlaždici vzdáleného monitorování.
  3. Zadejte název řešení pro předkonfigurované řešení vzdáleného monitorování.
  4. Vyberte oblasti a předplatné, které chcete použít ke zřízení řešení.
  5. Kliknutím na Vytvořit řešení zahájíte proces zřizování. Spuštění tohoto procesu obvykle trvá několik minut.

Počkejte, až se dokončí proces zřizování.

  1. Klikněte na dlaždici vašeho řešení se stavem „Provisioning“ .
  2. Všimněte si stavů procesu zřizování, když jsou služby Azure nasazovány ve vašem předplatném Azure.
  3. Po dokončení zřizování se stav změní na Připraveno.
  4. Kliknutím na dlaždici zobrazíte v pravém podokně podrobnosti o řešení.

Poznámka:

Pokud při nasazování předkonfigurovaného řešení dochází k problémům, projděte si Oprávnění na webu azureiotsuite.com a Nejčastější dotazy. Pokud problémy potrvají, vytvořte servisní tiket na portálu .

Očekáváte nějaké podrobnosti, které nejsou uvedeny pro vaše řešení? Dejte nám návrhy funkcí na User Voice.

Výstraha

Řešení pro vzdálené monitorování poskytuje sadu služeb Azure ve vašem předplatném Azure. Nasazení odráží skutečnou podnikovou architekturu. Pokud se chcete vyhnout zbytečným poplatkům za spotřebu Azure, odstraňte instanci předkonfigurovaného řešení na azureiotsuite.com, až s ní skončíte. Pokud potřebujete předkonfigurované řešení znovu, můžete ho snadno znovu vytvořit. Další informace o snížení spotřeby při spuštění řešení pro vzdálené monitorování najdete v tématu Konfigurace předkonfigurovaných řešení sady Azure IoT Suite pro ukázkové účely.

Zobrazení řídicího panelu řešení

Řídicí panel řešení umožňuje spravovat nasazené řešení. Můžete například zobrazit telemetrii, přidat zařízení a vyvolat metody.

  1. Po dokončení zřizování a dlaždice pro předkonfigurované řešení ukazuje stav Ready, zvolte Spustit pro otevření portálu řešení pro vzdálené monitorování na nové kartě.

    Spuštění předkonfigurovaného řešení

  2. Ve výchozím nastavení portál řešení zobrazuje řídicí panel . Pomocí nabídky na levé straně stránky můžete přejít do jiných oblastí portálu řešení.

    předkonfigurovaný řídicí panel řešení vzdáleného monitorování

Přidání zařízení

Aby se zařízení mohlo připojit k předkonfigurovanýmu řešení, musí se k IoT Hubu identifikovat pomocí platných přihlašovacích údajů. Přihlašovací údaje zařízení můžete načíst z řídicího panelu řešení. Přihlašovací údaje zařízení zahrnete do klientské aplikace později v tomto kurzu.

Pokud jste to ještě neudělali, přidejte do řešení pro vzdálené monitorování vlastní zařízení. Na řídicím panelu řešení proveďte následující kroky:

  1. V levém dolním rohu řídicího panelu klikněte na Přidat zařízení.

    Přidat zařízení

  2. Na panelu Vlastní zařízení klikněte na Přidat nové.

    Přidání vlastního zařízení

  3. Zvolte Umožnit mi definovat vlastní ID zařízení. Zadejte ID zařízení, jako je rasppi, klikněte na Zkontrolovat ID, abyste ověřili, že jste název v řešení ještě nepoužili, a potom kliknutím na Vytvořit zařízení zřiďte.

    Přidat ID zařízení

  4. Poznamenejte si přihlašovací údaje zařízení (ID zařízení, název hostitele služby IoT Huba klíč zařízení). Vaše klientská aplikace na Raspberry Pi potřebuje tyto hodnoty pro připojení k řešení pro vzdálené monitorování. Potom klikněte na Done (Hotovo).

    Zobrazení přihlašovacích údajů zařízení

  5. Vyberte zařízení v seznamu zařízení na řídicím panelu řešení. Potom na panelu Podrobnosti o zařízení klepněte na Povolit zařízení. Stav zařízení je nyní v provozu. Řešení pro vzdálené monitorování teď může přijímat telemetrická data z vašeho zařízení a vyvolávat metody v zařízení.

Příprava Raspberry Pi

Instalace Raspbian

Pokud používáte Raspberry Pi poprvé, musíte nainstalovat operační systém Raspbian pomocí NOOBS na kartu SD, která je součástí sady. Průvodce softwarem Raspberry Pi popisuje, jak nainstalovat operační systém na Raspberry Pi. V tomto kurzu se předpokládá, že máte na Raspberry Pi nainstalovaný operační systém Raspbian.

Poznámka:

Karta SD, která je součástí sady Microsoft Azure IoT Starter Kit for Raspberry Pi 3 již má nainstalovaný NOOBS. Z této karty můžete spustit Raspberry Pi a zvolit instalaci operačního systému Raspbian.

Nastavení hardwaru

Tento kurz používá senzor BME280, který je součástí sady Microsoft Azure IoT Starter Kit for Raspberry Pi 3 k vygenerování telemetrických dat. Používá indikátor LED k označení, kdy Raspberry Pi zpracovává metodu vyvolání z řídicího panelu řešení.

Součásti na chlebové desce jsou:

  • Červená LED
  • 220-ohmový odpor (červená, červená, hnědá)
  • Snímač BME280

Následující diagram ukazuje, jak připojit hardware:

Nastavení hardwaru pro Raspberry Pi

Následující tabulka shrnuje připojení z Raspberry Pi ke komponentům na prototypové desce:

Raspberry Pi Prkénko na krájení Barva
GND (připnutí 14) LED -ve vývod (18A) Fialová
GPCLK0 (pin 7) Rezistor (25A) Oranžová
SPI_CE0 (Pin 24) CS (39A) Modrý
SPI_SCLK (pin 23) SCK (36A) Žlutá
SPI_MISO (Pin 21) SDO (37A) Bílý
SPI_MOSI (pin 19) SDI (38A) Zelený
GND (vývod 6) GND (35A) Černý
3.3 V (Připnutí 1) 3Vo (34A) Červený

K dokončení instalace hardwaru je potřeba:

  • Připojte Raspberry Pi k napájecímu zdroji, který je součástí sady.
  • Připojte Raspberry Pi k síti pomocí ethernetového kabelu, který je součástí vaší sady. Alternativně můžete pro Raspberry Pi nastavit bezdrátové připojení.

Dokončili jste nastavení hardwaru Raspberry Pi.

Přihlášení a přístup k terminálu

V Raspberry Pi máte dvě možnosti přístupu k prostředí terminálu:

  • Pokud máte klávesnici a monitor připojený k Raspberry Pi, můžete pro přístup k okně terminálu použít grafické uživatelské rozhraní Raspbian.

  • Přístup k příkazovému řádku na Raspberry Pi pomocí SSH z stolního počítače

Použití okna terminálu v grafickém uživatelském rozhraní

Výchozí přihlašovací údaje pro Raspbian jsou uživatelské jméno pi a heslo raspberry. Na hlavním panelu v grafickém uživatelském rozhraní můžete spustit nástroj Terminal pomocí ikony, která vypadá jako monitor.

Přihlášení pomocí SSH

Pro přístup k Raspberry Pi můžete použít SSH. Článek SSH (Secure Shell) popisuje, jak nakonfigurovat SSH na Raspberry Pi a jak se připojit z Windows nebo Linux & Mac OS.

Přihlaste se pomocí uživatelského jména pi a hesla raspberry.

Volitelné: Sdílení složky na Raspberry Pi

Volitelně můžete chtít sdílet složku na Raspberry Pi s desktopovým prostředím. Sdílení složky umožňuje používat preferovaný desktopový textový editor (například Visual Studio Code nebo Sublime Text) k úpravám souborů na Raspberry Pi místo použití nano nebo vi.

Pokud chcete sdílet složku s Windows, nakonfigurujte server Samba na Raspberry Pi. Alternativně můžete použít integrovaný SFTP server s SFTP klientem na vašem počítači.

Povolení rozhraní SPI

Než budete moci spustit ukázkovou aplikaci, musíte na Raspberry Pi povolit sběrnici sériového periferního rozhraní (SPI). Raspberry Pi komunikuje se senzorem BME280 přes sběrnici SPI. K úpravě konfiguračního souboru použijte následující příkaz:

sudo nano /boot/config.txt

Najděte řádek:

#dtparam=spi=on

  • Pokud chcete řádek odkomentovat, odstraňte # na začátku.

  • Uložte změny (Ctrl-O, Enter) a ukončete editor (Ctrl-X).

  • Pokud chcete povolit rozhraní SPI, restartujte Raspberry Pi. Restartováním se terminál odpojí, když se Raspberry Pi restartuje, musíte se znovu přihlásit:

    sudo reboot
    

Stažení a konfigurace ukázky

Teď si můžete stáhnout a nakonfigurovat klientskou aplikaci pro vzdálené monitorování na raspberry Pi.

Instalace Node.js

Pokud jste to ještě neudělali, nainstalujte Node.js na Raspberry Pi. Sada IoT SDK pro Node.js vyžaduje verzi 0.11.5 verze Node.js nebo novější. Následující kroky ukazují, jak nainstalovat Node.js v6.10.2 na Raspberry Pi:

  1. K aktualizaci Raspberry Pi použijte následující příkaz:

    sudo apt-get update
    
  2. Pomocí následujícího příkazu stáhněte binární soubory Node.js do Raspberry Pi:

    wget https://nodejs.org/dist/v6.10.2/node-v6.10.2-linux-armv7l.tar.gz
    
  3. K instalaci binárních souborů použijte následující příkaz:

    sudo tar -C /usr/local --strip-components 1 -xzf node-v6.10.2-linux-armv7l.tar.gz
    
  4. Pomocí následujícího příkazu ověřte, že jste úspěšně nainstalovali Node.js v6.10.2:

    node --version
    

Klonování úložišť

Pokud jste to ještě neudělali, naklonujte požadovaná úložiště spuštěním následujících příkazů na pi:

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

Aktualizace připojovacího řetězce zařízení

Pomocí následujícího příkazu otevřete ukázkový konfigurační soubor v editoru nano:

nano ~/iot-remote-monitoring-node-raspberrypi-getstartedkit/advanced/config/deviceinfo

Zástupné hodnoty nahraďte ID zařízení a informacemi ioT Hubu, které jste vytvořili a uložili na začátku tohoto kurzu.

Po dokončení by obsah souboru deviceinfo měl vypadat jako v následujícím příkladu:

yourdeviceid
HostName=youriothubname.azure-devices.net;DeviceId=yourdeviceid;SharedAccessKey=yourdevicekey

Uložte změny (Ctrl-O, Enter) a ukončete editor (Ctrl-X).

Spusťte ukázku

Spuštěním následujících příkazů nainstalujte požadované balíčky pro ukázku:

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

Teď můžete spustit ukázkový program na Raspberry Pi. Zadejte příkaz:

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

Následující ukázkový výstup je příkladem výstupu, který vidíte na příkazovém řádku na Raspberry Pi:

výstup z aplikace Raspberry Pi

Stisknutím kláves Ctrl-C program kdykoli ukončíte.

Zobrazení telemetrie

Raspberry Pi teď odesílá telemetrii do řešení pro vzdálené monitorování. Telemetrii můžete zobrazit na řídicím panelu řešení. Zprávy můžete také posílat na Raspberry Pi z řídicího panelu řešení.

  • Přejděte na řídicí panel řešení.
  • V rozevíracím seznamu Zařízení, které chcete zobrazit, vyberte své zařízení.
  • Telemetrie z Raspberry Pi se zobrazí na řídicím panelu.

Zobrazení telemetrie z Raspberry Pi

Zahájení aktualizace firmwaru

Proces aktualizace firmwaru stáhne a nainstaluje aktualizovanou verzi klientské aplikace zařízení na Raspberry Pi. Další informace o procesu aktualizace firmwaru najdete v popisu vzoru aktualizace firmwaru v Přehled správy zařízení pomocí služby IoT Hub.

Proces aktualizace firmwaru zahájíte vyvoláním metody v zařízení. Tato metoda je asynchronní a vrátí se ihned po zahájení procesu aktualizace. Zařízení používá ohlášené vlastnosti k oznámení řešení o průběhu aktualizace.

Metody na Raspberry Pi vyvoláte z řídicího panelu řešení. Když se Raspberry Pi poprvé připojí k řešení pro vzdálené monitorování, odešle informace o metodách, které podporuje.

  1. Na řídicím panelu řešení klikněte na Zařízení a přejděte na stránku Zařízení. Vyberte Raspberry Pi v seznamu zařízení . Pak zvolte metody:

    Seznam zařízení na řídicím panelu

  2. Na stránce Invoke Method zvolte InitiateFirmwareUpdate v rozevíracím seznamu Metoda.

  3. Do pole FWPackageURI zadejte https://raw.githubusercontent.com/Azure-Samples/iot-remote-monitoring-node-raspberrypi-getstartedkit/master/advanced/2.0/raspberry.js. Tento soubor obsahuje implementaci verze 2.0 firmwaru.

  4. Zvolte InvokeMethod. Aplikace na Raspberry Pi odešle potvrzení zpět na řídicí panel řešení. Potom spustí proces aktualizace firmwaru stažením nové verze firmwaru:

    Zobrazit historii metod

Sledování procesu aktualizace firmwaru

Proces aktualizace firmwaru můžete sledovat, jak běží na zařízení, a zobrazením ohlášených vlastností na řídicím panelu řešení:

  1. Průběh procesu aktualizace můžete zobrazit na Raspberry Pi:

    Zobrazit průběh aktualizace

    Poznámka:

    Po dokončení aktualizace se aplikace pro vzdálené monitorování bezobslužně restartuje. Pomocí příkazu ps -ef ověřte, že je spuštěný. Pokud chcete proces ukončit, použijte příkaz kill s ID procesu.

  2. Stav aktualizace firmwaru, jak je hlášeno zařízením, můžete zobrazit na portálu řešení. Následující snímek obrazovky ukazuje stav a dobu trvání jednotlivých fází procesu aktualizace a novou verzi firmwaru:

    Zobrazit stav úlohy

    Pokud se vrátíte na řídicí panel, můžete ověřit, že zařízení stále odesílá telemetrická data po aktualizaci firmwaru.

Výstraha

Pokud necháte řešení pro vzdálené monitorování spuštěné ve svém účtu Azure, účtuje se vám doba, po kterou běží. Další informace o snížení spotřeby při spuštění řešení pro vzdálené monitorování najdete v tématu Konfigurace předkonfigurovaných řešení sady Azure IoT Suite pro ukázkové účely. Po dokončení použití z účtu Azure odstraňte předkonfigurované řešení.

Další kroky

Další ukázky a dokumentaci k Azure IoT najdete na webu Azure IoT Dev Center.