Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
S’applique à :
IoT Edge 1.1
Important
La date de fin de support IoT Edge 1.1 était le 13 décembre 2022. Consultez le cycle de vie des produits Microsoft pour plus d’informations sur la prise en charge de ce produit, service, technologie ou API. Pour plus d’informations sur la mise à jour vers la dernière version d’IoT Edge, consultez Mettre à jour IoT Edge.
Dans cet article, nous utilisons des données d'apprentissage pour simuler un appareil envoyant des télémétries vers Azure IoT Hub. Comme indiqué dans l’introduction, ce tutoriel utilise le jeu de données de simulation de dégradation du moteur Turbofan pour simuler des données à partir d’un ensemble de moteurs d’avion pour l’entraînement et les tests.
Dans notre scénario expérimental, nous savons que :
- Les données se composent de plusieurs séries chronologiques multivariées.
- Chaque jeu de données est divisé en sous-ensembles d’apprentissage et de test.
- Chaque série chronologique provient d’un moteur différent.
- Chaque moteur commence par des degrés différents d’usure initiale et de variation de fabrication.
Pour ce tutoriel, nous utilisons le sous-ensemble de données d’apprentissage d’un jeu de données unique (FD003).
En réalité, chaque moteur serait un appareil IoT indépendant. En supposant que vous n’avez pas de collection de moteurs turbofan connectés à Internet disponibles, nous allons créer un logiciel autonome pour ces appareils.
Le simulateur est un programme C# qui utilise les API IoT Hub pour inscrire par programmation des appareils virtuels auprès d’IoT Hub. Nous lisons ensuite les données de chaque appareil à partir du sous-ensemble de données fourni par la NASA et l’envoyons à votre hub IoT à l’aide d’un appareil IoT simulé. Tout le code de cette partie du didacticiel se trouve dans le répertoire DeviceHarness du référentiel.
Le projet DeviceHarness est un projet .NET Core écrit en C# composé de quatre classes :
- Programme: Point d’entrée pour l’exécution responsable de la gestion des entrées utilisateur et de la coordination globale.
- TrainingFileManager : Responsable de la lecture et de l’analyse du fichier de données sélectionné.
- CycleData : Représente une seule ligne de données dans un fichier converti au format de message.
- TurbofanDevice : Responsable de la création d’un dispositif IoT correspondant à une série chronologique unique dans les données et de la transmission de celles-ci à IoT Hub.
Les tâches décrites dans cet article doivent prendre environ 20 minutes.
L’équivalent réel du travail de cette étape serait probablement effectué par les développeurs d’appareils et les développeurs cloud.
Dans cette section du tutoriel, vous allez apprendre à :
- Incorporez un projet externe dans votre environnement de développement.
- Utilisez l’exemple de projet DeviceHarness pour générer des données d’appareil IoT simulées.
- Affichez les données générées dans votre IoT Hub.
Conditions préalables
Cet article fait partie d’une série de tutoriels sur l’utilisation d’Azure Machine Learning sur IoT Edge. Chaque article de la série s’appuie sur le travail de l’article précédent. Si vous êtes arrivé directement à cet article, visitez le premier article de la série.
Configurer Visual Studio Code et générer un projet DeviceHarness
Ouvrez une session de bureau à distance sur votre machine virtuelle de développement.
Dans Visual Studio Code, ouvrez le
C:\source\IoTEdgeAndMlSample\DeviceHarnessdossier.Étant donné que vous utilisez des extensions sur cet ordinateur pour la première fois, certaines extensions mettent à jour et installent leurs dépendances. Vous pouvez être invité à mettre à jour l’extension. Dans ce cas, sélectionnez Recharger la fenêtre.
Si les erreurs OmniSharp apparaissent dans la fenêtre de sortie, vous devez désinstaller l’extension C#.
Vous serez invité à ajouter des ressources requises pour DeviceHarness. Sélectionnez Oui pour les ajouter.
- La notification peut prendre quelques secondes.
- Si vous avez manqué cette notification, cochez l’icône de cloche dans le coin inférieur droit.
Sélectionnez Restaurer pour restaurer les dépendances de package.
Si vous n’obtenez pas ces notifications, fermez Visual Studio Code, supprimez les répertoires bin et obj dans
C:\source\IoTEdgeAndMlSample\DeviceHarness, ouvrez Visual Studio Code et rouvrez le dossier DeviceHarness.Vérifiez que votre environnement est correctement configuré en déclenchant une build avec Ctrl + Maj + B ou en exécutant la tâche de génération via le Terminal>.
Vous êtes invité à sélectionner la tâche de génération à exécuter. Sélectionnez Build.
La build s’exécute et génère un message de réussite.
Vous pouvez rendre cette tâche la tâche de build par défaut en sélectionnant Terminal>Configurer la tâche de build par défaut... et en choisissant Build à partir de l’invite.
Se connecter à IoT Hub et exécuter DeviceHarness
Maintenant que nous avons terminé la création du projet, connectez-vous à votre hub IoT pour accéder à la chaîne de connexion et surveiller l'évolution de la génération des données.
Se connecter à Azure dans Visual Studio Code
Connectez-vous à votre abonnement Azure dans Visual Studio Code en ouvrant la palette de commandes ou en affichant> lapalette
Ctrl + Shift + Pde commandes.Recherchez la commande Azure : Connexion .
Une fenêtre de navigateur s’ouvre et vous invite à entrer vos informations d’identification. Lorsque vous êtes redirigé vers une page de réussite, vous pouvez fermer le navigateur.
Se connecter à votre hub IoT et récupérer la chaîne de connexion du hub
Dans la section inférieure de l’Explorateur Visual Studio Code, sélectionnez le cadre Azure IoT Hub pour le développer.
Dans le cadre développé, cliquez sur Sélectionner IoT Hub.
Lorsque vous y êtes invité, sélectionnez votre abonnement Azure, puis votre hub IoT.
Cliquez sur le ... à droite d’Azure IoT Hub pour plus d’actions. Sélectionnez Copier la chaîne de connexion IoT Hub.
Exécuter le projet DeviceHarness
Sélectionnez Afficher> leterminal pour ouvrir le terminal Visual Studio Code.
Si vous ne voyez pas d’invite, appuyez sur Entrée.
Entrez
dotnet rundans le terminal.Lorsque vous êtes invité à entrer la chaîne de connexion IoT Hub, collez la chaîne de connexion copiée dans la section précédente.
Dans la fenêtre des appareils Azure IoT Hub, cliquez sur le bouton Actualiser.
Notez que les appareils sont ajoutés au hub IoT et que les appareils apparaissent en vert pour indiquer que les données sont envoyées via cet appareil. Une fois que les appareils ont envoyé des messages au hub IoT, ils se déconnectent et apparaissent bleus.
Vous pouvez afficher les messages envoyés au hub en cliquant avec le bouton droit sur n’importe quel appareil et en sélectionnant Démarrer la surveillance du point de terminaison d’événement intégré. Les messages s’affichent dans le volet de sortie de Visual Studio Code.
Arrêtez la surveillance en cliquant dans le volet de sortie Azure IoT Hub , puis choisissez Arrêter la surveillance du point de terminaison d’événement intégré.
Laissez l’application s’exécuter jusqu’à la fin, ce qui prend quelques minutes.
Vérifier IoT Hub en cas d'activité
Les données envoyées par DeviceHarness ont été envoyées à votre hub IoT, où vous pouvez vérifier dans le portail Azure.
Ouvrez le portail Azure et accédez au hub IoT créé pour ce didacticiel.
Dans le menu du volet gauche, sous Surveillance, sélectionnez Métriques.
Dans la page de définition de graphique, cliquez sur la liste déroulante Métriques , faites défiler la liste et sélectionnez Routage : données remises au stockage. Le graphique doit afficher le pic du moment où les données ont été routées vers le stockage.
Valider les données dans Stockage Azure
Les données que nous venons d’envoyer à votre hub IoT ont été routées vers le conteneur de stockage que nous avons créé dans l’article précédent. Examinons les données de notre compte de stockage.
Dans le portail Azure, accédez à votre compte de stockage.
Dans le navigateur du compte de stockage, sélectionnez Explorateur Stockage (préversion).
Dans l’Explorateur de stockage, sélectionnez conteneurs de blobs, puis
devicedata.Dans le volet de contenu, cliquez sur le dossier pour le nom du hub IoT, suivi de l’année, du mois, du jour et de l’heure. Vous verrez plusieurs dossiers représentant les minutes où les données ont été écrites.
Cliquez dans l’un de ces dossiers pour rechercher les fichiers de données étiquetés 00 et 01 correspondant à la partition.
Les fichiers sont écrits au format Avro . Double-cliquez sur l’un de ces fichiers pour ouvrir un autre onglet de navigateur et afficher partiellement les données. Si vous êtes invité à ouvrir le fichier dans un programme, vous pouvez choisir VS Code et il s’affiche correctement.
Il n’est pas nécessaire d’essayer de lire ou d’interpréter les données pour le moment ; nous le ferons dans l’article suivant.
Nettoyer les ressources
Ce tutoriel fait partie d’un ensemble où chaque article s’appuie sur le travail effectué dans les précédents. Veuillez patienter pour nettoyer les ressources jusqu’à ce que vous mettez fin au didacticiel final.
Étapes suivantes
Dans cet article, nous avons utilisé un projet .NET Core pour créer un ensemble d’appareils IoT virtuels et envoyer des données via eux à notre hub IoT et dans un conteneur de stockage Azure. Ce projet simule un scénario réel dans lequel les appareils IoT physiques envoient des données à un IoT Hub, puis dans un stockage organisé. Ces données incluent des lectures de capteur, des paramètres opérationnels, des signaux d’échec et des modes, et ainsi de suite. Une fois que suffisamment de données ont été collectées, nous l’utilisons pour entraîner des modèles qui prédisent la durée de vie utile restante (RUL) de l’appareil. Nous allons illustrer ce Machine Learning dans l’article suivant.
Passez à l’article suivant pour entraîner un modèle Machine Learning avec les données.