MQTT merilnik energije za Home Assistant: ročna nastavitev YAML
Ročna konfiguracija MQTT merilnika energije v Home Assistantu
MQTT merilnik energije lahko objavlja napetost, tok, delovno moč ter prejeto in oddano energijo na posrednika (broker) v vašem lokalnem omrežju. Home Assistant se naroči na te podatke in pretvori vrednosti JSON v entitete senzorjev, ki jih lahko uporabite v nadzornih ploščah, avtomatizacijah in na plošči Energy Dashboard.
Ta vodnik pojasnjuje metodo ročnega MQTT za IAMMETER merilnike energije:
- konfiguracijo MQTT posrednika v merilnikovem spletnem vmesniku (WebUI);
- povezavo Home Assistenta z istim posrednikom;
- definicijo potrebnih MQTT senzorjev v YAML;
- dodajanje prejete in oddane energije na ploščo Energy Dashboard.
Ročni MQTT vam daje popoln nadzor nad imeni entitet, temami, predlogami in metapodatki. Če želite, da Home Assistant samodejno ustvari napravo in entitete, uporabite raje MQTT Discovery.
Ročni MQTT in MQTT Discovery sta različni metodi
Obe metodi uporabljata MQTT posrednika, vendar je nastavitev v Home Assistantu drugačna.
| Funkcija | Ročni MQTT | MQTT Discovery |
|---|---|---|
| Konfiguracija posrednika na strani merilnika | Obvezna | Obvezna |
| Integracija MQTT v HA | Obvezna | Obvezna |
| Definicije senzorjev v YAML | Obvezne | Niso obvezne |
| Imena entitet in predloge | V celoti nadzira uporabnik | Ustvari jih merilnik |
| Samodejno ustvarjanje naprave/entitet | Ne | Da |
| Primerno za | Prilagojene MQTT sisteme in definicije entitet | Najhitrejšo nastavitev Home Assistenta |
Za ta vodnik pustite MQTT Discovery v HA onemogočen v merilnikovem spletnem vmesniku. To stikalo je potrebno le, če želite samodejno odkrivanje s strani Home Assistenta.
Kaj potrebujete
- IAMMETER merilnik energije s trenutno strojno programsko opremo (firmware);
- MQTT posrednika, ki je dosegljiv tako merilniku kot Home Assistantu;
- naslov posrednika, vrata, uporabniško ime in geslo;
- serijsko številko merilnika;
- dostop do konfiguracije YAML v Home Assistantu.
Posrednik lahko teče na istem računalniku kot Home Assistant, v dodatku Mosquitto broker, na drugem strežniku v omrežju LAN ali na oddaljenem strežniku. Uporabite lokalnega posrednika, kadar želite, da celotna podatkovna pot ostane znotraj omrežja LAN.
Vsi trenutni IAMMETER merilniki podpirajo ročni MQTT. Enofazni, dvokanalni in tri fazni modeli objavljajo različne strukture polj JSON, zato morajo predloge vrednosti ustrezati dejanskemu sporočilu.
1. korak: Konfiguracija MQTT posrednika v merilnikovem spletnem vmesniku
Odprite lokalni spletni vmesnik merilnika in pojdite v Nastavitve. Konfigurirajte:
| Nastavitev | Vrednost |
|---|---|
| Run Mode (način delovanja) | MQTT |
| Address (naslov) | Ime gostitelja/IP in vrata MQTT posrednika |
| Username (uporabniško ime) | Uporabniško ime posrednika, če je zahtevano |
| Password (geslo) | Geslo posrednika, če je zahtevano |
| HA MQTT Discovery | Onemogočeno za ta vodnik o ročnem MQTT |
Shranite nastavitve in počakajte, da se merilnik ponovno poveže.

Spletni vmesnik trenutne strojne programske opreme podpira te nastavitve posrednika neposredno. Uporabniškega imena in gesla vam ni treba konfigurirati prek starega postopka lokalnega API-ja.
Za popolno konfiguracijo na strani merilnika in navodila za starejšo strojno programsko opremo si oglejte objavljanje podatkov IAMMETER na MQTT posrednika.
Način MQTT in IAMMETER Cloud
Ko se način delovanja merilnika spremeni v MQTT, merilnik objavlja merilne vrednosti na vašega posrednika, namesto da bi jih nalagal v IAMMETER Cloud. Ročni MQTT in IAMMETER Cloud zato istega merilnika ne moreta delovati hkrati.
Če potrebujete Home Assistant in IAMMETER Cloud istočasno, uporabite raje lokalno integracijo HTTP ali Modbus TCP. Primerjajte razpoložljive metode v vodniku za integracijo merilnika energije s Home Assistantom.
2. korak: Preverjanje MQTT teme in sporočila
IAMMETER objavlja merilne vrednosti v realnem času na:
device/{SN}/realtime
Zamenjajte {SN} s serijsko številko merilnika. Na primer:
device/80123456/realtime
Preden konfigurirate senzorje v Home Assistantu, se s stranko MQTT naročite na temo in potrdite, da sporočila prihajajo. Tako preprečite, da bi se odpravljanje težav z YAML pomešalo s težavami s posrednikom, poverilnicami, požarnim zidom ali temo.
Enofazni JSON
Enofazni merilnik uporablja polje Data. Prvih pet vrednosti:
| Položaj v polju | Meritev |
|---|---|
Data[0] |
Napetost |
Data[1] |
Tok |
Data[2] |
Delovna moč |
Data[3] |
Prejeta energija |
Data[4] |
Oddana energija |
Primer:
{
"method": "uploadsn",
"SN": "12345678",
"Data": [228.91, 1.61, 225, 15066.47, 0]
}
Večkanalni in trifazni JSON
Večkanalni in trifazni merilniki uporabljajo polje Datas. Vsako gnezdeno polje predstavlja fazo ali merilni kanal:
Datas[0] → faza/kanal A
Datas[1] → faza/kanal B
Datas[2] → faza/kanal C, kadar je prisoten
Znotraj polja vsake faze/kanala so običajna mesta:
| Položaj v polju | Meritev |
|---|---|
[0] |
Napetost |
[1] |
Tok |
[2] |
Delovna moč |
[3] |
Prejeta energija |
[4] |
Oddana energija |
[5] |
Frekvenca, kjer je na voljo |
[6] |
Faktor moči, kjer je na voljo |
Preden kopirate predloge, vedno preverite dejansko MQTT sporočilo svojega modela in strojne programske opreme. Glejte celotno definicijo podatkov JSON IAMMETER.
3. korak: Povezava Home Assistenta s posrednikom
V Home Assistantu:
- Pojdite na Nastavitve → Naprave in storitve.
- Izberite Dodaj integracijo.
- Poiščite MQTT.
- Vnesite isti naslov posrednika, vrata, uporabniško ime in geslo, kot jih uporablja merilnik.
- Potrdite, da se integracija MQTT uspešno poveže.
Če Home Assistant že uporablja tega posrednika, ne dodajajte podvojene integracije MQTT. Ročno definirani senzorji bodo uporabili obstoječo povezavo s posrednikom.
4. korak: Dodajanje senzorjev ročnega MQTT v YAML
Spodnji primeri uporabljajo trenutno strukturo konfiguracije mqtt: sensor: v Home Assistantu. Zamenjajte serijsko številko v vsakem state_topic.
YAML za enofazni merilnik energije
mqtt:
sensor:
- name: "IAMMETER Voltage"
unique_id: "iammeter_12345678_voltage"
state_topic: "device/12345678/realtime"
value_template: "{{ value_json.Data[0] | float(0) }}"
unit_of_measurement: "V"
device_class: voltage
state_class: measurement
- name: "IAMMETER Current"
unique_id: "iammeter_12345678_current"
state_topic: "device/12345678/realtime"
value_template: "{{ value_json.Data[1] | float(0) }}"
unit_of_measurement: "A"
device_class: current
state_class: measurement
- name: "IAMMETER Active Power"
unique_id: "iammeter_12345678_active_power"
state_topic: "device/12345678/realtime"
value_template: "{{ value_json.Data[2] | float(0) }}"
unit_of_measurement: "W"
device_class: power
state_class: measurement
- name: "IAMMETER Imported Energy"
unique_id: "iammeter_12345678_import_energy"
state_topic: "device/12345678/realtime"
value_template: "{{ value_json.Data[3] | float(0) }}"
unit_of_measurement: "kWh"
device_class: energy
state_class: total_increasing
- name: "IAMMETER Exported Energy"
unique_id: "iammeter_12345678_export_energy"
state_topic: "device/12345678/realtime"
value_template: "{{ value_json.Data[4] | float(0) }}"
unit_of_measurement: "kWh"
device_class: energy
state_class: total_increasing
unique_id omogoča Home Assistantu, da upravlja nastavitve entitet v uporabniškem vmesniku. Vsak ID naj bo edinstven in stalen. Ne spreminjajte ga zgolj zaradi preimenovanja prikazane entitete.
YAML za trifazni merilnik energije
Naslednji primer ustvari entitete za fazo A. Podvojite blok za fazi B in C, spremenite Datas[0] v Datas[1] in Datas[2], ter uporabite drugačna imena in edinstvene ID-je.
mqtt:
sensor:
- name: "IAMMETER Voltage A"
unique_id: "iammeter_80123456_voltage_a"
state_topic: "device/80123456/realtime"
value_template: "{{ value_json.Datas[0][0] | float(0) }}"
unit_of_measurement: "V"
device_class: voltage
state_class: measurement
- name: "IAMMETER Current A"
unique_id: "iammeter_80123456_current_a"
state_topic: "device/80123456/realtime"
value_template: "{{ value_json.Datas[0][1] | float(0) }}"
unit_of_measurement: "A"
device_class: current
state_class: measurement
- name: "IAMMETER Active Power A"
unique_id: "iammeter_80123456_active_power_a"
state_topic: "device/80123456/realtime"
value_template: "{{ value_json.Datas[0][2] | float(0) }}"
unit_of_measurement: "W"
device_class: power
state_class: measurement
- name: "IAMMETER Imported Energy A"
unique_id: "iammeter_80123456_import_energy_a"
state_topic: "device/80123456/realtime"
value_template: "{{ value_json.Datas[0][3] | float(0) }}"
unit_of_measurement: "kWh"
device_class: energy
state_class: total_increasing
- name: "IAMMETER Exported Energy A"
unique_id: "iammeter_80123456_export_energy_a"
state_topic: "device/80123456/realtime"
value_template: "{{ value_json.Datas[0][4] | float(0) }}"
unit_of_measurement: "kWh"
device_class: energy
state_class: total_increasing
Za WEM2067 in druge večkanalne modele ustvarite samo toliko blokov kanalov, kolikor jih dejansko vsebuje sporočilo Datas.
Izogibajte se dvema blokoma mqtt: na najvišji ravni
Če configuration.yaml že vsebuje razdelek mqtt:, dodajte senzorje pod obstoječi razdelek. YAML ne more varno vsebovati dveh neodvisnih ključev na najvišji ravni z istim imenom.
Pri obsežni konfiguraciji lahko senzorje MQTT hranite v vključeni datoteki, vendar upoštevajte strukturo vključevanja in pravila zamikov Home Assistenta.
5. korak: Preverjanje konfiguracije in nalaganje senzorjev
Po shranjevanju YAML:
- zaženite preverjanje konfiguracije Home Assistenta;
- odpravite morebitne napake v YAML, zamikih ali predlogah;
- po potrebi znova zaženite Home Assistant;
- odprite Orodja za razvijalce → Stanja;
- preverite, da ima vsaka MQTT entiteta smiselno vrednost, enoto, razred naprave in razred stanja.
Vrednost entitete se mora spremeniti, ko na device/{SN}/realtime prispe novo sporočilo.
6. korak: Dodajanje prejete in oddane energije na ploščo Energy Dashboard
Plošča Energy Dashboard v Home Assistantu zahteva kumulativne entitete energije. Primeri YAML uporabljajo:
unit_of_measurement: "kWh"
device_class: energy
state_class: total_increasing
Pojdite na Nastavitve → Nadzorne plošče → Energy in izberite:
- IAMMETER Imported Energy za odjem iz omrežja;
- IAMMETER Exported Energy za oddajo v omrežje.
Pri trifaznem merilniku izberite strukturo entitet, ki ustreza napeljavi in zasnovi nadzorne plošče v Home Assistantu. Energijo faz lahko prikažete posamično ali ustvarite ustrezno skupno entiteto, vendar ne seštevajte vrednosti, ne da bi preverili, kako merilnik poroča fazno in neto energijo za izbrani način priklopa.
Na polju za energijo na plošči Energy Dashboard ne izberite entitete delovne moči, merjene v vatih. Moč je trenutna hitrost; plošča zahteva kumulativne kWh.
Izbira intervala objavljanja MQTT
Trenutna strojna programska oprema IAMMETER podpira interval objavljanja MQTT do 2 sekund. Najkrajši interval ni vedno najboljša nastavitev.
Predlagane izhodiščne vrednosti:
| Primer uporabe | Priporočen interval |
|---|---|
| Hitra lokalna avtomatizacija | 2–5 sekund |
| Nadzorna plošča energije v živo | 5–12 sekund |
| Splošno spremljanje | 10–60 sekund |
Upoštevajte zmogljivost posrednika, rast zapisov v Home Assistantu, zanesljivost omrežja in število entitet. Sporočilo s številnimi faznimi vrednostmi lahko hkrati posodobi več senzorjev Home Assistenta.
Podprti modeli IAMMETER
Vsi trenutni merilniki energije IAMMETER podpirajo ročni MQTT. Njihova glavna razlika v Home Assistantu je struktura sporočila in število merilnih kanalov.
| Model | Tipična struktura | Informacije o izdelku |
|---|---|---|
| WEM3080 | Enojno polje Data |
Enofazni merilnik energije |
| WEM2067 | Večkanalno polje Datas |
Dvokanalni merilnik za domače sončne elektrarne |
| WEM3080T | Trikanalno polje Datas |
Trifazni merilnik energije |
| WEM3050T | Trikanalno polje Datas |
Domači trifazni/dvofazni merilnik |
| WEM3080TD | Večkanalni podatki, odvisni od modela/priklopa | WEM3080TD |
| WEM3046T / WEM3046TE | Trikanalni podatki z zunanjim merjenjem 5 A CT | Trifazni merilnik s CT 5 A |
WEM3046T in WEM3046TE merita sekundarni izhod 5 A zunanjih tokovnih transformatorjev (CT). Za vrednosti na primarni strani uporabite pravilno razmerje CT. To je značilnost merilnega sistema, ne omejitev MQTT ali Home Assistenta.
Odpravljanje težav
Sporočila MQTT ne prihajajo
- Preverite naslov in vrata posrednika v merilnikovem spletnem vmesniku.
- Potrdite uporabniško ime in geslo.
- Preverite dnevnike posrednika glede napak pri preverjanju pristnosti ali povezovanju.
- Preverite, da merilnik doseže posrednika skozi morebitna pravila požarnega zidu ali VLAN.
- Z neodvisno stranko MQTT se naročite na
device/{SN}/realtime.
Sporočila prihajajo, vendar entitete Home Assistenta niso na voljo
- Preverite, da je Home Assistant povezan z istim posrednikom.
- Preverite točno temo in serijsko številko.
- Primerjajte
DatainDatasz dejanskim sporočilom. - Preverite zamike in predloge v YAML.
- Po ponovnem nalaganju ali zagonu preverite dnevnike Home Assistenta.
Nekatere entitete prikazujejo ničlo ali napačno meritev
- Ne kopirajte enofazne predloge
Dataza sporočiloDatas. - Preverite položaj v polju glede na definicijo JSON.
- Potrdite indeks faze/kanala.
- Pri WEM3046T/WEM3046TE potrdite razmerje zunanjega CT.
Entitete energije manjkajo na plošči Energy Dashboard
Potrdite vsa tri polja:
unit_of_measurement: "kWh"
device_class: energy
state_class: total_increasing
Prav tako preverite, da je entiteta prejela veljavne številčne podatke in da se pojavi v Orodja za razvijalce → Stanja.
Pojavijo se podvojene naprave ali senzorji
Ročni MQTT in MQTT Discovery lahko iz istega merilnika ustvarita ločene entitete. Če uporabljate metodo YAML, pustite MQTT Discovery v HA onemogočen, razen če namerno želite oba niza in ste načrtovali edinstvena imena entitet.
Povezani vodniki
- Objavljanje podatkov IAMMETER na vašega MQTT posrednika
- Uporaba MQTT Discovery namesto YAML
- Primerjava vseh metod integracije IAMMETER–Home Assistant
- Definicija podatkov JSON IAMMETER
- Nadgradnja strojne programske opreme IAMMETER
Posodobljeno: 19. julij 2026.