MEW-01 przez API
-
mariusz2200#
- Posts: 5
- Joined: Fri Oct 02, 2020 6:16 am
Dzień dobry!
Panowie, jak wygląda sytuacja z API i MEW-01?
Testowałem zapytanie na stronie 'Supla cloud API'.
GET/Channels/id_urządzenia i otrzymałem taką odpowiedź:
[
{
"id": 15425,
"channelNumber": 0,
"caption": "Licznik_3F",
"type": {
"id": 5000,
"name": "ELECTRICITYMETER",
"caption": "Electricity meter",
"output": false
},
"function": {
"id": 310,
"name": "ELECTRICITYMETER",
"caption": "Electricity meter",
"possibleActions": [],
"possibleVisualStates": [
"default"
],
"maxAlternativeIconIndex": 0
},
"param1": 0,
"param2": 6500,
"param3": 0,
"textParam1": "PLN",
"textParam2": null,
"textParam3": null,
"altIcon": 0,
"hidden": false,
"flags": 0,
"inheritedLocation": false,
"iodeviceId": 5845,
"locationId": 1588,
"functionId": 310,
"userIconId": null,
"typeId": 5000,
"connected": true
}
]
Czy w dalszym ciągu API dla MEW-01 nie działa prawidłowo? A może ja coś źle robię?
Panowie, jak wygląda sytuacja z API i MEW-01?
Testowałem zapytanie na stronie 'Supla cloud API'.
GET/Channels/id_urządzenia i otrzymałem taką odpowiedź:
[
{
"id": 15425,
"channelNumber": 0,
"caption": "Licznik_3F",
"type": {
"id": 5000,
"name": "ELECTRICITYMETER",
"caption": "Electricity meter",
"output": false
},
"function": {
"id": 310,
"name": "ELECTRICITYMETER",
"caption": "Electricity meter",
"possibleActions": [],
"possibleVisualStates": [
"default"
],
"maxAlternativeIconIndex": 0
},
"param1": 0,
"param2": 6500,
"param3": 0,
"textParam1": "PLN",
"textParam2": null,
"textParam3": null,
"altIcon": 0,
"hidden": false,
"flags": 0,
"inheritedLocation": false,
"iodeviceId": 5845,
"locationId": 1588,
"functionId": 310,
"userIconId": null,
"typeId": 5000,
"connected": true
}
]
Czy w dalszym ciągu API dla MEW-01 nie działa prawidłowo? A może ja coś źle robię?
-
maroko
- Posts: 141
- Joined: Sun Sep 30, 2018 7:14 pm
Jak zmodyfikować yamla, żeby wyciągnąć dane z RB-03? Zmienne z MEW-01 niestety nie pasują.
-
dml
- Posts: 4
- Joined: Sun Feb 09, 2020 9:42 pm
Dzięki za gotowca. Śmiga jak zły!Pan O wrote: Fri Dec 20, 2019 10:35 pm Cześc,
moze komus sie przyda - dzis na brudno zrobiłem integracje MEW-01 z HA.
W skrócie:
- mew podpiety pod clouda
- Moja Supla -> Zamel Mew-01 -> jeszcze raz w licznik -> utwórz nowy link bezpośredni (uprawnienia read)
- kopiujemy link do wykorzystania na potem bo trzeba go bedzie użyć jak poniżej
W HA w plikach konfiguracyjnych (używam sensorów, binary_sensor dla statusu)
Plus jest taki ze tylko raz zadamy wszystkich danych do sensor.licznik_rest a potem HA ładnie nam tworzy sensory czastkowe z danych tego sensora. Zmniejszamy liczbe żądań.Code: Select all
# pierwszy i głowny sensor ktory łaczy sie z API Restowym clouda i pobiera wszytkie dane # sam wyswietla tylko wartość kwoty za prąd # reszta parametrów bedzie pobrana do atrybutów. # Podejrzeć to mozna w HA w Narzędzia deweloperskie->STANY-> sensor.licznik_rest sensor: - platform: rest name: Licznik REST # jeżeli zmieni się tu nazwę to nalezy zmienić wszystkie odwołania poniżej z "licznik_rest" na ta nazwę... resource: https://svrx.supla.org/direct/ttt/xxxyyyzzzwww/read # tu wklejamy tajny link do naszego JSON'a z clouda value_template: '{{ value_json.totalCost }}' json_attributes: - phases - connected - currency - pricePerUnit - support unit_of_measurement: 'PLN' # sensory wewnętrzne w HA z aktualnymi parametrami MEW-01 # pobierane zuzycie chwilowe, zuzycie calkowite, natezenie, napiecie i czestotliwosc. # Mocy biernej i pozornej oraz katow nie zbieram ale mozna je dopisac # sensory sa na kazda faze oddzielnie (*faza1*, *faza2*, faza3*) i dodatkowo zbiorczy (*faza123*) # zeby pokazac sumy mocy czynnej i zuzytej energii - platform: template sensors: licznik_faza1_totalforwardactiveenergy: value_template: '{{ states.sensor.licznik_rest.attributes.phases[0].totalForwardActiveEnergy }}' device_class: power unit_of_measurement: 'kWh' licznik_faza2_totalforwardactiveenergy: value_template: '{{ states.sensor.licznik_rest.attributes.phases[1].totalForwardActiveEnergy }}' device_class: power unit_of_measurement: 'kWh' licznik_faza3_totalforwardactiveenergy: value_template: '{{ states.sensor.licznik_rest.attributes.phases[2].totalForwardActiveEnergy }}' device_class: power unit_of_measurement: 'kWh' licznik_faza123_totalforwardactiveenergy: value_template: >- {{ (states.sensor.licznik_faza1_totalforwardactiveenergy.state | float) + (states.sensor.licznik_faza2_totalforwardactiveenergy.state | float) + (states.sensor.licznik_faza3_totalforwardactiveenergy.state | float) }} unit_of_measurement: 'kWh' device_class: power icon_template: mdi:gauge licznik_faza1_poweractive: value_template: '{{ states.sensor.licznik_rest.attributes.phases[0].powerActive }}' device_class: power unit_of_measurement: 'W' licznik_faza2_poweractive: value_template: '{{ states.sensor.licznik_rest.attributes.phases[1].powerActive }}' device_class: power unit_of_measurement: 'W' licznik_faza3_poweractive: value_template: '{{ states.sensor.licznik_rest.attributes.phases[2].powerActive }}' device_class: power unit_of_measurement: 'W' licznik_faza123_poweractive: value_template: >- {{ (states.sensor.licznik_faza1_poweractive.state | float) + (states.sensor.licznik_faza2_poweractive.state | float) + (states.sensor.licznik_faza3_poweractive.state | float) }} unit_of_measurement: 'W' device_class: power icon_template: mdi:gauge licznik_faza123_poweractive_kw: value_template: >- {{ (((states.sensor.licznik_faza1_poweractive.state | float) + (states.sensor.licznik_faza2_poweractive.state | float) + (states.sensor.licznik_faza3_poweractive.state | float) )/1000 ) | round(2)}} unit_of_measurement: 'kW' device_class: power icon_template: mdi:gauge licznik_faza1_frequency: value_template: '{{ states.sensor.licznik_rest.attributes.phases[0].frequency }}' device_class: power unit_of_measurement: 'Hz' licznik_faza2_frequency: value_template: '{{ states.sensor.licznik_rest.attributes.phases[1].frequency }}' device_class: power unit_of_measurement: 'Hz' licznik_faza3_frequency: value_template: '{{ states.sensor.licznik_rest.attributes.phases[2].frequency }}' device_class: power unit_of_measurement: 'Hz' licznik_faza1_current: value_template: '{{ states.sensor.licznik_rest.attributes.phases[0].current }}' device_class: power unit_of_measurement: 'A' licznik_faza2_current: value_template: '{{ states.sensor.licznik_rest.attributes.phases[1].current }}' device_class: power unit_of_measurement: 'A' licznik_faza3_current: value_template: '{{ states.sensor.licznik_rest.attributes.phases[2].current }}' device_class: power unit_of_measurement: 'A' licznik_faza1_voltage: value_template: '{{ states.sensor.licznik_rest.attributes.phases[0].voltage }}' device_class: power unit_of_measurement: 'V' licznik_faza2_voltage: value_template: '{{ states.sensor.licznik_rest.attributes.phases[1].voltage }}' device_class: power unit_of_measurement: 'V' licznik_faza3_voltage: value_template: '{{ states.sensor.licznik_rest.attributes.phases[2].voltage }}' device_class: power unit_of_measurement: 'V' # HA binary sensor - sluzy do pokazywania aktualnego stanu łacznosci licznika. binary_sensor: - platform: template sensors: licznik_status: friendly_name: "Licznik status" value_template: '{{ states.sensor.licznik_rest.attributes.connected }}'
...a z danymi to już wiadomo. Hulaj dusza - autom,atyzacje, wykresy, statusy itp itd
NP na szybko wyciagam je tak do Grafany w HA
np:
![]()
To jeszcze wersja wstępna. Nie włączyłem utility_meter itd...ale śmiga idealnie.
Pzdr
Przy okazji: wskazania jak na pół dnia i zużyciu ok 10kWh idealnie z licznikiem dostawcy energii.
Chyba będę musiał pobawić się tez innymi Suplami+ postawić własny serwer suplowy w sieci lokalnej żeby się uniezależnić od braków neta.
/dml
-
hoauser
- Posts: 19
- Joined: Tue Dec 15, 2020 7:23 pm
Pan O wrote: Wed Mar 11, 2020 9:34 pm Historie zuzycia dzienna, miesieczna i roczna realizuje na lokalnym MQTT w Home Assistant.
W skrócie:
W sensorach dodaje sensory pobierane z MQTT:
zeby tam dane sie znalazly to w automatyzacjach dodaje wysylanie stanu licznika na koniec dnia, poczatek miesiaca, koniec roku do MQTT. To jest zrodlo do sensorów z pierwszych liniiCode: Select all
#=================================== #=================================== #=== MQTT sensors #=================================== - platform: mqtt name: "licznik1_licznik_koniec_dnia_stan" state_topic: "energia/licznik1/dzien/stan" unit_of_measurement: "kWh" json_attributes_topic: "energia/licznik1/dzien/timestamp_raportu" - platform: mqtt name: "licznik1_licznik_koniec_dnia_data_raportu" state_topic: "energia/licznik1/dzien/timestamp_raportu" - platform: mqtt name: "licznik1_licznik_zuzycie_wczoraj_mqtt" state_topic: "energia/licznik1/dzien/wczoraj/stan" unit_of_measurement: "kWh" - platform: mqtt name: "licznik1_licznik_koniec_mca_stan" state_topic: "energia/licznik1/mc/stan" unit_of_measurement: "kWh" json_attributes_topic: "energia/licznik1/mc/timestamp_raportu" - platform: mqtt name: "licznik1_licznik_koniec_mca_data_raportu" state_topic: "energia/licznik1/mc/timestamp_raportu" - platform: mqtt name: "licznik1_licznik_zuzycie_poprzedni_miesiac_mqtt" state_topic: "energia/licznik1/mc/poprzedni/stan" unit_of_measurement: "kWh" - platform: mqtt name: "licznik1_licznik_koniec_roku_stan" state_topic: "energia/licznik1/rok/stan" unit_of_measurement: "kWh" json_attributes_topic: "energia/licznik1/rok/timestamp_raportu" - platform: mqtt name: "licznik1_licznik_koniec_roku_data_raportu" state_topic: "energia/licznik1/rok/timestamp_raportu"
Wszytko na 23:58 lub 23:59 lub 1 w nocy
zawartosc automation:i zeby na koniec miec dobre sensory zuzycia dziennego, z poprzedniego dnia, miesiecznego z poprzedniego miesiaca i z biezacego roku robie to w sensor template:Code: Select all
- id: "Broadcast Licznik licznik1 stan na koniec dnia MQTT" alias: 'Broadcast Licznik licznik1 stan na koniec dnia MQTT' trigger: - platform: time at: "23:59:00" action: - service: mqtt.publish data_template: payload_template: '{{ states.sensor.licznik_licznik1_faza123_totalforwardactiveenergy.state | round(2) | float }}' topic: 'energia/licznik1/dzien/stan' retain: true - service: mqtt.publish data_template: payload_template: '{{ now() }}' # payload_template: "{\"Status\":\"off\", \"Data\":{{ now() }}}" topic: 'energia/licznik1/dzien/timestamp_raportu' retain: true - id: "Broadcast Licznik licznik1 zuzycie na koniec dnia MQTT" alias: 'Broadcast Licznik licznik1 zuzycie na koniec dnia MQTT' trigger: - platform: time at: "23:58:00" action: - service: mqtt.publish data_template: payload_template: '{{ states.sensor.licznik1_licznik_mqtt_zuzycie_dzis.state | round(2) | float }}' topic: 'energia/licznik1/dzien/wczoraj/stan' retain: true - service: mqtt.publish data_template: payload_template: '{{ now() }}' # payload_template: "{\"Status\":\"off\", \"Data\":{{ now() }}}" topic: 'energia/licznik1/dzien/wczoraj/timestamp_raportu' retain: true - id: "Broadcast Licznik licznik1 stan na koniec mca MQTT" alias: 'Broadcast Licznik licznik1 stan na koniec mca MQTT' trigger: - platform: time at: "00:01:00" condition: condition: template # Change the number here to get whatever day of the month you want. value_template: "{{ now().day == 1 }}" action: - service: mqtt.publish data_template: payload_template: '{{ states.sensor.licznik_licznik1_faza123_totalforwardactiveenergy.state | round(2) | float }}' topic: 'energia/licznik1/mc/stan' retain: true - service: mqtt.publish data_template: payload_template: '{{ now() }}' topic: 'energia/licznik1/mc/timestamp_raportu' retain: true - id: "Broadcast Licznik licznik1 zuzycie na koniec mca MQTT" alias: 'Broadcast Licznik licznik1 zuzycie na koniec mca MQTT' trigger: - platform: time at: "00:00:09" condition: condition: template # Change the number here to get whatever day of the month you want. value_template: "{{ now().day == 1 }}" action: - service: mqtt.publish data_template: payload_template: '{{ sensor.licznik1_licznik_zuzycie_poprzedni_miesiac_mqtt.state | round(2) | float }}' topic: 'energia/licznik1/mc/poprzedni/stan' retain: true - service: mqtt.publish data_template: payload_template: '{{ now() }}' topic: 'energia/licznik1/mc/poprzedni/timestamp_raportu' retain: true - id: "Broadcast Licznik licznik1 stan na koniec roku MQTT" alias: 'Broadcast Licznik licznik1 stan na koniec roku MQTT' trigger: - platform: time at: "00:01:00" condition: condition: template # Change the number here to get whatever day of the year you want. value_template: "{{ now().timetuple().tm_yday == 1 }}" action: - service: mqtt.publish data_template: payload_template: '{{ states.sensor.licznik_licznik1_faza123_totalforwardactiveenergy.state | round(2) | float }}' topic: 'energia/licznik1/rok/stan' retain: true - service: mqtt.publish data_template: payload_template: '{{ now() }}' topic: 'energia/licznik1/rok/timestamp_raportu' retain: trueOczywiscie przez jakiegokolwiek MQTT clienta mozna sobie recznie ustawic stany starowe miesiaca i roku jak chcemy miec dane np za 2020 a dopiero w marcu zrobilismyCode: Select all
licznik1_licznik_mqtt_zuzycie_dzis: unit_of_measurement: 'kW' friendly_name: "Zużycie dziś licznik1 MQTT" device_class: power entity_id: - sensor.licznik1_licznik_koniec_dnia_stan - sensor.licznik_licznik1_faza123_totalforwardactiveenergy value_template: >- {% set koniec_dnia = states.sensor.licznik1_licznik_koniec_dnia_stan.state|float %} {% set aktualny = states.sensor.licznik_licznik1_faza123_totalforwardactiveenergy.state| float %} {{ (aktualny - koniec_dnia )|round(2) }} licznik1_licznik_mqtt_zuzycie_dzis_pln: unit_of_measurement: 'PLN' friendly_name: "Zużycie dziś licznik1 MQTT PLN" value_template: >- {{ ((states.sensor.licznik_licznik1_rest.attributes.pricePerUnit | float ) * ( states.sensor.licznik1_licznik_mqtt_zuzycie_dzis.state |float )) | round(2) }} licznik1_licznik_mqtt_zuzycie_mc: unit_of_measurement: 'kW' friendly_name: "Zużycie mc licznik1 MQTT" device_class: power entity_id: - sensor.licznik1_licznik_koniec_mca_stan - sensor.licznik_licznik1_faza123_totalforwardactiveenergy value_template: >- {% set koniec_mca = states.sensor.licznik1_licznik_koniec_mca_stan.state|float %} {% set aktualny = states.sensor.licznik_licznik1_faza123_totalforwardactiveenergy.state| float %} {{ (aktualny - koniec_mca )|round(0) }} licznik1_licznik_mqtt_zuzycie_mc_pln: unit_of_measurement: 'PLN' friendly_name: "Zużycie mc licznik1 MQTT PLN" value_template: >- {{ ((states.sensor.licznik_licznik1_rest.attributes.pricePerUnit | float ) * ( states.sensor.licznik1_licznik_mqtt_zuzycie_mc.state |float )) | round(2) }} licznik1_licznik_mqtt_zuzycie_rok: unit_of_measurement: 'kW' friendly_name: "Zużycie rok licznik1 MQTT" device_class: power entity_id: - sensor.licznik1_licznik_koniec_roku_stan - sensor.licznik_licznik1_faza123_totalforwardactiveenergy value_template: >- {% set koniec_roku = states.sensor.licznik1_licznik_koniec_roku_stan.state|float %} {% set aktualny = states.sensor.licznik_licznik1_faza123_totalforwardactiveenergy.state| float %} {{ (aktualny - koniec_roku )|round(0) }} licznik1_licznik_mqtt_zuzycie_rok_pln: unit_of_measurement: 'PLN' friendly_name: "Zużycie rok licznik1 MQTT PLN" value_template: >- {{ ((states.sensor.licznik_licznik1_rest.attributes.pricePerUnit | float ) * ( states.sensor.licznik1_licznik_mqtt_zuzycie_rok.state |float )) | round(2) }}
Hej,
Integruje licznik MEW-01 z Home Assistant v4.16 na Raspberry Pi4B 4GB pierwsza cześć kodu z postu viewtopic.php?p=56454#p56454 wklejona do configuration.yaml pięknie śmiga a z Grafany mogę wykręcać dowolne prezentacje.
Próbuję zaadoptować w HOA historie zużyć dzień/miesiąc/rok na lokalnym MQTT Client w Home Assistant.
Proszę o krótką instrukcję co jest potrzeb w konfiguracji aby dodatkowe części kodo z z linku viewtopic.php?p=64935#p64935 ruszyła.
Mam zainstalowany MQTT Mosquitto Broker na HOA Pi, który steruje już roletami Pi-Somy RTS za pomocą wiadomosci mqtt.
Dopiero zaczynam w temacie integracji HOA i proszę o wyrozumiałość...
"Pan O" –świetna robota i dziękują za udostepnienie kodu
Wiem post powinien znaleźć się w martwym wątku https://github.com/home-assistant/core/ ... ents/supla
-
Pan O
- Posts: 44
- Joined: Mon Dec 16, 2019 9:07 pm
a na czym sie zblokowałes?hoauser wrote: Tue Dec 15, 2020 8:09 pm
Proszę o krótką instrukcję co jest potrzeb w konfiguracji aby dodatkowe części kodo z z linku viewtopic.php?p=64935#p64935 ruszyła.
zeby uruchomic takie liczenie potrzeba 3 elementów.
1. automatyzacja ktora wrzuca do MQTT stan liczników o odpowiednich porach dnia/m-ca roku (kod w automatyzacje)
2. sensory ktore to zczytaja z MQTT te stany
3. sensor template ktory wykona działania matematyczne typu biezacy licznik minus sensor historyczny
jezeli zgodnie z tym kodem wrzucic sobie do plików HA te kawałki to ci zadziała (zadziała oczywiscie od momentu jak znajda tam sie pierwsze dane o polnocy). Przyspieszyc to mozna wchodzac w Ha w interfejsie w automatyzacje i manualnie uruchomic te automatyzacja zeby zainicjowaly pierwszy zapis do MQTT
w skrocie:
- do automations.yaml -> kod automatyzacji (1)
- do components/sensors.yaml -> kod sensorów zczytujących stany (2) i sensorów liczących zużycie (3)
plus warto zainstalować sobie jakiegokolwiek programik ktory pozoli podejrzec co sie dzieje w Twoim MQTT (i ktory daje opcje manualnego zapisu) - np taka wtyczka pod chrome' a https://chrome.google.com/webstore/deta ... objm?hl=en
-
hoauser
- Posts: 19
- Joined: Tue Dec 15, 2020 7:23 pm
pomału całość rusza - mam wszystkie parametry powyciągane tylko coś nie tak z licznikami dzień/miesiąc/rok.
chyba z automatyzacjami mam coś nie tak
Tylko „Broadcast Licznik licznik1 zużycie na koniec dnia MQTT” działa, reszta nie publikuje na mqtt
Używam wtyczki z Chroma, która podałeś i dwukierunkowa komunikacja MQTT dział.
Testowe publikacje pojawiają się w HOA na wszystkich tematach a przy ręcznym wykonaniu automatyzacji tylko jedna dział
Czy w automatyzacjach trzeba coś jeszcze dopisać ?
„# Change the number here to get whatever day of the month you want.”
czy źle konfig poskładałem?
do kodu dodałem moc bierna i pozorna, katy i współczynnik mocy - całość fajnie się prezentuje
chyba z automatyzacjami mam coś nie tak
Tylko „Broadcast Licznik licznik1 zużycie na koniec dnia MQTT” działa, reszta nie publikuje na mqtt
Używam wtyczki z Chroma, która podałeś i dwukierunkowa komunikacja MQTT dział.
Testowe publikacje pojawiają się w HOA na wszystkich tematach a przy ręcznym wykonaniu automatyzacji tylko jedna dział
Czy w automatyzacjach trzeba coś jeszcze dopisać ?
„# Change the number here to get whatever day of the month you want.”
czy źle konfig poskładałem?
do kodu dodałem moc bierna i pozorna, katy i współczynnik mocy - całość fajnie się prezentuje
Code: Select all
****************************************************************************
configuration.yaml
# MEW-01
# pierwszy i głowny sensor ktory łaczy sie z API Restowym clouda i pobiera wszytkie dane
# sam wyswietla tylko wartość kwoty za prąd
# reszta parametrów bedzie pobrana do atrybutów.
# Podejrzeć to mozna w HA w Narzędzia deweloperskie->STANY-> sensor.licznik_rest
sensor:
- platform: rest
name: Licznik REST # jeżeli zmieni się tu nazwę to nalezy zmienić wszystkie odwołania poniżej z "licznik_rest" na ta nazwę...
resource: https://svr28.supla.org/direct/xxxx/xxxxxxxxxxxxxxxxx/read # tu wklejamy tajny link do naszego JSON'a z clouda
value_template: '{{ value_json.totalCost }}'
json_attributes:
- phases
- connected
- currency
- pricePerUnit
- support
unit_of_measurement: 'PLN'
# sensory wewnętrzne w HA z aktualnymi parametrami MEW-01
# pobierane moc czynna zuzycie i oddane chwilowe, moc czynna zuzycie i oddane calkowite, natezenie
# napiecie, czestotliwosc, moc bierna i pozorna, katy i wspolczynnik mocy
# sensory sa na kazda faze oddzielnie (*faza1*, *faza2*, faza3*) i dodatkowo zbiorczy (*faza123*)
# zeby pokazac sumy mocy czynnej i zuzytej energii
- platform: template
sensors:
# Moc Czynna Pobrana
licznik_faza1_totalforwardactiveenergy:
value_template: '{{ states.sensor.licznik_rest.attributes.phases[0].totalForwardActiveEnergy }}'
device_class: power
unit_of_measurement: 'kWh'
icon_template: mdi:gauge
licznik_faza2_totalforwardactiveenergy:
value_template: '{{ states.sensor.licznik_rest.attributes.phases[1].totalForwardActiveEnergy }}'
device_class: power
unit_of_measurement: 'kWh'
icon_template: mdi:gauge
licznik_faza3_totalforwardactiveenergy:
value_template: '{{ states.sensor.licznik_rest.attributes.phases[2].totalForwardActiveEnergy }}'
device_class: power
unit_of_measurement: 'kWh'
icon_template: mdi:gauge
licznik_faza123_totalforwardactiveenergy:
value_template: >-
{{ (states.sensor.licznik_faza1_totalforwardactiveenergy.state | float)
+ (states.sensor.licznik_faza2_totalforwardactiveenergy.state | float)
+ (states.sensor.licznik_faza3_totalforwardactiveenergy.state | float) }}
unit_of_measurement: 'kWh'
device_class: power
icon_template: mdi:gauge
# Moc Czynna Oddana
licznik_faza1_totalreverseactiveenergy:
value_template: '{{ states.sensor.licznik_rest.attributes.phases[0].totalReverseActiveEnergy }}'
device_class: power
unit_of_measurement: 'kWh'
icon_template: mdi:gauge
licznik_faza2_totalreverseactiveenergy:
value_template: '{{ states.sensor.licznik_rest.attributes.phases[1].totalReverseActiveEnergy }}'
device_class: power
unit_of_measurement: 'kWh'
icon_template: mdi:gauge
licznik_faza3_totalreverseactiveenergy:
value_template: '{{ states.sensor.licznik_rest.attributes.phases[2].totalReverseActiveEnergy }}'
device_class: power
unit_of_measurement: 'kWh'
icon_template: mdi:gauge
licznik_faza123_totalreverseactiveenergy:
value_template: >-
{{ (states.sensor.licznik_faza1_totalreverseactiveenergy.state | float)
+ (states.sensor.licznik_faza2_totalreverseactiveenergy.state | float)
+ (states.sensor.licznik_faza3_totalreverseactiveenergy.state | float) }}
unit_of_measurement: 'kWh'
device_class: power
icon_template: mdi:gauge
# Moc Czynna
licznik_faza1_poweractive:
value_template: '{{ states.sensor.licznik_rest.attributes.phases[0].powerActive }}'
device_class: power
unit_of_measurement: 'W'
icon_template: mdi:gauge
licznik_faza2_poweractive:
value_template: '{{ states.sensor.licznik_rest.attributes.phases[1].powerActive }}'
device_class: power
unit_of_measurement: 'W'
icon_template: mdi:gauge
licznik_faza3_poweractive:
value_template: '{{ states.sensor.licznik_rest.attributes.phases[2].powerActive }}'
device_class: power
unit_of_measurement: 'W'
icon_template: mdi:gauge
licznik_faza123_poweractive:
value_template: >-
{{ (states.sensor.licznik_faza1_poweractive.state | float)
+ (states.sensor.licznik_faza2_poweractive.state | float)
+ (states.sensor.licznik_faza3_poweractive.state | float) }}
unit_of_measurement: 'W'
device_class: power
icon_template: mdi:gauge
licznik_faza123_poweractive_kw:
value_template: >-
{{ (((states.sensor.licznik_faza1_poweractive.state | float)
+ (states.sensor.licznik_faza2_poweractive.state | float)
+ (states.sensor.licznik_faza3_poweractive.state | float) )/1000 ) | round(2)}}
unit_of_measurement: 'kW'
device_class: power
icon_template: mdi:gauge
# Moc Bierna
licznik_faza1_powerreactive:
value_template: '{{ states.sensor.licznik_rest.attributes.phases[0].powerReactive }}'
device_class: power
unit_of_measurement: 'var'
icon_template: mdi:gauge
licznik_faza2_powerreactive:
value_template: '{{ states.sensor.licznik_rest.attributes.phases[1].powerReactive }}'
device_class: power
unit_of_measurement: 'var'
icon_template: mdi:gauge
licznik_faza3_powerreactive:
value_template: '{{ states.sensor.licznik_rest.attributes.phases[2].powerReactive }}'
device_class: power
unit_of_measurement: 'var'
icon_template: mdi:gauge
licznik_faza123_powerreactive:
value_template: >-
{{ (states.sensor.licznik_faza1_powerreactive.state | float)
+ (states.sensor.licznik_faza2_powerreactive.state | float)
+ (states.sensor.licznik_faza3_powerreactive.state | float) }}
unit_of_measurement: 'var'
device_class: power
icon_template: mdi:gauge
# Moc Pozorna
licznik_faza1_powerapparent:
value_template: '{{ states.sensor.licznik_rest.attributes.phases[0].powerApparent }}'
device_class: power
unit_of_measurement: 'VA'
icon_template: mdi:gauge
licznik_faza2_powerapparent:
value_template: '{{ states.sensor.licznik_rest.attributes.phases[1].powerApparent }}'
device_class: power
unit_of_measurement: 'VA'
icon_template: mdi:gauge
licznik_faza3_powerapparent:
value_template: '{{ states.sensor.licznik_rest.attributes.phases[2].powerApparent }}'
device_class: power
unit_of_measurement: 'VA'
icon_template: mdi:gauge
licznik_faza123_powerapparent:
value_template: >-
{{ (states.sensor.licznik_faza1_powerapparent.state | float)
+ (states.sensor.licznik_faza2_powerapparent.state | float)
+ (states.sensor.licznik_faza3_powerapparent.state | float) }}
unit_of_measurement: 'VA'
device_class: power
icon_template: mdi:gauge
# Czestotliwisc
licznik_faza1_frequency:
value_template: '{{ states.sensor.licznik_rest.attributes.phases[0].frequency }}'
device_class: power
unit_of_measurement: 'Hz'
icon_template: mdi:gauge
licznik_faza2_frequency:
value_template: '{{ states.sensor.licznik_rest.attributes.phases[1].frequency }}'
device_class: power
unit_of_measurement: 'Hz'
icon_template: mdi:gauge
licznik_faza3_frequency:
value_template: '{{ states.sensor.licznik_rest.attributes.phases[2].frequency }}'
device_class: power
unit_of_measurement: 'Hz'
icon_template: mdi:gauge
# Natezenie
licznik_faza1_current:
value_template: '{{ states.sensor.licznik_rest.attributes.phases[0].current }}'
device_class: power
unit_of_measurement: 'A'
icon_template: mdi:gauge
licznik_faza2_current:
value_template: '{{ states.sensor.licznik_rest.attributes.phases[1].current }}'
device_class: power
unit_of_measurement: 'A'
icon_template: mdi:gauge
licznik_faza3_current:
value_template: '{{ states.sensor.licznik_rest.attributes.phases[2].current }}'
device_class: power
unit_of_measurement: 'A'
icon_template: mdi:gauge
licznik_faza123_current:
value_template: >-
{{ (states.sensor.licznik_rest.attributes.phases[0].current | float)
+ (states.sensor.licznik_rest.attributes.phases[1].current | float)
+ (states.sensor.licznik_rest.attributes.phases[2].current | float) }}
unit_of_measurement: 'A'
device_class: power
icon_template: mdi:gauge
# Napiecie
licznik_faza1_voltage:
value_template: '{{ states.sensor.licznik_rest.attributes.phases[0].voltage }}'
device_class: power
unit_of_measurement: 'V'
icon_template: mdi:gauge
licznik_faza2_voltage:
value_template: '{{ states.sensor.licznik_rest.attributes.phases[1].voltage }}'
device_class: power
unit_of_measurement: 'V'
icon_template: mdi:gauge
licznik_faza3_voltage:
value_template: '{{ states.sensor.licznik_rest.attributes.phases[2].voltage }}'
device_class: power
unit_of_measurement: 'V'
icon_template: mdi:gauge
# Kat fazowy
licznik_faza1_phaseangle:
value_template: '{{ states.sensor.licznik_rest.attributes.phases[0].phaseAngle }}'
device_class: power
unit_of_measurement: '°'
icon_template: mdi:gauge
licznik_faza2_phaseangle:
value_template: '{{ states.sensor.licznik_rest.attributes.phases[1].phaseAngle }}'
device_class: power
unit_of_measurement: '°'
icon_template: mdi:gauge
licznik_faza3_phaseangle:
value_template: '{{ states.sensor.licznik_rest.attributes.phases[2].phaseAngle }}'
device_class: power
unit_of_measurement: '°'
icon_template: mdi:gauge
# Wspolczynnik mocy
licznik_faza1_powerfactor:
value_template: '{{ states.sensor.licznik_rest.attributes.phases[0].powerFactor }}'
device_class: power
unit_of_measurement: ' '
icon_template: mdi:gauge
licznik_faza2_powerfactor:
value_template: '{{ states.sensor.licznik_rest.attributes.phases[1].powerFactor }}'
device_class: power
unit_of_measurement: ' '
icon_template: mdi:gauge
licznik_faza3_powerfactor:
value_template: '{{ states.sensor.licznik_rest.attributes.phases[2].powerFactor }}'
device_class: power
unit_of_measurement: ' '
icon_template: mdi:gauge
# Liczniki do MQTT
licznik1_licznik_mqtt_zuzycie_dzis:
unit_of_measurement: 'kW'
friendly_name: "Zużycie dziś licznik1 MQTT"
device_class: power
entity_id:
- sensor.licznik1_licznik_koniec_dnia_stan
- sensor.licznik_licznik1_faza123_totalforwardactiveenergy
value_template: >-
{% set koniec_dnia = states.sensor.licznik1_licznik_koniec_dnia_stan.state|float %}
{% set aktualny = states.sensor.licznik_licznik1_faza123_totalforwardactiveenergy.state| float %}
{{ (aktualny - koniec_dnia )|round(2) }}
licznik1_licznik_mqtt_zuzycie_dzis_pln:
unit_of_measurement: 'PLN'
friendly_name: "Zużycie dziś licznik1 MQTT PLN"
value_template: >-
{{ ((states.sensor.licznik_licznik1_rest.attributes.pricePerUnit | float ) * ( states.sensor.licznik1_licznik_mqtt_zuzycie_dzis.state |float )) | round(2) }}
licznik1_licznik_mqtt_zuzycie_mc:
unit_of_measurement: 'kW'
friendly_name: "Zużycie mc licznik1 MQTT"
device_class: power
entity_id:
- sensor.licznik1_licznik_koniec_mca_stan
- sensor.licznik_licznik1_faza123_totalforwardactiveenergy
value_template: >-
{% set koniec_mca = states.sensor.licznik1_licznik_koniec_mca_stan.state|float %}
{% set aktualny = states.sensor.licznik_licznik1_faza123_totalforwardactiveenergy.state| float %}
{{ (aktualny - koniec_mca )|round(0) }}
licznik1_licznik_mqtt_zuzycie_mc_pln:
unit_of_measurement: 'PLN'
friendly_name: "Zużycie mc licznik1 MQTT PLN"
value_template: >-
{{ ((states.sensor.licznik_licznik1_rest.attributes.pricePerUnit | float ) * ( states.sensor.licznik1_licznik_mqtt_zuzycie_mc.state |float )) | round(2) }}
licznik1_licznik_mqtt_zuzycie_rok:
unit_of_measurement: 'kW'
friendly_name: "Zużycie rok licznik1 MQTT"
device_class: power
entity_id:
- sensor.licznik1_licznik_koniec_roku_stan
- sensor.licznik_licznik1_faza123_totalforwardactiveenergy
value_template: >-
{% set koniec_roku = states.sensor.licznik1_licznik_koniec_roku_stan.state|float %}
{% set aktualny = states.sensor.licznik_licznik1_faza123_totalforwardactiveenergy.state| float %}
{{ (aktualny - koniec_roku )|round(0) }}
licznik1_licznik_mqtt_zuzycie_rok_pln:
unit_of_measurement: 'PLN'
friendly_name: "Zużycie rok licznik1 MQTT PLN"
value_template: >-
{{ ((states.sensor.licznik_licznik1_rest.attributes.pricePerUnit | float ) * ( states.sensor.licznik1_licznik_mqtt_zuzycie_rok.state |float )) | round(2) }}
#===================================
#=== MQTT sensors
#===================================
- platform: mqtt
name: "licznik1_licznik_koniec_dnia_stan"
state_topic: "energia/licznik1/dzien/stan"
unit_of_measurement: "kWh"
json_attributes_topic: "energia/licznik1/dzien/timestamp_raportu"
- platform: mqtt
name: "licznik1_licznik_koniec_dnia_data_raportu"
state_topic: "energia/licznik1/dzien/timestamp_raportu"
- platform: mqtt
name: "licznik1_licznik_zuzycie_wczoraj_mqtt"
state_topic: "energia/licznik1/dzien/wczoraj/stan"
unit_of_measurement: "kWh"
- platform: mqtt
name: "licznik1_licznik_koniec_mca_stan"
state_topic: "energia/licznik1/mc/stan"
unit_of_measurement: "kWh"
json_attributes_topic: "energia/licznik1/mc/timestamp_raportu"
- platform: mqtt
name: "licznik1_licznik_koniec_mca_data_raportu"
state_topic: "energia/licznik1/mc/timestamp_raportu"
- platform: mqtt
name: "licznik1_licznik_zuzycie_poprzedni_miesiac_mqtt"
state_topic: "energia/licznik1/mc/poprzedni/stan"
unit_of_measurement: "kWh"
- platform: mqtt
name: "licznik1_licznik_koniec_roku_stan"
state_topic: "energia/licznik1/rok/stan"
unit_of_measurement: "kWh"
json_attributes_topic: "energia/licznik1/rok/timestamp_raportu"
- platform: mqtt
name: "licznik1_licznik_koniec_roku_data_raportu"
state_topic: "energia/licznik1/rok/timestamp_raportu"
# HA binary sensor - sluzy do pokazywania aktualnego stanu łacznosci licznika.
binary_sensor:
- platform: template
sensors:
licznik_status:
friendly_name: "Licznik status"
value_template: '{{ states.sensor.licznik_rest.attributes.connected }}'
****************************************************************************
****************************************************************************
automation.yaml
- id: "Broadcast Licznik licznik1 stan na koniec dnia MQTT"
alias: 'Broadcast Licznik licznik1 stan na koniec dnia MQTT'
trigger:
- platform: time
at: "23:59:00"
action:
- service: mqtt.publish
data_template:
payload_template: '{{ states.sensor.licznik_licznik1_faza123_totalforwardactiveenergy.state | round(2) | float }}'
topic: 'energia/licznik1/dzien/stan'
retain: true
- service: mqtt.publish
data_template:
payload_template: '{{ now() }}'
# payload_template: "{\"Status\":\"off\", \"Data\":{{ now() }}}"
topic: 'energia/licznik1/dzien/timestamp_raportu'
retain: true
- id: "Broadcast Licznik licznik1 zuzycie na koniec dnia MQTT"
alias: 'Broadcast Licznik licznik1 zuzycie na koniec dnia MQTT'
trigger:
- platform: time
at: "23:58:00"
action:
- service: mqtt.publish
data_template:
payload_template: '{{ states.sensor.licznik1_licznik_mqtt_zuzycie_dzis.state | round(2) | float }}'
topic: 'energia/licznik1/dzien/wczoraj/stan'
retain: true
- service: mqtt.publish
data_template:
payload_template: '{{ now() }}'
# payload_template: "{\"Status\":\"off\", \"Data\":{{ now() }}}"
topic: 'energia/licznik1/dzien/wczoraj/timestamp_raportu'
retain: true
- id: "Broadcast Licznik licznik1 stan na koniec mca MQTT"
alias: 'Broadcast Licznik licznik1 stan na koniec mca MQTT'
trigger:
- platform: time
at: "00:01:00"
condition:
condition: template
# Change the number here to get whatever day of the month you want.
value_template: "{{ now().day == 1 }}"
action:
- service: mqtt.publish
data_template:
payload_template: '{{ states.sensor.licznik_licznik1_faza123_totalforwardactiveenergy.state | round(2) | float }}'
topic: 'energia/licznik1/mc/stan'
retain: true
- service: mqtt.publish
data_template:
payload_template: '{{ now() }}'
topic: 'energia/licznik1/mc/timestamp_raportu'
retain: true
- id: "Broadcast Licznik licznik1 zuzycie na koniec mca MQTT"
alias: 'Broadcast Licznik licznik1 zuzycie na koniec mca MQTT'
trigger:
- platform: time
at: "00:00:09"
condition:
condition: template
# Change the number here to get whatever day of the month you want.
value_template: "{{ now().day == 1 }}"
action:
- service: mqtt.publish
data_template:
payload_template: '{{ sensor.licznik1_licznik_zuzycie_poprzedni_miesiac_mqtt.state | round(2) | float }}'
topic: 'energia/licznik1/mc/poprzedni/stan'
retain: true
- service: mqtt.publish
data_template:
payload_template: '{{ now() }}'
topic: 'energia/licznik1/mc/poprzedni/timestamp_raportu'
retain: true
- id: "Broadcast Licznik licznik1 stan na koniec roku MQTT"
alias: 'Broadcast Licznik licznik1 stan na koniec roku MQTT'
trigger:
- platform: time
at: "00:01:00"
condition:
condition: template
# Change the number here to get whatever day of the year you want.
value_template: "{{ now().timetuple().tm_yday == 1 }}"
action:
- service: mqtt.publish
data_template:
payload_template: '{{ states.sensor.licznik_licznik1_faza123_totalforwardactiveenergy.state | round(2) | float }}'
topic: 'energia/licznik1/rok/stan'
retain: true
- service: mqtt.publish
data_template:
payload_template: '{{ now() }}'
topic: 'energia/licznik1/rok/timestamp_raportu'
retain: true
****************************************************************************
You do not have the required permissions to view the files attached to this post.


