Domotique d'un robot aspirateur non domotique avec Broadlink e Home Assistant

14 minutes de lecture
BUTS DE PROJET:
  • Domotique d'un robot aspirateur non domotique via Broadlink e Home Assistant
  • Niveau de difficulté: Prix moyen
  • coût: réduit (environ 20 € en utilisant Broadlink RM Mini 3)
CONCEPTS FACE:
COMPOSANTS LOGICIELS UTILISÉS:
DISPOSITIFS PHYSIQUES UTILISÉS:
  • Un robot aspirateur / nettoyeur de sol contrôlé par protélécommande infrarouge
  • Un ou plusieurs Broadlink RM Mini 3 (o Broadlink équivalent avec émetteur infrarouge)
PROJET LE PLUS INDIQUÉ POUR:

Tous les environnements

Notes et avertissement
  • qualsiasi modifica all'impianto elettrico dev'essere progettata ed effettuata da personale qualificato;
  • tout changement mis en œuvre dans proavant est un prola responsabilité personnelle, ainsi que propremier risque et danger (le contenu de la présente page est purement pédagogique);
  • tout changement mis en œuvre dans proavant un appareil, il annule la garantie, les approbations de qualité et les certifications.
Revisione projet: 1.2

Robot aspirateur sur parquet

Abstrait

I robot aspirateur (et / ou nettoyeur de sol) ils sont appliance de plus en plus de femmes de chambre apprezzés dans nos maisons: ils font en effet ménage pour nous, ou du moins nous soulager de la nécessité enlever tous les joursnamepoussière et débris de nos sols. Nombre de personnes allergiques - et pas seulement d’eux - bénéficient de cette nouvelle technologie de plus en plus perfectionnée: des robots capables de reconnaître les différences de niveau et différents types de surfaces, des scanners laser pour identifier et éviter les obstacles, des moteurs d’aspiration de plus en plus puissants, filtres HEPA et bien plus encore.

La fourchette de prix varie beaucoup: à partir d'unités pouvant être achetées à moins de 100 euros, vous pouvez en obtenir même à des prix qui s'approchent de 1000: ces derniers modèles ont le non-plus-ultra de la technologie robotique, y compris - souvent - la possibilité de contrôler l'appareil par téléphone portable. Au lieu de cela, tout le monde partage généralement un élément simple mais puissant: une télécommande infrarouge.

Le confort contrôler un robot aspirateur par téléphone portable / tablette / ordinateur est évidentNon seulement prol’appareil est particulièrement simple et facile, mais permet souvent aussi de démarrer (également automatiquement) le nettoyage en l'absence de locataires, éliminant ainsi la gêne d'avoir un objet automoteur - parfois bruyant - à la maison. Malheureusement, fondamentalement, ces fonctionnalités ne sont présentes que dans les modèles haut de gamme les plus chers.

Télécommande robot aspirateur
un exemple de télécommande.

Le présent projet va illustrer comment être capable de domotiser un robot aspirateur non domotique (c.-à-d. non équipé de la capacité de l'usine pour se connecter à Wi-Fi et être contrôlé par app et tout ce qui suit) afin de pouvoir gérer le comportement manuellement et / ou automatiquement par le biais du propremière domotique personnelle basé sur Home Assistant.

Nb cette projet, à mettre en œuvre, fournit à l'utilisateur un minimum de culture sur proMQTT tocollo et sur la fonctionnamento Node-RED. En ce qui concerne ce dernier thème spécifique, nous recommandons en lisant ceci projet.

Il commence

Logique de projet

Commençons par un syllogisme élémentaire. Étant donné que:

  • Home Assistant est notre "pont" pour le contrôle domotique (tu ne sais pas quoi? regarde, c'est comme ça);
  • Home Assistant, via un actionneur Broadlink (par exemple. RM Mini 3) peut envoyer des signaux infrarouges / radiofréquences;
  • le robot aspirateur et / ou nettoyeur de sol il est contrôlable via les signaux infrarouges du propropre télécommande,

il est donc possible de contrôler le robot via Home Assistant, l'intégrant ainsi avec le reste de la domotique, automations inclus.

Pour traduire ce syllogisme en faits concrets, nous avons besoin d’un élément qui "traduit" les commandes de Home Assistant dans les signaux infrarouges - dans la pratique, pour remplacer notre main et la télécommande du robot.
pour provoir cette fonction nous aidera encore une fois à cette magie applicativa c'est Node-RED.

Ce que nous allons accomplir sera:

  • définir unentité "Vide" en utilisant la plate-forme "Aspirateur MQTT";
  • activer le service broadlink.send à Home Assistant;
  • définir, à travers, Node-RED un "périphérique virtuel”Qui traduit les commandes MQTT envoyées Home Assistant (via l'entité "Vaccum" mentionnée ci-dessus) dans les appels de service broadlink.send afin d'envoyer des codes infrarouges.

hypothèses

dans ce projet suppose que (plus d'explications ci-dessous):

  • Home Assistant est en marche;
  • la configuration du client MQTT sur Home Assistant est opérationnel;
  • le courtier MQTT est opérationnel;
  • Node-RED est opérationnel.

Pour les utilisateurs HASSIO, la configuration MQTT (client + courtier) est expliqué ici.
Pour les utilisateurs Home Assistant comment applicativo sur différents systèmes d'exploitation, la configuration est expliqué ici.

Nb Pour des éclaircissements sur le sujet MQTT, nous vous recommandons de lire le guide consacré à configuration de proMQTT tocollo pour le propremière domotique.

en ce qui concerne Node-RED, utilisateurs HASSIO ils peuvent l'installer aussi simple add-on, tandis que pour les utilisateurs Home Assistant@Raspbian peut suivre ce guide.

Analyse

La première chose à faire est d’analyser la télécommande du robot aspirateur (et / ou du nettoyeur de sol).

Chaque appliance de ce type, en fait, fournit différentes fonctions liée à son niveau d'évolution; les fonctions les plus typiques sont le début du nettoyage dans différents modes (normal, nettoyage ponctuel, nettoyage périmétrique / de bord, etc.), l'interruption de nettoyage, la parking automatique un propremière station de charge et plus.

Ce que nous devons faire est "mappsont "ces fonctions avec les commandes réellement gérées par l'entité qui peuvent être modélisées via la plate-forme"Aspirateur MQTT»de Home Assistant, qui sont:

  • Démarrer - commencer le nettoyage
  • pause - interruption temporaire du nettoyage
  • return_home - retour à la station de charge
  • Arrêtez - interruption du nettoyage
  • clean_spot - commencer le nettoyage sur un point prédéterminé de la maison
  • localiser - localise le robot (généralement via riprosa partie d'un son)
  • Commande - statut du robot

De plus, des fonctionnalités sont également fournies "send_command", Ce qui permet - seulement programmaticalement et non d'une interface Home Assistant - envoyer des commandes personnalisées (nous le verrons à la fin de projet).

Faire le mappSi vous avez besoin de prendre la télécommande du robot comme référence, essayez de comprendre quelles touches sont proches ou assorties. à l'une des fonctions énumérées ci-dessus.

Home Assistant

Définir l'entité

pour ce projet, nous supposerons (à titre d’exemple) que notre télécommande - et donc notre robot - prend en charge les quatre fonctions suivantes:

Fonction de contrôle à distanceFonction composant "MQTT Vacuum"Charge utile MQTT
Nettoyer la chambreDémarrerDémarrer
Arrêter le nettoyageArrêtezArrêtez
Retour à la basereturn_homereturn_to_base
Nettoyer le périmètre*clean_spotclean_spot

*Etant donné que "MQTT Vacuum" ne fournit pas la fonction "périmètre propre", par choix arbitraire mappNous allons exécuter cette fonction avec la fonction clean_spot».

A ce stade, le code à ajouter en configuration su Home Assistant sera:

vacuum:
  - platform: mqtt
    name: "ROBOT Aspirapolvere"
    schema: state
    supported_features:
      - start
      - stop
      - return_home
      - clean_spot
      - status
    command_topic: "vacuum/command"
    state_topic: "vacuum/state"

Après le redémarrage Home Assistant, une nouvelle entité sera appbrûlé Home Assistant: vacuum.robot_aspirapolvere qui, à l'avant Lovelace, appce sera à peu près comme ça:

Home Assistant - vide

A ce stade, chaque action mise en œuvre sur cette entité déclenchera la publication du sujet MQTT vers le courtier, sujet que nous allons intercepter Node-RED afin de les transformer en impulsions infrarouges envoyées via un ou plusieurs actionneurs Broadlink et en retour, les sujets de télémétrie MQTT, confirmant l'exécution de l'action.

API

Il est nécessaire que le service API de Home Assistant est opérationnel - avec le mot de passe associé ci-dessous.
Pour ce faire, il faut que en configuration il y a un bloc semblable au suivant:

auth_providers:
  - type: homeassistant
  - type: legacy_api_password
    api_password: propria_password_api

Si non présent, ajouter une telle bouche - provoir pour personnaliser le mot de passe - e recommencer Home Assistant.

Service "Broadlink"

À ce stade, il est nécessaire que les services "broadlin.send"Et"broadlink.En"Sont présents sur Home Assistant. Pour ce faire, il faut, en résumé, que:

  • l'unité (ou les unités) Broadlink sont configurés sur Wi-Fi la maison;
  • la configuration à Home Assistant c'était appropriénameréalisé.

Il serait redondant de signaler ici ce qui est décrit en détail dans le guide de mise en œuvre du Broadlink à Home Assistant. Si tu n'étais pas déjà provu pour configurer les deux Broadlink que le composant en question à Home Assistant, le guide de référence est-ce:

composants Home Assistant "Broadlink"

Capture de code

Arrivé à ce point il faudra capturer les codes infrarouges liées aux boutons de la télécommande du robot que vous prévoyez d’intégrer.

Nb Parfois, il peut ne pas être nécessaire de les attraper: à notre archive collaborative peut déjà être disponible ou, via une recherche Google, sur un autre site.

Si elles ne sont pas disponibles "pré-emballées" seront donc besoin de les attraper.
Les techniques sont endommagées et sont décrit ici. Après avoir capturé les touches de la télécommande que vous avez décidé d’utiliser pour la projetez-les de côté (et souvenez-vous peut-être de les rendre disponibles à la communauté!).

Home Assistant su Node-RED

Pour l' procasting peut être mis en œuvre il est nécessaire d'équiper le proprio Node-RED de nœuds supplémentaires nécessaire pour se connecter Node-RED a Home Assistant. Pour ce faire, vous devez installer le package "Node-RED intégration avec Home Assistant via l'API WebSocket et HTTP».

Pour l'installer sur Raspbian, la commande est très simple:

cd ~/.node-red
sudo npm install node-red-contrib-home-assistant-websocket
sudo systemctl restart nodered.service

Pour les utilisateurs HASSIO qu'ils ont mis en place Node-RED comment add-on la chose c'est encore plus facile: il n'y a pas besoin de faire quoi que ce soit. Les nœuds susmentionnés sont déjà disponibles à bord.

Node-RED

Maintenant que Home Assistant a été configuré (à la fois pour l'intégration du composant "MQTT Vacuum" et "Broadlink") Et que nous sommes dans la disponibilité des codes infrarouges nécessaires, nous devons en fin de compte réaliser, à travers Node-REDune Boîte noire comme pour transformer les commandes MQTT proprovenant de l'entité définie sur Home Assistant en envoyant des codes infrarouges et les sujets de réponse télémétriques MQTT associés (de l'exécution de la séquence).

Pour ce faire, nous allons utiliser la technique décrite précédemment à "Transformez plusieurs éléments MQTT en un seul appareil virtuel via Node-RED”Guide que nous vous recommandons fortement de lire premier di prosuivre plus. Ce qui suit suit ce guide, mais tient pour acquis que les concepts qui sont à la base ont déjà été définis propri, au moins sur le plan théorique.

Nous allons donc mettre en place des flux su Node-RED afin de gérer les séquences d’actions suivantes (à partir de l’exemple que nous réalisons dans le projet, mais qui sera éventuellement personnalisé) à partir de la réception des sujets envoyés par Home Assistant:

Sujet MQTT envoyé par Home AssistantactionSujet de réponse télémétrique MQTT
vacuum/command startenvoi du code qui commence le nettoyagevacuum/state cleaning
vacuum/command stopenvoi de code qui arrête le nettoyagevacuum/state idle
vacuum/command return_to_baseenvoi du code qui indique au robot de retourner à la base de chargementvacuum/state docked*
vacuum/command clean_spotenvoi de code qui arrête le nettoyage à un moment donnévacuum/state cleaning

*voir au bas de projet, le paragraphe “perfezionamenti».

Alors ouvrons Node-RED et, en haut à droite, nous allons appuyer sur "+"Créer un nouveau flux que nous appellerons "Flow 1" (ou comme on le croit).

La colonne de gauche rappil contient la liste des types de "nœuds" disponibles. Nous cherchons et trouvons dans la liste (sous la rubrique "Entrée") un nœud "mqtt dans"

Node-RED - Flux domotique> Appareils - mqtt in

faites-le glisser dans l'espace vide du tableau de bord e cliquons dessus deux fois ouvrir à droite la boîte de dialogue relative à sa configuration, appelée “Editer mqtt dans le noeud":

Node-RED - Flux domotique> Appareils - mqtt in - détails

A ce stade, il est nécessaire d'indiquer:

  • sur quel serveur (courtier MQTT) à connecter (si Node-RED fonctionne sur le même ordinateur que Home Assistant, indiquez "127.0.0.1");
  • à qui sujet s'inscrire ou sur lequel sujet "Pour écouter notre noeud".

Commençons par définir un nouveau serveur (mqtt broker).
Cliquez sur "Ajouter un nouveau mqtt: broker":

Node-RED - Flux domotique> Périphériques - mqtt in - edit broker

Sur le terrain "Nom"Nous indiquons n'importe quel nom, dans le cas de l'exemple" Mosquitto LOCAL "(par hasard, le courtier est en cours d'utilisation mosquitto, peut-être installé sur le même ordinateur que celui sur lequel il tourne Node-RED).

alors on indique, sous le titre "Serveur", L'adresse IP du courtier (s'il est exécuté sur le même ordinateur que Node_RED, nous indiquerons évidemment"127.0.0.1“, Sinon l'adresse IP de notre courtier externe un Node-RED). Nous indiquerons ensuite la porte et les identifiants d'accès à l'onglet "Sécurité».

A la fin de la configuration, cliquez sur "Update».

Retour au dialogue "Editer mqtt dans le noeud"Il est temps d'indiquer au noeud"mqtt ip" appEna ajouté au tableau de bord qui sujet surveiller.

Sur le terrain "sujet"Ensuite, nous allons insérer le sujet que nous utiliserons pour contrôler notre périphérique virtuel à un niveau logique, ou (selon la configuration exemple):

vide / command

nous fixons QoS une "1"Et sur le terrain"Nom", toujours "vide / command».
A la fin de la configuration, cliquez sur "Terminé”Pour revenir au tableau de bord.

Si tout est correct, le noeud "mqtt dans"Va acquérir le nom"vide / command"Et le triangle rouge disparaîtra, signe que la connexion au courtier MQTT est réussi.

Maintenant, vous devez identifier et faire glisser un "Switch":

Node-RED-Flusso-domoticadispositivi-switch

qui, en substance, nous permet d’introduire quelques logiques conditionnelles.

Une fois le nouveau nœud placé sur le tableau de bord, on le connecte au premier noeud faire glisser le cercle gris du côté droit du premier (la sortie) dans le cercle gris à gauche du noeud de la seconde (INPUT).

Maintenant, cliquez deux fois sur le noeud appena glissé pour ouvrir la boîte de dialogue de configuration correspondante "Modifier le noeud de commutation": Ici nous allons définir le nom du noeud, quel est propossession "Evaluer" à son entrée, enfin qui condizione considérer correct.

Dans le champ du nom on indique "ACTION"Laissant inchangé le propropriétés à évaluer à l'entrée (c'est-à-dire msg.payload); dans la case ci-dessous "Property"Ensuite, nous indiquons quatre conditions valorisés respectivement "Démarrer"Et"Arrêtez","return_to_base"Et"clean_spot"(C'est-à-dire les charges utiles auxquelles nous nous attendons Home Assistant avec le sujet vide / command)

Node-RED-Flusso-domoticadispositivi-switch conditions

Enfin, cliquez sur "Terminé».

À ce stade, Node-RED aura changé le noeud de commutation ("ACTION") Lui fournissant quatre sorties (quatre points gris sur le bord droit du même noeud), quiappils montreront les deux points de sortie (sortie) où le flux sera canalisé en fonction de la charge utile.

Dans la première balle grise en haut rappprésente la sortie en présence de charges utiles "Démarrer"Le second"Arrêtez", Le troisième"return_to_base"Et enfin le quatrième,"clean_spot».

Arrivé ici il est nécessaire d'identifier le noeud de type "service d'appel"Dans le sous-ensemble de nœuds"Home Assistant». Faites glisser quatre d’entre eux dans des tableaux de bord et connectez leur entrée aux quatre sorties du noeud "ACTION"(Un pour chaque):

Node-RED - Flux d'action - appelez le service HA

Comme vous pouvez le voir, il est présent un triangle rouge sur chaque: c'est parce que le noeud n'a pas encore été appropriénameconfiguré. Ce que nous allons faire est alors d'indiquer à chaque noeud "service d'appel"Ce que c'est l'instance Home Assistant à qui se référer, ce qu'il est le service à évoquer ("broadlink.send"), Qui c'est l'actionneur Broadlink utiliser et enfin le code infrarouge pour lui envoyer.

Double-cliquez sur le premier ci-dessus (celui connecté à la branche de charge utile "Démarrer") Et configurez comme suit:

  • Nom: Début
  • Serveur: Ajouter un nouveau serveur ...
    • Nom: Home Assistant (cliquez sur "J'utilise Hass.io" au cas où vous l'utiliseriez HASSIO)
    • URL de base: l'adresse du proprio Home Assistant (y compris "http (s): //")
    • Jeton d'accès: le mot de passe API
    • Utiliser le mot de passe de l'API héritéeoui
  • Domaine: broadlink
  • Service Clients: envoyer
  • Data: données structurées expliquées ci-dessous

"Données structurées" signifie une charge utile au format JSON qui contient:

  • l'actionneur IP Broadlink utiliser
  • le code infrarouge à lui envoyer.

Un exemple est la suivante:

{"host":"192.168.1.21","packet":"JTEhMSExISFBI3EjcTNxI3EjgSNxI3EwAFHAABKEoSAA0FAAAAAAAAAAA=="}

Évidemment sur le terrain "paquet"Le code de la clé ira que vous allez arappresentare, la base du flux que nous définissons. Dans le premier, ce sera celui du nettoyage, le second l'interruption, dans le troisième le retour à la base, dans le quatrième le nettoyage d'un point précis de la maison.

Provvedere configurer les trois autres nœuds comme expliqué pour le premier ("Démarrer")en variant les nom du noeud ("Stop", "Retour à la maison", "Clean Spot") et des codes infrarouges indiqués dans les données structurées du champ "Data».

A ce stade, parmi les nœuds de type "Fonction"Nous trouvons le type"ModifierEt les faire glisser quatre sur le tableau de bord, reliant l'entrée à chacune des sorties:

Node-RED - Flux d'action - changement

Double-cliquez sur chacun et configurez-les comme suit:

  • le premier par le haut (connecté à “Start»)
    • Nom: Nettoyage
    • à: {"State": "cleaning"}
  • le second (connecté à "Arrêter»)
    • Nom: Ralenti
    • à: {"State": "inactif"}
  • le troisième (connecté à "Rentrer à la maison»)
    • Nom: Rentré à la maison
    • à: {"State": "docked"}
  • le quatrième (connecté à "Clean Spot»)
    • Nom: Point de nettoyage
    • à: {"State": "cleaning"}

Comme le quatrième est essentiellement le même que le premier, il est possible de ne pas l'utiliser et de connecter directement la sortie du quatrième noeud "service d'appel"Au premier noeud"changement" appEna créé.

Nb ce faisant l'actionneur Broadlink qui enverra les codes seront un et un seul. Être le robot d'unappliance qui se déplace indépendamment à la maison est facile à servir plus Broadlink pour couvrir plus de pièces. Dans ce cas, le passage ci-dessus prévoit un doublement, une triplication, etc. de noeuds de type "call service"Pour s'assurer que tous Broadlink envoyer le même code au même moment. Il suffira de créer des groupes de nœuds “call service"(Quels nœuds diffèrent dans la configuration uniquement dans le champ"host"Du camp"Data"Pas sur le terrain"packet") Connecté aux sorties individuelles du noeud" Change ".

Node-RED  -  Broadlink multiple
un exemple de branchement avec plusieurs actionneurs Broadlink.

Dernière étape: s'assurer que les charges utiles définies dans les nœuds “changement"("nettoyage","ralenti","ancré") Sont envoyés en tant que données utiles d’un sujet de télémétrie MQTT appelé"vide / département».

À ce stade, dans la liste des types de nœuds, nous trouvons et glissons dans les tableaux de bord un type de noeud "MQTT out"Et lier son entrée aux quatre sorties des quatre noeuds de type"changement" appena configuré:

Node-RED - Flux d'action - Sortie MQTT

on double clique sur le noeud appena ajouté et configurons-le comme suit:

  • Serveur: le même indiqué dans le premier noeud du flux
  • Sujet: vide / état
  • QoS: 1
  • Nom: vide / état

Bien!
Enfin, rendre le flux opérationnel - que nous allons maintenant expliquer en résumant - cliquez sur le bouton “en haut à droiteDéployer».

A partir de là, chaque sujet de commande vide / command reçu sur le courtier (envoyé par Home Assistant en utilisant l’entité de type «MQTT Vacuum», ou à partir d’un client MQTT connecté à celle-ci) qui présente une charge utile de votre choix entre «Démarrer","Arrêtez","return_to_base"Et"clean_spot"Sera traduit par l'envoi du code infrarouge correct et l'envoi d'un sujet télémétrique de confirmation (avec paylod approprivilégié entrenettoyage","ralenti","ancré") Qui, à son tour, sera reçu par Home Assistant, qui l’interprétera comme une "commande exécutée", modifiant en conséquence le statut de l’entité.

Perfezionamenti

Retour à la base

Le présent proLe jet est une version simplifiée de ce qui peut être réalisé en utilisant ces techniques mixtes. Tout simplement, nous avons supposé que lorsque la commande est envoyée "return_to_home"L'entité assume directement l'état"Accouplé"Quand en réalité il aurait été plus correct de le laisser assumer le statut"retour“, Envisagé par la plate-forme“ MQTT Vacuum ”et, par la suite, lorsque la connexion a été détectée - et seulement à ce moment-là - changé pour“Accouplé».

Il peut être fait facilement: il suffit de le placer un instrument de détection d'absorption électrique en amont de la station de charge et, en utilisant des techniques comme ceux décrits ici, définir une entité binaire Sensor"À qui appartient l'état"on"Quand une certaine absorption est détectée (ce qui suppose que le robot se recharge - puis est retourné à la base). De même, il pourrait être intéressant d’obtenir le même résultat. utilisant un capteur de vibrations comprendre si l’aspirateur fonctionne ou non en fonction de ses vibrations.

À ce stade, il suffirait de définir une automatisation triviale sur Home Automation (ou un flux Node-RED) que, lors du changement de statut de "Binary Sensor"(De"offre" une "on"), Publier un sujet MQTT"vide / état amarré». Évidemment, le flux principal devrait également être modifié Node-RED afin de corriger la charge utile du sujet de télémétrie (de la branche dédiée au "Retour à la maison") de "ancré" une "retour».

Alors supposons que le "binaire Sensor", Défini (par la mesure d'absorption électrique ou des vibrations de l'aspirateur, il est indifférent) binary_sensor.vacuum_status:

- alias: "Vacuum dock"
  trigger:
    platform: state
    entity_id: binary_sensor.vacuum_status
  condition: []
  action:
  - service: mqtt.publish
    data_template:
      topic: vacuum/state
      payload: >
        {% if trigger.to_state.state == 'on' %}
        {"state": "cleaning"}
        {% else %}
        {"state": "docked"}
        {% endif %}
      retain: false

Nb En outre, après avoir envoyé la commande de nettoyage de démarrage e laisser l'aspirateur fonctionner de manière autonome (c'est-à-dire jusqu'à la fin de la batterie / fin programma) ne pouvait généralement pas être connu le terme nettoyage: introduire un "binaire" Sensor"Qui détecte le statut opérationnel permettrait de mettre à jour, comme expliqué ci-dessus, le statut de"Cleaning" une "Docked"Et vice versa (toujours par la publication d'un sujet sur MQTT")vacuum/state"), Comme dans l'automatisation ci-dessus.

Plus de perfectionnamepeut être obtenu en adoptant la fonctionnalité "send_command"Fourni par la plate-forme" MQTT Vacuum ", qui vous permet d'envoyer des commandes supplémentaires qui peuvent être utiles en présence de fonctions avancées pouvant être activées à l'aide de la télécommande et ne pouvant être utilisées.apppas ceux de base présents sur l'entité.

Pourcentage de charge de la batterie

De la même manière que le "retour à la base", le pourcentage de charge de la batterie est un paramètre accepté par la plateforme "Aspirateur MQTT». Bien évidemment, dans ce cas également, il faudrait utiliser un capteur qui, sur une base déductive, calculez de manière empirique la quantité de charge de la batterie en fonction du temps écoulé depuis le dernier "Docked".

Utiliser

l'ampleur vacuum.robot_aspirapolvere va maintenant être pieuxnameoperatif: si vous avez tout configuré correctement, toutes les commandes seront exécutées correctement en envoyant les codes infrarouges appropriés.

Comme expliqué dans l’abrégé, l’aspect le plus intéressant de la domotique pour un robot aspirateur est peut-être de pouvoir programmare à travers let automatisations son activation / désactivation exploitant les services typiques de la composante Home Assistant à partir de laquelle cette entité dérive, ou "vide".

Disons par exemple le cas de vouloir activer le nettoyage tous les jours chez 8: 00 le matin. L'automatisation serait large le suivant:

automation:
  alias: "Auto-start ROBOT"
  trigger:
    platform: time
    at: '08:00:00'
  condition: []
  action:
    service: vacuum.start
    entity_id: vacuum.robot_aspirapolvere

Une autre possibilité intéressante est que déclencher le nettoyage (peut-être en utilisant la fonction "Clean Spot") lorsque la famille quitte la maison.

En supposant que vous avez un groupe des entités de type "Device Tracker"(Qui déterminent ensuite l'état de présence des locataires) appelé group.awesome_people, l’automatisation serait la suivante:

automation:
  alias: "Auto-start ROBOT"
  trigger:
    platform: state
    entity_id: group.awesome_people
    from: 'home'
  condition: []
  action:
    service: vacuum.clean_spot
    entity_id: vacuum.robot_aspirapolvere

et ainsi de suite. La limite, comme toujours, c'est de la fantaisie.

Ménage un climatiseur traditionnel avec Broadlink e Home Assistant (V2)


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