Contor de energie Wi-Fi IAMMETER: API-uri locale și interfețe deschise
Contor de energie Wi-Fi IAMMETER: API-uri locale și interfețe deschise
Contoarele de energie Wi-Fi IAMMETER suportă IAMMETER-Cloud, precum și integrări locale și cu terți.
Interfețele disponibile includ:
- API HTTP local prin rețeaua LAN
- Publicare MQTT și MQTTS
- Modbus TCP
- Încărcare TCP/TLS
- Încărcare HTTP/HTTPS
- Operare locală autonomă
Aceste interfețe permit contoarelor IAMMETER să acționeze ca surse deschise de date pentru:
- Home Assistant și alte platforme smart-home
- Automatizări Node-RED
- Panouri de control auto-găzduite (self-hosted)
- Sisteme PLC și SCADA
- Sisteme personalizate de management al energiei (EMS)
- Sisteme personalizate de management al clădirilor (BMS)
- Servere de date ale unor terți
Acest ghid descrie mai întâi firmware-ul curent și WebUI-ul. Capturile de ecran și metodele de configurare pentru firmware-ul mai vechi sunt păstrate în secțiunea finală Legacy.
Pentru o aplicație gata de utilizare construită pe aceste capabilități, consultați Monitorizarea energiei acasă, Monitorizarea energiei solare sau monitorizarea locală fără acces la Internet.
1) Actualizați la cel mai recent firmware
Firmware-ul IAMMETER este actualizat continuu. Înainte de a configura o integrare, verificați versiunea curentă și compatibilitatea cu modelul:
WebUI-ul celui mai recent firmware expune direct opțiunile de configurare utilizate frecvent. Apelurile manuale de configurare prin API, păstrate mai târziu în acest articol, sunt utile în principal pentru întreținerea instalațiilor mai vechi.
2) Alegeți modul de funcționare în WebUI-ul curent
Selectați un mod de funcționare în funcție de locul în care contorul trebuie să trimită datele sau de modul în care ar trebui să funcționeze local.
| Mod | Comportament | Utilizare tipică |
|---|---|---|
| Cloud | Încărcare către IAMMETER-Cloud | Panouri de control și rapoarte gata de utilizare |
| TCP | Încărcare către un endpoint al unui terț cu TCP, TLS sau configurația TCP suportată | Ingestie pe un server personalizat |
| HTTP | Trimite date către un endpoint HTTP/HTTPS al unui terț | Backend REST sau web |
| MQTT | Publicare directă către un broker MQTT sau MQTTS | Automatizare casnică și mesagerie IoT securizată |
| Stand-Alone | Fără încărcare; răspunde la API-ul local sau la cererile Modbus TCP | Monitorizare doar pe LAN sau auto-găzduită |

Modul de funcționare controlează comportamentul de încărcare a datelor. Disponibilitatea API-ului local și a Modbus TCP ar trebui verificată în continuare pentru modelul de contor, firmware și integrarea aleasă.
3) De ce contează interfețele deschise
Interfețele deschise permit utilizatorilor să decidă unde sunt procesate și stocate datele de energie electrică.
Motivele tipice includ:
- Păstrarea măsurătorilor în rețeaua locală
- Trimiterea telemetriei către un server existent
- Conectarea datelor de energie cu Home Assistant sau Node-RED
- Construirea de panouri de control și alarme personalizate
- Combinarea datelor de energie cu tarife, logică solară sau de control al sarcinii
- Operarea într-un loc cu acces la Internet limitat sau nesigur
Accesul prin cloud și cel local nu sunt neapărat mutual exclusive. Arhitectura potrivită depinde de faptul dacă proiectul are nevoie de rapoarte IAMMETER-Cloud, de o platformă locală, de un server al unui terț sau de o combinație a acestora.
4) Trimiteți date către un server al unui terț
4.1 TCP și TLS
IAMMETER poate trimite datele contorului către un endpoint TCP sau TLS.
În WebUI-ul curent:
- Selectați modul de funcționare TCP.
- Introduceți adresa de destinație.
- Configurați intervalul de încărcare.
- Salvați setările și verificați datele la serverul receptor.
Pentru un server TCP, utilizați:
{domain-or-ip}:{port}
Exemplu:
abc.com:12345

Pentru un server TLS, utilizați:
tls://{domain-or-ip}:{port}
Exemplu:
tls://abc.com:12345

Prezentarea generală a firmware-ului curent documentează un interval minim de încărcare de 2 secunde. Confirmați firmware-ul curent și capacitatea serverului receptor înainte de a selecta un interval scurt.
4.2 MQTT și MQTTS
IAMMETER poate publica telemetria direct către un broker MQTT simplu sau poate folosi MQTTS pentru transport criptat pe firmware suportat.
În WebUI-ul curent:
- Selectați modul de funcționare MQTT.
- Introduceți adresa IP a brokerului sau domeniul și portul, folosind formatul MQTT sau MQTTS corespunzător.
- Introduceți numele de utilizator și parola brokerului atunci când autentificarea este necesară.
- Configurați intervalul de încărcare.
- Salvați și verificați că mesajele ajung la broker.
Pentru MQTT simplu, introduceți adresa și portul brokerului fără prefixul mqtt://:
192.168.11.163:1883

Pentru MQTTS, includeți prefixul mqtts://:
mqtts://{mqtt-broker-address}:{port}
Exemplu:
mqtts://broker.example.com:8883

Suportul MQTTS documentat în actualizarea de firmware din noiembrie 2025 are următoarele limitări actuale:
- Suportă TLS 1.2 și versiuni anterioare.
- Încărcarea unui certificat CA personalizat nu este suportată.
- Verificarea numelui de gazdă (hostname) nu este suportată.
- Certificatele de pe partea clientului pentru autentificarea TLS mutuală nu sunt suportate.
Aceste limitări sunt importante atunci când selectați un broker și evaluați cerințele de securitate ale implementării.
Prezentarea generală a firmware-ului curent documentează un interval minim de încărcare de 2 secunde.
Home Assistant MQTT Discovery este o funcție suplimentară de descoperire în Home Assistant; nu este necesară pentru fiecare integrare MQTT. Consultați:
Modificarea uploadInterval de la distanță prin MQTT/MQTTS
Cu firmware-ul descris în actualizarea din noiembrie 2025, un contor care rulează în modul MQTT se abonează automat la:
device/{sn}/config
Publicați următorul JSON de la un alt client MQTT pentru a modifica intervalul de încărcare de la distanță:
{"uploadInterval": 10}
Înlocuiți 10 cu intervalul necesar în secunde și {sn} cu numărul de serie al contorului din topic.

Această configurare MQTT de la distanță este diferită de metoda locală mai veche /api/uploadinterval păstrată în secțiunea Legacy.
4.3 HTTP și HTTPS
IAMMETER poate trimite date către un server HTTP/HTTPS personalizat.
În WebUI-ul curent:
- Selectați modul de funcționare HTTP.
- Introduceți adresa și portul serverului.
- Configurați intervalul de încărcare.
- Salvați și verificați cererile la server.
Firmware-ul curent suportă atât portul HTTPS implicit, cât și un port HTTPS personalizat.
Utilizați unul dintre aceste formate:
- HTTP simplu fără port explicit:
{address}— implicit portul 80. - HTTP simplu cu port personalizat:
{address}:{port}. - HTTPS fără port explicit:
https://{address}— implicit portul 443. - HTTPS cu port personalizat:
https://{address}:{port}— folosește portul specificat.
Prefixul https:// selectează HTTPS. Portul 443 nu mai este singurul port disponibil pentru HTTPS.
Exemple:
api.example.com
api.example.com:8080
https://api.example.com
https://api.example.com:8443


Consultați Noul firmware adaugă MQTTS, configurare de la distanță și port HTTPS personalizat pentru notele de lansare ale firmware-ului.
Pentru gestionarea payload-ului pe partea serverului, consultați și Integrarea IAMMETER cu un server al unui terț.
5) Citirea datelor local prin HTTP
Conectați contorul la LAN și solicitați date de la adresa sa IP locală. Aceste cereri nu necesită IAMMETER-Cloud.
Testați API-urile interactiv: Deschideți Exploratorul API local IAMMETER, introduceți adresa IP locală a contorului și selectați pagina de test WEM API. Exploratorul de tip Swagger listează API-urile locale disponibile și vă permite să trimiteți cereri de test direct din browser. Browserul dumneavoastră și contorul IAMMETER trebuie să fie în aceeași rețea LAN.
5.1 GET /api/monitorjson
Returnează măsurători electrice în timp real.
Datele standard includ valori precum:
- Tensiune
- Curent
- Putere activă
- kWh importat (forward)
- kWh exportat (reverse)
- Frecvență
- Factor de putere
Exemplu de răspuns:
{
"method": "uploadsn",
"mac": "B0F8933C4F94",
"version": "i.75.97.9",
"server": "em",
"SN": "3E0BAF87",
"Datas": [
[220.0, 9.99, 2198, 11.337, 11.201, 49.99, 1.00],
[222.5, 9.99, 1100, 11.039, 10.908, 49.99, 0.50],
[263.5, 9.99, 1213, 10.975, 10.846, 49.99, 0.55]
]
}
Numărul de tablouri de măsurători depinde de modelul contorului și de numărul de canale.
Dacă măsurarea puterii reactive este activată pe un model/firmware suportat, formatul răspunsului poate conține câmpuri suplimentare. Consultați Formatul datelor de măsurare a puterii reactive.
5.2 GET /api/monitor
Returnează un răspuns extins în timp real care include și informații Wi-Fi precum:
ssid— numele punctului de acces conectatsig— puterea semnalului Wi-Fi
Utilizați acest endpoint atunci când o integrare are nevoie atât de măsurători electrice, cât și de starea de bază a Wi-Fi.
5.3 GET /api/wifidata
Returnează informații despre firmware, dispozitiv și configurația rețelei.
Exemplu:
{
"version": "i.75.97.9",
"SN": "3E0BAF87",
"mac": "B0F8933C4F94",
"type": "PM",
"ssid": "example-wifi",
"ip": "192.168.11.62",
"netmask": "255.255.255.0",
"gw": "192.168.11.1",
"dns": "192.168.11.1",
"dhcp": 1,
"runMode": "tcp",
"uploadinterval": 60
}
Nu publicați răspunsuri care conțin numere de serie ale dispozitivelor, adrese MAC, adrese interne sau informații Wi-Fi, cu excepția cazului în care valorile au fost anonimizate.
6) Formatul JSON în toate modurile de încărcare
IAMMETER folosește o structură JSON de măsurare de bază consistentă în HTTP, TCP, MQTT și API-ul local. Aceasta reduce volumul de lucru necesar atunci când un sistem receptor suportă mai multe metode de transport.
Metoda de transport și structura de încadrare pot afecta totuși modul în care un receptor se conectează, se autentifică sau încadrează un mesaj. Implementați sistemul receptor conform formatului documentat pentru modul selectat.
7) Modbus TCP
Contoarele IAMMETER suportă Modbus TCP pentru integrarea directă în LAN cu clienți compatibili.
Clienții tipici includ:
- Home Assistant
- PLC-uri
- Sisteme SCADA
- Gateway-uri industriale
- Aplicații Modbus personalizate
Referințe:
Confirmați modelul contorului, firmware-ul, definiția registrelor, intervalul de interogare și comportamentul clientului înainte de implementare.
8) Scenarii de integrare
| Sistem | Protocol tipic | Exemplu de utilizare | Referință |
|---|---|---|---|
| Home Assistant | HTTP, Modbus TCP sau MQTT | Panou de control local și automatizare | Ghid Home Assistant |
| Node-RED | HTTP, Modbus TCP sau MQTT | Fluxuri de automatizare | Ghid Node-RED |
| openHAB / ioBroker | HTTP sau adapter suportat | Panou de control local | Integrare ioBroker |
| Zabbix | HTTP | Panou de control de monitorizare | Exemplu Zabbix |
| ThingsBoard | HTTP sau MQTT | Vizualizare IoT | Exemplu ThingsBoard |
| Server personalizat | HTTP, MQTT, TCP sau TLS | Ingestie locală sau enterprise | Construiți-vă propriul sistem |
9) Rezumat al interfețelor curente și resurse
| Cerință | Interfață curentă |
|---|---|
| Citirea măsurătorilor în timp real prin LAN | /api/monitorjson sau /api/monitor |
| Citirea informațiilor despre rețea/dispozitiv | /api/wifidata |
| Trimitere către un broker | MQTT sau MQTTS configurat în WebUI-ul curent |
| Trimitere către un server TCP/TLS personalizat | TCP/TLS configurat în WebUI-ul curent |
| Trimitere către un endpoint web personalizat | HTTP/HTTPS configurat în WebUI-ul curent |
| Interogare de la un client industrial standard | Modbus TCP |
| Operare fără încărcare continuă a datelor | Modul Stand-Alone |
Resurse suplimentare:
- Cel mai recent firmware
- Notă de firmware MQTTS și port HTTPS personalizat
- Tutoriale video
- Definiția datelor JSON
- Prezentare generală Modbus TCP
- Dezvoltați-vă propriul sistem
- Monitorizare fără acces la Internet
API-urile locale și protocoalele deschise IAMMETER fac posibil să începeți cu monitorizarea în timp real și să adăugați ulterior un EMS personalizat, un panou de control auto-găzduit sau un flux de automatizare.
10) Pagini de firmware moștenit și metode de configurare
Materialul următor este păstrat doar pentru contoarele care rulează încă un firmware mai vechi sau pentru utilizatorii care întrețin o integrare existentă. Pentru o instalare nouă, actualizați la cel mai recent firmware și utilizați WebUI-ul curent ori de câte ori opțiunea necesară este disponibilă.
10.1 Pagina moștenită a modului de funcționare
Firmware-ul mai vechi folosea următoarea pagină de selectare a modului de funcționare:

Aspectul și numele opțiunilor pot să nu corespundă WebUI-ului curent prezentat mai devreme în acest ghid.
10.2 Pagina moștenită TCP/TLS
Integrările cu firmware mai vechi pot face referire la această pagină de configurare TCP/TLS și la ghidul aferent:

10.3 Pagina moștenită MQTT
Documentația MQTT mai veche folosea această interfață de configurare:

Pentru fluxul de lucru actual, utilizați instrucțiunile WebUI-ului curent de mai devreme în acest articol și Ghidul de integrare MQTT actualizat.
10.4 Pagina moștenită HTTP/HTTPS
Firmware-ul mai vechi folosea următoarea pagină de destinație HTTP/HTTPS:

Ghidul moștenit de integrare este păstrat la Încărcare prin HTTP/HTTPS.
În acest flux de lucru mai vechi, HTTPS era asociat cu portul implicit 443 și nu necesita prefixul https://. Firmware-ul curent folosește în schimb prefixul https:// pentru a selecta HTTPS și suportă fie portul implicit 443, fie un port personalizat specificat explicit.
10.5 API-uri de configurare moștenite
Următoarele apeluri API locale au apărut în fluxurile de configurare mai vechi. În firmware-ul curent, setările corespunzătoare ar trebui configurate în mod normal prin WebUI atunci când opțiunea este disponibilă.
/api/uploadinterval?x=<seconds>
Metodă moștenită pentru setarea intervalului de încărcare non-Cloud.
/api/mqtt
Metodă moștenită pentru configurarea credențialelor MQTT.
/api/netmetring
Metodă moștenită pentru activarea sau dezactivarea modului Net Energy Metering.
/api/ctcratio
Metodă moștenită pentru aplicarea multiplicatorului de fază documentat în scenarii specifice split-phase sau echilibrate.
/api/reactive
Metodă moștenită pentru activarea sau dezactivarea măsurării puterii reactive și a energiei reactive pe firmware-uri/modele suportate.
/api/ratio — doar pentru WEM3046T
WEM3046T folosește CT-uri externe cu ieșiri secundare de 5 A. Instrucțiunile de configurare mai vechi setau raportul CT cu:
/api/ratio?x={ct_ratio}
Exemplu:
/api/ratio?x=400
Acest endpoint este specific WEM3046T și este invalid pentru alte modele IAMMETER. Pentru firmware-ul curent, utilizați configurația WebUI a modelului atunci când este disponibilă.
Materialul moștenit este păstrat pentru referință inversă; instalațiile actuale ar trebui să urmeze WebUI-ul celui mai recent firmware.