Anslut Raspberry Pi 3 till fjärrövervakningslösningen och skicka simulerad telemetri med C
Den här handledningen visar hur du använder Raspberry Pi 3 för att simulera temperatur- och luftfuktighetsdata som skickas till molnet. Självstudien använder:
- Raspbian OS, programmeringsspråket C och Microsoft Azure IoT SDK för C för att implementera en exempelenhet.
- Den molnbaserade serverdelen i den förkonfigurerade lösningen för fjärrövervakning i IoT Suite.
Översikt
I den här självstudien gör du följande:
- 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 enhetsexemplet för att ansluta till fjärrövervakningslösningen och skicka simulerad telemetri som du kan visa på instrumentpanelen för lösningen.
Förutsättningar
För att slutföra den här självstudien behöver du en aktiv Azure-prenumeration.
Anmärkning
Om du inte har något konto kan du skapa ett kostnadsfritt utvärderingskonto på bara några minuter. Mer information finns i kostnadsfri utvärderingsversion av Azure.
Nödvändig programvara
Du behöver SSH-klienten på din stationära dator så att du kan fjärransluta 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.
Nödvändig maskinvara
Med en stationär dator kan du 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 Minikabel
- En Ethernet-kabel
Etablera lösningen
Om du inte redan har etablerat den förkonfigurerade fjärrövervakningslösningen i ditt konto:
- Logga in på azureiotsuite.com med dina autentiseringsuppgifter för Azure-kontot och klicka på + för att skapa en lösning.
- Klicka Välj på rutan Fjärrövervakning.
- Ange ett lösningsnamn för den förkonfigurerade fjärrövervakningslösningen.
- Välj region och prenumeration du vill använda för att etablera lösningen.
- Klicka på Skapa lösning för att starta etableringsprocessen. Den här processen tar vanligtvis flera minuter att köra.
Vänta tills konfigurationsprocessen har slutförts
- Klicka på rutan för din lösning med statusen Tilldelning.
- Observera Provisioning-tillstånd när Azure-tjänster distribueras i din Azure-prenumeration.
- När etableringen är klar ändras statusen till Ready.
- Klicka på panelen för att se information om din lösning i den högra rutan.
Anmärkning
Om du stöter på problem med att distribuera den förkonfigurerade lösningen kan du läsa Behörigheter på azureiotsuite.com webbplats och vanliga frågor och svar om . Om problemen kvarstår skapar du en tjänstbegäran på -portalen.
Finns det information som du förväntar dig att se som inte visas för din lösning? Ge oss funktionsförslag på User Voice.
Varning
Fjärrövervakningslösningen etablerar en uppsättning Azure-tjänster i din Azure-prenumeration. Implementeringen återspeglar en verklig företagsarkitektur. För att 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
Med 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 är klar och panelen för den förkonfigurerade lösningen anger Klarväljer du Starta för att öppna portalen för fjärrövervakningslösningen på en ny flik.
Som standard visar lösningsportalen instrumentpanelen. Du kan navigera till andra områden i lösningsportalen med hjälp av menyn till vänster på sidan.
Lägga 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 kommer att 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å instrumentpanelen för lösningen:
I det nedre vänstra hörnet på instrumentpanelen klickar du på Lägg till en enhet.
I panelen anpassad enhet klickar du på Lägg till ny.
Välj Låt mig definiera 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ärdnamnoch enhetsnyckel). Klientprogrammet på Raspberry Pi behöver dessa värden för att ansluta till fjärrövervakningslösningen. Klicka sedan på Done (Klar).
Välj enheten i enhetslistan på instrumentpanelen för lösningen. I panelen Enhetsinformation klickar du sedan på Aktivera enhet. Enhetens status är nu I drift. 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 satsen. 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.
Anmärkning
SD-kortet som ingår i Microsoft Azure IoT Starter Kit för Raspberry Pi 3 redan har 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 Raspberry Pi till strömförsörjningen som ingår i satsen.
- Anslut Raspberry Pi till nätverket med hjälp av Ethernet-kabeln som ingår i ditt kit. Du kan också konfigurera trådlös anslutning för 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 ansluten till Raspberry Pi kan du använda Raspbian GUI för att komma åt ett terminalfönster.
Få åtkomst till kommandoraden på Raspberry Pi med hjälp av SSH från datorn.
Använda ett terminalfönster i GUI
Standardautentiseringsuppgifterna för Raspbian är användarnamn pi och lösenord raspberry. I aktivitetsfältet i GUI kan du starta verktyget Terminal 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 hallon.
Valfritt: Dela en mapp på Raspberry Pi
Du kan också dela en mapp på Raspberry Pi med din skrivbordsmiljö. Om du delar en mapp kan du använda din föredragna skrivbordstextredigerare (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.
Klona lagringsplatserna
Om du inte redan har gjort det klonar du de nödvändiga lagringsplatserna genom att köra följande kommandon i en terminal på din Pi:
cd ~
git clone --recursive https://github.com/Azure-Samples/iot-remote-monitoring-c-raspberrypi-getstartedkit.git
Uppdatera enhetsanslutningssträngen
Öppna exempelkällfilen i nano-redigeraren med hjälp av följande kommando:
nano ~/iot-remote-monitoring-c-raspberrypi-getstartedkit/simulator/remote_monitoring/remote_monitoring.c
Leta upp följande rader:
static const char* deviceId = "[Device Id]";
static const char* connectionString = "HostName=[IoTHub Name].azure-devices.net;DeviceId=[Device Id];SharedAccessKey=[Device Key]";
Ersätt platshållarvärdena med den enhet 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).
Skapa exemplet
Installera nödvändiga paket för Microsoft Azure IoT Device SDK för C genom att köra följande kommandon i en terminal på Raspberry Pi:
sudo apt-get update
sudo apt-get install g++ make cmake git libcurl4-openssl-dev libssl-dev uuid-dev
Nu kan du skapa den uppdaterade exempellösningen på Raspberry Pi:
chmod +x ~/iot-remote-monitoring-c-raspberrypi-getstartedkit/simulator/build.sh
~/iot-remote-monitoring-c-raspberrypi-getstartedkit/simulator/build.sh
Nu kan du köra exempelprogrammet på Raspberry Pi. Ange kommandot:
sudo ~/cmake/remote_monitoring/remote_monitoring
Följande exempelutdata är ett exempel på utdata som visas i kommandotolken på Raspberry Pi:
Tryck 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ösningsinstrumentpanelen. Du kan också skicka meddelanden till Raspberry Pi från instrumentpanelen för lösningen.
- Gå till lösningspanelen.
- Välj enheten i listrutan Enhet för att visa.
- Telemetrin från Raspberry Pi visas på instrumentpanelen.
Agera på enheten
Från lösningsinstrumentpanelen 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 Invoke Method väljer du LightBlink i listrutan för Method.
Välj InvokeMethod. Simulatorn skriver ut ett meddelande i konsolen på Raspberry Pi. Appen på Raspberry Pi skickar en bekräftelse tillbaka till lösningsinstrumentpanelen:
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 i 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 har använt den.
Nästa steg
Besök Azure IoT Dev Center- för fler exempel och dokumentation om Azure IoT.