Anslut Raspberry Pi 3 till fjärrövervakningslösningen och skicka simulerad telemetri med Node.js
Den här självstudien visar hur du använder Raspberry Pi 3 för att simulera temperatur- och luftfuktighetsdata som ska skickas till molnet. Självstudien använder:
- Raspbian OS, programmeringsspråket Node.js och Microsoft Azure IoT SDK för Node.js för att implementera en exempelenhet.
- Den förkonfigurerade lösningen för fjärrövervakning i IoT Suite som den molnbaserade serverdelen.
Översikt
I den här självstudien går du igenom följande steg:
- Distribuera en instans av den förkonfigurerade fjärrövervakningslösningen till din Azure-prenumeration. Det här steget distribuerar och konfigurerar automatiskt flera Azure-tjänster.
- Konfigurera enheten så att den kommunicerar med datorn och fjärrövervakningslösningen.
- Uppdatera exempelenhetskoden för att ansluta till fjärrövervakningslösningen och skicka simulerad telemetri som du kan visa på lösningens instrumentpanel.
Förutsättningar
Du behöver en aktiv Azure-prenumeration för att kunna utföra stegen i den här självstudiekursen.
Anteckning
Om du inte har något konto kan du skapa ett kostnadsfritt utvärderingskonto på bara några minuter. Mer information om den kostnadsfria utvärderingsversionen av Azure finns Kostnadsfri utvärderingsversion av Azure.
Programvara som krävs
Du behöver en SSH-klient på din stationära dator så att du kan fjärråtkomst till kommandoraden på Raspberry Pi.
- Windows innehåller inte en SSH-klient. Vi rekommenderar att du använder PuTTY.
- De flesta Linux-distributioner och Mac OS innehåller kommandorads-SSH-verktyget. Mer information finns i SSH Using Linux or Mac OS (SSH Using Linux or Mac OS).
Nödvändig maskinvara
En stationär dator som gör att du kan fjärransluta till kommandoraden på Raspberry Pi.
Microsoft IoT Starter Kit för Raspberry Pi 3 eller motsvarande komponenter. I den här självstudien används följande objekt från paketet:
- Raspberry Pi 3
- MicroSD-kort (med NOOBS)
- En USB Mini-kabel
- En Ethernet-kabel
Etablera lösningen
Om du inte redan har etablerat den förkonfigurerade lösningen för fjärrövervakning i ditt konto:
- Logga in på azureiotsuite.com med dina autentiseringsuppgifter för Azure-kontot och klicka för + att skapa en lösning.
- Klicka på Välj på panelen Fjärrövervakning.
- Ange ett lösningsnamn för den förkonfigurerade lösningen för fjärrövervakning.
- Välj den region och prenumeration som du vill använda för att etablera lösningen.
- Klicka på Skapa lösning för att påbörja etableringen. Den här processen tar normalt flera minuter.
Vänta tills etableringsprocessen har slutförts
- Klicka på ikonen för din lösning med statusen Etablerar.
- Observera etableringsstatusen när Azure-tjänsterna distribueras i din Azure-prenumeration.
- När etableringen har slutförts ändras statusen till Klar.
- Klicka på ikonen så ser du informationen om din lösning i den högra rutan.
Anteckning
Om det uppstår några problem när du distribuerar den förkonfigurerade lösningen kan du läsa Behörigheter på webbplatsen azureiotsuite.com och Vanliga frågor och svar. Om problemen kvarstår så skapa en tjänstbiljett på portalen.
Finns det något som du förväntar dig att se men som inte visas för din lösning? Lämna förslag på funktioner i User Voice.
Varning
Fjärrövervakningslösningen etablerar en uppsättning Azure-tjänster i din Azure-prenumeration. Distributionen återspeglar en verklig företagsarkitektur. Om du vill undvika onödiga avgifter för Azure-förbrukning tar du bort din instans av den förkonfigurerade lösningen på azureiotsuite.com när du är klar med den. Om du behöver den förkonfigurerade lösningen igen kan du enkelt återskapa den. Mer information om hur du minskar förbrukningen när fjärrövervakningslösningen körs finns i Konfigurera förkonfigurerade azure IoT Suite-lösningar i demosyfte.
Visa instrumentpanelen för lösningen
På instrumentpanelen för lösningen kan du hantera den distribuerade lösningen. Du kan till exempel visa telemetri, lägga till enheter och anropa metoder.
När etableringen har slutförts och panelen för din förkonfigurerade lösning visar statusen Klar klickar du på Starta så öppnas portalen för fjärrövervakningslösningen på en ny flik.
Som standard visar lösningsportalen instrumentpanelen. Du kan navigera till andra delar av lösningsportalen via menyn till vänster på sidan.
Lägg till en enhet
För att en enhet ska kunna ansluta till den förkonfigurerade lösningen måste den identifiera sig för IoT Hub med giltiga autentiseringsuppgifter. Du kan hämta enhetens autentiseringsuppgifter från lösningens instrumentpanel. Du kan inkludera enhetsautentiseringsuppgifterna i klientprogrammet senare i den här självstudien.
Om du inte redan har gjort det lägger du till en anpassad enhet i fjärrövervakningslösningen. Slutför följande steg på lösningsinstrumentpanelen:
Klicka på Lägg till en enhet i det nedre vänstra hörnet på instrumentpanelen.
I panelen Anpassad enhet klickar du på Lägg till ny.
Välj Låt mig ange mitt eget enhets-ID. Ange ett enhets-ID, till exempel rasppi, klicka på Kontrollera ID för att kontrollera att du inte redan har använt namnet i lösningen och klicka sedan på Skapa för att etablera enheten.
Anteckna enhetens autentiseringsuppgifter (enhets-ID, IoT Hub värdnamn och enhetsnyckel). Klientprogrammet på Raspberry Pi behöver dessa värden för att ansluta till fjärrövervakningslösningen. Klicka sedan på Klar.
Välj enheten i enhetslistan i lösningens instrumentpanel. Klicka sedan på Aktivera enhet i panelen Enhetsinformation. Statusen för din enhet är nu Körs. Fjärrövervakningslösningen kan nu ta emot telemetri från enheten och anropa metoder på enheten.
Förbered din Raspberry Pi
Installera Raspbian
Om det är första gången du använder Raspberry Pi måste du installera Raspbian-operativsystemet med NOOBS på SD-kortet som ingår i paketet. I Raspberry Pi Software Guide beskrivs hur du installerar ett operativsystem på Raspberry Pi. Den här självstudien förutsätter att du har installerat Raspbian-operativsystemet på Raspberry Pi.
Anteckning
SD-kortet som ingår i Microsoft Azure IoT Starter Kit för Raspberry Pi 3 har redan NOOBS installerat. Du kan starta Raspberry Pi från det här kortet och välja att installera Raspbian OS.
För att slutföra maskinvarukonfigurationen måste du:
- Anslut din Raspberry Pi till strömförsörjningen som ingår i satsen.
- Anslut Raspberry Pi till nätverket med ethernet-kabeln som ingår i ditt kit. Du kan också konfigurera trådlös anslutning för din Raspberry Pi.
Nu har du slutfört maskinvarukonfigurationen av Raspberry Pi.
Logga in och få åtkomst till terminalen
Du har två alternativ för att komma åt en terminalmiljö på Raspberry Pi:
Om du har ett tangentbord och en bildskärm som är ansluten till din Raspberry Pi kan du använda raspbian-gränssnittet för att komma åt ett terminalfönster.
Öppna kommandoraden på Raspberry Pi med hjälp av SSH från din dator.
Använda ett terminalfönster i det grafiska användargränssnittet
Standardautentiseringsuppgifterna för Raspbian är användarnamnet pi och lösenordet raspberry. I aktivitetsfältet i det grafiska användargränssnittet kan du starta terminalverktyget med hjälp av ikonen som ser ut som en övervakare.
Logga in med SSH
Du kan använda SSH för kommandoradsåtkomst till Raspberry Pi. Artikeln SSH (Secure Shell) beskriver hur du konfigurerar SSH på Raspberry Pi och hur du ansluter från Windows eller Linux & Mac OS.
Logga in med användarnamnet pi och lösenord raspberry.
Valfritt: Dela en mapp på Raspberry Pi
Om du vill kan du dela en mapp på Raspberry Pi med din skrivbordsmiljö. Genom att dela en mapp kan du använda den skrivbordstextredigerare du föredrar (till exempel Visual Studio Code eller Sublime Text) för att redigera filer på Raspberry Pi i stället för att använda nano
eller vi
.
Om du vill dela en mapp med Windows konfigurerar du en Samba-server på Raspberry Pi. Du kan också använda den inbyggda SFTP-servern med en SFTP-klient på skrivbordet.
Ladda ned och konfigurera exemplet
Nu kan du ladda ned och konfigurera fjärrövervakningsklientprogrammet på Raspberry Pi.
Installera Node.js
Om du inte redan har gjort det installerar du Node.js på Raspberry Pi. IoT SDK för Node.js kräver version 0.11.5 av Node.js eller senare. Följande steg visar hur du installerar Node.js v6.10.2 på Raspberry Pi:
Använd följande kommando för att uppdatera Raspberry Pi:
sudo apt-get update
Använd följande kommando för att ladda ned Node.js binärfiler till Raspberry Pi:
wget https://nodejs.org/dist/v6.10.2/node-v6.10.2-linux-armv7l.tar.gz
Använd följande kommando för att installera binärfilerna:
sudo tar -C /usr/local --strip-components 1 -xzf node-v6.10.2-linux-armv7l.tar.gz
Använd följande kommando för att kontrollera att du har installerat Node.js v6.10.2:
node --version
Klona lagringsplatserna
Om du inte redan har gjort det klonar du de lagringsplatser som krävs genom att köra följande kommandon i en terminal på pi:
cd ~
git clone --recursive https://github.com/Azure-Samples/iot-remote-monitoring-node-raspberrypi-getstartedkit.git
Uppdatera enhetens anslutningssträng
Öppna exempelkällfilen i nano-redigeraren med följande kommando:
nano ~/iot-remote-monitoring-node-raspberrypi-getstartedkit/simulator/remote_monitoring.js
Hitta raden:
var connectionString = 'HostName=[Your IoT hub name].azure-devices.net;DeviceId=[Your device id];SharedAccessKey=[Your device key]';
Ersätt platshållarvärdena med enheten och IoT Hub information som du skapade och sparade i början av den här självstudien. Spara ändringarna (Ctrl-O, Retur) och avsluta redigeraren (Ctrl-X).
Kör exemplet
Kör följande kommandon för att installera de nödvändiga paketen för exemplet:
cd ~/iot-remote-monitoring-node-raspberrypi-getstartedkit/simulator
npm install
Nu kan du köra exempelprogrammet på Raspberry Pi. Ange kommandot:
sudo node ~/iot-remote-monitoring-node-raspberrypi-getstartedkit/simulator/remote_monitoring.js
Följande exempelutdata är ett exempel på utdata som visas i kommandotolken på Raspberry Pi:
Tryck på Ctrl-C för att avsluta programmet när som helst.
Visa telemetrin
Raspberry Pi skickar nu telemetri till fjärrövervakningslösningen. Du kan visa telemetrin på lösningens instrumentpanel. Du kan också skicka meddelanden till Raspberry Pi från lösningens instrumentpanel.
- Gå till lösningens instrumentpanel.
- Välj din enhet i listrutan Enhet att visa .
- Telemetrin från Raspberry Pi visas på instrumentpanelen.
Agera på enheten
Från lösningens instrumentpanel kan du anropa metoder på Raspberry Pi. När Raspberry Pi ansluter till fjärrövervakningslösningen skickar den information om de metoder som stöds.
På instrumentpanelen för lösningen klickar du på Enheter för att gå till sidan Enheter . Välj Raspberry Pi i enhetslistan. Välj sedan Metoder:
På sidan Anropa metod väljer du LightBlink i listrutan Metod .
Välj InvokeMethod. Simulatorn skriver ut ett meddelande i konsolen på Raspberry Pi. Appen på Raspberry Pi skickar en bekräftelse tillbaka till lösningens instrumentpanel:
Du kan aktivera och inaktivera lysdioden med hjälp av metoden ChangeLightStatus med en LightStatusValue inställd på 1 för på eller 0 för av.
Varning
Om du lämnar fjärrövervakningslösningen igång på ditt Azure-konto debiteras du för den tid den körs. Mer information om hur du minskar förbrukningen när fjärrövervakningslösningen körs finns i Konfigurera förkonfigurerade azure IoT Suite-lösningar i demosyfte. Ta bort den förkonfigurerade lösningen från ditt Azure-konto när du är klar med den.
Nästa steg
Besök Azure IoT Dev Center för fler exempel och dokumentation om Azure IoT.