Share via


Tutoriel : définir un nouveau type de périphérique de passerelle IoT dans votre application Azure IoT Central

Dans ce tutoriel, vous créez un modèle d’appareil de passerelle Smart Building (Construction intelligente). Un appareil de passerelle Construction intelligente a des relations avec d’autres appareils en aval.

Diagramme montrant la relation entre un appareil de passerelle et ses appareils en aval.

Un appareil de passerelle peut également :

  • Envoyer sa propre télémétrie, comme une température.
  • Répondre aux mises à jour de propriétés accessibles en écriture effectuées par un opérateur. Par exemple, un opérateur peut modifier l’intervalle d’envoi de la télémétrie.
  • Répondre à des commandes, comme le redémarrage de l’appareil.

Dans ce tutoriel, vous allez apprendre à :

  • Créer des modèles d’appareils en aval
  • Créer un modèle d’appareil de passerelle
  • Publier le modèle d’appareil
  • Créer les appareils simulés

Prérequis

Pour suivre les étapes de ce tutoriel, vous devez disposer des éléments suivants :

Créer des modèles d’appareils en aval

Ce tutoriel utilise des modèles d’appareil pour un appareil Onset Hobo MX-100 Temp Sensor et un appareil RS40 Occupancy Sensor pour générer des appareils en aval simulés.

Pour créer un modèle d’appareil pour un appareil Onset Hobo MX-100 Temp Sensor :

  1. Dans le volet gauche, sélectionnez Modèles d’appareil. Sélectionnez ensuite + Nouveau pour commencer à ajouter le modèle.

  2. Faites défiler vers le bas jusqu’à faire apparaître la vignette de l’appareil Onset Hobo MX-100 Temp Sensor. Sélectionnez la vignette, puis sélectionnez Suivant : Vérifier.

  3. Dans la page Vérifier, sélectionnez Créer pour ajouter le modèle d’appareil à votre application.

Pour créer un modèle d’appareil pour un appareil RS40 Occupancy Sensor :

  1. Dans le volet gauche, sélectionnez Modèles d’appareil. Sélectionnez ensuite + Nouveau pour commencer à ajouter le modèle.

  2. Faites défiler vers le bas jusqu’à faire apparaître la vignette de l’appareil Rigado RS40 Occupancy Sensor (Détecteur de présence Rigado RS40). Sélectionnez la vignette, puis sélectionnez Suivant : Vérifier.

  3. Dans la page Vérifier, sélectionnez Créer pour ajouter le modèle d’appareil à votre application.

Vous avez maintenant des modèles d’appareil pour les deux types d’appareils en aval :

Capture d’écran montrant les modèles d’appareil en aval.

Créer un modèle d’appareil de passerelle

Dans ce tutoriel, vous allez créer à partir de zéro un modèle d’appareil pour un appareil de passerelle. Vous utilisez ce modèle ultérieurement pour créer un appareil de passerelle simulé dans votre application.

Pour ajouter un nouveau modèle d’appareil à votre application :

  1. Dans le volet gauche, sélectionnez Modèles d’appareil. Sélectionnez ensuite + Nouveau pour commencer à ajouter le modèle.

  2. Dans la page Sélectionner un type de modèle, sélectionnez la vignette Appareil IoT, puis sélectionnez Suivant : Personnaliser.

  3. Dans la page Personnaliser l’appareil, cochez la case Il s’agit d’un appareil de passerelle.

  4. Entrez Appareil de passerelle Smart Building comme nom de modèle, puis sélectionnez Suivant : Vérifier.

  5. Dans la page Vérifier, sélectionnez Créer.

  6. Dans la page Créer un modèle, sélectionnez la vignette Modèle personnalisé.

  7. Sélectionnez + Ajouter une fonctionnalité pour ajouter une fonctionnalité.

  8. Entrez Envoyer des données comme nom d’affichage, puis sélectionnez Propriété comme type de fonctionnalité.

  9. Sélectionnez Booléen comme type de schéma, définissez Accessible en écriturepuis sélectionnez Enregistrer.

Ajouter des relations

Ensuite, vous ajoutez des relations aux modèles pour les modèles d’appareil en aval :

  1. Dans le modèle Smart Building gateway device, sélectionnez Relations.

  2. Sélectionnez + Ajouter une relation. Entrez Environmental Sensor comme nom d’affichage, puis sélectionnez Hobo MX-100 comme cible.

  3. Resélectionnez + Ajouter une relation. Entrez Occupancy Sensor (Capteur d’occupation) comme nom d’affichage, puis sélectionnez RS40 Occupancy Sensor comme cible.

  4. Sélectionnez Enregistrer.

Capture d’écran montrant les relations de passerelle.

Ajouter des propriétés du cloud

Un modèle d’appareil de passerelle peut inclure des propriétés cloud. Les propriétés du cloud existent uniquement dans l’application IoT Central, et ne sont jamais envoyées à un appareil ni reçues à partir d’un appareil.

Pour ajouter des propriétés cloud au modèle Smart Building gateway device.

  1. Dans le modèle d’appareil de passerelle Smart Building, sélectionnez Modèle d’appareil de passerelle Smart Building .

  2. Utilisez les informations du tableau suivant pour ajouter deux propriétés cloud à votre modèle d’appareil de passerelle.

    Nom complet Type de fonctionnalité Type de sémantique schéma
    Dernière date de service Propriété cloud None Date
    Nom du client Propriété cloud None String
  3. Sélectionnez Enregistrer.

Créer des vues

En tant que générateur, vous pouvez personnaliser l’application pour présenter des informations pertinentes sur l’appareil capteur environnemental à un opérateur. Vos personnalisations permettent à l’opérateur de gérer l’appareil capteur environnemental raccordé à l’application. Vous pouvez créer deux types de vues permettant à un opérateur d’interagir avec des appareils :

  • Formulaires pour voir et modifier les propriétés de l’appareil et du cloud
  • Affichages pour visualiser les appareils.

Pour générer les vues par défaut pour le modèle Smart Building gateway device:

  1. Dans le modèle Smart Building gateway device, sélectionnez Vues.

  2. Sélectionnez la vignette Générer les vues par défaut et vérifiez que toutes les options sont sélectionnées.

  3. Sélectionnez Générer une ou plusieurs vues de tableau de bord par défaut.

Publier le modèle d’appareil

Avant de pouvoir créer un appareil de passerelle simulé ou de connecter un appareil de passerelle réel, vous devez publier votre modèle d’appareil.

Pour publier le modèle d’appareil de passerelle :

  1. Sélectionnez le modèle Smart Building gateway device dans la page Modèles d’appareil.

  2. Sélectionnez Publier.

  3. Dans la boîte de dialogue Publier un modèle d’appareil, choisissez Publier.

Une fois qu’un modèle d’appareil a été publié, il est visible dans la page Appareils et par l’opérateur. L’opérateur peut utiliser le modèle pour créer des instances d’appareil ou établir des règles et la supervision. La modification d’un modèle publié peut affecter le comportement à l’échelle de l’application.

Pour en savoir plus sur la modification d’un modèle d’appareil après sa publication, consultez Modification d’un modèle d’appareil existant.

Créer les appareils simulés

Ce tutoriel utilise des appareils en aval simulés et un appareil de passerelle simulé.

Pour créer un appareil de passerelle simulé :

  1. Dans la page Appareils, sélectionnez Smart Building gateway device dans la liste des modèles d’appareil.

  2. Sélectionnez + Nouveau pour commencer à ajouter un nouvel appareil.

  3. Conservez l’ID de l’appareil et le Nom de l’appareil générés. Vérifiez que le commutateur Simulé est Oui. Sélectionnez Créer.

Pour créer des appareils en aval simulés :

  1. Dans la page Appareils, sélectionnez RS40 Occupancy Sensor dans la liste des modèles d’appareil.

  2. Sélectionnez + Nouveau pour commencer à ajouter un nouvel appareil.

  3. Conservez l’ID de l’appareil et le Nom de l’appareil générés. Vérifiez que le commutateur Simulé est Oui. Sélectionnez Créer.

  4. Dans la page Appareils, sélectionnez Hobo MX-100 dans la liste des modèles d’appareil.

  5. Sélectionnez + Nouveau pour commencer à ajouter un nouvel appareil.

  6. Conservez l’ID de l’appareil et le Nom de l’appareil générés. Vérifiez que le commutateur Simulé est Oui. Sélectionnez Créer.

Capture d’écran montrant les appareils simulés.

Ajouter des relations d’appareils en aval à un appareil de passerelle

Maintenant que vous disposez des appareils simulés dans votre application, vous pouvez créer les relations entre les appareils en aval et l’appareil de passerelle :

  1. Dans la page Appareils, sélectionnez Hobo MX-100 dans la liste des modèles d’appareil, puis sélectionnez votre appareil Hobo MX-100 simulé.

  2. Sélectionnez Attacher à la passerelle.

  3. Dans la boîte de dialogue Attacher à une passerelle, sélectionnez le modèle Appareil de passerelle Smart Building, puis sélectionnez l’instance simulée que vous avez créée précédemment.

  4. Sélectionnez Attacher.

  5. Dans la page Appareils, sélectionnez RS40 Occupancy Sensor dans la liste des modèles d’appareil, puis sélectionnez votre appareil RS40 Occupancy Sensor simulé.

  6. Sélectionnez Attacher à la passerelle.

  7. Dans la boîte de dialogue Attacher à une passerelle, sélectionnez le modèle Appareil de passerelle Smart Building, puis sélectionnez l’instance simulée que vous avez créée précédemment.

  8. Sélectionnez Attacher.

Vos appareils en aval simulés sont maintenant connectés à votre appareil de passerelle simulé. Si vous accédez à la vue Appareils en aval pour votre appareil de passerelle, vous pouvez voir les appareils en aval associés :

Capture d’écran montrant les appareils attachés à la passerelle.

Connecter des appareils en aval réels

Dans le tutoriel Créer et connecter une application cliente à votre application Azure IoT Central, l’exemple de code montre comment inclure l’ID de modèle à partir du modèle d’appareil dans la charge utile d’approvisionnement que l’appareil envoie.

Lorsque vous connectez un appareil en aval, vous pouvez modifier la charge utile d’approvisionnement pour inclure l’ID de l’appareil de passerelle. L’ID du modèle permet à IoT Central d’affecter l’appareil au bon modèle d’appareil en aval. L’ID de passerelle permet à IoT Central d’établir la relation entre l’appareil en aval et sa passerelle. Dans ce cas, la charge utile d’approvisionnement que l’appareil envoie ressemble au code JSON suivant :

{
  "modelId": "dtmi:rigado:HoboMX100;2",
  "iotcGateway":{
    "iotcGatewayId": "gateway-device-001"
  }
}

Une passerelle peut inscrire et provisionner un appareil en aval, puis associer cet appareil en aval à la passerelle comme suit :

var crypto = require('crypto');


var ProvisioningTransport = require('azure-iot-provisioning-device-mqtt').Mqtt;
var SymmetricKeySecurityClient = require('azure-iot-security-symmetric-key').SymmetricKeySecurityClient;
var ProvisioningDeviceClient = require('azure-iot-provisioning-device').ProvisioningDeviceClient;

var provisioningHost = "global.azure-devices-provisioning.net";
var idScope = "<The ID scope from your SAS group enrollment in IoT Central>";
var groupSymmetricKey = "<The primary key from the SAS group enrollment>";
var registrationId = "<The device ID for the downstream device you're creating>";
var modelId = "<The model you're downstream device should use>";
var gatewayId = "<The device ID of your gateway device>";

// Calculate the device key from the group enrollment key
function computeDerivedSymmetricKey(deviceId, masterKey) {
    return crypto.createHmac('SHA256', Buffer.from(masterKey, 'base64'))
        .update(deviceId, 'utf8')
        .digest('base64');
}

var symmetricKey = computeDerivedSymmetricKey(registrationId, groupSymmetricKey);

var provisioningSecurityClient = new SymmetricKeySecurityClient(registrationId, symmetricKey);

var provisioningClient = ProvisioningDeviceClient.create(provisioningHost, idScope, new ProvisioningTransport(), provisioningSecurityClient);

// Use the DPS payload to:
// - specify the device capability model to use.
// - associate the device with a gateway.
var provisioningPayload = {modelId: modelId, iotcGateway: { iotcGatewayId: gatewayId}}

provisioningClient.setProvisioningPayload(provisioningPayload);

provisioningClient.register(function(err, result) {
  if (err) {
    console.log("Error registering device: " + err);
  } else {
    console.log('The registration status is: ' + result.status)
   }
});

Nettoyer les ressources

Si vous ne prévoyez pas de suivre d’autres guides de démarrage rapide ou tutoriels IoT Central, vous pouvez supprimer votre application IoT Central :

  1. Dans votre application IoT Central, accédez à Application > Gestion.
  2. Sélectionnez Supprimer, puis confirmez l’opération.

Étape suivante

Vous pouvez ensuite apprendre à :