Abonnement aux données énergétiques en temps réel via un courtier MQTT (édition 2025)
1. Introduction
Cloud IAMMETERIAMMETER-Cloud est une plateforme professionnelle de suivi énergétique et de gestion photovoltaïque. Outre ses puissantes fonctions de visualisation et de reporting, IAMMETER-Cloud offre également des interfaces de données flexibles. Cela permet aux utilisateurs ayant des besoins spécifiques d'utiliser IAMMETER-Cloud comme une solution adaptée à leurs exigences.intergiciel de données, en récupérant des données par programmation via du code.
Il existe deux principales façons d'obtenir des données depuis IAMMETER-Cloud à l'aide de code :
- S'abonner aux données viaCourtier MQTT d'IAMMETER(sujet de cet article)
- Appelez le service officiel d'IAMMETER-CloudApis
Ce guide explique comment s'abonner aux sujets MQTT d'IAMMETER, interpréter les structures de données (pour les compteurs monophasés et triphasés) et implémenter des exemples fonctionnels en Python et Node.js.
2. Présentation du courtier MQTT IAMMETER
Noter:Le courtier MQTT IAMMETER a été initialement conçu comme unservice de développement et de testPar commodité, cette fonctionnalité n'est pas incluse dans l'offre standard IAMMETER-Cloud (bien qu'elle soit stable et opérationnelle depuis plus de 5 ans). Pour les déploiements en production ou à grande échelle, nous vous recommandons de configurer votre environnement dédié.courtier MQTT propriétaire.
Configuration du courtier MQTT IAMMETER
| paramètre | La description |
|---|---|
| Adresse du courtier | mqtt.iammeter.com |
| Port | 1883(non-SSL) |
| Nom d'utilisateur / Mot de passe | Doit être créé dansIAMMETER Cloud → Paramètres → Paramètres MQTT![]() |
| Format du sujet | appareil/{SN}/temps réel |
| Format de la charge utile | JSON |
⚠️ Important:FairepasUtilisez ici vos identifiants de connexion IAMMETER Cloud. Vous devezcréer un nom d'utilisateur et un mot de passe MQTT dédiésdans le tableau de bord IAMMETER Cloud.
Configurer le compteur IAMMETER pour utiliser le mode MQTT
Réglez votre appareil de mesure IAMMETER surMode de téléchargement MQTT(voirguide de configuration du firmware) et saisissez les paramètres du courtier MQTT IAMMETER.

3. Format des sujets MQTT
Chaque appareil IAMMETER publie ses données en temps réel sous le thème suivant :
appareil/{SN}/temps réel
Où{SN}Il s'agit du numéro de série de votre compteur.
Par exemple, si le numéro de série de votre appareil est :DA2BED94Le sujet sera :
appareil/DA2BED94/temps réel
Vous pouvez vous abonner à ce sujet pour recevoir des données de mesure en temps réel et en continu.
4. Format des données
4.1 Format des données du compteur monophasé
Un compteur IAMMETER monophasé publie des données en temps réel au format JSON comme suit :
{
« method » : « 1-272 »,
« mac » : « B0F8932A295C »,
« version » : « i.91.062T6 »,
« server » : « em »,
« SN » : « DA2BED94 »,
« Data » : [227.02, 1.81, 296.0, 21699.98, 0.00, 50.01, 0.72]
}
| indice | Champ | La description | Unité |
|---|---|---|---|
| 1 | Tension | Tension de ligne actuelle | V |
| 2 | Actuel | courant de ligne | UNE |
| 3 | Pouvoir | Puissance active | W |
| 4 | Énergie d'avenir | Énergie importée (consommée) | kWh |
| 5 | Énergie inverse | Énergie exportée (injection sur le réseau, solaire) | kWh |
| 6 | Fréquence | Fréquence du réseau | Hz |
| 7 | facteur de puissance | Facteur de puissance actuel | PF |
🟢 Remarques:
- Puissance positive → consommation d'énergie
- Puissance négative → exportation d'énergie (ex. : injection d'énergie solaire)
4.2 Format des données du compteur triphasé (WEM3080T / WEM3046T / WEM3050T)
Les compteurs triphasés IAMMETER publient des données dans un format JSON similaire, avec trois tableaux correspondant à chaque phase.
{
« method » : « 4-9 »,
« mac » : « 849DC2CEC625 »,
« version » : « i.91.062T6 »,
« server » : « em »,
« SN » : « CB0A0CFB »,
« EA » : {
« Reactive » : [
[-111.0, 0.000, 176.750],
[-113.0, 0.000, 179.110],
[-114.0, 36.120, 144.410]
]
},
« Datas » : [
[225.9, 1.260, [194,0 ; 305,110 ; 0,000 ; 49,99 ; 0,87],
[225,8 ; 1,260 ; 193,0 ; 302,690 ; 0,000 ; 49,99 ; 0,86],
[225,9 ; 1,260 ; 192,0 ; 300,890 ; 0,000 ; 49,99 ; 0,86]
]
}
Donnéesest une liste contenanttrois tableaux, chacun correspondant àphase A, B et C
Chaque réseau interne possède la même structure que le réseau monophasé.Donnéestableau.
| indice | Champ | La description | Unité |
|---|---|---|---|
| 1 | Tension | tension de phase | V |
| 2 | Actuel | courant de phase | UNE |
| 3 | Pouvoir | Puissance active | W |
| 4 | Énergie d'avenir | Énergie importée | kWh |
| 5 | Énergie inverse | Énergie exportée | kWh |
| 6 | Fréquence | Fréquence du réseau | Hz |
| 7 | facteur de puissance | Facteur de puissance de phase | PF |
Outre les données de puissance réelle, lorsqueMesure de la puissance réactivesi cette option est activée, vous verrez également leEAsection comme suit :
"EA" : {
"Réactif" : [
[-111.0, 0.000, 176.750],
[-113.0, 0.000, 179.110],
[-114.0, 36.120, 144.410]
]
}
Cette section affichedonnées de mesure réactives, qui n'apparaît que lorsque lefonction de test réactiveest activé (voir la capture d'écran ci-dessous).

Chaque tableau représente les trois phases (A, B, C), montrantpuissance réactive (Q en kVar)etÉnergie réactive (kVARh).
Q (kVar) :Puissance réactive — positive = inductive, négative = capacitivekVARh :Énergie réactive — chaque phase comprend deux valeurs kVARh : une pourcharge inductiveet un pourcharge capacitive.
5. Exemple Python : Abonnement aux données en temps réel
Ci-dessous figure un script Python fonctionnel utilisantpaho-mqttbibliothèque.
import paho.mqtt.client as mqtt
import json
# Configuration du broker MQTT
MQTT_BROKER = « mqtt.iammeter.com »
MQTT_PORT = 1883
MQTT_USER = « votre_nom_d'utilisateur_mqtt » # À définir dans IAMMETER Cloud → Paramètres MQTT
MQTT_PASS = « votre_mot_de_passe_mqtt »
TOPIC = « device/DA2BED94/realtime » # Remplacez par le numéro de série de votre appareil
# Fonction de rappel lors de la connexion au broker
def on_connect(client, userdata, flags, rc):
if rc == 0:
print("✅ Connexion réussie au broker MQTT IAMMETER.")
client.subscribe(TOPIC)
print(f"📡 Abonnement au sujet : {TOPIC}.")
else:
print(f"❌ Échec de la connexion avec le code {rc}.")
# Fonction de rappel lors de la réception d'un message
def on_message(client, userdata, msg):
payload = json.loads(msg.payload.decode())
print("📊 Données en temps réel reçues :.")
print(json.dumps(payload, indent=2, ensure_ascii=False))
# Initialisation du client MQTT
client = mqtt.Client()
client.username_pw_set(MQTT_USER, MQTT_PASS)
client.on_connect = on_connect
client.on_message = on_message
# Connexion au broker et démarrage de la boucle
client.connect(MQTT_BROKER, MQTT_PORT, 60)
client.loop_forever()
6. Exemple Node.js
Nous vous recommandons d'essayer ce projet open source intéressant : Il utiliseNode.jss'abonner aux données en temps réel du courtier MQTT IAMMETER et les visualiser dans uninterface Web, en créant un tableau de bord en temps réel très pratique.
🔗 https://github.com/lewei50/iammeterJS
7. Cas d'utilisation pratiques
- Domotique intelligenteIntégrer les données de puissance en temps réel dansAssistante à domicileouNoeud-ROUGEpour déclencher des actions d'automatisation (par exemple, démarrer un chauffage lorsque la production solaire est élevée).
- Visualisation des données localesStocker les données MQTT entrantes dansInfluxDBet le visualiser avecTableaux de bord Grafana.
- Cloud privé ou Edge ComputingRécupérez des données de consommation électrique en temps réel directement via MQTT pour des analyses personnalisées ou une logique de contrôle sans dépendre du cloud IAMMETER.
8. Dépannage
| Problème | Cause possible / Solution |
|---|---|
| Impossible de se connecter au courtier | Vérifiez si votre nom d'utilisateur et votre mot de passe MQTT sont correctement configurés dans IAMMETER Cloud. |
| Aucune donnée reçue | Vérifiez le format de votre sujet (appareil/{SN}/temps réel) et assurez-vous que le compteur est en ligne. |
| Délai de données | Vérifiez la stabilité de votre réseau ou la puissance de votre signal Wi-Fi. |
| Plusieurs mètres | Vous pouvez vous abonner à plusieurs sujets simultanément (un par SN). |
9. Conclusion
En utilisantCourtier MQTT IAMMETER, vous pouvez facilement accéderflux de données énergétiques en temps réelà partir de vos appareils IAMMETER. C’est une méthode puissante et flexible pour construiretableaux de bord locaux, automatisations intelligentes ou systèmes d'optimisation énergétique basés sur l'IA.
📘 Les références
- Fonctionnalités de micrologiciel et de communication d'IAMMETER
- Documentation de l'API IAMMETER Cloud et MQTT
- Développez votre propre tableau de bord de suivi énergétique avec NodeJS
Souhaiteriez-vous que je fasse unVersion de l'article de blog au format Markdown(Prêt à être publié sur le blog officiel d'IAMMETER, avec la coloration syntaxique et les liens vers les images intégrées intacts) ?
