Les Azure IoT Tools pour Visual Studio Code, développés sur GitHub, fournissent un ensemble d’extensions permettant aux développeurs de découvrir et d’interagir avec Azure IoT Hub (« service géré permettant la communication bidirectionnelle entre les périphériques IoT et Azure »), utilisé pour faire fonctionner IoT Edge (« cloud intelligence déployée localement sur des périphériques IoT Edge ») et les applications de périphériques.
La mise à jour apporte un simulateur autonome aux développeurs Azure IoT Edge utilisant l'outil de développement Azure IoT EdgeHub, permettant de créer, développer, tester, exécuter et déboguer des modules et des solutions Azure IoT Edge, étroitement liés à Python et devant être exécutés sur des environnements Python.
Cependant, « Python et Pip ne sont pas installés par tous les développeurs Azure IoT Edge, en particulier ceux qui utilisent Windows comme environnement de développement », a reconnu Microsoft. « Par conséquent, nous avons livré un simulateur autonome pour Azure IoT EdgeHub Dev Tool afin que les développeurs qui utilisent Windows comme environnement de développement n'aient plus besoin de configurer l'environnement Python. Le simulateur autonome a déjà été intégré à la dernière version des Azure IoT Tools pour Visual Studio Code ».
Déployer le module Event Grid sur Azure IoT Edge
Event Grid sur IoT Edge optimise la puissance et la flexibilité de Azure Event Grid à tous les scénarios événementiels et pub/sub (ou encore publish-suscribe, il s'agit d'un mécanisme de publication de messages et d’abonnement à ces derniers dans lequel les diffuseurs ne destinent pas a priori les messages à des destinataires. À la place, une catégorie est associée aux messages émis sans savoir s’il y a des destinataires). Il existe plusieurs façons de déployer le module Event Grid dans VS Code :
Lors de l'ajout d'un nouveau module à votre solution IoT Edge nouvelle ou existante, une nouvelle option permet désormais de choisir Azure Event Grid.
Lors de l'ajout d'un nouveau module à votre solution IoT Edge nouvelle ou existante, sélectionnez Module dans Azure Marketplace. Vous pouvez voir Azure Event Grid sur IoT Edge.
Dans la palette de commandes VS Code, tapez et sélectionnez Azure IoT Edge: Show Sample Gallery.
Support de Vcpkg pour le développement IoT Plug and Play
Microsoft a également annoncé la prise en charge de Vcpkg, un gestionnaire de bibliothèque multiplateforme permettant de gérer les bibliothèques C et C++ sous Windows, Linux et MacOS, pour le développement IoT Plug and Play. Avec le support de Vcpkg pour le développement Plug-and-Play IoT, les développeurs pourraient facilement exploiter Vcpkg pour gérer le SDK de périphérique Azure IoT C ainsi que d'autres dépendances C/C ++. Auparavant, le code source était le seul moyen d'inclure le SDK de périphérique Azure IoT C. Désormais, les développeurs pouvaient générer un stub de code de périphérique IoT Plug and Play via Vcpkg et le code source.
Utiliser un modèle de fonctionnalité d’appareil pour créer un appareil IoT Plug-and-Play Preview (Windows)
Un modèle de fonctionnalité d’appareil décrit les fonctionnalités d’un appareil IoT Plug-and-Play. Un modèle de fonctionnalité d’appareil est souvent associé à une référence SKU de produit. Les fonctionnalités définies dans le modèle de fonctionnalité d’appareil sont organisées en interfaces réutilisables. Vous pouvez générer le code d’appareil squelette à partir d’un modèle de fonctionnalité d’appareil. Ce démarrage rapide vous montre comment utiliser VS Code sous Windows pour créer un appareil IoT Plug-and-Play à l’aide d’un modèle de fonctionnalité d’appareil.
Vous devez installer les logiciels suivants sur votre machine locale :
- Build Tools pour Visual Studio avec les outils de génération C++ et les charges de travail du composant Gestionnaire de package NuGet. Ou, si vous l’avez déjà, Visual Studio (Community, Professional ou Enterprise) 2019, 2017 ou 2015 avec les mêmes charges de travail.
- Git.
- CMake.
- Visual Studio Code.
Par la suite, vous devrez installer Azure IoT Tools (rendez-vous pour cela à l'onglet Extensions), l’explorateur Azure IoT (à partir de la page référentiel de l’outil, en sélectionnant le fichier . msi sous « Assets » pour obtenir la mise à jour la plus récente).
Puis vous devez obtenir la chaîne de connexion pour le référentiel de modèles de votre entreprise. Vous pouvez trouver la chaîne de connexion du référentiel de modèles de l’entreprise dans le portail Azure Certified pour IoT quand vous vous connectez avec un compte professionnel ou scolaire Microsoft, ou votre ID de partenaire Microsoft si vous avez un. Une fois que vous êtes connecté, sélectionnez Company repository (Référentiel d’entreprise) , puis Chaînes de connexion.
Il faut également utiliser Azure Cloud Shell. Azure héberge Azure Cloud Shell, un environnement d’interpréteur de commandes interactif que vous pouvez utiliser dans votre navigateur. Vous pouvez utiliser Bash ou PowerShell avec Cloud Shell pour utiliser les services Azure. Vous pouvez utiliser les commandes préinstallées Cloud Shell pour exécuter le code fourni en exemple sans avoir à installer quoi que ce soit dans votre environnement local.
Préparer l’environnement de développement
Utilisez le gestionnaire de bibliothèques Vcpkg pour installer le kit Azure IoT C device SDK dans votre environnement de développement.
Ouvrez une invite de commandes. Exécutez la commande suivante pour installer Vcpkg :
Code cmd : | Sélectionner tout |
1 2 3 4 | git clone https://github.com/Microsoft/vcpkg.git cd vcpkg .\bootstrap-vcpkg.bat |
Ensuite, pour raccorder une intégration applicable à l’utilisateur, exécutez la commande suivante (remarque : requiert un administrateur lors de la première utilisation) :
Code cmd : | Sélectionner tout |
.\vcpkg.exe integrate install
Installez le Vcpkg du kit de développement logiciel (SDK) C de l’appareil Azure IoT :
Code cmd : | Sélectionner tout |
.\vcpkg.exe install azure-iot-sdk-c[public-preview,use_prov_client]
Créer votre modèle
Dans cet exemple, vous utilisez un exemple de modèle de fonctionnalité d’appareil existant et les interfaces associées.
Créez un répertoire pnp_app sur votre lecteur local. Vous utilisez ce dossier pour les fichiers de modèle d’appareil et le stub de code d’appareil.
Téléchargez le modèle de fonctionnalité d’appareil et les exemples de fichiers de l’interface ainsi que l’exemple d’interface, puis enregistrez les fichiers dans le dossier pnp_app.
Ouvrez le dossier pnp_app avec VS Code. Vous pouvez afficher les fichiers avec IntelliSense :
Dans les fichiers que vous avez téléchargés, remplacez <YOUR_COMPANY_NAME_HERE> dans les champs @id et schema par une valeur unique. Utilisez uniquement les caractères a-z, A-Z, 0-9 et le trait de soulignement.
Générer le stub de code C
Maintenant que vous avez le modèle de fonctionnalité d’appareil et ses interfaces associées, vous pouvez générer le code de l’appareil qui implémente le modèle. Pour générer le stub de code C dans VS Code :
Une fois le dossier pnp_app ouvert dans VS Code, utilisez Ctrl+Maj+P pour ouvrir la palette de commandes, entrez IoT Plug-and-Play et sélectionnez Générer le stub de code de l’appareil.
Choisissez le fichier SampleDevice.capabilitymodel.json à utiliser pour générer le stub de code de l’appareil.
Entrez le nom du projet sample_device. Il s’agit du nom de votre application d’appareil.
Choisissez ANSI C comme langage.
Choisissez le mode de connexion Via IoT Hub device connection string (Avec une chaîne de connexion d’appareil IoT Hub) .
Choisissez Projet CMake sur Windows en tant que modèle de projet.
Choisissez Via Vcpkg pour inclure le kit SDK pour appareils.
Créé au même emplacement que le fichier DCM, le dossier sample_device contient les fichiers stub d’appareil générés. VS Code ouvre une nouvelle fenêtre pour les afficher.
Configurer un projet Embedded Linux C à l'aide d'une chaîne d'outils de périphériques conteneurisés
Microsoft a rappelé avoir apporté en préversion une chaîne d'outils conteneurisée il y a quelques mois dans le but de simplifier les efforts d'acquisition de la chaîne d'outils pour les développeurs de périphériques travaillant sur un projet C / C ++ pour le Linux embarqué qui nécessite que la chaîne de compilation croisée, le kit de développement logiciel (SDK) et les bibliothèques dépendantes soient configurés correctement. Au lieu de faire cela sur une machine locale, ce qui pourrait créer un environnement touffu, Microsoft a fourni quelques images communes de conteneur pour des périphériques avec différentes architectures (par exemple, ARMv7, ARM64 et x86).
Désormais, vous pouvez utiliser davantage cette fonctionnalité en configurant un projet C/C ++ existant que vous devez pouvoir compiler dans le conteneur, puis déployer sur le périphérique cible que vous utilisez. Si vous souhaitez personnaliser davantage le conteneur, Microsoft indique avoir fourni des bibliothèques de périphériques et des packages supplémentaires nécessaires à votre périphérique.
Source : Microsoft