Delen via


Zelfstudie: Een omgeving instellen voor machine learning in IoT Edge

Van toepassing op:ja-pictogram IoT Edge 1.1

Belangrijk

Het einde van de ondersteuningsdatum voor IoT Edge 1.1 is 13 december 2022. Controleer de levenscyclus van Microsoft-producten voor informatie over hoe dit product, deze service, technologie of API wordt ondersteund. Zie IoT Edge bijwerken voor meer informatie over het bijwerken naar de nieuwste versie van IoT Edge.

Dit artikel helpt u bij het voorbereiden van uw omgeving voor ontwikkeling en implementatie. Stel eerst een ontwikkelcomputer in met alle hulpprogramma's die u nodig hebt. Maak vervolgens de benodigde cloudresources in Azure.

In deze sectie van de zelfstudie leert u het volgende:

  • Stel een virtuele machine in voor ontwikkeling.
  • Stel een IoT Hub en cloudopslag in voor uw ontwikkelomgeving om te gebruiken.

Vereiste voorwaarden

Dit artikel maakt deel uit van een reeks voor een zelfstudie over het gebruik van Azure Machine Learning in IoT Edge. Elk artikel in de reeks bouwt voort op het werk in het vorige artikel. Als u rechtstreeks bij dit artikel bent aangekomen, gaat u naar het eerste artikel in de reeks.

De ontwikkel-VM instellen

Deze stap wordt doorgaans uitgevoerd door een cloudontwikkelaar. Sommige software kan ook nuttig zijn voor een data scientist.

We hebben een PowerShell-script gemaakt waarmee een virtuele Azure-machine wordt gemaakt met veel van de vereisten die al zijn geconfigureerd. De VIRTUELE machine die we maken, moet geneste virtualisatie kunnen verwerken. Daarom hebben we een Standard_D8s_v3 machinegrootte gekozen.

De ontwikkel-VM wordt ingesteld met:

De virtuele machine voor ontwikkelaars is niet strikt noodzakelijk. Alle ontwikkelhulpprogramma's kunnen worden uitgevoerd op een lokale computer. We raden u echter ten zeerste aan de virtuele machine te gebruiken om een level playing field te garanderen.

Het duurt ongeveer 30 minuten om de virtuele machine te maken en te configureren.

  1. Kloon of download de voorbeeldopslagplaats voor Machine Learning en IoT Edge naar uw lokale computer.

  2. Open PowerShell als beheerder en navigeer naar de map \IoTEdgeAndMlSample\DevVM in de hoofdmap waarin u de code hebt gedownload. We verwijzen naar de hoofdmap voor uw bron als srcdir.

    cd c:\srcdir\IoTEdgeAndMlSample\DevVM
    

    De DevVM-map bevat de bestanden die nodig zijn om een virtuele Azure-machine te maken die geschikt is voor het voltooien van deze zelfstudie.

  3. Voer de volgende opdracht uit om uitvoering van scripts toe te staan. Kies Ja op Alles wanneer u hierom wordt gevraagd.

    Set-ExecutionPolicy Bypass -Scope Process
    
  4. Voer Create-AzureDevVM.ps1uit.

    .\Create-AzureDevVm.ps1
    

    Geef de volgende informatie op wanneer u hierom wordt gevraagd:

    • Azure-abonnements-id: uw abonnements-id, die u kunt vinden in Azure-abonnementen in de portal.
    • Naam van resourcegroep: de naam van een nieuwe of bestaande resourcegroep in Azure.
    • Locatie: Kies een Azure-locatie waar de virtuele machine wordt gemaakt. Bijvoorbeeld 'VS - west 2' of 'Europa - noord'. Zie Azure-locaties voor meer informatie.
    • Gebruikersnaam: Geef een gedenkwaardige naam op voor het beheerdersaccount voor de VIRTUELE machine.
    • Wachtwoord: stel een wachtwoord in voor het beheerdersaccount voor de virtuele machine.

    Het script wordt enkele minuten uitgevoerd terwijl het de volgende stappen uitvoert:

    1. Hiermee wordt de Az-module van Azure PowerShell geïnstalleerd.
    2. U wordt gevraagd u aan te melden bij Azure.
    3. Bevestigt de informatie voor het maken van uw virtuele machine. Druk op y of Enter om door te gaan.
    4. Creëert de resourcegroep als deze niet bestaat.
    5. Hiermee wordt de virtuele machine geïmplementeerd.
    6. Hiermee schakelt u Hyper-V op de virtuele machine in.
    7. Hiermee installeert u software die nodig is voor ontwikkeling en kloont u de voorbeeldopslagplaats.
    8. Herstart de virtuele machine.
    9. Hiermee maakt u een RDP-bestand op uw bureaublad om verbinding te maken met de virtuele machine.

    Als u wordt gevraagd om de naam van de virtuele machine bij het opnieuw opstarten, kunt u de naam kopiëren uit de uitvoer van het script. In de uitvoer ziet u ook het pad naar het RDP-bestand om verbinding te maken met de VIRTUELE machine.

Schema voor automatisch afsluiten instellen

Om u te helpen de kosten te verlagen, is de ontwikkel-VM gemaakt met een automatisch afsluitschema dat is ingesteld op 1900 PST. Mogelijk moet u deze instelling bijwerken, afhankelijk van uw locatie en planning. Het afsluitschema bijwerken:

  1. Navigeer in Azure Portal naar de virtuele machine die door het script is gemaakt.

  2. Selecteer in het menu aan de linkerkant onder Bewerkingende optie Automatisch afsluiten.

  3. Pas de geplande afsluiting en tijdzone naar wens aan en selecteer Opslaan.

Verbinding maken met de ontwikkel-VM

Nu we een VIRTUELE machine hebben gemaakt, moeten we de installatie van de software voltooien die nodig is om de zelfstudie te voltooien.

  1. Dubbelklik op het RDP-bestand dat het script op uw bureaublad heeft gemaakt.

  2. U krijgt een dialoogvenster te zien waarin staat dat de uitgever van de externe verbinding onbekend is. Dit is acceptabel, dus selecteer Verbinding maken.

  3. Geef het beheerderswachtwoord op dat u hebt opgegeven om de virtuele machine te maken en klik op OK.

  4. U wordt gevraagd het certificaat voor de virtuele machine te accepteren. Selecteer Ja.

Visual Studio Code-extensies installeren

Nu u verbinding hebt gemaakt met de ontwikkelcomputer, voegt u enkele handige extensies toe aan Visual Studio Code om de ontwikkelervaring eenvoudiger te maken.

  1. Maak verbinding met de ontwikkel-VM, open een PowerShell-venster en navigeer naar de map C:\source\IoTEdgeAndMlSample\DevVM . Deze map is gemaakt door het script waarmee de VIRTUELE machine is gemaakt.

    cd C:\source\IoTEdgeAndMlSample\DevVM
    
  2. Voer de volgende opdracht uit om uitvoering van scripts toe te staan. Kies Ja op Alles wanneer u hierom wordt gevraagd.

    Set-ExecutionPolicy Bypass -Scope Process
    
  3. Voer het Script voor Visual Studio Code-extensies uit.

    .\Enable-CodeExtensions.ps1
    
  4. Het script wordt enkele minuten uitgevoerd om VS-code-extensies te installeren:

    • Azure IoT Edge
    • Azure IoT Hub
    • Python
    • C#
    • Docker
    • PowerShell

IoT Hub en Opslag instellen

Deze stappen worden doorgaans uitgevoerd door een cloudontwikkelaar.

Azure IoT Hub is het hart van elke IoT-toepassing, omdat deze beveiligde communicatie tussen IoT-apparaten en de cloud afhandelt. Het is het belangrijkste coördinatiepunt voor de werking van de IoT Edge-machine learning-oplossing.

  • IoT Hub gebruikt routes om binnenkomende gegevens van IoT-apparaten naar andere downstreamservices te leiden. We profiteren van IoT Hub-routes om apparaatgegevens naar Azure Storage te verzenden. In Azure Storage worden de apparaatgegevens door Azure Machine Learning gebruikt om onze resterende levensduurclassificatie (RUL) te trainen.

  • Verderop in de zelfstudie gebruiken we IoT Hub om ons Azure IoT Edge-apparaat te configureren en te beheren.

In deze sectie gebruikt u een script om een Azure IoT-hub en een Azure Storage-account te maken. Vervolgens configureert u in Azure Portal een route waarmee gegevens die door de hub zijn ontvangen, worden doorgestuurd naar een Azure Storage-container. Het voltooien van deze stappen duurt ongeveer 10 minuten.

  1. Maak verbinding met de ontwikkel-VM, open een PowerShell-venster en navigeer naar de IoTHub-map .

    cd C:\source\IoTEdgeAndMlSample\IoTHub
    
  2. Voer het script voor het maken uit. Gebruik dezelfde waarden voor abonnements-id, locatie en resourcegroep als bij het maken van de ontwikkel-VM.

    .\New-HubAndStorage.ps1 -SubscriptionId <subscription id> -Location <location> -ResourceGroupName <resource group>
    
    • U wordt gevraagd u aan te melden bij Azure.
    • Het script bevestigt de informatie voor het maken van uw hub- en opslagaccount. Druk op y of Enter om door te gaan.

Het uitvoeren van het script duurt ongeveer twee minuten. Zodra het script is voltooid, wordt de naam van de IoT-hub en het opslagaccount uitgevoerd.

Route naar opslag controleren in IoT Hub

Als onderdeel van het maken van de IoT-hub, heeft het script dat we in de vorige sectie hebben uitgevoerd ook een aangepast eindpunt en een route gemaakt. IoT Hub-routes bestaan uit een query-expressie en een eindpunt. Als een bericht overeenkomt met de expressie, worden de gegevens verzonden langs de route naar het bijbehorende eindpunt. Eindpunten kunnen Event Hubs, Service Bus-wachtrijen en onderwerpen zijn. In dit geval is het eindpunt een blobcontainer in een opslagaccount. We gaan Azure Portal gebruiken om de route te controleren die door ons script is gemaakt.

  1. Open Azure Portal en ga naar de resourcegroep die u voor deze zelfstudie gebruikt.

  2. Selecteer in de lijst met resources de IoT Hub die het script heeft gemaakt. Deze heeft een naam die eindigt op willekeurige tekens, zoals IotEdgeAndMlHub-jrujej6de6i7w.

  3. Selecteer in het linkerdeelvenstermenu onder Hub-instellingende optie Berichtroutering.

  4. Selecteer op de pagina Berichtroutering het tabblad Aangepaste eindpunten .

  5. Vouw de sectie Opslag uit:

    Schermopname van de opslag met de naam turbofanDeviceStorage in de lijst met aangepaste eindpunten in de I o T Hub-portal.

    We zien dat turbofanDeviceStorage in de lijst met aangepaste eindpunten staat. Let op de volgende kenmerken van dit eindpunt:

    • Deze verwijst naar de blob-opslagcontainer die u hebt gemaakt, devicedata zoals aangegeven met de containernaam.
    • De bestandsnaamindeling heeft het woord 'partitie' in de naam. Deze indeling is handiger voor de bestandsbewerkingen die we later in deze zelfstudie gaan uitvoeren met Azure Notebooks.
    • De status moet in orde zijn.
  6. Selecteer het tabblad Routes .

  7. Selecteer de route met de naam turbofanDeviceDataToStorage.

  8. Op de pagina Routes-details ziet u dat het eindpunt van de route het turbofanDeviceStorage-eindpunt is.

    Schermopname met details over de turbofanDeviceDataToStorage-route.

  9. Bekijk de routeringsquery, die is ingesteld op true. Deze instelling betekent dat alle telemetrieberichten van apparaten overeenkomen met deze route; en daarom worden alle berichten verzonden naar het turbofanDeviceStorage-eindpunt .

  10. Aangezien er geen wijzigingen zijn aangebracht, sluit u deze pagina.

De hulpbronnen opschonen

Deze zelfstudie maakt deel uit van een set waarin elk artikel voortbouwt op het werk dat in de vorige artikelen is uitgevoerd. Wacht met het opruimen van resources tot u de laatste tutorial hebt voltooid.

Volgende stappen

In dit artikel hebben we een IoT Hub gemaakt en een route naar een Azure Storage-account geconfigureerd. Vervolgens verzenden we gegevens van een set gesimuleerde apparaten via de IoT Hub naar het opslagaccount. Verderop in de zelfstudie, nadat we ons IoT Edge-apparaat en -modules hebben geconfigureerd, gaan we terug naar routes en kijken we wat meer naar de routeringsquery.

Ga door naar het volgende artikel om een gesimuleerd apparaat te maken dat moet worden bewaakt.