[Article] Gestion de bout en bout du chauffage

As tu une température de pièce inférieure à celle de la consigne que tu mets pour déclencher le calcul > 100 ? Si il fait très chaud chez toi, mets une consigne de 40°C pour les tests :innocent:
Pour debogger, tu peux regarder les traces de l’automatisation créée par le blueprint pour vérifier ce qui se passe (configuration - automatisation puis trouver l’automatisation correspondant au thermostat et cliquer sur le petit symbole en forme d’heure à droite de la ligne).
Vérifie aussi si il n’y a pas d’erreurs dans les logs de HA.

La doc de l’utilisation de la carte est la si jamais :

Dans la partie groupe, tu devrais avoir « entrée numérique ». Autrement modifie la clause include du code yaml du scheduler. Il doit permettre de retrouver les consignes (input number).

Quand tu crées la planification pour une pièce donnée dans le scheduler, il faut ensuite sélectionner entity puis l’input number correspondant à la consigne pour la pièce => l’objectif du scheduler est de définir des consignes par plages horaires, donc piloter la valeur de input number.

J’avoue que la mise en application fait appel à beaucoup de connaissances et ce n’est vraiment pas le plus simple pour commencer.

1 « J'aime »

Que la consigne soit supérieure ou inférieure à la température de la pièce, la puissance ne change pas.
Par contre dans les logs, j’ai ça et cela apparaît uniquement toutes les 10 minutes (le trigger) même si je fais évoluer la consigne :

2021-09-07 23:00:00 ERROR (MainThread) [homeassistant.components.automation.thermostat_salon] Thermostat Salon: Error executing script. Error rendering template for variables at pos 1: TypeError: unsupported operand type(s) for -: 'str' and 'float'
2021-09-07 23:00:00 ERROR (MainThread) [homeassistant.components.automation.thermostat_salon] Error while executing automation automation.thermostat_salon: TypeError: unsupported operand type(s) for -: 'str' and 'float'

Et dans les logs de l’automation :

Un des types des entités en entrée du blue print n’est pas bon, ou une valeur est mal initialisée. Compare les types que tu utilises dans ton blue print avec ceux que j’utilise. Ce doit être les mêmes.
Vérifie également les valeurs (état) des entités. Elles doivent être bien initialisées.
Si tu ne trouve pas, n’hésites pas à me renvoyer une copie écran des paramètres d’entrée de ton blue print.

J’ai trouvé la coquille, une des entrées dans le blueprint n’était pas correcte. Le thermostat fonctionne sauf que le sigle % ne s’affiche pas (100 au lieu de 100%).
image

As tu renseigné l’unité de mesure lors de ta déclaration/création d’entité ?

image

1 « J'aime »

Je l’ai crée ainsi :

Donc tu n’as pas mis d’unité de mesure…

Nan … % n’existe pas.

Oui ça je le sais bien :upside_down_face:

Il faut donc que tu lui indique :sweat_smile:

ici → Input Number - Home Assistant

Je connais le lien pour l’avoir lu… justement.
La première fois que j’ai crée les input_number, j’ai écris ça :

unit_of_measurement: %

En prenant pour exemple ça :

unit_of_measurement: °C

compte tenu des erreurs affichées, j’ai supprimé la ligne (ce n’était pas le plus important dans un premier temps) alors qu’il fallait écrire ça:

unit_of_measurement: '%'

Voili voilou …

J’avance petit à petit … j’ai mis en place mes planifications pour une pièce. Je suis donc passé à l’étape suivante. L’installation de cette carte :

J’obtiens ça :
image

Si je clique sur la croix ou les outils, ça me renvoie à l’aperçu de HA.
Si je clique sur Chauffage, il ne se passe rien.

J’avais juste donné ce code à titre indicatif et je n’avais pas commenté.
L’idée est de rassembler les cartes de chauffage dans une vue dédiée (appelée « chauffage » par exemple), d’avoir une vue principale (appelée ici « accueil »), et enfin une vue pour le paramétrage (ici « chauffage-config ») pour y rassembler entre autre les planifications.
La croix permettra de retourner à la vue accueil et la boite à outils à la vue « chauffage-config ».
Cela est particulièrement adapté à une interface mobile. Après chacun adaptera, car il y a tellement de manières d’organiser ses cartes (par pièce ou par fonction en particulier)…

Ok. Merci @Argonaute. Je comprends que pour l’instant ce n’est pas indispensable.

1/
Pour la planification, ma consigne est bien avec un pas de 0.5 degrés par contre la carte ne m’affiche qu’avec l’arrondi. Plus facile à comprendre comme ça :
image

2/ Qqchose m’échappe sur le fonctionnement global :
J’ai crée 2 planifications pour mon salon : Une pour les jours de la semaine et une autre le weekend.
Ces planifications intègre ma présence et mon absence. Voir capture ci-dessus.
Je ne vois pas très bien comment les utiliser dans le blueprint d’automatisation des modes.
A moins de le modifier pour intégrer les 2 planifications semaines et weekend.

Oui effectivement, il faudrait adapter le deuxième blueprint. En mode auto, il n’y pas une automatisation a activer, mais deux : semaine et week-end. Le concept général qui est d’activer ou non les automatisations en fonction du mode reste le même.

Ok je modifierai le blueprint.
Et pour le problème 1/ , tu as une idée ?

Je ne vois pas. J’ai vérifié sur ma config et j’ai bien des plages avec des températures avec une décimale. J’imagine que tu as essayé avec moins de plages a afficher (?)

Oui, idem avec moins de plage. Comment as-tu déclaré la consigne ?
Moi j’ai ça :

consigne_salon:                   # l'id unique
    name: consigne_salon         # un nom
    min: 0                 # une valeur mini
    max: 28                # une valeur max
    step: 0.5                # la valeur d'un interval
    mode: slider
    unit_of_measurement: °C

et toi ?

HOP HOP HOP, j’avais raté cela.

J’ai un systeme beaucoup plus simple qui fonctionne mais tu me donnes envie de tester ton TPI hyper complet.
Je tenterai aussi avec le nouveau poele :wink:

Bon, ben il se peut que je repasse t’embeter :wink:
Merci @Argonaute LE TOP DU TOP

1 « J'aime »

J’ai remplacé slider par box et tout est rentré dans l’ordre.

1 « J'aime »

J’adapte le blueprint d’ @Argonaute pour l’adapter à mon besoin. Dans les logs, j’obtiens cette erreur :

Invalid config for [automation]: Missing input entity_schedule_absent, entity_schedule_confort_semaine, entity_schedule_confort_weekend, entity_schedule_conges

J’ai crée et/ou changé le nom des input entity mais conservé la même syntaxe, je ne vois pas d’ou provient l’erreur.

blueprint:
  name: Pilotage chauffage
  description: Gestion des différents modes de chauffage - Stop  Hors-gel  Auto confort Auto eco 
  domain: automation

  input:
    entity_consigne:
      name: Consigne
      description: Champs d'entrée de la température de consigne (input number).
      selector:
        entity:
          domain: input_number
    entity_mode:
      name: Sélection du mode
      description: Entité de gestion du mode de gestion du chauffage (input_select)
      selector:
        entity:
          domain: input_select
    entity_schedule_confort_semaine:
      name: Schedule mode confort semaine
      description: Entité générée par schedule pour la planification du mode confort semaine (switch)
      selector:
        entity:
          domain: switch
    entity_schedule_confort_weekend:
      name: Schedule mode confort weekend
      description: Entité générée par schedule pour la planification du mode confort weekend (switch)
      selector:
        entity:
          domain: switch
    entity_schedule_conges:
      name: Schedule mode conges
      description: Entité générée par schedule pour la planification du mode congés (switch)
      selector:
        entity:
          domain: switch
    entity_schedule_absent:
      name: Schedule mode absent
      description: Entité générée par schedule pour la planification du mode absent (switch)
      selector:
        entity:
          domain: switch
    entity_thermostat_tpi:
      name: Thermostat
      description: Entité de gestion du thermostat TPI (automation)
      selector:
        entity:
          domain: automation


# Température pour le hors gel
variables:
  temperature_hg: 10

alias: Pilotage chauffage bureau Patrick
description: ''
trigger:
  - platform: state
    entity_id: !input entity_mode
condition: []
action:
  - choose:
      # ----- Mode Stop
      - conditions:
          - condition: state
            entity_id: !input entity_mode
            state: Arret
        sequence:
          - service: input_number.set_value
            data:
              value: 0
            target:
              entity_id: !input entity_consigne
          - service: switch.turn_off
            target:
              entity_id:
                - !input entity_schedule_confort_semaine
                - !input entity_schedule_confort_weekend
                - !input entity_schedule_conges
                - !input entity_schedule_absent
          - service: automation.turn_off
            target:
              entity_id: !input entity_thermostat_tpi
      # ----- Mode Hors-gel
      - conditions:
          - condition: state
            entity_id: !input entity_mode
            state: Hors-gel
        sequence:
          - service: automation.turn_on
            target:
              entity_id: !input entity_thermostat_tpi
          - service: input_number.set_value
            data:
              value: '{{temperature_hg}}'
            target:
              entity_id: !input entity_consigne
          - service: switch.turn_off
            target:
              entity_id:
                - !input entity_schedule_confort_semaine
                - !input entity_schedule_confort_weekend
                - !input entity_schedule_conges
                - !input entity_schedule_absent
      # ----- Mode Auto - confort
      - conditions:
          - condition: state
            entity_id: !input entity_mode
            state: Normal
        sequence:
          - service: automation.turn_on
            target:
              entity_id: !input entity_thermostat_tpi
          - service: switch.turn_on
            target:
              entity_id:
                - !input entity_schedule_confort_semaine
                - !input entity_schedule_confort_weekend
          - service: switch.turn_off
            target:
              entity_id:
                - !input entity_schedule_conges
                - !input entity_schedule_absent
      # ----- Mode Auto - conges
      - conditions:
          - condition: state
            entity_id: !input entity_mode
            state: Conges
        sequence:
          - service: automation.turn_on
            target:
              entity_id: !input entity_thermostat_tpi
          - service: switch.turn_on
            target:
              entity_id:
                - !input entity_schedule_conges
          - service: switch.turn_off
            target:
              entity_id:
                - !input entity_schedule_confort_semaine
                - !input entity_schedule_confort_weekend
                - !input entity_schedule_absent
      # ----- Mode Eco
      - conditions:
          - condition: state
            entity_id: !input entity_mode
            state: Absent
        sequence:
          - service: automation.turn_on
            target:
              entity_id: !input entity_thermostat_tpi
          - service: switch.turn_on
            target:
              entity_id:
                - !input entity_schedule_absent
          - service: switch.turn_off
            target:
              entity_id:
                - !input entity_schedule_confort_semaine
                - !input entity_schedule_confort_weekend
                - !input entity_schedule_conges
    # ----- Mode manuel
    default:
      - service: switch.turn_off
        target:
          entity_id:
            - !input entity_schedule_conges
            - !input entity_schedule_confort_semaine
            - !input entity_schedule_confort_weekend
            - !input entity_schedule_absent
      - service: automation.turn_on
        target:
          entity_id: !input entity_thermostat_tpi
mode: single