Atvainojiet, jūsu pārlūkprogramma neatbalsta JavaScript!

Reāllaika enerģijas datu abonēšana, izmantojot MQTT Broker (2025. gada izdevums)

1. Ievads

IAMMETER-mākonisir profesionāla enerģijas monitoringa un fotoelektrisko elementu pārvaldības platforma. Papildus jaudīgajām vizualizācijas un pārskatu veidošanas funkcijām, IAMMETER-Cloud nodrošina arī elastīgas datu saskarnes. Tas ļauj lietotājiem ar pielāgotām prasībām izmantot IAMMETER-Cloud kādatu starpprogrammatūra, programmatiski izgūstot datus, izmantojot kodu.

Ir divi galvenie veidi, kā iegūt datus no IAMMETER-Cloud, izmantojot kodu:

  • Abonēt datus, izmantojotIAMMETER MQTT brokeris(šī raksta uzmanības centrā)
  • Zvaniet IAMMETER-Cloud pārstāvimAPI

Šajā rokasgrāmatā ir paskaidrots, kā abonēt IAMMETER MQTT tēmas, interpretēt datu struktūras (gan vienfāzes, gan trīsfāžu skaitītājiem) un ieviest darbojošos Python un Node.js piemērus.


2. IAMMETER MQTT brokera pārskats

Piezīme:IAMMETER MQTT brokeris sākotnēji tika izstrādāts kāizstrādes un testēšanas pakalpojumsērtības labad un nav daļa no standarta IAMMETER-Cloud piedāvājuma (lai gan tas ir bijis stabils un darbojas jau vairāk nekā 5 gadus). Ražošanas vai liela mēroga izvietošanas vajadzībām iesakām iestatīt savupašu MQTT brokeris.

IAMMETER MQTT brokera konfigurācija

parametrs Apraksts
Brokera adrese mqtt.iammeter.com
Osta 1883(bez SSL)
Lietotājvārds / Parole JāizveidoIAMMETER mākonis → Iestatījumi → MQTT iestatījumiMQTT iestatījumu ekrānuzņēmums
Tēmas formāts ierīce/{SN}/reāllaiks
Derīgās slodzes formāts JSON

⚠️ Svarīgi:DarītneŠeit izmantojiet savus IAMMETER Cloud pieteikšanās akreditācijas datus. Jums ir nepieciešamsizveidojiet īpašu MQTT lietotājvārdu un paroliIAMMETER Cloud informācijas panelī.

Konfigurējiet IAMMETER mērītāju MQTT režīma izmantošanai

Iestatiet IAMPERMETER mērītāju uzMQTT augšupielādes režīms(skatītprogrammaparatūras konfigurācijas ceļvedis) un ievadiet IAMMETER MQTT brokera parametrus.

Iestatiet mērierīci MQTT augšupielādes režīmā un konfigurējiet IAMMETER MQTT Broker parametrus.


3. MQTT tēmas formāts

Katra IAMMETER ierīce publicē savus reāllaika datus šādā tēmā:

ierīce/{SN}/reāllaiks

Kur{SN}ir jūsu skaitītāja sērijas numurs. Piemēram, ja jūsu ierīces sērijas numurs irDA2BED94, tēma būs:

ierīce/DA2BED94/reāllaiks

Jūs varat abonēt šo tēmu, lai saņemtu nepārtrauktus reāllaika mērījumu datus.


4. Datu formāts

4.1 Vienfāzes skaitītāja datu formāts

Vienfāzes IAMMETER skaitītājs publicē reāllaika datus JSON formātā šādi:

{
"metode": "1-272",
"mac": "B0F8932A295C",
"versija": "i.91.062T6",
"serveris": "em",
"SN": "DA2BED94",
"Dati": [227,02, 1,81, 296,0, 21699,98, 0,00, 50,01, 0,72]
}
rādītājs Lauks Apraksts Vienība
1 Spriegums Pašreizējais līnijas spriegums V
2 Pašreizējais Pašreizējā līnijas strāva A
3 Jauda Aktīvā jauda W
4 Uz priekšu vērsta enerģija Importētā enerģija (patērētā) kWh
5 Apgrieztā enerģija Eksportētā enerģija (ievadīta elektrotīklā, saules enerģija) kWh
6 Biežums Tīkla frekvence Hz
7 spēka faktors Pašreizējā jaudas koeficients PF

🟢 Piezīmes:

  • Pozitīva jauda → enerģijas patēriņš
  • Negatīva jauda → enerģijas eksports (piemēram, saules enerģijas padeve)

4.2 Trīsfāžu skaitītāja datu formāts (WEM3080T / WEM3046T / WEM3050T)

Trīsfāžu IAMMETER skaitītāji publicē datus līdzīgā JSON formātā, kur katrai fāzei atbilst trīs masīvi.

{
"metode": "4-9",
"mac": "849DC2CEC625",
"versija": "i.91.062T6",
"serveris": "em",
"SN": "CB0A0CFB",
"EA": {
"Reaktīvs": [
[-111,0, 0,000, 176,750],
[-113,0, 0,000, 179,110],
[-114,0, 36,120, 144,410]
]
},
"Dati": [
[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]
]
}

Datiir saraksts, kurā irtrīs masīvi, katrs atbilstA, B un C fāzeKatram iekšējam masīvam ir tāda pati struktūra kā vienfāzesDatimasīvs.

rādītājs Lauks Apraksts Vienība
1 Spriegums fāzes spriegums V
2 Pašreizējais fāzes strāva A
3 Jauda Aktīvā jauda W
4 Uz priekšu vērsta enerģija Importētā enerģija kWh
5 Apgrieztā enerģija Eksportētā enerģija kWh
6 Biežums Tīkla frekvence Hz
7 spēka faktors Fāzes jaudas koeficients PF

Papildus reālajiem jaudas datiem, kadReaktīvās jaudas mērīšanair iespējots, jūs redzēsiet arīEAsadaļu šādi:

“EA”: {
“Reaktīvs”: [
[-111,0, 0,000, 176,750],
[-113,0, 0,000, 179,110],
[-114,0, 36,120, 144,410]
]
}

Šajā sadaļā ir parādītsreaktīvo mērījumu dati, kas parādās tikai tad, kadreaktīvā testa funkcijair iespējots (skatīt ekrānuzņēmumu zemāk).

Iespējot reaktīvo mērījumu skaitītājā

Katrs masīvs attēlo trīs fāzes (A, B, C), parādotreaktīvā jauda (Q kVar)unReaktīvā enerģija (kVARh).

Q (kVar):Reaktīvā jauda — pozitīva = induktīva, negatīva = kapacitatīvakVARh:Reaktīvā enerģija — katra fāze ietver divas kVARh vērtības: vienu priekšinduktīvā slodzeun viens priekškapacitatīvā slodze.


5. Python piemērs: reāllaika datu abonēšana

Zemāk ir redzams darbojošs Python skripts, kas izmantopaho-mqttbibliotēka.

importēt paho.mqtt.client kā mqtt
importēt json

# MQTT brokera konfigurācija
MQTT_BROKER = "mqtt.iammeter.com"
MQTT_PORT = 1883
MQTT_USER = "jūsu_mqtt_lietotājvārds" # Iestatīt IAMMETER mākonī → MQTT iestatījumi
MQTT_PASS = "jūsu_mqtt_parole"
TOPIC = "device/DA2BED94/realtime" # Aizstāt ar savas ierīces SN

# Atzvanīšana, kad izveidots savienojums ar brokeri
def on_connect(client, userdata, flags, rc):
if rc == 0:
print("✅ Veiksmīgi izveidots savienojums ar IAMMETER MQTT brokeri")
client.subscribe(TOPIC)
print(f"📡 Abonēts tēmai: {TOPIC}")
else:
print(f"❌ Savienojums neizdevās ar kodu {rc}")

# Atzvanīšana, kad saņemts ziņojums
def on_message(client, userdata, msg):
payload = json.loads(msg.payload.decode())

print("📊 Saņemti reāllaika dati:")

print(json.dumps(payload, indent=2, ensure_ascii=False))

# MQTT klienta inicializācija
client = mqtt.Client()
client.username_pw_set(MQTT_USER, MQTT_PASS)
client.on_connect = on_connect
client.on_message = on_message

# Izveido savienojumu ar brokeri un sāc ciklu
client.connect(MQTT_BROKER, MQTT_PORT, 60)
client.loop_forever()

6. Node.js piemērs

Iesakām izmēģināt šo interesanto atvērtā pirmkoda projektu: Tas izmantoNode.jsabonēt reāllaika datus no IAMMETER MQTT brokera un vizualizēt tostīmekļa lietotāja saskarne, izveidojot lielisku reāllaika informācijas paneli.

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


7. Praktiski lietošanas gadījumi

  1. Viedās mājas automatizācijaIntegrēt reāllaika jaudas datusMājas palīgsvaiMezgls-SARKANSlai aktivizētu automatizācijas darbības (piemēram, ieslēgtu sildītāju, kad saules enerģijas ģenerēšana ir augsta).
  2. Lokālā datu vizualizācijaSaglabāt ienākošos MQTT datusInfluxDBun vizualizējiet to arGrafana informācijas paneļi.
  3. Privātais mākonis vai Edge ComputingIegūstiet reāllaika jaudas datus tieši, izmantojot MQTT, pielāgotai analīzei vai vadības loģikai, nepaļaujoties uz IAMMETER Cloud.

8. Problēmu novēršana

Problēma Iespējamais iemesls / risinājums
Nevar izveidot savienojumu ar brokeri Pārbaudiet, vai jūsu MQTT lietotājvārds/parole ir pareizi iestatīta IAMMETER mākonī.
Nav saņemti dati Pārbaudiet tēmas formātu (ierīce/{SN}/reāllaiks) un pārliecinieties, vai skaitītājs ir tiešsaistē.
Datu aizkave Pārbaudiet tīkla stabilitāti vai Wi-Fi signāla stiprumu.
Vairāki metri Varat abonēt vairākas tēmas vienlaikus (vienu katrā SN).

9. Secinājums

IzmantojotIAMPĒTERA MQTT brokeris, jūs varat viegli piekļūtreāllaika enerģijas datu plūsmasno jūsu IAMMETER ierīcēm. Tā ir jaudīga un elastīga metode, lai izveidotulokāli informācijas paneļi, viedās automatizācijas vai mākslīgā intelekta enerģijas optimizācijas sistēmas.


📘 Atsauces


Vai vēlaties, lai es uztaisuMarkdown formatēta emuāra ieraksta versija(gatavs publicēšanai IAMMETER oficiālajā emuārā ar neskartu sintakses izcelšanu un iegultajām attēlu saitēm)?

Tops