bielen2k
(Rafał Bieleniewicz)
October 21, 2022, 9:47pm
#1
Od niedawna mam pompę ciepła Samsung EHS Mono 12 kW. Ponieważ menu jest dość ubogie to podpiąłem pod nią licznik EASTRON SDM72D-M Modbus v2.
Naprowadźcie mnie proszę w jaki sposób mogę zbierać proste info kiedy jest ona włączona a kiedy wyłączona. Chodzi mi o to, że gdy licznik zarejestruje pobieraną moc większą niż 200 W to ustawia mi status na ON. Jeżeli moc spadnie poniżej tej wartości to ustawia OFF.
1 Like
bielen2k
(Rafał Bieleniewicz)
October 22, 2022, 10:23am
#3
Dzięki! Posiedzę nad tym i jak zrobię to podzielę się wynikiem
bielen2k
(Rafał Bieleniewicz)
October 23, 2022, 12:52pm
#4
Ustawiłem i wygląda na to że działa.
Muszę dodać jeszcze zliczanie statusów ale to na dniach.
Mam prośbę, żebyście rzucili okiem na kod i dali mi znać czy jest ok czy jednak można tu jeszcze coś poprawić:
- sensor:
- name: Heat Pump Status
state: >
{% if states("sensor.heating_total_system_power")| float == 0 %}
Off
{% elif states("sensor.heating_total_system_power")| float <= 20 %}
Standby
{% elif states('sensor.heating_total_system_power')| float < 200 %}
Pumps
{% elif states('sensor.heating_total_system_power')| float >= 200 %}
Heating
{% endif %}
natomiast zawartość encji “Heating total system power” jest pobierana przez modbus z licznika Eastron SDM72D-M Modbus v2
- name: Heating Total system power
address: 52
# unit_of_measurement: kW
unit_of_measurement: W
slave: 3
input_type: input
count: 2
data_type: float32
# precision: 3
precision: 0
# scale: 0.001
## scale: 2
scan_interval: 60
device_class: power
rafkan
(Rafał Kania)
October 23, 2022, 3:17pm
#5
Masz zdefiniowane dwa warunki w tych samych przedziałach.
1 Like
bielen2k
(Rafał Bieleniewicz)
October 23, 2022, 10:18pm
#6
Racja, tak to jest jak do tematu podchodzi się o 3 w nocy (╯°□°)╯︵ ┻━┻
Poprawiony kod:
- sensor:
- name: Heat Pump Status
state: >
{% if states("sensor.heating_total_system_power") | float <= 10 %}
Off
{% elif states("sensor.heating_total_system_power") | float > 10 and states("sensor.heating_total_system_power") | float <= 20 %}
Standby
{% elif states('sensor.heating_total_system_power') | float > 20 and states('sensor.heating_total_system_power') | float <= 250 %}
Pumps
{% elif states('sensor.heating_total_system_power') | float > 250 %}
Heating
{% endif %}
Powinno być ok. Jak ktoś zauważy błąd to niech pisze. Wszelkie dodatki/modyfikacje/poprawki i optymalizacje mile widziane