Gestione la recogida selectiva de residuos mediante la automatización del hogar. Home Assistant

5 minutos de lectura
FINES DE PROJET:
  • Defina sensores virtuales que indiquen cuánto falta, en días, la colección diferenciada
  • Nivel de dificultad: basso
  • Coste: nulo
CONCEPTOS ENFRENTADOS:
COMPONENTES DE SOFTWARE UTILIZADOS:
DISPOSITIVOS FÍSICOS UTILIZADOS:
PROJET MÁS INDICADO PARA:

Todos los ambientes

Notas y descargo de responsabilidad
  • qualsiasi modifica all'impianto elettrico dev'essere progettata ed effettuata da personale qualificato;
  • cualquier cambio implementado en proantes es un proresponsabilidad personal, así como un proprimer riesgo y peligro (el contenido de la presente página es puramente educativo);
  • cualquier cambio implementado en proantes de un dispositivo, anula la garantía, las aprobaciones de calidad y las certificaciones.
Revisione projet: +1.2

Abstract

La creciente y bendecida sensibilidad a los problemas ambientales. nuestros hábitos diarios están cambiando lenta pero seguramente, comenzando, sin lugar a dudas, a partir de la introducción del reciclaje, a menudo en un modo de recolección puerta a puerta. Al tratarse de un tema "hogareño", es natural pensarlo como una automatización personal del hogar puede intervenir para que la experiencia de recolección y eliminación sea más eficiente, sobre todo con respecto a recordar los diferentes días de recolección, especialmente en el caso de planes particularmente complejos.

reciclaje

en este proreparto veremos cómo, a través de la adopción del componente personalizado "Recolección de basura", es posible definir en Home Assistant, de sensores virtuales que indican a los usuarios de domótica basados ​​en esto Hub personal cuántos días faltan en la recolección de este o aquel tipo de desechos.

El componente es bastante simple de usar y al mismo tiempo bastante flexible: no solo le permite definir sensores Semanal, pero también de una naturaleza diferente, o más bien con una naturaleza cíclica muy específica (en el caso, por ejemplo, de colecciones mensuales en un día determinado del mes u otros estudios de casos).

supuestos

Por esta proasumiremos la presencia de una entidad tipo "Recibe nuestras notificaciones"Llamar notify.marco y otro, análogo, resultante de la integración. di Amazon Echo (Alexa) como Media Player (y, por lo tanto, como un sistema de notificación), llame media_player.alexa.

Utilizaremos estas dos entidades como elementos para definir el automatizaciones de notificación ante los próximos días de recogida.

instalación

Al ser un componente personalizado (por lo que no se incluye oficialmente en elHUB), antes de poder aprovechar las funciones que necesita para instalarlo. Para hacer esto, puede usar tanto el modo manual (no descrito en este projet) es el camino - muy facilitado HACS.

Para hacer esto es necesario que HACS fuera, por supuesto, previamente instalado en Home Assistant. Una vez que tenga acceso al panel HACS, realice una búsqueda en su tienda buscando específicamente el componente "Recolección de basura".

Una vez identificado, prover para instalarlo:

Home Assistant - HACS - Instalación de recolección de basura

entonces prover un reiniciar di Home Assistant.

Sensori

Por lo tanto, suponemos que se encuentra en la situación ejemplar de una colección puerta a puerta que incluye:

  • la colección de papel Martes y sabado;
  • la colección de la fracción indiferenciada Lunes y viernes;
  • la colección de la fracción biodegradable/ compostable los lunes y miércoles;
  • la colección de plásticoLos martes y sábados;
  • la colección de materiales voluminosos, el primer y tercer sábado del mes.

Por lo tanto, agregaremos para definir los sensores en configuración, en la sección dedicada a "Sensor", De los artículos de este tipo:

garbage_collection:
  sensors:
  - name: "Indifferenziato"
    frequency: "weekly"
    verbose_state: true
    collection_days:
    - mon
    - fri
  - name: "Bio"
    frequency: "weekly"
    verbose_state: true
    collection_days:
    - mon
    - wed
  - name: "Carta"
    frequency: "weekly"
    verbose_state: true
    collection_days:
    - tue
    - sat
  - name: "Plastica e metallo"
    frequency: "weekly"
    verbose_state: true
    collection_days:
    - tue
    - sat
  - name: "Rifiuti ingombranti"
    frequency: "monthly"
    collection_days: "sat"
    verbose_state: true
    monthly_day_order_number:
    - 1
    - 3

Qué configuración, después de la reiniciar necesario de Home Assistant, generará algo entidad entonces llama:

  • sensor.indifferenziato
  • sensor.bio
  • sensor.carta
  • sensor.plastica_e_metallo
  • sensor.rifiuti_ingombranti

rappresentido en la interfaz Lovelace di Home Assistant, por ejemplo así:

Home Assistant - Muestra de recolector de basura

Como observa, los estados de la entidad muestran el tiempo restante a las procolecciones de sime (la foto fue tomada el miércoles 9 octubre 2019).

explicación de los campos disponibles para la configuración:

platfom(Obligatorio) Debe ser necesariamente "Garbage_collection".
collection_daysDías (obligatorios), indicados en inglés y con tres letras: "mon","tue","wed","thu","fri","sat","sun"
frecuencia(Opcional) Frecuencia de recopilación, expresada en inglés, elegida entre estos elementos: "weekly","even-weeks","odd-weeks""every-n-weeks"O"monthly". Predeterminado: "weekly".
name(Opcional) Nombre del sensor. Predeterminado: "garbage_collection".
first_month(Opcional) Primer mes en el que se realiza la recopilación, expresado en tres letras y en inglés (por ejemplo, "jan").
last_month(Opcional) Último mes en el que se realiza la recopilación, expresado en tres letras y en inglés (por ejemplo, "dec").
monthly_day_order_number
(Opcional) Indica qué día del mes ocurre la recolección. Si, por ejemplo, collection_days contiene "sat" y este parámetro se establece en 2, la recolección tendrá lugar el segundo sábado del mes.
período(Opcional) Utilizado en abbinameal parámetro "frequency"Establecer en"every-n-weeks": Indica el"n"Semanas con qué frecuencia tiene lugar la recolección.
first_week(Opcional) Primera semana del año a partir de la cual comienza la colección (1-53).
excude_dates(Opcional) Lista de fechas que se excluirán en formato "yyyy-mm-dd".
include_dates(Opcional) Lista de fechas que se incluirán en el formato "yyyy-mm-dd".
icon_normal(Opcional) Icono de sensor. Predeterminado "mdi:trash-can"
icon_today(Opcional) Icono de sensor en la ocurrencia del día de recolección. Predeterminado "mdi:delete-restore"
icon_tomorrow(Opcional) Icono del sensor en presencia del día anterior de recolección. Predeterminado "mdi:delete-circle"
verbose_state(Opcional) Cuando se establece en true, el sensor vuelve al estado la proFecha de recogida prevista. En caso de false (predeterminado), muestra un entero rappdar el número de días faltantes (0 para el día de la recolección).

Notificaciones

Obviamente este párrafo no será decisivo: elegir cuándo (y si) ser alertado del día de recolección es una elección personal Por lo tanto, nos limitaremos a explicar las técnicas de notificación, pero se cobrará la personalización. proprimero (como siempre, al final).

Como sappIAMO las automatizaciones de Home Assistant se basan en el cambio de estado de una o más entidades establecidas, como trigger Automatización / s. Las entidades definidas a través de "Recolección de basura" contienen un atributo ("días") Que contiene el número de días restantes para la recolección; Al usar los cambios de estado de este atributo, podemos activar notificaciones clásicas y / o anuncios de nuestro altavoz inteligente (u otro).

Una automatización típica podría ser la siguiente:

automation:
  alias: "Notifica ritiro biodegradabile"
  trigger:
    platform: numeric_state
    entity_id: sensor.bio
    value_template: "{{ state.attributes.days }}"
    below: 1
  condition: []
  action:
    service: notify.famiglia
    data:
      title: "Domotica"
      message: "Attenzione: domani è giorno di ritiro frazione biologica."

o en el caso quieres hablar Alexa:

automation:
  alias: "Notifica ritiro biodegradabile"
  trigger:
    - platform: numeric_state
      entity_id: sensor.carta
      value_template: "{{ state.attributes.days }}"
      below: 1
    - platform: numeric_state
      entity_id: sensor.bio
      value_template: "{{ state.attributes.days }}"
      below: 1
  condition: []
  action:
    service: notify.alexa
    data:
      target: media_player.alexa
      data:
        type: announce
        method: spoken
      message: "Attenzione: domani è giorno di ritiro frazione {{ trigger.from_state.attributes.friendly_name }}."

También aprovechamos la oportunidad en esta segunda automatización para usar más sensores como trigger, para que pueda escribir una única automatización en lugar de una para cada sensor. Obviamente, el mensaje de notificación también se ha ajustado para informar la recopilación de pronóstico correcta.

Obviamente el cambio de estado tiene lugar todos los días. a medianochetiempo no proadecuado para ser notificado, si lo hay, prossima colección separada. En caso de que prefiera recibir una alerta en otro momento, o en trigger específico: se necesitará un bloque action diferente, que interpreta el estado de los sensores y notifica lo que crees.


Home Assistant Logo oficialATTENZIONE: recuerda que hay en nuestra comunidad FORO una sección ad hoc dedicada a Home Assistant, para cualquier duda, pregunta, información en el mérito específico de estos componentes.


Por favor comente abajo