Valitettavasti selaimesi ei tue JavaScriptiä!
Kirjaudu sisään

MQTT-energiamittari Home Assistantille: manuaalinen YAML-määritys

MQTT-energiamittarin manuaalinen määrittäminen Home Assistantissa

MQTT-energiamittari voi julkaista jännitteen, virran, pätötehon sekä tuodun ja viedyn energian paikallisverkkosi brokerille. Home Assistant tilaa kyseiset tiedot ja muuntaa JSON-arvot anturikokonaisuuksiksi, joita voidaan käyttää kojelaudoissa, automaatioissa ja Energy Dashboardissa.

Tämä opas selittää IAMMETER-energiamittareiden Manual MQTT -menetelmän:

  1. määritä MQTT-brokeri mittarin WebUI:ssa;
  2. yhdistä Home Assistant samaan brokeriin;
  3. määritä tarvittavat MQTT-anturit YAML:ssä;
  4. lisää tuotu ja viety energia Energy Dashboardiin.

Manual MQTT antaa sinulle täyden hallinnan kokonaisuuksien nimistä, aiheista, malleista ja metatiedoista. Jos haluat, että Home Assistant luo laitteen ja kokonaisuudet automaattisesti, käytä sen sijaan MQTT Discovery -menetelmää.

Manual MQTT ja MQTT Discovery ovat eri menetelmiä

Molemmat menetelmät käyttävät MQTT-brokeria, mutta Home Assistant -määritys on erilainen.

Ominaisuus Manual MQTT MQTT Discovery
Mittarin brokerimääritys Vaaditaan Vaaditaan
HA MQTT -integrointi Vaaditaan Vaaditaan
YAML-anturimääritykset Vaaditaan Ei vaadita
Kokonaisuuksien nimet ja mallit Käyttäjän täysin hallinnassa Mittarin luomat
Automaattinen laitteen/kokonaisuuden luonti Ei Kyllä
Paras Mukautettuihin MQTT-järjestelmiin ja kokonaisuusmäärityksiin Nopein Home Assistant -määritys

Tässä oppaassa pidä HA MQTT Discovery poistettuna käytöstä mittarin WebUI:ssa. Tämä kytkin tarvitaan vain, kun haluat Home Assistantin automaattisen löydön.

Mitä tarvitset

  • IAMMETER-energiamittari, jossa on uusin laiteohjelmisto;
  • MQTT-brokeri, joka on sekä mittarin että Home Assistantin tavoitettavissa;
  • brokerin osoite, portti, käyttäjänimi ja salasana;
  • mittarin sarjanumero;
  • pääsy Home Assistantin YAML-määrityksiin.

Brokeri voi toimia samassa koneessa kuin Home Assistant, Mosquitto broker -lisäosassa, toisessa lähiverkon palvelimessa tai etäpalvelimessa. Käytä paikallista brokeria, kun haluat, että koko datapolku pysyy lähiverkon sisällä.

Kaikki nykyiset IAMMETER-mittarit tukevat Manual MQTT -menetelmää. Yksivaiheiset, kaksikanavaiset ja kolmivaiheiset mallit julkaisevat erilaisia JSON-taulukkorakenteita, joten arvomallien on vastattava todellista datasisältöä.

Vaihe 1: Määritä MQTT-brokeri mittarin WebUI:ssa

Avaa mittarin paikallinen WebUI ja siirry kohtaan Settings. Määritä:

Asetus Arvo
Run Mode MQTT
Address MQTT-brokerin isäntänimi/IP-osoite ja portti
Username Brokerin käyttäjänimi, jos vaaditaan
Password Brokerin salasana, jos vaaditaan
HA MQTT Discovery Poistettu käytöstä tässä Manual MQTT -oppaassa

Tallenna asetukset ja anna mittarin yhdistää uudelleen.

Määritä MQTT-brokeri uusimmassa IAMMETER WebUI:ssa

Nykyisen laiteohjelmiston WebUI tukee näitä brokeriasetuksia suoraan. Käyttäjänimeä ja salasanaa ei tarvitse määrittää vanhan paikallisen API-menettelyn kautta.

Täydelliset mittarikohtaiset määritysohjeet ja vanhemman laiteohjelmiston ohjeet löydät kohdasta IAMMETER-tietojen julkaiseminen MQTT-brokeriin.

MQTT-tila ja IAMMETER Cloud

Kun mittarin Run Mode -asetukseksi vaihdetaan MQTT, se julkaisee mittaukset brokeriisi sen sijaan, että se lähettäisi ne IAMMETER Cloudiin. Manual MQTT ja IAMMETER Cloud eivät siis toimi samanaikaisesti samasta mittarista.

Jos tarvitset Home Assistantin ja IAMMETER Cloudin samanaikaisesti, käytä sen sijaan paikallista HTTP- tai Modbus TCP -integrointia. Vertaa käytettävissä olevia menetelmiä Home Assistant -energiamittarin integrointioppaassa.

Vaihe 2: Varmista MQTT-aihe ja datasisältö

IAMMETER julkaisee reaaliaikaiset mittaukset osoitteeseen:

device/{SN}/realtime

Korvaa {SN} mittarin sarjanumerolla. Esimerkiksi:

device/80123456/realtime

Ennen kuin määrität Home Assistant -anturit, tilaa aihe MQTT-asiakasohjelmalla ja varmista, että viestejä saapuu. Näin YAML-vianmääritystä ei sekoiteta brokeri-, tunnistetieto-, palomuuri- tai aiheongelmiin.

Yksivaiheinen JSON

Yksivaiheinen mittari käyttää Data-taulukkoa. Ensimmäiset viisi arvoa ovat:

Taulukon paikka Mittaus
Data[0] Jännite
Data[1] Virta
Data[2] Pätöteho
Data[3] Tuotu energia
Data[4] Viety energia

Esimerkki:

{
  "method": "uploadsn",
  "SN": "12345678",
  "Data": [228.91, 1.61, 225, 15066.47, 0]
}

Monikanavainen ja kolmivaiheinen JSON

Monikanavaiset ja kolmivaiheiset mittarit käyttävät Datas-taulukkoa. Jokainen sisäkkäinen taulukko edustaa yhtä vaihetta tai mittauskanavaa:

Datas[0] → vaihe/kanava A
Datas[1] → vaihe/kanava B
Datas[2] → vaihe/kanava C, kun se on käytössä

Kussakin vaihe-/kanavataulukossa yleiset paikat ovat:

Taulukon paikka Mittaus
[0] Jännite
[1] Virta
[2] Pätöteho
[3] Tuotu energia
[4] Viety energia
[5] Taajuus, jos saatavilla
[6] Tehokerroin, jos saatavilla

Tarkista aina mallisi ja laiteohjelmistosi todellinen MQTT-viesti ennen mallien kopioimista. Katso täydellinen IAMMETER JSON -tietomääritelmä.

Vaihe 3: Yhdistä Home Assistant brokeriin

Home Assistantissa:

  1. Siirry kohtaan Settings → Devices & services.
  2. Valitse Add integration.
  3. Etsi MQTT.
  4. Anna sama brokerin osoite, portti, käyttäjänimi ja salasana, joita mittari käyttää.
  5. Varmista, että MQTT-integrointi yhdistyy onnistuneesti.

Jos Home Assistant käyttää jo tätä brokeria, älä lisää toista MQTT-integrointia. Manuaalisesti määritetyt anturit käyttävät olemassa olevaa brokeriyhteyttä.

Vaihe 4: Lisää Manual MQTT -anturit YAML:ssä

Alla olevat esimerkit käyttävät Home Assistantin nykyistä mqtt: sensor: -määritysrakennetta. Korvaa sarjanumero jokaisessa state_topic-kohdassa.

Yksivaiheisen energiamittarin YAML

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 antaa Home Assistantille mahdollisuuden hallita anturiasetuksia käyttöliittymässä. Pidä jokainen tunnus yksilöllisenä ja pysyvänä. Älä muuta sitä pelkästään näytettävän kokonaisuuden uudelleen nimeämiseksi.

Kolmivaiheisen energiamittarin YAML

Seuraava esimerkki luo vaiheen A kokonaisuudet. Toista lohko vaiheille B ja C muuttamalla Datas[0] arvoiksi Datas[1] ja Datas[2] sekä käyttämällä erillisiä nimiä ja yksilöllisiä tunnuksia.

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

Luo WEM2067- ja muille monikanavamalleille vain se määrä kanavalohkoja, joka on todellisessa Datas-datasisällössä.

Vältä kahta ylätason mqtt:-lohkoa

Jos configuration.yaml sisältää jo mqtt:-osion, lisää anturit olemassa olevan osion alle. YAML ei voi turvallisesti sisältää kahta itsenäistä ylätason avainta, joilla on sama nimi.

Suurta määritystä varten voit pitää MQTT-anturit erillisessä sisällytettävässä tiedostossa, mutta noudata Home Assistantin sisällytysrakennetta ja sisennysohjeita.

Vaihe 5: Tarkista määritys ja lataa anturit

YAML-tallennuksen jälkeen:

  1. suorita Home Assistantin määritystarkistus;
  2. korjaa mahdolliset YAML-, sisennys- tai mallivirheet;
  3. käynnistä Home Assistant uudelleen tarvittaessa;
  4. avaa Developer tools → States;
  5. varmista, että jokaisella MQTT-kokonaisuudella on järkevä arvo, yksikkö, laiteluokka ja tilaluokka.

Kokonaisuuden arvon pitäisi muuttua, kun uusi viesti saapuu aiheeseen device/{SN}/realtime.

Vaihe 6: Lisää tuotu ja viety energia Energy Dashboardiin

Home Assistantin Energy Dashboard edellyttää kumulatiivisia energiakokonaisuuksia. YAML-esimerkit käyttävät:

unit_of_measurement: "kWh"
device_class: energy
state_class: total_increasing

Siirry kohtaan Settings → Dashboards → Energy ja valitse:

  • IAMMETER Imported Energy verkosta otetulle kulutukselle;
  • IAMMETER Exported Energy verkkoon palautetulle energialle.

Kolmivaiheisessa mittarissa valitse kokonaisuusrakenne, joka vastaa asennusta ja Home Assistant -kojelautasuunnittelua. Voit näyttää vaihekohtaiset energiat erikseen tai luoda sopivan kokonaisarvon, mutta älä laske arvoja yhteen varmistamatta, miten mittari raportoi vaihe- ja nettoenergian valitussa kytkentätavassa.

Älä valitse watteina mitattua pätötehokokonaisuutta Energy Dashboardin energiakenttään. Teho on hetkellinen arvo; kojelauta edellyttää kumulatiivista kWh-arvoa.

Valitse MQTT-julkaisuväli

Nykyinen IAMMETER-laiteohjelmisto tukee MQTT-julkaisuväliä aina 2 sekuntiin asti. Lyhin väli ei ole aina paras asetus.

Ehdotetut aloituskohdat:

Käyttötapaus Ehdotettu väli
Nopea paikallinen automaatio 2–5 sekuntia
Reaaliaikainen energiakojelauta 5–12 sekuntia
Yleinen seuranta 10–60 sekuntia

Ota huomioon brokerin kapasiteetti, Home Assistantin recorder-tietokannan kasvu, verkon luotettavuus ja kokonaisuuksien määrä. Yksi viesti, joka sisältää useita vaihearvoja, voi päivittää useita Home Assistant -antureita kerralla.

Tuetut IAMMETER-mallit

Kaikki nykyiset IAMMETER-energiamittarit tukevat Manual MQTT -menetelmää. Niiden tärkein ero Home Assistantissa on datasisällön rakenne ja mittauskanavien määrä.

Malli Tyypillinen rakenne Tuotetiedot
WEM3080 Yksi Data-taulukko Yksivaiheinen energiamittari
WEM2067 Monikanavainen Datas-taulukko Kaksikanavainen mittari kodin aurinkoenergialle
WEM3080T Kolmikanavainen Datas-taulukko Kolmivaiheinen energiamittari
WEM3050T Kolmikanavainen Datas-taulukko Kodin kolmivaiheinen/split-phase-mittari
WEM3080TD Malli-/kytkentäkohtainen monikanavainen data WEM3080TD
WEM3046T / WEM3046TE Kolmikanavainen data ulkoisella 5 A CT -mittauksella 5 A CT -kolmivaihemittari

WEM3046T ja WEM3046TE mittaavat ulkoisten virtamuuntajien 5 A toisiolähdön. Käytä oikeaa CT-suhdetta, jotta saat ensiöpuolen arvot. Tämä on mittausjärjestelmän ominaisuus, ei MQTT- tai Home Assistant -rajoitus.

Vianmääritys

MQTT-viestit eivät saavu

  • Tarkista brokerin osoite ja portti mittarin WebUI:ssa.
  • Varmista käyttäjänimi ja salasana.
  • Tarkista brokerin lokit todennus- tai yhteysvirheiden varalta.
  • Varmista, että mittari pääsee brokeriin palomuurin tai VLAN-sääntöjen läpi.
  • Tilaa aihe device/{SN}/realtime erillisellä MQTT-asiakasohjelmalla.

Viestit saapuvat, mutta Home Assistant -kokonaisuudet eivät ole käytettävissä

  • Varmista, että Home Assistant on yhdistetty samaan brokeriin.
  • Tarkista tarkka aihe ja sarjanumero.
  • Vertaa Data- ja Datas-rakenteita todelliseen datasisältöön.
  • Tarkista YAML-sisennys ja mallit.
  • Tarkista Home Assistant -lokin tiedot uudelleenlatauksen tai uudelleenkäynnistyksen jälkeen.

Jotkin kokonaisuudet näyttävät nollaa tai väärän mittauksen

  • Älä kopioi yksivaiheista Data-mallia Datas-datasisällölle.
  • Varmista taulukon paikka JSON-määritelmän avulla.
  • Varmista vaiheen/kanavan indeksi.
  • Tarkista WEM3046T/WEM3046TE-mallien ulkoinen CT-suhde.

Energiakokonaisuudet puuttuvat Energy Dashboardista

Varmista kaikki kolme kenttää:

unit_of_measurement: "kWh"
device_class: energy
state_class: total_increasing

Varmista myös, että kokonaisuus on vastaanottanut kelvollista numeerista dataa ja näkyy kohdassa Developer tools → States.

Päällekkäisiä laitteita tai antureita ilmestyy

Manual MQTT ja MQTT Discovery voivat luoda erillisiä kokonaisuuksia samasta mittarista. Jos käytät YAML-menetelmää, pidä HA MQTT Discovery poistettuna käytöstä, ellet tarkoituksella halua molempia sarjoja ja ole suunnitellut yksilöllisiä kokonaisuuksien nimiä.

Aiheeseen liittyvät oppaat

Päivitetty: 19. heinäkuuta 2026.

Ylös