Je travaille sur un appareil qui détecte et collecte des informations sur l'environnement telles que la température, l'humidité, etc.
L'appareil n'est connecté à aucune source d'alimentation, mais il dispose d'une batterie et d'un panneau solaire pour le charger.
Il est presque en état de sommeil profond la plupart du temps, et il ne se réveille que lorsqu'il a besoin de détecter et de transférer des données. Cette opération dure environ 1 à 2 minutes, puis elle se rendort à nouveau.
Je ne suis pas un expert dans ce domaine, mais je pense que MQTT devrait être une bonne option si l'appareil doit être accessible pour recevoir des messages d'un sujet tout le temps, mais dans mon scénario, il ne lit que les capteurs et envoie des données à un serveur périodiquement.
Actuellement, j'envoie les données via HTTP, mais je me demande s'il est logique d'implémenter MQTT? Dois-je obtenir un avantage sur HTTP pour ce scénario?
Réponses:
Si vous stockez des données, respectez simplement HTTP. HTTP n'est qu'un signal à sens unique.
Si votre serveur ou toute autre "chose" doit réagir à un signal spécifique (basse température, ...) alors utilisez MQTT. De cette façon, de nombreux appareils peuvent souscrire à votre signal de température et réagir immédiatement sans utiliser votre serveur.
la source
Vous mentionnez un panneau solaire et une batterie en tant qu'élément de l'appareil, donc vous voulez probablement minimiser la consommation d'énergie pendant les transmissions pour vous assurer que votre appareil ne manque pas complètement d'énergie.
Par conséquent, vous voudrez peut - être envisager CoAP , la Co nstrained A pplication P rotocole, qui est spécialement conçu pour les appareils limités dans l'Internet des objets.
Dans le document Comparaison de la rentabilité de CoAP et HTTP dans les applications Web of Things , vous pouvez trouver des preuves assez convaincantes que CoAP pourrait vous faire économiser de l'énergie ici. Dans l'annexe A (page 38), vous pouvez consulter la durée de vie prévue de la batterie des appareils dans le tableau A.4. Pendant un intervalle de temps de 120 secondes, comme prévu dans votre cas d'utilisation:
Ces calculs ont été effectués sur une paire de piles AA carbone-zinc, mais vous pouvez clairement voir que CoAP utilise beaucoup moins d'énergie, donc cela pourrait valoir la peine d'être considéré. Son «mode push», tel que décrit dans l'article, semble être exactement le genre de chose que vous prévoyez de faire.
Bien que vous n'ayez pas spécifiquement posé de questions sur CoAP, je pense que cela mérite d'être mentionné, car Goufalite a déjà couvert les différences essentielles entre MQTT et HTTP. Une bonne règle de base est la suivante: prévoyez-vous de communiquer un à un ou un à plusieurs ? Si c'est le premier, HTTP et CoAP semblent être mieux adaptés. Si c'est le dernier, MQTT est probablement plus pratique.
la source