Je nám líto, váš prohlížeč nepodporuje JavaScript!
Přihlásit se

Monitorování energie Docker MQTT: Pokročilé nastavení IAMMETER-Docker

Monitorování energie Docker MQTT a pokročilá konfigurace

Jakmile běží základní server IAMMETER-Docker, lze jej rozšířit na lokální server pro monitorování energie přes MQTT, použít MySQL pro větší objem dat, předávat data o solární energii do PVOutput a přijímat měření z kompatibilních zařízení třetích stran.

Tato příručka se zabývá pokročilými datovými cestami a možnostmi ukládání. Instalaci, trvalé svazky, první přihlášení, nastavení měřiče, zálohování a aktualizace kontejneru najdete v článku Vlastní monitorování energie pomocí Dockeru.

IAMMETER meter / compatible device / custom application
                         │
             ┌───────────┼───────────┐
             │           │           │
            HTTP        MQTT       REST API
             │           │           │
             └───────────┼───────────┘
                         ▼
                  IAMMETER-Docker
                         │
       ┌─────────────────┼─────────────────┐
       ▼                 ▼                 ▼
 SQLite / MySQL     MQTT subscribers     PVOutput

Používejte pouze rozhraní, která projekt vyžaduje. Jednoduchá lokální instalace pro monitorování nepotřebuje MySQL, externí MQTT klienty ani předávání dat.

1. Než povolíte pokročilé funkce

Ověřte, že je základní instalace stabilní:

  • kontejner IAMMETER-Docker běží;
  • /app/data je namapován na trvalé úložiště;
  • hostitel Dockeru používá stabilní adresu v LAN;
  • časové pásmo serveru je správné;
  • funguje alespoň jeden měřič nebo testovací zdroj dat;
  • byla změněna výchozí hesla;
  • existuje aktuální záloha.

Výchozí nasazení zpřístupňuje:

  • port 5050 pro webovou aplikaci a API;
  • port 1883 pro MQTT.

Nevystavujte žádný z těchto portů přímo internetu. Pokud je nutný vzdálený přístup, použijte firewall, VPN nebo jinou řízenou vrstvu přístupu.

2. Zvolte SQLite nebo MySQL

IAMMETER-Docker používá SQLite pro jednoduché výchozí nasazení a podporuje MySQL pro instalace s větším objemem dat.

Databáze Vhodná pro Výhody Na co myslet
SQLite Domácí, testovací a menší lokální nasazení Není potřeba samostatná databázová služba; snadné prvotní nastavení Databáze zůstává vázána na svazek aplikace
MySQL Větší nebo dlouhodobě běžící instalace Samostatná databázová služba a lepší vhodnost pro rostoucí objemy dat Vyžaduje nasazení databáze, přihlašovací údaje, zálohování a údržbu

Nepřecházejte na MySQL jen proto, že je k dispozici. Použijte ji tehdy, když očekávaný objem dat, doba uchování nebo požadavky na správu databáze opodstatňují další službu.

2.1 Nejprve připravte MySQL

Než v IAMMETER-Docker zvolíte MySQL:

  1. nasaďte dostupný server MySQL;
  2. vytvořte vyhrazenou databázi a uživatele;
  3. omezte tohoto uživatele pouze na požadovanou databázi;
  4. ověřte síťový přístup z kontejneru IAMMETER-Docker;
  5. nastavte pravidelné zálohování databáze;
  6. bezpečně si zaznamenejte hostitele, port, název databáze a přihlašovací údaje.

Poté zadejte nastavení připojení k MySQL v IAMMETER-Docker a ověřte, že se nová měření ukládají.

Konfigurace MySQL v IAMMETER-Docker

Před změnou režimu databáze zazálohujte stávající data IAMMETER-Docker. Po změně ověřte historická data i nová nahrávání.

3. Použití IAMMETER-Docker jako serveru pro monitorování energie přes MQTT

IAMMETER-Docker obsahuje podporu MQTT ve dvou různých směrech:

  1. Publikování do IAMMETER-Docker: měřič nebo kompatibilní aplikace odesílá měření na server Dockeru.
  2. Odběr z IAMMETER-Docker: Node-RED, vlastní služba nebo jiný MQTT klient přijímá měření v reálném čase ze serveru.

Tyto cesty používají stejný vzor tématu, ale různé režimy ověřování.

3.1 Téma MQTT

Dokumentované téma pro reálný čas je:

device/<SN>/realtime

Nahraďte <SN> sériovým číslem registrovaným v IAMMETER-Docker. SN v tématu MQTT a v konfiguraci klienta musí odpovídat měřiči vytvořenému v lokální platformě.

3.2 Publikování energetických dat do IAMMETER-Docker

Pro zařízení nebo aplikaci, která publikuje data:

Nastavení Hodnota
Broker IP adresa nebo název hostitele serveru IAMMETER-Docker
Port 1883 ve výchozím nastavení
Ověřování Client ID
Client ID SN měřiče registrované v IAMMETER-Docker
Téma device/<SN>/realtime
Payload Formát nahrávaných dat podporovaný IAMMETER

Publikování energetických dat do IAMMETER-Docker přes MQTT

Před použitím produkčních dat:

  1. zaregistrujte SN v IAMMETER-Docker;
  2. publikujte jeden testovací payload;
  3. ověřte pole napětí, proudu, výkonu a energie;
  4. ověřte počet fází nebo kanálů;
  5. ověřte jednotky a směr činného výkonu;
  6. teprve poté povolte nepřetržité publikování.

3.3 Odběr energetických dat v reálném čase

Pro odběratele MQTT:

Nastavení Hodnota
Broker Adresa serveru IAMMETER-Docker
Port 1883 ve výchozím nastavení
Ověřování Uživatelské jméno a heslo IAMMETER-Docker
Téma device/<SN>/realtime

Odběr dat v reálném čase z IAMMETER-Docker

Typickými odběrateli jsou:

  • automatizační toky Node-RED;
  • lokální služba pro zpracování dat;
  • MQTT klient pro ladění;
  • brána, která předává vybraná měření;
  • vlastní dashboard nebo služba pro upozorňování.

Pokud je Node-RED hlavní aplikací a historické ukládání v IAMMETER-Docker není nutné, může se měřič připojit k Node-RED přímo přes MQTT, Modbus TCP nebo jeho lokální API. Možnosti porovnejte v průvodci měřičem energie Node-RED.

4. Testování a řešení problémů s MQTT

Začněte s jedním měřičem a přesným tématem, nikoli s širokým odběrem pomocí zástupných znaků.

Pokud se žádná data nezobrazují, zkontrolujte:

  • zda je port 1883 namapován z kontejneru;
  • zda klient dosáhne hostitele Dockeru v LAN;
  • zda SN existuje v IAMMETER-Docker;
  • zda ID klienta MQTT a téma používají stejné SN;
  • zda je téma device/<SN>/realtime se správnou velikostí písmen;
  • zda nejsou zaměněny režimy ověřování pro publikování a odběr;
  • zda JSON payload odpovídá podporovanému pořadí polí a jednotkám;
  • zda jiný MQTT klient neodpojuje relaci tím, že znovu používá stejné ID klienta.

Pro spolehlivé toky dat:

  • použijte pro každého odběratele jedinečné ID klienta;
  • řešte opětovná připojení a duplicitní zprávy;
  • ověřte payload před jeho zápisem do databáze;
  • u každého uloženého měření zaznamenejte zdrojové SN;
  • použijte izolaci sítě místo veřejného vystavení nešifrovaného portu MQTT.

5. Předávání dat o solární energii do PVOutput

PVOutput je služba třetí strany pro sdílení a porovnávání dat o výrobě solární energie a spotřebě energie. IAMMETER-Docker může předávat data o provozu do PVOutput.

Tuto možnost použijte, když IAMMETER-Docker zůstává lokálním sběrným serverem, ale pro veřejné nebo externí vykazování solární energie je vyžadován PVOutput.

Před povolením předávání:

  1. vytvořte nebo vyberte správný systém PVOutput;
  2. získejte potřebné přihlašovací údaje PVOutput;
  3. ověřte, že jsou kanály Grid a Inverter v IAMMETER-Docker přiřazeny správně;
  4. zkontrolujte časové pásmo provozu;
  5. povolte předávání pouze pro zamýšlený provoz;
  6. po prvním celém dni porovnejte denní součet v obou systémech.

Předávání dat o solární energii z IAMMETER-Docker do PVOutput

Předávání do PVOutput vyžaduje přístup k internetu z hostitele Dockeru. Je nezávislé na lokálním monitorování: dočasný výpadek připojení k PVOutput by neměl zabránit měřiči v pokračujícím nahrávání na lokální server.

6. Příjem dat z kompatibilního zařízení Tasmota

IAMMETER-Docker obsahuje dokumentovaný postup MQTT pro zařízení s měřením běžící na Tasmota. Původní příklad používal Sonoff POW R2.

Jedná se o cestu kompatibility pro podporované energetické payloady, nikoli tvrzení, že každé zařízení nebo šablona Tasmota produkuje stejnou strukturu měření. Před nasazením otestujte skutečné zařízení a firmware.

Použijte následující strukturu MQTT pro Tasmota:

Nastavení Hodnota
Host IP adresa IAMMETER-Docker
Port Port MQTT IAMMETER-Docker, obvykle 1883
Klient SN registrované v IAMMETER-Docker
Uživatel Pro tento dokumentovaný postup publikování ponechte prázdné
Heslo Pro tento dokumentovaný postup publikování ponechte prázdné
Téma SN registrované v IAMMETER-Docker
Úplné téma device/%topic%/%prefix%/

Konfigurace kompatibilního měřiče Tasmota pro IAMMETER-Docker

Po konfiguraci ověřte v IAMMETER-Docker každou hlášenou hodnotu, včetně napětí, proudu, činného výkonu, energie a účiníku, pokud je zařízení podporuje.

Data o elektřině Tasmota v IAMMETER-Docker

7. Použití REST API IAMMETER-Docker

IAMMETER-Docker zpřístupňuje interaktivní dokumentaci API na lokálním serveru:

http://<docker-host-ip>:5050/docs

REST API lze použít k:

  • nahrávání podporovaných měření z vlastní brány;
  • dotazování dat pro soukromý dashboard;
  • připojení lokální aplikace k vlastnímu serveru;
  • testování payloadů před automatizací integrace.

Udržujte přístup k API v důvěryhodné síti. Pokud se musí externí systém připojovat vzdáleně, umístěte službu za odpovídající zabezpečenou přístupovou vrstvu, místo abyste port aplikace vystavovali bez ochrany.

Vývojáři, kteří místo IAMMETER-Docker budují kompletní přijímač nebo vlastní platformu, najdou informace v článku Vytvořte si vlastní systém monitorování energie.

8. Kombinace lokálního úložiště a cloudových služeb

Vlastní hosting nemusí znamenat, že je každá externí služba zakázána. IAMMETER-Docker může být lokálním systémem záznamu, zatímco vybraná data se předávají jinam.

Architektura Lokální data Závislost na internetu Vhodná pro
Pouze lokálně IAMMETER-Docker Není nutná po nasazení Soukromí, offline provozy a dashboardy v LAN
Lokálně + IAMMETER-Cloud IAMMETER-Docker a IAMMETER-Cloud Nutná pro předávání Lokální kopie plus reporty IAMMETER-Cloud a vzdálený přístup
Lokálně + PVOutput IAMMETER-Docker a PVOutput Nutná pro předávání Uživatele solární energie, kteří používají PVOutput
Lokálně + odběratel MQTT IAMMETER-Docker plus úložiště definované odběratelem Není nutná s lokálním odběratelem Node-RED, automatizace a vlastní zpracování

Povolte pouze cíle, které mají jasný účel. Více cílů znamená více přihlašovacích údajů, síťových závislostí a cest pro řešení problémů.

9. Kontrolní seznam pro pokročilé nasazení

  • Základní sběr dat IAMMETER-Docker je již stabilní.
  • Trvalá data a zálohy databáze jsou ověřeny.
  • MySQL se používá pouze tehdy, když je její provozní režie opodstatněná.
  • Port MQTT 1883 je dostupný pouze z důvěryhodných sítí.
  • Každý klient MQTT používá vhodné a jedinečné ID klienta.
  • SN měřiče, téma a registrované zařízení spolu souhlasí.
  • Jednotky payloadu, počet fází a směr výkonu byly otestovány.
  • Výpadky předávání do PVOutput nebo cloudu nepřerušují lokální sběr dat.
  • Kompatibilita s Tasmota byla potvrzena se skutečným zařízením a firmware.
  • Změny se testují na jednom měřiči, než se použijí na větší nasazení.

10. Historie verzí a poznámky ke starším verzím

Výše uvedené části popisují aktuálně dokumentované pracovní postupy IAMMETER-Docker. Původní stránka byla napsána kolem verzí V1.8 a V1.9; následující historie je zachována pro uživatele spravující starší instalace.

V2.4

V2.3

  • Opraven problém s nahráváním do PVOutput.

V2.2

  • Přidány protokoly pro výpadky předávání do IAMMETER-Cloud.

V2.1

V1.9

  • Přidána podpora MySQL.
  • Přidána možnost vlastního obrázku pro každé místo (Place).

IAMMETER-Docker V1.9

V1.8

  • Přidáno nahrávání přes MQTT do IAMMETER-Docker.
  • Přidán odběr dat v reálném čase přes MQTT.
  • Přidáno přímé předávání do PVOutput.
  • Přidán dokumentovaný postup měření Tasmota/Sonoff.

11. Související zdroje

Poslední aktualizace: 17. července 2026.

Nahoru