
Integración total de Lavadora con SonOff POW
Buenos días,
Este sencillo tutorial es muy útil para conocer los estados de la lavadora y recibir alertas de cuando acaba el programa. El truco de toda la info esta en el consumo por Watt en cada ciclo.
Tenemos que crear los siguientes elementos:
- Input_Select
- Switch
- Sensor
- Automation
- Grupos
- Customized
Input_Select:
Esto es un selector que solo nos va a mostrar el ciclo en el que la lavadora se encuentra en el futuro automation.
estado_lavadora:
name: Estado Lavadora
options:
- "Lavadora Apagada"
- "Llenado (Primero)"
- "Lavando"
- "Drenando (Primero)"
- "Centrifugado"
- "Llenado (Segundo)"
- "Centrifugado"
- "Drenado Final"
- "Centrifugado Final"
- "Parada"
initial: Parada
icon: mdi:washing-machine
Switch:
El switch del SonOff POW
- platform: mqtt
name: "Lavadora"
state_topic: "stat/pow01/POWER"
command_topic: "cmnd/pow01/POWER"
qos: 1
payload_on: "ON"
payload_off: "OFF"
retain: false
Sensor. Esto es para mostrar en que estado se encuentra la lavadora y cuanto ha durado el tiempo del último lavado. Funcionan bien pero generan errores en el log(algo en la sintaxis que no veo...) asi que lo tengo desactivado esto en mi configuración ahora mismo.
- platform: template
sensors:
estado_lavadora:
friendly_name: 'Estado Lavadora'
value_template: '{{ options.input_select.estado_lavadora.options }}'
- platform: template
sensors:
contador_lavadora:
friendly_name: "Tiempo de Lavado"
value_template: >-
{% if is_state('input_boolean.contador_lavadora', 'off') %}
{{ relative_time(states.automation.lavadora_en_marcha.attributes.last_triggered) }}
{% else %}
{{ states('sensor.contador_lavadora') }}
{% endif %}
Automation. La chicha!!
- alias: Interruptor Lavadora ON
initial_state: True
# hide_entity: True
trigger:
platform: state
entity_id: input_boolean.interruptor_lavadora
from: 'off'
to: 'on'
action:
- service: switch.turn_on
entity_id: switch.lavadora
- alias: Interruptor Lavadora OFF
initial_state: True
# hide_entity: True
trigger:
platform: state
entity_id: input_boolean.interruptor_lavadora
from: 'on'
to: 'off'
action:
- service: switch.turn_off
entity_id: switch.lavadora
- id: 'lavadora_parada'
initial_state: True
alias: 'Lavadora Parada'
trigger:
- entity_id: sensor.consumo_actual_pow01
platform: numeric_state
below: 8
for:
seconds: 45
condition:
condition: and
conditions:
- condition: state
entity_id: 'input_boolean.contador_lavadora'
state: 'on'
action:
- service: input_select.select_option
data:
entity_id: input_select.estado_lavadora
option: 'Parada'
- service: notify.telegram
data:
message: "La lavadora ha terminado."
- service: input_boolean.turn_off
entity_id: input_boolean.contador_lavadora
- id: 'lavadora_en_marcha'
initial_state: True
alias: 'Lavadora en Marcha'
trigger:
- entity_id: sensor.consumo_actual_pow01
platform: numeric_state
above: 10
for:
seconds: 30
condition:
condition: and
conditions:
- condition: state
entity_id: 'input_boolean.contador_lavadora'
state: 'off'
action:
- service: input_select.select_option
data:
entity_id: input_select.estado_lavadora
option: 'Lavando'
- service: notify.telegram
data:
message: "La lavadora ha empezado."
- service: input_boolean.turn_on
entity_id: input_boolean.contador_lavadora
- service: input_number.set_value
data_template:
entity_id: sensor.contador_lavadora
value: 0
- id: 'lavadora_off'
alias: 'Lavadora y POW Off'
trigger:
- entity_id: switch.lavadora
platform: state
to: 'off'
action:
- service: input_select.select_option
data:
entity_id: input_select.lavadora
option: Lavadora Apagada
- id: 'auto_apagado_lavadora'
alias: 'Apagaro pow lavadora tras una hora de inactividad'
trigger:
- entity_id: input_boolean.contador_lavadora
platform: state
to: 'off'
for:
hours: 1
condition:
condition: and
conditions:
- condition: state
entity_id: 'switch.lavadora'
state: 'on'
action:
- service: switch.turn_off
entity_id: switch.lavadora
- service: input_select.select_option
data:
entity_id: input_select.washer_status
option: Lavadora Apagada
Como veis el truco es jugar con los Watt que da el POW y concer cuanto consume cada programa, yo tengo controlado cuando empieza y cuando apaga y luego que se corte la corriente del POW pero podeis controlar ciclo por ciclo averiguando el consumo en Watt de los mismos.
GRUPOS
enchufes:
name: Enchufes
icon: mdi:power-plug
view: yes
entities:
- group.enchufes_terracilla
enchufes_terracilla:
name: Enchufes Terracilla
control: hidden
icon: mdi:ceiling-light
view: no
entities:
- switch.lavadora
CUSTOMIZED. para esto utilizamos CustomUI
switch.lavadora:
friendly_name: Estado Lavadora
icon: mdi:washing-machine
custom_ui_state_card: state-card-custom-ui
# show_last_changed: true
confirm_controls_show_lock: true
extra_data_template:
- "Consumo Actual: ${entities['sensor.consumo_actual_pow01'].state} W"
- "Consumo Hoy: ${entities['sensor.consumo_hoy_pow01'].state} kWh"
- "Consumo Ayer: ${entities['sensor.consumo_ayer_pow01'].state} kWh"
- "Consumo Total: ${entities['sensor.consumo_total_pow01'].state} kWh"
- "Consumo Voltage: ${entities['sensor.voltage_pow01'].state} V"
- "Consumo Corriente: ${entities['sensor.corriente_pow01'].state} A"
- "Consumo Factor: ${entities['sensor.factor_pow01'].state}"
# - "Estado Lavadora: ${entities['sensor.estado_lavadora'].state}"
Si quieres conocer otros artículos parecidos a Integración total de Lavadora con SonOff POW puedes visitar la categoría Generales.
Deja una respuesta
Hola Ruben:
El otro día estaba en el grupo de telegram con gubenote con este tema. Acabo de recibir el POW y estoy precisamente con la lavadora entre manos. Tengo algunas dudas que igual me puedes resolver. En primer lugar quería preguntarte si tu POW lo tienes Tasmoteado o con Espurna, ya que algunos de los parámetros que he visto en el código no me suenan. Yo lo tengo con Espurna. Luego el input select que creas imagino que es un yaml pero como automation?. Bueno ya me vas contando, de todas formas si no por aquí, nos vemos en el grupo de telegram. Un saludo.