Nettoyez automatiquement votre maison lorsque vous sortez par domotique Home Assistant

4 minutes de lecture
BUTS DE PROJET:
  • Définir un automatisme qui entame le nettoyage de la maison face à l'abandon de l'environnement par les locataires
  • Niveau de difficulté: basso
  • Coût: na
CONCEPTS FACE:
COMPOSANTS LOGICIELS UTILISÉS:
DISPOSITIFS PHYSIQUES UTILISÉS:
  • Le périphérique dans lequel il s'exécute Home Assistant
  • Un ou plusieurs robot aspirateur intégré un Home Assistant (expliqué en détail ci-dessous)
  • Un actionneur Broadlink RM Mini 3 (ou analogues supérieurs) - en option (expliqué en détail ci-dessous)
PROJET LE PLUS INDIQUÉ POUR:

Tous les environnements

Notes et avertissement
  • qualsiasi modifica all'impianto elettrico dev'essere effettuata da personale qualificato;
  • tout changement mis en œuvre dans proavant est un prola responsabilité personnelle, ainsi que propremier risque et danger (ce guide est à des fins éducatives uniquement);
  • tout changement mis en œuvre dans proavant qu'un appareil annule la garantie.
Revisione projet: 1.0

Abstrait

L'idée d'une maison qui se nettoie il a toujours été une chimère inaccessible, le rêve proJ'espère gagner une fois pour toutes l'éternelle guerre de l'homme contre la poussière domestique. On le dit tout de suite: ça projet n’a aucune présomption de résolution définitive du problème, mais bien de gagner une bataille de cette guerre.

Chaque jour je robot aspirateur plus nos maisons: fiables, maintenant pas trop chères, ce sont des appareils qui vous permettent de garder les sols aussi propres que possible. Par contre, ils doivent être mis en service chez eux, ce qui crée un désagrément (il faut faire attention de ne pas trébucher et ne pas tolérer le bruit) ou être planifiés dans le temps (les modèles qui le supportent, et dans tous les cas, la planification peut parfois être inadéquate). à prohabitudes).

Ce ne serait pas bien si, quand toute la famille quittait la maison, le robot partait automatiquement?

dans ce pronous verrons comment les utilisateurs ont introduit Home Assistant qui proprio HUB personnel le propremière domotique et ayant un robot aspirateur peut réaliser unautomation de manière à permettre ce type d'automatisme.

hypothèses

Pour réaliser le présent prosubstantiellement, il est nécessaire de le faire intégration del propremier col aspirateur robot proprio Home Assistant. Pour ce faire, les routes sont essentiellement deux:

iLife V5s Robot Aspirateur

En pratique, quelque chose s’accomplit facilement dans 99,99% des cas. Pour le moment procasting, nous supposons la présence d'une entité rappmontrant l'intégration réussie du robot aspirateur appelé "vacuum.robot_aspirapolvere", Indépendamment de la plate-forme d'intégration choisie. Cette entité sera l'enfant indirect du composant "Vide“, Nous allons donc utiliser les services de contrôle qui y sont connectés.
Di robot aspirateur il y en a maintenant beaucoup.

Deuxième élément distinctif du présent procasting, la nécessité d'utiliser entité de type "Device Tracker”Déterminer la présence / absence de locataires à la maison. Pour le moment pronous supposerons l'existence en configuration de l'entité "group.famiglia«Dérivant du regroupement de ces entités. Un approfondation sur ce thème spécifique est disponible ici.

Enfin: nous allons définir l’automatisation du "nettoyage automatique" pour qu’elle ne soit exécutée qu’après "un délai suffisant" depuis le dernier nettoyage automatique.

Durée de la pause

Commençons par définir un capteur qui mesure combien de temps l’aspirateur s’est arrêté propremier quai de chargement, puis mis en pause, en utilisant le statut "ancré"De l'entité correspondante"vacuum.robot_aspirapolvere».

Pour ce faire, nous allons utiliser la plateforme "Histoire Statistiques Sensor"Fille du composant"Sensor». nous ajoutons en configuration le code suivant:

sensor:
  - platform: history_stats
    name: Durata ciclo aspirapolvere
    entity_id: vacuum.robot_aspirapolvere
    state: 'docked'
    type: ratio
    end: '{{ now() }}'
    duration:
      hours: 12

L'entité de capteur résultante ("sensor.durata_ciclo_aspirapolvere") Surveille le statut"ancré"De l'entité"vacuum.robot_aspirapolvere». Ce capteur indique sous la forme 12 les heures de temps d'analyse et le compare au temps passé par l'entité "vacuum.robot_aspirapolvere"En état"ancré». Lorsque le capteur indique 100%, cette valeur indique qu’au moins une heure 12 est passée à l’état “ancré».

Script de nettoyage et de retour

À ce stade, nous définissons deux scénario:

  • celui qui avvi le nettoyage;
  • celui que le termes - si en cours - et envoyez le robot à propremière station de charge.

Le premier sera utilisé plus tard dans le bloc action dell 'automation qui est effectuée lorsque vous quittez la maison, la deuxième dans le bloc action de celui effectué lors du retour (si nous rentrons chez nous pendant le nettoyage du robot, nous voulons nous arrêter automatiquement):

script:
  vacuum_on:
    sequence:
      - condition: state
        entity_id: vacuum.robot_aspirapolvere
        state: 'docked'
      - condition: numeric_state
        entity_id: sensor.durata_ciclo_aspirapolvere
        above: 90
      - service: vacuum.clean
        entity_id: vacuum.robot_aspirapolvere
  vacuum_to_dock:
    sequence:
      - condition: state
        entity_id: vacuum.robot_aspirapolvere
        state: 'cleaning'
      - service: vacuum.stop
        entity_id: vacuum.robot_aspirapolvere
      - service: vacuum.return_to_base
        entity_id: vacuum.robot_aspirapolvere

Le premier script ("script.vacuum_on“) Vérifie en séquence que le robot apparaît dans la prodock puis que la durée de la pause est supérieure à% 90 (en utilisant l’état du capteur “sensor.durata_ciclo_aspirapolvere"Auparavant défini): si les deux conditions sont dépassées, le service est exécuté vacuum.clean associé à notre entité "vacuum.robot_aspirapolvere", Le démarrer.

Le deuxième script ("script.vacuum_to_dock"), À la place, une fois évoqué, vérifie que"vacuum.robot_aspirapolvere"Est en train d'être nettoyé et, le cas échéant, l'interrompt et l'envoie à la base de taxation (services vacuum.stop e vacuum.return_to_base).

automatisation

À ce stade, la définition des deux automatisations relatives ne manque pas aux actions à effectuer à la sortie et à la maison (ici un approfondation) sur la base des hypothèses et des réalisations définies à ce jour:

automation:
- alias: "USCITA"
  initial_state: 'on'
  trigger:
    platform: state
    entity_id: group.famiglia
    from: 'home'
  condition: []
  action:
    - service: script.turn_on
      entity_id: script.vacuum_on

- alias: "RIENTRO"
  initial_state: 'on'
  trigger:
    platform: state
    entity_id: group.famiglia
    to: 'home'
  condition: []
  action:
    - service: script.turn_on
      entity_id: script.vacuum_to_dock

Les deux automatisations ("automation.uscita"Et"automation.rientro") Sont déclenchés par le changement d'état de l'entité"group.famiglia", Ou quand la famille sort ou rentre à la maison (encore, ici il y a un approélucidation).

conclusions

Évidemment, les besoins de l'individu peuvent être spécifiquement les plus disparates, et même dans ce cas, la règle de "la limite, c'est l'imagination" est plus vraie que jamais. Tout simplement, lors de l’exécution des deux scripts (notamment celui de l’activation du robot), il est possible d’ajouter des conditions spécifiques relatives au prohabitudes: il ne suffit peut-être pas de commencer quand vous partez, mais il est également nécessaire de vérifier que vous êtes à un moment précis de la journée. De plus, la durée de la pause est bien sûr réglable: nous avons proplacez 12 hours, mais c’est clairement un ajustement personnel.

Évidemment automatisation prole courrier pourrait être appégalement accordés gratuitement à des entités non seulement du type "Vacumm", mais également d’une autre nature.


Home Assistant Logo officielATTENZIONE: rappelez-vous qu'il y a sur notre communauté FORUM une section ad hoc dédiée à Home Assistantpour tout doute, question, information sur le mérite spécifique de ces composants.


Veuillez commenter ci-dessous