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

Docker MQTT enerģijas uzraudzība: papildu IAMMETER-Docker iestatīšana

Docker MQTT enerģijas uzraudzība un papildu konfigurācija

Kad pamata IAMMETER-Docker serveris darbojas, to var paplašināt par lokālu MQTT enerģijas uzraudzības serveri, izmantot MySQL lielākai datu kopai, nosūtīt saules enerģijas datus uz PVOutput un pieņemt saderīgus trešo pušu mērījumus.

Šajā rokasgrāmatā ir aprakstīti papildu datu ceļi un krātuves iespējas. Par instalēšanu, pastāvīgajiem sējumiem, pirmo pieteikšanos, skaitītāja iestatīšanu, dublēšanu un konteinera atjauninājumiem sāciet ar sadaļu Pašvietota enerģijas uzraudzība ar Docker.

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

Izmantojiet tikai tās saskarnes, kas projektam ir nepieciešamas. Vienkāršai lokālai uzraudzības instalācijai nav nepieciešams MySQL, ārējie MQTT klienti vai datu pārsūtīšana.

1. Pirms papildu funkciju iespējošanas

Pārliecinieties, ka pamata instalācija ir stabila:

  • IAMMETER-Docker konteiners darbojas;
  • /app/data ir saistīts ar pastāvīgo krātuvi;
  • Docker resursdatoram ir stabila LAN adrese;
  • vietnes laika josla ir pareiza;
  • darbojas vismaz viens skaitītājs vai testa datu avots;
  • noklusējuma paroles ir nomainītas;
  • eksistē jaunākā dublējuma kopija.

Noklusējuma izvietošana atver:

  • portu 5050 tīmekļa lietotnei un API;
  • portu 1883 MQTT.

Nepublicējiet nevienu no šiem portiem tieši internetā. Ja nepieciešama attālā piekļuve, izmantojiet ugunsmūri, VPN vai citu kontrolētu piekļuves slāni.

2. Izvēlieties SQLite vai MySQL

IAMMETER-Docker izmanto SQLite vienkāršai noklusējuma izvietošanai un atbalsta MySQL instalācijām ar lielāku datu kopu.

Datu bāze Piemērota Priekšrocības Apsvērumi
SQLite Mājas, testa un mazākām lokālajām izvietošanām Nav atsevišķa datu bāzes pakalpojuma; vienkārša sākotnējā iestatīšana Datu bāze paliek saistīta ar lietotnes sējumu
MySQL Lielākām vai ilgāk darbojošām instalācijām Atsevišķs datu bāzes pakalpojums un labāka piemērotība pieaugošām datu kopām Nepieciešama datu bāzes izvietošana, akreditācijas dati, dublēšana un apkope

Nepārejiet uz MySQL tikai tāpēc, ka tas ir pieejams. Izmantojiet to, ja paredzamais datu apjoms, saglabāšanas periods vai datu bāzes pārvaldības prasības attaisno papildu pakalpojumu.

2.1 Vispirms sagatavojiet MySQL

Pirms izvēlaties MySQL IAMMETER-Docker:

  1. izvietojiet sasniedzamu MySQL serveri;
  2. izveidojiet atsevišķu datu bāzi un lietotāju;
  3. ierobežojiet šo lietotāju tikai ar nepieciešamo datu bāzi;
  4. pārliecinieties par tīkla piekļuvi no IAMMETER-Docker konteinera;
  5. konfigurējiet regulāras datu bāzes dublēšanas;
  6. droši pierakstiet datu bāzes resursdatoru, portu, nosaukumu un akreditācijas datus.

Pēc tam ievadiet MySQL savienojuma iestatījumus IAMMETER-Docker un pārliecinieties, ka jaunie mērījumi tiek saglabāti.

MySQL konfigurēšana IAMMETER-Docker

Pirms datu bāzes režīma maiņas dublējiet esošos IAMMETER-Docker datus. Pēc izmaiņām pārbaudiet vēsturiskos datus un jaunos augšupielādētos datus.

3. IAMMETER-Docker kā MQTT enerģijas uzraudzības servera izmantošana

IAMMETER-Docker ietver MQTT atbalstu divos dažādos virzienos:

  1. Publicēšana uz IAMMETER-Docker: skaitītājs vai saderīga lietotne nosūta mērījumus Docker serverim.
  2. Abonēšana no IAMMETER-Docker: Node-RED, pielāgots pakalpojums vai cits MQTT klients saņem reāllaika mērījumus no servera.

Šie ceļi izmanto vienu un to pašu tēmas struktūru, bet dažādus autentifikācijas režīmus.

3.1 MQTT tēma

Dokumentētā reāllaika tēma ir:

device/<SN>/realtime

Aizstājiet <SN> ar sērijas numuru, kas reģistrēts IAMMETER-Docker. SN MQTT tēmā un klienta konfigurācijā ir jāatbilst skaitītājam, kas izveidots lokālajā platformā.

3.2 Enerģijas datu publicēšana uz IAMMETER-Docker

Publicējošai ierīcei vai lietotnei:

Iestatījums Vērtība
Brokeris IAMMETER-Docker servera IP adrese vai resursdatora nosaukums
Ports pēc noklusējuma 1883
Autentifikācija Klienta ID
Klienta ID IAMMETER-Docker reģistrētais skaitītāja SN
Tēma device/<SN>/realtime
Datu apjoms IAMMETER atbalstītais augšupielādes datu formāts

Enerģijas datu publicēšana uz IAMMETER-Docker, izmantojot MQTT

Pirms reālo datu izmantošanas:

  1. reģistrējiet SN IAMMETER-Docker;
  2. publicējiet vienu testa datu apjomu;
  3. pārbaudiet sprieguma, strāvas, jaudas un enerģijas laukus;
  4. pārliecinieties par fāžu vai kanālu skaitu;
  5. pārbaudiet mērvienības un aktīvās jaudas virzienu;
  6. tikai pēc tam iespējojiet nepārtrauktu publicēšanu.

3.3 Reāllaika enerģijas datu abonēšana

MQTT abonentam:

Iestatījums Vērtība
Brokeris IAMMETER-Docker servera adrese
Ports pēc noklusējuma 1883
Autentifikācija IAMMETER-Docker lietotājvārds un parole
Tēma device/<SN>/realtime

Reāllaika datu abonēšana no IAMMETER-Docker

Tipiski abonenti ir:

  • Node-RED automatizācijas plūsmas;
  • lokāls datu apstrādes pakalpojums;
  • MQTT atkļūdošanas klients;
  • vārteja, kas pārsūta atlasītos mērījumus;
  • pielāgots informācijas panelis vai brīdinājumu pakalpojums.

Ja Node-RED ir galvenā lietotne un vēsturiskā krātuve IAMMETER-Docker nav nepieciešama, skaitītājs var savienoties ar Node-RED tieši, izmantojot MQTT, Modbus TCP vai tā lokālo API. Salīdziniet iespējas Node-RED enerģijas skaitītāja rokasgrāmatā.

4. MQTT testēšana un problēmu novēršana

Sāciet ar vienu skaitītāju un precīzu tēmu, nevis plašu aizstājējzīmju abonementu.

Ja dati neparādās, pārbaudiet tālāk minēto:

  • ports 1883 ir saistīts no konteinera;
  • klients var sasniegt Docker resursdatoru LAN tīklā;
  • SN eksistē IAMMETER-Docker;
  • MQTT klienta ID un tēma izmanto vienu un to pašu SN;
  • tēma ir device/<SN>/realtime ar paredzamo reģistru (lielajiem/mazajiem burtiem);
  • publicēšanas un abonēšanas autentifikācijas režīmi nav sajaukti;
  • JSON datu apjoms atbilst atbalstītajai lauku secībai un mērvienībām;
  • cits MQTT klients nepārtrauc sesiju, atkārtoti izmantojot to pašu klienta ID.

Uzticamām plūsmām:

  • katram abonentam izmantojiet unikālu klienta ID;
  • apstrādājiet atkārtotus savienojumus un dublētus ziņojumus;
  • pirms ierakstīšanas datu bāzē pārbaudiet datu apjomu;
  • saglabājiet avota SN kopā ar katru saglabāto mērījumu;
  • izmantojiet tīkla izolāciju, nevis publiskojiet nešifrēto MQTT portu.

5. Saules enerģijas datu pārsūtīšana uz PVOutput

PVOutput ir trešās puses pakalpojums saules enerģijas ražošanas un enerģijas patēriņa datu kopīgošanai un salīdzināšanai. IAMMETER-Docker var pārsūtīt vietnes datus uz PVOutput.

Izmantojiet šo iespēju, ja IAMMETER-Docker paliek lokālais datu vākšanas serveris, bet PVOutput ir nepieciešams publiskai vai ārējai saules enerģijas atskaitēšanai.

Pirms pārsūtīšanas iespējošanas:

  1. izveidojiet vai izvēlieties pareizo PVOutput sistēmu;
  2. iegūstiet nepieciešamos PVOutput akreditācijas datus;
  3. pārliecinieties, ka tīkla (Grid) un invertora (Inverter) kanāli IAMMETER-Docker ir piešķirti pareizi;
  4. pārbaudiet vietnes laika joslu;
  5. iespējojiet pārsūtīšanu tikai paredzētajai vietnei;
  6. pēc pirmās pilnās dienas salīdziniet dienas kopsummu abās sistēmās.

IAMMETER-Docker saules enerģijas datu pārsūtīšana uz PVOutput

PVOutput pārsūtīšanai ir nepieciešama interneta piekļuve no Docker resursdatora. Tā ir atsevišķa no lokālās uzraudzības: īslaicīgs PVOutput savienojuma pārtraukums nedrīkst neļaut skaitītājam turpināt augšupielādi lokālajā serverī.

6. Datu saņemšana no saderīgas Tasmota ierīces

IAMMETER-Docker ietver dokumentētu MQTT darba plūsmu mērījumu spējīgai ierīcei, kurā darbojas Tasmota. Sākotnējais piemērs izmantoja Sonoff POW R2.

Šis ir saderības ceļš atbalstītajiem enerģijas datu apjomiem, nevis apgalvojums, ka katra Tasmota ierīce vai veidne rada vienādu mērījumu struktūru. Pirms izvietošanas pārbaudiet faktisko ierīci un programmaparatūru.

Izmantojiet šādu Tasmota MQTT struktūru:

Iestatījums Vērtība
Resursdators IAMMETER-Docker IP adrese
Ports IAMMETER-Docker MQTT ports, parasti 1883
Klients IAMMETER-Docker reģistrētais SN
Lietotājs Atstājiet tukšu šai dokumentētajai publicēšanas darba plūsmai
Parole Atstājiet tukšu šai dokumentētajai publicēšanas darba plūsmai
Tēma IAMMETER-Docker reģistrētais SN
Pilnā tēma device/%topic%/%prefix%/

Saderīga Tasmota skaitītāja konfigurēšana IAMMETER-Docker

Pēc konfigurēšanas pārbaudiet katru IAMMETER-Docker uzrādīto vērtību, tostarp spriegumu, strāvu, aktīvo jaudu, enerģiju un jaudas koeficientu, ja to atbalsta ierīce.

Tasmota elektrības dati IAMMETER-Docker

7. IAMMETER-Docker REST API izmantošana

IAMMETER-Docker nodrošina interaktīvu API dokumentāciju lokālajā serverī:

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

REST API var izmantot, lai:

  • augšupielādētu atbalstītos mērījumus no pielāgotas vārtejas;
  • vaicātu datus privātam informācijas panelim;
  • savienotu lokālu lietotni ar pašvietoto serveri;
  • pārbaudītu datu apjomus pirms integrācijas automatizēšanas.

Nodrošiniet API piekļuvi tikai uzticamā tīklā. Ja ārējai sistēmai ir jāpieslēdzas attālināti, novietojiet pakalpojumu aiz atbilstoša droša piekļuves slāņa, nevis atveriet lietotnes portu bez aizsardzības.

Izstrādātājiem, kuri veido pilnīgu uztvērēju vai pielāgotu platformu IAMMETER-Docker vietā, skatiet Izstrādājiet savu enerģijas uzraudzības sistēmu.

8. Lokālās krātuves un mākoņpakalpojumu apvienošana

Pašvietošana nenozīmē, ka katram ārējam pakalpojumam ir jābūt atspējotam. IAMMETER-Docker var būt lokālā reģistra sistēma, kamēr atlasītie dati tiek pārsūtīti citur.

Arhitektūra Lokālie dati Atkarība no interneta Piemērota
Tikai lokāli IAMMETER-Docker Nav nepieciešama pēc izvietošanas Privātums, bezsaistes vietnes un LAN informācijas paneļi
Lokāli + IAMMETER-Cloud IAMMETER-Docker un IAMMETER-Cloud Nepieciešama pārsūtīšanai Lokāla kopija plus IAMMETER-Cloud atskaites un attālā piekļuve
Lokāli + PVOutput IAMMETER-Docker un PVOutput Nepieciešama pārsūtīšanai Saules enerģijas lietotājiem, kuri izmanto PVOutput
Lokāli + MQTT abonents IAMMETER-Docker plus abonenta definētā krātuve Nav nepieciešama ar lokālo abonentu Node-RED, automatizācija un pielāgota apstrāde

Iespējojiet tikai tos galamērķus, kuriem ir skaidrs mērķis. Vairāk galamērķu nozīmē vairāk akreditācijas datu, tīkla atkarību un problēmu novēršanas ceļu.

9. Papildu izvietošanas pārbaudes saraksts

  • Pamata IAMMETER-Docker datu vākšana jau ir stabila.
  • Pastāvīgo datu un datu bāzes dublējumi ir pārbaudīti.
  • MySQL tiek izmantots tikai tad, kad tā darbības izmaksas ir attaisnotas.
  • MQTT ports 1883 ir sasniedzams tikai no uzticamiem tīkliem.
  • Katrs MQTT klients izmanto atbilstošu un unikālu klienta ID.
  • Skaitītāja SN, tēma un reģistrētā ierīce atbilst viena otrai.
  • Datu apjoma mērvienības, fāžu skaits un jaudas virziens ir pārbaudīti.
  • PVOutput vai mākoņa pārsūtīšanas kļūmes nepārtrauc lokālo datu vākšanu.
  • Tasmota saderība ir apstiprināta ar faktisko ierīci un programmaparatūru.
  • Izmaiņas tiek pārbaudītas uz viena skaitītāja, pirms tās tiek lietotas lielākā izvietošanā.

10. Versiju vēsture un mantotās piezīmes

Iepriekš minētās sadaļas apraksta pašlaik dokumentētās IAMMETER-Docker darba plūsmas. Sākotnējā lapa tika rakstīta ap V1.8 un V1.9; šī vēsture ir saglabāta lietotājiem, kuri uztur vecākas instalācijas.

V2.4

V2.3

  • Novērsta PVOutput augšupielādes problēma.

V2.2

  • Pievienoti žurnāli IAMMETER-Cloud pārsūtīšanas kļūmēm.

V2.1

V1.9

  • Pievienots MySQL atbalsts.
  • Pievienota pielāgota attēla iespēja katram objektam (Place).

IAMMETER-Docker V1.9

V1.8

  • Pievienota MQTT augšupielāde uz IAMMETER-Docker.
  • Pievienota reāllaika datu MQTT abonēšana.
  • Pievienota tieša PVOutput pārsūtīšana.
  • Pievienota dokumentētā Tasmota/Sonoff mērījumu darba plūsma.

11. Saistītie resursi

Pēdējo reizi atjaunināts: 2026. gada 17. jūlijs.

Uz augšu