Qu'est-ce qu'un «agent intégré» en référence à un périphérique Edge IoT à faible puissance?


14

Question: Quelle est la conception sous-jacente d'un «agent intégré» en relation avec les périphériques de pointe de l'Internet des objets (IoT) à faible puissance?

Certains fournisseurs de services cloud IoT continuent de faire référence à l'installation d'un agent intégré sur les périphériques périphériques basés sur des capteurs. Il semble que ce soit un logiciel propriétaire que les fournisseurs installent sur chaque appareil se connectant au cloud. Vous trouverez ci-dessous deux images de piles de logiciels avec des références à l' agent . Une partie de la pile logicielle réside dans le microcontrôleur.

Agent IOT - 1

Agent IOT

Voici également une explication très large du blog Thingworx

Un agent est un programme intégré qui s'exécute sur ou à proximité d'un appareil IoT et signale l'état de certains actifs ou environnements. Il y a toujours un agent présent dans une application IoT. En règle générale, l'agent lit l'état des capteurs ou de la connectivité locale à un actif, applique des règles ou une logique sur la fréquence à laquelle l'expéditeur doit agréger les informations, puis envoie les informations sur un réseau de communication longue distance au serveur. Ce processus peut également fonctionner en sens inverse.

Je suppose que cet agent se compose d'informations de connectivité telles que l'adresse IP, le nom du serveur, les informations de type SSID pour faciliter la connectivité. Ces agents intégrés ont-ils d'autres fonctionnalités que la connectivité?

Les références:


S'il vous plaît, pourriez-vous donner la référence de l'architecture IoT (2ème photo)? Merci
BiG_TooTh

Réponses:


13

De manière générale, un agent est un logiciel «bidirectionnel»; c'est-à-dire qu'il lit les paramètres de l'appareil et le communique au cloud ou même à une passerelle. Plus souvent qu'autrement, un OEM contrôlera les bibliothèques pour le développement du logiciel pour contrôler les paramètres de l'appareil. Considérant que, l'OEM peut choisir l'un des protocoles de communication populaires (MQTT, HTTP, etc.) pour publier les valeurs lues. En règle générale, l'intégration de ces deux éléments est l'espace où un intégrateur de système entre en jeu.

Par exemple, un agent peut s'exécuter sur un bureau Windows pour lire le régime du ventilateur toutes les 5 secondes. Cette valeur est ensuite communiquée à une plateforme cloud via un protocole convenu.

Exemple de code du site Web Paho MQTT (Python) :

mqttc.connect("iot.eclipse.org")
mqttc.loop_start()

while True:
    temperature = sensor.blocking_read()
    mqttc.publish("paho/temperature", temperature)

L'extrait ci-dessus est à peu près un agent, car il y a la partie «de l'appareil» sous la forme de la fonction sensor.blocking_read()et la partie «vers le cloud» sous la forme d'unmqttc.publish() .

Les agents avancés auront des mécanismes pour gérer le stockage hors ligne, la prise en charge TLS pour la communication vers le cloud, répondre à toutes les mises à jour du cloud (y compris les redémarrages, si nécessaire), etc. Et, dans le cas spécifique de cette question, l'agent gérera les contraintes d'alimentation aussi. Par exemple, répondez aux déclencheurs au niveau de l'appareil tels que le sommeil, le réveil, etc.


C'est une définition intéressante du bidirectionnel. Je n'appellerais pas un capteur bidirectionnel s'il ne fait que lire et signaler. Je dirais qu'il doit pouvoir recevoir au moins une sorte de message pour être bidirectionnel. La lecture de la vitesse du ventilateur est sa justification intrinsèque d'être, pas une communication.
Helmar

Je ne comprends pas votre utilisation de «bidirectionnel» ici. Un agent est un logiciel sur l'appareil qui fonctionne pour le compte du serveur (dans ce contexte). Il ne communique pas nécessairement avec le serveur (bien que ce soit un cas d'utilisation très courant). Par exemple, il peut s'agir uniquement de définir des paramètres de configuration ou de télécharger des mises à jour.
Gilles 'SO- arrête d'être méchant'
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.