WIP Integracja MQTT SUPLA

Hej. Integracja, zwłaszcza manualna, wydaje się teraz ok. Prawdopodobnie chodzi o to co pisałem wyżej - mosquitto nie wznawia połączenia po zerwaniu transmisji internetowej lub restartu zdalnego serwera MQTT. To może mosquitto ma jakiś błąd? Dwa lata temu któraś wersja miała taki bug (było coś na forach).

Koledzy wyżej mają lepsze łącza i pewnie nie obserwują takich symptomów. U mnie wyraźnie po kilku chwilowych zwisach łącza mosquitto w obecnej wersji tak właśnie się zachowuje.

Natomiast jak łącze jest stabilne to i bridge do Supli działa bez zarzutu.

Hejka,
Zamontowałem sobie licznik energii Zamel MEW-01 i zanim na stałe zmienię połączenie na bezpośrednie po mqtt chciał najpierw się pobawić poprzez Most z brokerem suplowym. Problem z tym, że mój broker mqtt stoi w dockerze na synology i nie wiem co wpisać w Lini
#bridge_cafile /data/data/pl.sviete.dom/files/usr/etc/tls/cert.pem

Czy mam wybrać któryś z dysku, czy powinienem zainstalować? Nie mogę tego rozkminić.

tez mialem w tym miejscu problemu i już to ogarnąłem :slight_smile:
tak mam dopisane do mosquitto.conf:


# MQTT bridge connection supla
connection bridge-*********
address mqtt33.supla.org:8883
topic supla/# in
topic homeassistant/# in
topic supla/+/devices/+/channels/+/execute_action out
topic supla/+/devices/+/channels/+/set/+ out
remote_username *************
remote_password *************
bridge_capath /etc/ssl/certs

No i wszystko pięknie śmiga :slight_smile:
Dzięki @bartik22
PS. Ma ktoś z forum już ten licznik energii? Jeżeli jest ktoś prosumentem to za nieduże pieniądze ma super statystyki. Teraz tylko rozkminić jak zrobić takie super wykresy jak na supli. Jeżeli już ktoś posiada MEW-01 to warto wspólnie powalczyć.

Troche siedziałem nad tym
najpierw sadziłem ze mam bilans między fazowy rzeczywisty i zrobiłem tak:

  pv_dzienny_licznik_produkcji_energii:
    source: sensor.dom_10_total_lifetime_energy_output
    cycle: daily
  pv_tygodniowy_licznik_produkcji_energii:
    source: sensor.dom_10_total_lifetime_energy_output
    cycle: weekly
  pv_miesieczny_licznik_produkcji_energii:
    source: sensor.dom_10_total_lifetime_energy_output
    cycle: monthly
  pv_roczny_licznik_produkcji_energii:
    source: sensor.dom_10_total_lifetime_energy_output
    cycle: yearly
    
  pv_dzienny_licznik_wyslanej_energii_balanced:
    source: sensor.electricity_meter_total_reverse_active_energy_balanced
    cycle: daily
  pv_tygodniowy_licznik_wyslanej_energii_balanced:
    source: sensor.electricity_meter_total_reverse_active_energy_balanced
    cycle: weekly
  pv_miesieczny_licznik_wyslanej_energii_balanced:
    source: sensor.electricity_meter_total_reverse_active_energy_balanced
    cycle: monthly
  pv_roczny_licznik_wyslanej_energii:
    source: sensor.electricity_meter_total_reverse_active_energy_balanced
    cycle: yearly
    
  pv_dzienny_licznik_pobranej_energii_balanced:
    source: sensor.electricity_meter_total_forward_active_energy_balanced
    cycle: daily
  pv_tygodniowy_licznik_pobranej_energii_balanced:
    source: sensor.electricity_meter_total_forward_active_energy_balanced
    cycle: weekly
  pv_miesieczny_licznik_pobranej_energii_balanced:
    source: sensor.electricity_meter_total_forward_active_energy_balanced
    cycle: monthly
  pv_roczny_licznik_pobranej_energii:
    source: sensor.electricity_meter_total_forward_active_energy_balanced
    cycle: yearly
      pv_auto_konsumpcja_dzienna:
        friendly_name: Auto konsumpcja dzienna
        unit_of_measurement: "kWh"
        value_template: "{{ states('sensor.pv_dzienny_licznik_produkcji_energii')|float| round(2)  - states('sensor.pv_dzienny_licznik_wyslanej_energii_balanced')|float| round(2) }}"
      pv_auto_konsumpcja_tygodniowa:
        friendly_name: Auto konsumpcja tygodniowa
        unit_of_measurement: "kWh"
        value_template: "{{ states('sensor.pv_tygodniowy_licznik_produkcji_energii')|float| round(2)  - states('sensor.pv_tygodniowy_licznik_wyslanej_energii_balanced')|float| round(2) }}"
      pv_auto_konsumpcja_miesieczna:
        friendly_name: Auto konsumpcja miesięczna
        unit_of_measurement: "kWh"
        value_template: "{{ states('sensor.pv_miesieczny_licznik_produkcji_energii')|float| round(2)  - states('sensor.pv_miesieczny_licznik_wyslanej_energii_balanced')|float| round(2) }}"
      pv_auto_konsumpcja_roczna:
        friendly_name: Auto konsumpcja roczna
        unit_of_measurement: "kWh"
        value_template: "{{ states('sensor.pv_roczny_licznik_produkcji_energii')|float| round(2)  - states('sensor.pv_roczny_licznik_wyslanej_energii_balanced')|float| round(2) }}"
      pv_zuzycie_pradu_dzienna:
        friendly_name: pobor pradu dzienna
        unit_of_measurement: "kWh"
        value_template: "{{ states('sensor.pv_dzienny_licznik_pobranej_energii_balanced')|float| round(2)  + states('sensor.pv_auto_konsumpcja_dzienna')|float| round(2) }}"
      pv_zuzycie_pradu_tygodniowa:
        friendly_name: pobor pradu tygodniowy
        unit_of_measurement: "kWh"
        value_template: "{{ states('sensor.pv_tygodniowy_licznik_pobranej_energii_balanced')|float| round(2)  + states('sensor.pv_auto_konsumpcja_tygodniowa')|float| round(2) }}"
      pv_zuzycie_pradu_miesieczna:
        friendly_name: pobor pradu miesieczna
        unit_of_measurement: "kWh"
        value_template: "{{ states('sensor.pv_miesieczny_licznik_pobranej_energii_balanced')|float| round(2)  + states('sensor.pv_auto_konsumpcja_miesieczna')|float| round(2) }}"
      pv_zuzycie_pradu_dzienna:
        friendly_name: pobor pradu dzienna
        unit_of_measurement: "kWh"
        value_template: "{{ states('sensor.pv_roczny_licznik_pobranej_energii_balanced')|float| round(2)  + states('sensor.pv_auto_konsumpcja_roczna')|float| round(2) }}"
      pv_magazyn_pradu_dzienna:
        friendly_name: magazyn pradu dzienny
        unit_of_measurement: "kWh"
        value_template: "{{ states('sensor.pv_dzienny_licznik_wyslanej_energii_balanced')|float| round(2)  * 0.8}}"
      pv_magazyn_pradu_tygodniowy:
        friendly_name: magazyn pradu tygodniowy
        unit_of_measurement: "kWh"
        value_template: "{{ states('sensor.pv_tygodniowy_licznik_wyslanej_energii_balanced')|float| round(2)  * 0.8}}"
      pv_magazyn_pradu_miesieczny:
        friendly_name: magazyn pradu miesieczny
        unit_of_measurement: "kWh"
        value_template: "{{ states('sensor.pv_miesieczny_licznik_wyslanej_energii_balanced')|float| round(2)  * 0.8}}"
      pv_magazyn_pradu_roczny:
        friendly_name: magazyn pradu roczny
        unit_of_measurement: "kWh"
        value_template: "{{ states('sensor.pv_roczny_licznik_wyslanej_energii_balanced')|float| round(2)  * 0.8}}"
      pv_magazyn_pradu_dzienny_balanced:
        friendly_name: magazyn pradu dzienny balanced
        unit_of_measurement: "kWh"
        value_template: "{{ states('sensor.pv_magazyn_pradu_dzienny_balanced')|float| round(2) - states('sensor.pv_dzienny_licznik_pobranej_energii_balanced')|float| round(2) }}"
      pv_magazyn_pradu_tygodniowy_balanced:
        friendly_name: magazyn pradu tygodniowy balanced
        unit_of_measurement: "kWh"
        value_template: "{{ states('sensor.pv_magazyn_pradu_dzienny_balanced')|float| round(2) - states('sensor.pv_tygodniowy_licznik_pobranej_energii_balanced')|float| round(2) }}"
      pv_magazyn_pradu_miesieczny_balanced:
        friendly_name: magazyn pradu miesieczny balanced
        unit_of_measurement: "kWh"
        value_template: "{{ states('sensor.pv_magazyn_pradu_miesieczny_balanced')|float| round(2) - states('sensor.pv_miesieczny_licznik_pobranej_energii_balanced')|float| round(2) }}"
      pv_magazyn_pradu_roczny_balanced:
        friendly_name: magazyn pradu roczny balanced
        unit_of_measurement: "kWh"
        value_template: "{{ states('sensor.pv_magazyn_pradu_roczny_balanced')|float| round(2) - states('sensor.pv_roczny_licznik_pobranej_energii_balanced')|float| round(2) }}"        

Potem poszedłem do licznika i zoabczyłem że pobrana i wysłana jest taka jak by nie było bilansowania
więc zrobiłem tak:


  pvv_dzienny_licznik_produkcji_energii:
    source: sensor.dom_10_total_lifetime_energy_output
    cycle: daily
  pvv_tygodniowy_licznik_produkcji_energii:
    source: sensor.dom_10_total_lifetime_energy_output
    cycle: weekly
  pvv_miesieczny_licznik_produkcji_energii:
    source: sensor.dom_10_total_lifetime_energy_output
    cycle: monthly
  pvv_roczny_licznik_produkcji_energii:
    source: sensor.dom_10_total_lifetime_energy_output
    cycle: yearly
    
  pvv_dzienny_licznik_wyslanej_energii:
    source: sensor.electricity_meter_total_reverse_active_energy
    cycle: daily
  pvv_tygodniowy_licznik_wyslanej_energii:
    source: sensor.electricity_meter_total_reverse_active_energy
    cycle: weekly
  pvv_miesieczny_licznik_wyslanej_energii:
    source: sensor.electricity_meter_total_reverse_active_energy
    cycle: monthly
  pvv_roczny_licznik_wyslanej_energii:
    source: sensor.electricity_meter_total_reverse_active_energy
    cycle: yearly
    
  pvv_dzienny_licznik_pobranej_energii:
    source: sensor.electricity_meter_total_forward_active_energy
    cycle: daily
  pvv_tygodniowy_licznik_pobranej_energii:
    source: sensor.electricity_meter_total_forward_active_energy
    cycle: weekly
  pvv_miesieczny_licznik_pobranej_energii:
    source: sensor.electricity_meter_total_forward_active_energy
    cycle: monthly
  pvv_roczny_licznik_pobranej_energii:
    source: sensor.electricity_meter_total_forward_active_energy
    cycle: yearly
      pvv_auto_konsumpcja_dzienna:
        friendly_name: Auto konsumpcja dzienna
        unit_of_measurement: "kWh"
        value_template: "{{ states('sensor.pvv_dzienny_licznik_produkcji_energii')|float| round(2)  - states('sensor.pvv_dzienny_licznik_wyslanej_energii')|float| round(2) }}"
      pvv_auto_konsumpcja_tygodniowa:
        friendly_name: Auto konsumpcja tygodniowa
        unit_of_measurement: "kWh"
        value_template: "{{ states('sensor.pvv_tygodniowy_licznik_produkcji_energii')|float| round(2)  - states('sensor.pvv_tygodniowy_licznik_wyslanej_energii')|float| round(2) }}"
      pvv_auto_konsumpcja_miesieczna:
        friendly_name: Auto konsumpcja miesięczna
        unit_of_measurement: "kWh"
        value_template: "{{ states('sensor.pvv_miesieczny_licznik_produkcji_energii')|float| round(2)  - states('sensor.pvv_miesieczny_licznik_wyslanej_energii')|float| round(2) }}"
      pvv_auto_konsumpcja_roczna:
        friendly_name: Auto konsumpcja roczna
        unit_of_measurement: "kWh"
        value_template: "{{ states('sensor.pvv_roczny_licznik_produkcji_energii')|float| round(2)  - states('sensor.pvv_roczny_licznik_wyslanej_energii')|float| round(2) }}"
      pvv_zuzycie_pradu_dzienna:
        friendly_name: zuzycie pradu dzienna
        unit_of_measurement: "kWh"
        value_template: "{{ states('sensor.pvv_dzienny_licznik_pobranej_energii')|float| round(2)  + states('sensor.pvv_auto_konsumpcja_dzienna')|float| round(2) }}"
      pvv_zuzycie_pradu_tygodniowa:
        friendly_name: zuzycie pradu tygodniowy
        unit_of_measurement: "kWh"
        value_template: "{{ states('sensor.pvv_tygodniowy_licznik_pobranej_energii')|float| round(2)  + states('sensor.pvv_auto_konsumpcja_tygodniowa')|float| round(2) }}"
      pvv_zuzycie_pradu_miesieczna:
        friendly_name: zuzycie pradu miesieczna
        unit_of_measurement: "kWh"
        value_template: "{{ states('sensor.pvv_miesieczny_licznik_pobranej_energii')|float| round(2)  + states('sensor.pvv_auto_konsumpcja_miesieczna')|float| round(2) }}"
      pvv_zuzycie_pradu_roczne:
        friendly_name: zuzycie pradu roczne
        unit_of_measurement: "kWh"
        value_template: "{{ states('sensor.pvv_roczny_licznik_pobranej_energii')|float| round(2)  + states('sensor.pvv_auto_konsumpcja_roczna')|float| round(2) }}"
      pvv_magazyn_pradu_dzienna:
        friendly_name: magazyn pradu dzienny
        unit_of_measurement: "kWh"
        value_template: "{{ states('sensor.pvv_dzienny_licznik_wyslanej_energii')|float| round(2)  * 0.8}}"
      pvv_magazyn_pradu_tygodniowy:
        friendly_name: magazyn pradu tygodniowy
        unit_of_measurement: "kWh"
        value_template: "{{ states('sensor.pvv_tygodniowy_licznik_wyslanej_energii')|float| round(2)  * 0.8}}"
      pvv_magazyn_pradu_miesieczny:
        friendly_name: magazyn pradu miesieczny
        unit_of_measurement: "kWh"
        value_template: "{{ states('sensor.pvv_miesieczny_licznik_wyslanej_energii')|float| round(2)  * 0.8}}"
      pvv_magazyn_pradu_roczny:
        friendly_name: magazyn pradu roczny
        unit_of_measurement: "kWh"
        value_template: "{{ states('sensor.pvv_roczny_licznik_wyslanej_energii')|float| round(2)  * 0.8}}"
      pvv_magazyn_pradu_dzienny_balanced:
        friendly_name: magazyn pradu dzienny balanced
        unit_of_measurement: "kWh"
        value_template: "{{ states('sensor.pvv_magazyn_pradu_dzienna')|float| round(2) - states('sensor.pvv_dzienny_licznik_pobranej_energii')|float| round(2) }}"
      pvv_magazyn_pradu_tygodniowy_balanced:
        friendly_name: magazyn pradu tygodniowy balanced
        unit_of_measurement: "kWh"
        value_template: "{{ states('sensor.pvv_magazyn_pradu_tygodniowy')|float| round(2) - states('sensor.pvv_tygodniowy_licznik_pobranej_energii')|float| round(2) }}"
      pvv_magazyn_pradu_miesieczny_balanced:
        friendly_name: magazyn pradu miesieczny balanced
        unit_of_measurement: "kWh"
        value_template: "{{ states('sensor.pvv_magazyn_pradu_miesieczny')|float| round(2) - states('sensor.pvv_miesieczny_licznik_pobranej_energii')|float| round(2) }}"
      pvv_magazyn_pradu_roczny_balanced:
        friendly_name: magazyn pradu roczny balanced
        unit_of_measurement: "kWh"
        value_template: "{{ states('sensor.pvv_magazyn_pradu_roczny')|float| round(2) - states('sensor.pvv_roczny_licznik_pobranej_energii')|float| round(2) }}"        


Potem przeczytałem, że niby ustawa mówi, że rozliczanie między fazowe jest i to w bilansie godzinnym, czyli zliczamy przez godzine sumy pobrane faz i odejmujemy z sumami wysłanych faz, trzeba by było utility meterem zliczać godzinne pobrania, wysłania i sumować, potem zliczać już chyba czymś innym(NR) bo utility meter nie zliczy godzinnych sum… chyba

Bujam sie z tym bo nie wiem jak oni liczą, niby licznik pokazuje jedno, a oni na poziomie systemów informayucznych mogą bilanować międzyfazowo… Zadzwonie chyba to tej Energa, ale kompetencją tam nie grzeszą, Po rachunku moze dojdę, jeszcze pierwszego nie miałem od instalacji PV :slight_smile:

3 polubienia