Sorry, uw browser ondersteunt geen JavaScript!

Abonnement op realtime energiegegevens via MQTT Broker (editie 2025)

1. Inleiding

IAMMETER-wolkis een professioneel platform voor energiemonitoring en fotovoltaïsch beheer. Naast de krachtige visualisatie- en rapportagefuncties biedt IAMMETER-Cloud ook flexibele data-interfaces. Hierdoor kunnen gebruikers met specifieke vereisten IAMMETER-Cloud gebruiken als eengegevensmiddleware, het programmatisch ophalen van gegevens via code.

Er zijn twee hoofdmanieren om gegevens uit IAMMETER-Cloud te verkrijgen met behulp van code:

  • Abonneer u op gegevens viaIAMMETER's MQTT Broker(de focus van dit artikel)
  • Bel de officiële IAMMETER-Cloud-serviceAPI's

In deze handleiding wordt uitgelegd hoe u zich kunt abonneren op IAMMETER MQTT-onderwerpen, hoe u gegevensstructuren (voor zowel eenfase- als driefasemeters) kunt interpreteren en hoe u werkende Python- en Node.js-voorbeelden kunt implementeren.


2. IAMMETER MQTT Broker Overzicht

Opmerking:De IAMMETER MQTT Broker is oorspronkelijk ontworpen als eenontwikkelings- en testservicevoor het gemak en maakt geen deel uit van het standaard IAMMETER-Cloud-aanbod (hoewel het al meer dan 5 jaar stabiel en actief is). Voor productie of grootschalige implementaties raden we aan om uweigen MQTT-makelaar.

IAMMETER MQTT Broker-configuratie

parameter Beschrijving
Adres van de makelaar mqtt.iammeter.com
Haven 1883(niet-SSL)
Gebruikersnaam / Wachtwoord Moet worden aangemaakt inIAMMETER Cloud → Instellingen → MQTT-instellingenSchermafbeelding van MQTT-instellingen
Onderwerpformaat apparaat/{SN}/realtime
Payload-formaat JSON

⚠️ Belangrijk:DoennietGebruik hier uw IAMMETER Cloud-inloggegevens. U moetmaak een speciale MQTT-gebruikersnaam en wachtwoord aanin het IAMMETER Cloud-dashboard.

Configureer de IAMMETER-meter om de MQTT-modus te gebruiken

Stel uw IAMMETER-meter in opMQTT-uploadmodus(zienfirmwareconfiguratiehandleiding) en voer de IAMMETER MQTT Broker-parameters in.

Stel de meter in op de MQTT-uploadmodus en configureer de IAMMETER MQTT Broker-parameters


3. MQTT-onderwerpformaat

Elk IAMMETER-apparaat publiceert zijn realtimegegevens onder het volgende onderwerp:

apparaat/{SN}/realtime

Waar{SN}is het serienummer van uw meter. Als het serienummer van uw apparaat bijvoorbeeldDA2BED94, het onderwerp zal zijn:

apparaat/DA2BED94/realtime

U kunt zich op dit onderwerp abonneren om continu realtime meetgegevens te ontvangen.


4. Gegevensformaat

4.1 Gegevensformaat van eenfasemeter

Een eenfase IAMMETER-meter publiceert realtimegegevens in JSON-formaat als volgt:

{
"methode": "1-272",
"mac": "B0F8932A295C",
"versie": "i.91.062T6",
"server": "em",
"SN": "DA2BED94",
"Gegevens": [227,02, 1,81, 296,0, 21699,98, 0,00, 50,01, 0,72]
}
inhoudsopgave Veld Beschrijving Eenheid
1 Spanning Huidige netspanning V
2 Huidig Huidige lijnstroom EEN
3 Stroom Actief vermogen W
4 Voorwaartse energie Geïmporteerde energie (verbruikt) kWh
5 Omgekeerde energie Geëxporteerde energie (feed-in, zonne-energie) kWh
6 Frequentie Netfrequentie Hz
7 krachtfactor Huidige vermogensfactor PF

🟢 Opmerkingen:

  • Positief vermogen → energieverbruik
  • Negatieve energie → energie-export (bijv. teruglevering van zonne-energie)

4.2 Driefasenmetergegevensformaat (WEM3080T / WEM3046T / WEM3050T)

Driefasige IAMMETER-meters publiceren gegevens in een vergelijkbaar JSON-formaat, met drie arrays die overeenkomen met elke fase.

{
"methode": "4-9",
"mac": "849DC2CEC625",
"versie": "i.91.062T6",
"server": "em",
"SN": "CB0A0CFB",
"EA": {
"Reactief": [
[-111,0, 0,000, 176,750],
[-113,0, 0,000, 179,110],
[-114,0, 36,120, 144,410]
]
},
"Gegevens": [
[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]
]
}

Gegevensis een lijst metdrie arrays, elk corresponderend metfase A, B en C. Elke binnenste array heeft dezelfde structuur als de eenfaseGegevensreeks.

inhoudsopgave Veld Beschrijving Eenheid
1 Spanning fase spanning V
2 Huidig fasestroom EEN
3 Stroom Actief vermogen W
4 Voorwaartse energie Geïmporteerde energie kWh
5 Omgekeerde energie Geëxporteerde energie kWh
6 Frequentie Netfrequentie Hz
7 krachtfactor Fasevermogensfactor PF

Naast de werkelijke vermogensgegevens, wanneerReactief vermogen metenis ingeschakeld, ziet u ook deEEsectie als volgt:

"EA": {
"Reactief": [
[-111,0, 0,000, 176,750],
[-113,0, 0,000, 179,110],
[-114,0, 36,120, 144,410]
]
}

In dit gedeelte wordt getoondreactieve meetgegevens, die alleen verschijnt als dereactieve testfunctieis ingeschakeld (zie onderstaande schermafbeelding).

Reactieve meting in de meter inschakelen

Elke matrix vertegenwoordigt de drie fasen (A, B, C) en toont:reactief vermogen (Q in kVar)enReactieve energie (kVARh).

Q (kVar):Reactief vermogen — positief = inductief, negatief = capacitiefkVARh:Reactieve energie — elke fase omvat twee kVARh-waarden: één voorinductieve belastingen één voorcapacitieve belasting.


5. Python-voorbeeld: abonneren op realtimegegevens

Hieronder staat een werkend Python-script met behulp van depaho-mqttbibliotheek.

importeer paho.mqtt.client als mqtt
importeer json

# MQTT Broker-configuratie
MQTT_BROKER = "mqtt.iammeter.com"
MQTT_PORT = 1883
MQTT_USER = "uw_mqtt_gebruikersnaam" # Instellen in IAMMETER Cloud → MQTT-instellingen
MQTT_PASS = "uw_mqtt_wachtwoord"
ONDERWERP = "apparaat/DA2BED94/realtime" # Vervang door uw eigen apparaat-SN

# Callback bij verbinding met de broker
def on_connect(client, userdata, flags, rc):
if rc == 0:
print("✅ Succesvol verbonden met IAMMETER MQTT Broker")
client.subscribe(ONDERWERP)
print(f"📡 Geabonneerd op onderwerp: {ONDERWERP}")
else:
print(f"❌ Verbinding mislukt met code {rc}")

# Callback bij ontvangst van een bericht
def on_message(client, userdata, msg):
payload = json.loads(msg.payload.decode())
print("📊 Realtime gegevens ontvangen:")
print(json.dumps(payload, indent=2, ensure_ascii=False))

# Initialiseer MQTT-client
client = mqtt.Client()
client.username_pw_set(MQTT_USER, MQTT_PASS)
client.on_connect = on_connect
client.on_message = on_message

# Maak verbinding met de broker en start de lus
client.connect(MQTT_BROKER, MQTT_PORT, 60)
client.loop_forever()

6. Node.js-voorbeeld

We raden aan om dit interessante open-sourceproject te proberen: Het gebruiktNode.jsom u te abonneren op realtime gegevens van de IAMMETER MQTT-broker en deze te visualiseren in eenweb-UI, waardoor een gaaf real-time dashboard ontstaat.

🔗 https://github.com/lewei50/iammeterJS


7. Praktische use cases

  1. Slimme huisautomatiseringIntegreer realtime-vermogensgegevens inThuisassistentofKnooppunt-REDom automatiseringsacties te activeren (bijvoorbeeld een verwarming starten wanneer de zonne-energieproductie hoog is).
  2. Lokale datavisualisatieSla binnenkomende MQTT-gegevens op inInfluxDBen visualiseer het metGrafana-dashboards.
  3. Privécloud of edge computingHaal realtime-vermogensgegevens rechtstreeks op via MQTT voor aangepaste analyses of besturingslogica zonder dat u afhankelijk bent van IAMMETER Cloud.

8. Problemen oplossen

Probleem Mogelijke oorzaak / oplossing
Kan geen verbinding maken met makelaar Controleer of uw MQTT-gebruikersnaam en -wachtwoord correct zijn ingesteld in IAMMETER Cloud.
Geen gegevens ontvangen Controleer het formaat van uw onderwerp (apparaat/{SN}/realtime) en zorg ervoor dat de meter online is.
Gegevensvertraging Controleer de stabiliteit van uw netwerk of de sterkte van uw Wi-Fi-signaal.
Meerdere meters U kunt zich op meerdere onderwerpen tegelijk abonneren (één per SN).

9. Conclusie

Gebruik makend vanIAMMETER MQTT Broker, kunt u eenvoudig toegang krijgenrealtime energiedatastromenvan uw IAMMETER-apparaten. Het is een krachtige en flexibele methode omlokale dashboards, slimme automatiseringen of op AI gebaseerde energie-optimalisatiesystemen.


📘 Referenties


Wil je dat ik eenMarkdown-geformatteerde blogberichtversie(klaar om te publiceren op de officiële IAMMETER-blog, met syntaxisaccentuering en ingesloten afbeeldingslinks intact)?

Bovenkant