Développement d’appareil IoT

Cette vue d’ensemble présente les concepts clés liés au développement d’appareils qui se connectent à des solutions Azure IoT classiques. Chaque section inclut des liens vers du contenu qui fournit des détails et des conseils supplémentaires.

Dans une solution connectée au cloud, les appareils se connectent directement aux services connectés au cloud tels que IoT Hub, tandis que dans un appareil de solution connecté à la périphérie se connectent à des services connectés à la périphérie dans votre environnement, tels que Azure IoT Operations.

Le diagramme suivant montre une vue générale des composants dans une solution IoT connectée à la périphérie classique. Cet article se concentre sur les appareils, les ressources et les connecteurs présentés dans le diagramme :

Diagramme montrant l’architecture de la solution IoT de haut niveau mettant en évidence les domaines de connectivité des appareils.

Les ressources ont généralement un microprogramme intégré qui implémente les protocoles standard. Par exemple, un bras robotisé peut être un client OPC UA, et une caméra vidéo de sécurité peut implémenter ONVIF. Azure IoT Operations inclut différents connecteurs qui peuvent utiliser ces protocoles pour communiquer avec les ressources et traduire les messages des ressources en messages MQTT. Certaines ressources peuvent recevoir des messages vous permettant d’effectuer des opérations sur celles-ci, par exemple :

  • Effectuer un panoramique ou une inclinaison d’une caméra de sécurité.
  • Changer le niveau de journalisation d’un bras robotisé.
  • Lancer une mise à jour de microprogramme.

Vous pouvez créer vos propres connecteurs personnalisés pour vous connecter aux ressources qui utilisent des protocoles non pris en charge en mode natif par Azure IoT Operations.

Types d’appareil

Une solution IoT peut contenir de nombreux types de ressources et d’appareils.

Voici quelques exemples de ressources dans une solution connectée à la périphérie :

  • Bras robotisés, tapis roulants, et ascenseurs
  • Machines CNC industrielles, tours, scies, et perceuses
  • Machines d’imagerie médicale de diagnostic
  • Caméras vidéo de sécurité
  • Contrôleurs logiques programmables

Ces ressources ont généralement un microprogramme intégré qui implémente les protocoles standard. Par exemple, un bras robotisé peut être un client OPC UA, et une caméra vidéo de sécurité peut implémenter le protocole ONVIF. Dans une solution connectée à la périphérie, vous utilisez des connecteurs spécialisés pour vous connecter à ces ressources et les traduire dans un format commun.

Pour les ressources, il n’existe pas d’équivalent direct au rôle de développeur d’appareils. À la place, un opérateur peut configurer les connecteurs pour se connecter aux ressources. Toutefois, vous devrez peut-être développer des connecteurs personnalisés pour vous connecter à des ressources qui utilisent des protocoles non pris en charge en mode natif par votre solution connectée à la périphérie.

Modélisation et schémas

Les modèles d’appareils et de ressources définissent les données que les appareils et les ressources échangent avec le cloud. Les modèles permettent d’accéder à toute une gamme de scénarios low-code ou sans code pour l’intégration de vos appareils et ressources à votre solution IoT.

Dans une solution connectée à la périphérie, un opérateur configure les connecteurs pour se connecter aux ressources. Cette configuration comprend un mappage entre les données de la ressource et un schéma cloud. Par exemple, le connecteur OPC UA permet à l’opérateur de mapper les ID de nœud OPC UA aux points de données et aux événements dans un message JSON échangé avec le répartiteur MQTT. La capture d’écran suivante montre un exemple dans l’interface utilisateur web de l’expérience des opérations numériques qui définit deux mappages de ce type :

Capture d’écran montrant un exemple de définition de ressource.

Ailleurs dans la solution, un opérateur peut faire référence directement aux balises Temperature et Tag 10 sans avoir à connaître les détails des ID de nœud OPC UA.

Mise en conteneur

La conteneurisation est un moyen de packager et d’exécuter votre code dans un environnement léger et isolé. Les conteneurs sont portables et peuvent s’exécuter sur n’importe quelle plateforme prenant en charge le runtime de conteneur. Les conteneurs sont un bon moyen de packager et de déployer du code, car ils fournissent un environnement d’exécution cohérent pour votre code. L’environnement d’exécution comprend généralement les services, les bibliothèques et les packages dont votre code a besoin pour s’exécuter.

Azure IoT Operations conteneurise tous ses connecteurs, répartiteurs et autres composants qui s’exécutent sur la périphérie. Azure IoT Operations déploie sur un cluster Kubernetes, qui est une plateforme d’orchestration de conteneurs. Déployez les connecteurs personnalisés ou autres composants que vous créez sur le cluster Kubernetes.

Vous pouvez afficher une solution qui utilise Azure IoT Edge en tant que passerelle connectée à la périphérie pour IoT Hub en tant que solution hybride qui inclut des éléments de solutions connectées à la périphérie et connectées au cloud.

Outils de développement d’appareils

Le tableau suivant liste certains des outils de développement d’appareils IoT disponibles :

Outil Description
Azure IoT Hub (extension VS Code) Cette extension VS Code vous permet de gérer vos ressources et appareils IoT Hub à partir de VS Code.
explorateur Azure IoT Cet outil multiplateforme vous permet de gérer vos ressources et appareils IoT Hub à partir d’une application de bureau.
extension Azure IoT pour Azure CLI Cette extension CLI comprend des commandes telles que az iot device simulate, az iot device c2d-messageet az iot hub monitor-events qui vous aident à tester les interactions avec les appareils.