Appareils et IoT : MQTT gouverné
Des appareils MQTT et des nœuds Sparkplug B gouvernés comme une API : identité, topics de leur tenant, freinage sans coupure, bascule.
ConceptProduitDepuis la version 1.7.0
Guide produit : ce que la fonctionnalité apporte, pour qui, ses limites et la version qui l'a livrée - sans syntaxe de configuration.
| Ce que ça fait | Capteurs, automates et passerelles d'atelier se branchent sur la passerelle en MQTT 5 ou 3.1.1 (TLS, WebSocket), devant votre courtier (Mosquitto, EMQX, HiveMQ...). Chaque appareil est identifié - certificat, clé d'API ou jeton -, chaque PUBLISH et chaque abonnement est jugé contre votre contrat AsyncAPI comme une requête HTTP : le topic d'un appareil est celui de son tenant et de son identité, jamais celui d'un autre. Sparkplug B 3.0 : nœuds d'atelier, leurs appareils et l'application hôte de chaque tenant dans son groupe, commandes sous portée, nœuds en ligne et hors ligne suivis à travers toutes les répliques ; OPC UA PubSub en JSON sous un contrat ordinaire. L'écran Appareils de la console montre connexions, refus, quotas et nœuds, avec cinq règles d'alerte intégrées |
| Pourquoi c'est important | Un appareil et une API sous la même décision, le même audit et les mêmes signaux ; un site, un client, un tenant isolé des autres sans ACL écrites à la main dans le courtier ; les identifiants du courtier restent ceux de la passerelle ; un appareil dont la clé ou le certificat est retiré est coupé au rechargement suivant, même s'il ne fait qu'écouter ; aucune autre passerelle du marché ne gouverne une entrée MQTT d'appareils sous contrat |
| Cas d'usage | Ouvrir un courtier partagé à plusieurs sites ou clients ; brancher une flotte de capteurs avec un certificat par appareil, le topic tiré du certificat ; freiner un appareil trop bavard sans le couper ; arrêter ou redéployer la passerelle en gardant les sessions des appareils (bascule vers une autre réplique ; leur testament aussi, pour un appareil MQTT 5 qui déclare un délai de testament) ; partager un courtier Sparkplug entre plusieurs sites, chacun avec son SCADA ; être alerté d'un nœud hors ligne sans confondre une bascule de la passerelle avec une panne d'atelier |
| Limites | Testé contre Mosquitto, EMQX (un nœud) et HiveMQ CE ; la passerelle relaie, elle ne stocke rien : sessions et messages retenus restent au courtier ; pas d'authentification étendue MQTT 5 (AUTH) ; un topic lié au sujet d'un jeton ne distingue pas deux émetteurs (un émetteur par tenant, ou une claim) ; AWS IoT Core et Azure IoT Hub ne sont pas des courtiers servis ; une application hôte Sparkplug par tenant à travers la passerelle, et ses commandes gouvernées seulement si elle passe par la passerelle ; la passerelle ne demande jamais de renaissance ; OPC UA PubSub en JSON seulement (pas UADP, pas de client-serveur) ; kit de conformité Sparkplug pas encore passé ; bancs de performance écrits, pas encore lancés - aucun chiffre n'est promis |
| Depuis | 1.7.0 |
| Configurer | Appareils MQTT : l'écouteur en proxy, Sparkplug B et OPC UA PubSub JSON, Console : l'écran Appareils ; brancher un appareil : Brancher un appareil MQTT |