Připojte Raspberry Pi 3 k řešení vzdáleného monitorování a odešlete telemetrii ze skutečného senzoru pomocí Node.js
V tomto kurzu se dozvíte, jak pomocí úvodní sady Microsoft Azure IoT pro Raspberry Pi 3 vyvinout čtečku teploty a vlhkosti, která dokáže komunikovat s cloudem. V tomto kurzu se používá:
- Operační systém Raspbian, programovací jazyk Node.js a sada 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 dokončíte 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í pro připojení k řešení vzdáleného monitorování a odešlete telemetrii, kterou 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žívat 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ě se připojit 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)
- Mini kabel USB
- Ethernetový kabel
- Senzor BME280
- Prkénko
- Propojovací dráty
- Rezistory
- Led
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í vzdáleného monitorování zřídí sadu služeb Azure ve vašem předplatném 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í azureiotsuite.com, jakmile s ním skončíte. Pokud budete znovu potřebovat předkonfigurované řešení, 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 , abyste ověřili, že jste tento název v řešení ještě nepoužili, a potom klikněte na Vytvořit a zařízení zřiďte.
Poznamenejte si přihlašovací údaje zařízení (ID zařízení, IoT Hub název hostitele a klíč zařízení). Vaše klientská aplikace na Raspberry Pi potřebuje tyto hodnoty pro připojení k řešení vzdáleného 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 nainstalovat operační systém na Raspberry Pi. V tomto kurzu se předpokládá, že jste na Raspberry Pi nainstalovali operační systém Raspbian.
Poznámka
Karta SD, která je součástí úvodní sady Microsoft Azure IoT Pro Raspberry Pi 3 , už má nainstalovaný NOOBS. Z této karty můžete spustit Raspberry Pi a zvolit instalaci operačního systému Raspbian.
Nastavení hardwaru
V tomto kurzu se ke generování telemetrických dat používá senzor BME280, který je součástí úvodní sady Microsoft Azure IoT Pro Raspberry Pi 3 . Pomocí indikátoru LED označuje, kdy Raspberry Pi zpracuje metodu vyvolání z řídicího panelu řešení.
Součásti na chlebové tabuli jsou:
- Červená LED
- 220-Ohmový odpor (červený, červený, hnědý)
- Senzor BME280
Následující diagram znázorňuje, jak připojit hardware:
Následující tabulka shrnuje připojení z Raspberry Pi ke komponentám na panelu cesty:
Raspberry Pi | Prkénko | Barva |
---|---|---|
GND (kolík 14) | LED -ve pin (18A) | Fialový |
GPCLK0 (pin 7) | Odpor (25A) | Oranžový |
SPI_CE0 (pin 24) | CS (39A) | Blue |
SPI_SCLK (pin 23) | SCK (36A) | Žlutý |
SPI_MISO (pin 21) | SDO (37A) | White |
SPI_MOSI (pin 19) | SDI (38A) | Green |
GND (kolík 6) | GND (35A) | Black |
3,3 V (pin 1) | 3Vo (34A) | Red |
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
K prostředí terminálu 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 z vašeho 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 raspberry hesla. 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
SSH můžete použít pro přístup k Raspberry Pi z příkazového řádku. Č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í uživatelského jména pí a hesla raspberry.
Volitelné: Sdílení složky v Raspberry Pi
Volitelně můžete chtít sdílet složku v Raspberry Pi s vaším desktopovým prostředím. Sdílení složky vám umožní používat preferovaný desktopový textový editor (například Visual Studio Code nebo Sublime Text) k úpravě souborů v Raspberry Pi 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.
Povolit SPI
Před spuštěním ukázkové aplikace musíte na Raspberry Pi povolit sběrnici SPI (Serial Peripheral Interface). Raspberry Pi komunikuje se senzorem BME280 přes sběrnici SPI. Konfigurační soubor upravte pomocí následujícího příkazu:
sudo nano /boot/config.txt
Najděte řádek:
#dtparam=spi=on
Pokud chcete zrušit komentář řádku, odstraňte
#
řádek na začátku.Uložte změny (Ctrl-O, Enter) a ukončete editor (Ctrl-X).
Pokud chcete povolit SPI, restartujte Raspberry Pi. Restartováním se odpojí terminál. Při restartování Raspberry Pi se budete muset znovu přihlásit:
sudo reboot
Stažení a konfigurace ukázky
Teď si můžete stáhnout a nakonfigurovat klientskou aplikaci vzdáleného monitorování na raspberry Pi.
Instalace Node.js
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 v6.10.2:
Pomocí následujícího příkazu aktualizujte Raspberry Pi:
sudo apt-get update
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
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 verze 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ů na vašem pí:
cd ~
git clone --recursive https://github.com/Azure-Samples/iot-remote-monitoring-node-raspberrypi-getstartedkit.git`
Aktualizace připojovací řetězec zařízení
Otevřete ukázkový zdrojový soubor v editoru nano pomocí následujícího příkazu:
nano ~/iot-remote-monitoring-node-raspberrypi-getstartedkit/basic/remote_monitoring.js
Najděte řádek:
var connectionString = 'HostName=[Your IoT hub name].azure-devices.net;DeviceId=[Your device id];SharedAccessKey=[Your device key]';
Zástupné hodnoty nahraďte zařízením a IoT Hub informacemi, 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/basic
npm install
Ukázkový program teď můžete spustit na Raspberry Pi. Zadejte příkaz:
sudo node ~/iot-remote-monitoring-node-raspberrypi-getstartedkit/basic/remote_monitoring.js
Následující ukázkový výstup je příkladem výstupu, který vidíte na příkazovém řádku Raspberry Pi:
Stisknutím kombinace kláves Ctrl+C můžete program kdykoli ukončit.
Zobrazení telemetrie
Raspberry Pi teď odesílá telemetrii do řešení vzdáleného monitorování. Telemetrii můžete zobrazit na řídicím panelu řešení. Z řídicího panelu řešení můžete také posílat zprávy do Raspberry Pi.
- 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. Kontrolka LED připojená k Raspberry Pi několikrát bliká. 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 .