Připojení Raspberry Pi 3 k řešení pro vzdálené monitorování a odesílání simulovaných telemetrických dat pomocí Node.js
V tomto kurzu se dozvíte, jak pomocí Raspberry Pi 3 simulovat data o teplotě a vlhkosti, která se mají odesílat do cloudu. Kurz používá:
- Operační systém Raspbian, programovací jazyk Node.js, a sada Microsoft Azure IoT SDK pro Node.js implementovat ukázkové zařízení.
- Předkonfigurované řešení pro vzdálené monitorování sady IoT Suite jako cloudový back-end.
Přehled
V tomto kurzu dokončíte následující kroky:
- Nasaďte instanci předkonfigurovaného řešení vzdáleného monitorování do svého předplatného Azure. Tento krok automaticky nasadí a nakonfiguruje více služeb Azure.
- Nastavte zařízení tak, aby komunikujte s počítačem a řešením pro vzdálené monitorování.
- Aktualizujte vzorový kód zařízení tak, aby se připojil k řešení pro vzdálené monitorování, a odešlete simulovaná telemetrická data, která můžete zobrazit na řídicím panelu řešení.
Požadavky
K dokončení tohoto kurzu potřebujete mít aktivní předplatné služby Azure.
Poznámka
Pokud nemáte účet, můžete si během několika minut vytvořit bezplatný účet zkušební. Podrobnosti najdete v článku Bezplatná zkušební verze Azure.
Požadovaný software
Na stolním počítači potřebujete klienta SSH, který vám umožní vzdálený přístup k příkazovému řádku v Raspberry Pi.
- Systém Windows neobsahuje klienta SSH. Doporučujeme použít PuTTY.
- Většina distribucí Linuxu a Mac OS zahrnuje nástroj SSH příkazového řádku. Další informace najdete v tématu SSH s využitím Linuxu nebo Mac OS.
Požadovaný hardware
Stolní počítač, který vám umožní vzdálené připojení k příkazovému řádku v Raspberry Pi.
Úvodní sada Microsoft IoT 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 (s NOOBS)
- Usb Mini kabel
- Ethernetový kabel
Zřízení řešení
Pokud jste ve svém účtu ještě nezřídili předkonfigurované řešení vzdáleného monitorování:
- Přihlaste se k azureiotsuite.com pomocí přihlašovacích údajů účtu Azure a kliknutím vytvořte + řešení.
- Klikněte na tlačítko Vybrat, které se nachází na dlaždici Vzdálené monitorování.
- Zadejte Název řešení pro předkonfigurované řešení vzdáleného monitorování.
- Vyberte Oblast a Předplatné, které chcete při zřizování řešení použít.
- Kliknutím na tlačítko Vytvořit řešení zahájíte proces zřizování. Tento proces obvykle trvá několik minut.
Počkejte, dokud proces zřizování neskončí.
- Klikněte na dlaždici s řešením, u kterého je uveden stav Zřizování.
- Stavy zřizování umožňují sledovat, jak se služby Azure nasazují na váš účet Azure.
- Jakmile bude zřizování dokončeno, stav se změní na Připraveno.
- Kliknutím na dlaždici zobrazíte v pravém podokně informace o řešení.
Poznámka
Pokud při nasazování předkonfigurovaného řešení narazíte na problémy, zkontrolujte Oprávnění na webu azureiotsuite.com a přečtěte si Nejčastější dotazy. Pokud problémy přetrvávají, vytvořte na portálu lístek služby.
Hledali jste informace, které se týkají vašeho řešení a nejsou zde uvedeny? Sdělte nám návrhy na funkce na webu User Voice.
Upozornění
Řešení pro vzdálené monitorování zřídí ve vašem předplatném Azure sadu služeb Azure. Nasazení odráží skutečnou podnikovou architekturu. Abyste se vyhnuli zbytečným poplatkům za využití Azure, odstraňte instanci předkonfigurovaného řešení na azureiotsuite.com, jakmile s ním skončíte. Pokud předkonfigurované řešení znovu potřebujete, 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í Azure IoT Suite pro ukázkové účely.
Zobrazení řídicího panelu řešení
Přes řídicí panel řešení můžete spravovat nasazené řešení. Můžete například zobrazit telemetrii, přidat zařízení a vyvolat metody.
Až bude zřizování dokončeno a dlaždice předkonfigurovaného řešení bude hlásit Připraveno, zvolte Spustit. Na nové kartě se otevře portál předkonfigurovaného řešení pro vzdálené monitorování.
Ve výchozím nastavení se na portálu řešení zobrazuje řídicí panel. Do jiných oblastní portálu řešení můžete přecházet pomocí nabídky na levé straně stránky.
Přidání zařízení
Aby se zařízení mohlo připojit k předkonfigurovanému řešení, musí se identifikovat ve službě IoT Hub pomocí platných přihlašovacích údajů. Přihlašovací údaje zařízení můžete zjistit z řídicího panelu řešení. Přihlašovací údaje zařízení vložíte do klientské aplikace později v tomto kurzu.
Pokud jste to ještě neudělali, přidejte do řešení vzdáleného monitorování vlastní zařízení. Na řídicím panelu řešení proveďte následující kroky:
V levém dolním rohu řídicího panelu klikněte na Přidat zařízení.
Na panelu Vlastní zařízení klikněte na Přidat nové.
Vyberte možnost Definovat vlastní ID zařízení. Zadejte ID zařízení, například rasppi, klikněte na Zkontrolovat ID a ověřte, že jste název ještě nepoužili ve svém řešení, a pak kliknutím na Vytvořit zřiďte zařízení.
Poznamenejte si přihlašovací údaje zařízení (ID zařízení, IoT Hub název hostitele a klíč zařízení). Vaše klientská aplikace v Raspberry Pi potřebuje tyto hodnoty pro připojení k řešení pro vzdálené monitorování. Pak klikněte na Hotovo.
V seznamu zařízení na řídicím panelu řešení vyberte své zařízení. Pak na panelu Podrobnosti o zařízení klikněte na Povolit zařízení. Stav vašeho zařízení je teď Spuštěno. Řešení pro vzdálené monitorování teď může z vašeho zařízení přijímat telemetrii a vyvolávat v něm metody.
Příprava Raspberry Pi
Instalace Raspbian
Pokud raspberry Pi používáte poprvé, musíte nainstalovat operační systém Raspbian pomocí NOOBS na SD kartu, která je součástí sady. Průvodce softwarem Raspberry Pi popisuje, jak na Raspberry Pi nainstalovat operační systém. Tento kurz předpokládá, že jste na Raspberry Pi nainstalovali operační systém Raspbian.
Poznámka
Na kartě SD, která je součástí úvodní sady Microsoft Azure IoT Starter Kit pro Raspberry Pi 3 , je už nainstalovaný noOBS. Z této karty můžete spustit Raspberry Pi a zvolit instalaci operačního systému Raspbian.
K dokončení instalace hardwaru potřebujete:
- Připojte Raspberry Pi ke zdroji napájení, který je součástí sady.
- Připojte Raspberry Pi k síti pomocí ethernetového kabelu, který je součástí sady. Případně můžete pro Raspberry Pi nastavit bezdrátové připojení .
Dokončili jste hardwarové nastavení Raspberry Pi.
Přihlášení a přístup k terminálu
Pro přístup k terminálovému prostředí v Raspberry Pi máte dvě možnosti:
Pokud máte k Raspberry Pi připojenou klávesnici a monitor, můžete pro přístup k okně terminálu použít grafické uživatelské rozhraní Raspbian.
Přístup k příkazovému řádku v Raspberry Pi pomocí SSH ze 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 Terminál pomocí ikony, která vypadá jako monitor.
Přihlášení pomocí SSH
Pro přístup k Raspberry Pi z příkazového řádku 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 Linuxu & Mac OS.
Přihlaste se pomocí maliny uživatelského jména pí a hesla.
Volitelné: Sdílení složky v Raspberry Pi
Volitelně můžete chtít sdílet složku v Raspberry Pi se svým desktopovým prostředím. Sdílení složky vám umožní použít k úpravě souborů v Raspberry Pi váš preferovaný desktopový textový editor (například Visual Studio Code nebo Sublime Text) místo použití nano
nebo vi
.
Pokud chcete sdílet složku s Windows, nakonfigurujte server Samba na Raspberry Pi. Případně můžete použít integrovaný server SFTP s klientem SFTP na počítači.
Stažení a konfigurace ukázky
Teď si můžete stáhnout a nakonfigurovat klientskou aplikaci vzdáleného monitorování v 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 Node.js nebo novější. Následující kroky ukazují, jak na Raspberry Pi nainstalovat Node.js verze 6.10.2:
K aktualizaci Raspberry Pi použijte následující příkaz:
sudo apt-get update
Pomocí následujícího příkazu stáhněte Node.js binární soubory do Raspberry Pi:
wget https://nodejs.org/dist/v6.10.2/node-v6.10.2-linux-armv7l.tar.gz
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
Pomocí následujícího příkazu ověřte, že jste úspěšně nainstalovali Node.js verzi 6.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ů v terminálu na vašem pi:
cd ~
git clone --recursive https://github.com/Azure-Samples/iot-remote-monitoring-node-raspberrypi-getstartedkit.git
Aktualizace připojovací řetězec zařízení
V editoru nano otevřete ukázkový zdrojový soubor pomocí následujícího příkazu:
nano ~/iot-remote-monitoring-node-raspberrypi-getstartedkit/simulator/remote_monitoring.js
Vyhledejte řádek:
var connectionString = 'HostName=[Your IoT hub name].azure-devices.net;DeviceId=[Your device id];SharedAccessKey=[Your device key]';
Zástupné hodnoty nahraďte informacemi o zařízení a IoT Hub, které jste vytvořili a uložili na začátku tohoto kurzu. Uložte změny (Ctrl-O, Enter) a ukončete editor (Ctrl-X).
Spuštění ukázky
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/simulator
npm install
Teď můžete spustit ukázkový program na Raspberry Pi. Zadejte příkaz:
sudo node ~/iot-remote-monitoring-node-raspberrypi-getstartedkit/simulator/remote_monitoring.js
Následující ukázkový výstup je příkladem výstupu, který vidíte na příkazovém řádku v Raspberry Pi:
Stisknutím kláves Ctrl+C program můžete kdykoli ukončit.
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í. Do Raspberry Pi můžete také posílat zprávy z řídicího panelu řešení.
- Přejděte na řídicí panel řešení.
- V rozevíracím seznamu Zařízení k zobrazení vyberte své zařízení.
- Telemetrie z Raspberry Pi se zobrazí na řídicím panelu.
Akce na zařízení
Na řídicím panelu řešení můžete v Raspberry Pi vyvolat metody. Když se Raspberry Pi připojí k řešení pro vzdálené monitorování, odešle informace o metodách, které podporuje.
Na řídicím panelu řešení klikněte na Zařízení a přejděte na stránku Zařízení . V seznamu zařízení vyberte Raspberry Pi. Pak zvolte Metody:
Na stránce Invoke Method (Vyvolat metodu ) zvolte LightBlink v rozevíracím seznamu Method (Metoda ).
Zvolte InvokeMethod. Simulátor vytiskne v konzole na Raspberry Pi zprávu. Aplikace v Raspberry Pi odešle potvrzení zpět na řídicí panel řešení:
Led diodu můžete zapnout a vypnout pomocí metody ChangeLightStatus s hodnotou LightStatusValue nastavenou na 1 pro zapnuto nebo 0 pro vypnuto.
Upozornění
Pokud necháte řešení vzdáleného monitorování v účtu Azure spuštěné, bude se vám účtovat čas, kdy 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í Azure IoT Suite pro ukázkové účely. Po dokončení používání odstraňte předkonfigurované řešení ze svého účtu Azure.
Další kroky
Další ukázky a dokumentaci k Azure IoT najdete na webu Azure IoT Dev Center .