Mon problème > sollution plus bas
Bonjour à tous,
Tout d’abord : un grand bravo à l’équipe HA et BT et ce forum - wow… beau travail !
Ok, donc j’ai un cas d’utilisation avec la configuration suivante :
- 8 radiateurs avec thermostats Aqara E1, dans 6 pièces
- 12 détecteurs de fenêtre Sonoff SNZB-04
- 12 détecteurs de température Sonoff SNZB-02
- 1 thermostat Nest (version 1.0)
- 1 Owon PIR-323-PTH
- un système de chauffage central au fioul, qui dispose d’une prise Wifi Meross MSS310
- HA est la version Hass.IO (la plus récente)
Ce que j’ai déjà préparé :
- créé 6 Better Thermostats (5 individuels, 1 groupe de 3), avec 12 Sonoff SNZB-04 (fenêtre) et 12 SNZB-02 (température) et 1 détecteur de mouvement Owon avec capteur de température et mon ancien Nest-thermostat, agissent comme des capteurs externes (fonctionne très bien)
- créé une boîte de sélection (Helper) où je peux choisir 4 modes pour mon chauffage central : On, Off (été), Time Schedule (test), Pilotage thermique (en cours…)
- J’ai créé 8 Schedules où je règle les heures et les températures de chauffage pour chaque pièce.
Mon but : économiser de l’argent en éteignant complètement mon chauffage central lorsqu’il n’est pas nécessaire (donc lorsqu’aucun radiateur ne chauffe pendant plusieurs minutes) - mon 4ème mode « Pilotage thermique » ; note : nous n’utilisons pas la fonction de chauffer de l’eau sur notre chaudière.
J’ai deux questions :
- lorsque je regarde la carte Better Thermostat, je remarque que BT envoie une température plus basse à mes radiateurs lorsque la température cible a été atteinte pour arrêter le chauffage => est-ce correct ? ne serait-il pas mieux de simplement éteindre le thermostat ?
- dans mon automatisation (voir ci-dessous), je veux vérifier si mes radiateurs sont en mode « Off » - je remarque sur la carte Better Thermostat que c’est indiqué au milieu par un symbole rouge ou gris de chauffage => comment pouvons-nous utiliser cet état dans les automatisations ? ou devons-nous nous arranger pour comparer la température cible avec la température actuelle ? et en plus travailler avec un capteur binaire ? … la première option où je peux juste vérifier l’état de la BT en rouge ou gris (on-off) semble logique, mais comment…
Merci à tous pour la lecture et peut-être quelqu’un a un bon conseil
Passez une bonne journée !
Mon automatisation (dans ce code j’utilise à des fins de test une lumière - light.lamp_1 - qui représente ma chaudière) :
alias: Chaudière - schakeling
description: >-
De centrale verwarming (chaudière) wordt ingeschakeld als op basis van 3
mogelijkheden
- als één van de thermostaten wil verwarmen
- op basis van het schema 'Chaudière - verwarmingscyclus'
- continu actief
Indien geen van deze modi geactiveerd zijn, dan wordt de chaudière
uitgeschakeld
trigger:
- platform: state
entity_id:
- sensor.ambiant_sensor_1_camomille_temperature
- platform: state
entity_id:
- sensor.ambiant_sensor_2_aneth_temperature
- platform: state
entity_id:
- sensor.nest_thermostaat_temperature_2
- platform: state
entity_id:
- sensor.bewegingssensor_1_sanitaire_temperature
- platform: state
entity_id:
- schedule.chaudiere_verwarmingsschema
- platform: state
entity_id:
- input_select.chaudiere_verwarmingsmodus
- platform: state
entity_id:
- climate.thermostaat_1_badkamer_prive
- platform: state
entity_id:
- climate.thermostaat_2_salon_achter_links
- platform: state
entity_id:
- climate.thermostaat_3_salon_achter_rechts
- platform: state
entity_id:
- climate.thermostaat_4_salon_piano
- platform: state
entity_id:
- climate.thermostaat_5_block_sanitaire
- platform: state
entity_id:
- climate.thermostaat_6_kamer_lavande
- platform: state
entity_id:
- climate.thermostaat_7_kamer_camomille
- platform: state
entity_id:
- climate.thermostaat_8_kamer_aneth
- platform: time_pattern
seconds: /10
enabled: true
condition: []
action:
- if:
- condition: state
entity_id: input_select.chaudiere_verwarmingsmodus
state: Aan
then:
- type: turn_on
device_id: ea5771db53a31a34d0d5ec691340bf7b
entity_id: light.lamp_1
domain: light
- stop: ""
- if:
- condition: state
entity_id: input_select.chaudiere_verwarmingsmodus
state: Thermostatisch
then:
- if:
- condition: or
conditions:
- condition: state
entity_id: climate.better_thermostat_verwarming_prive_badkamer
state: heat
- condition: state
entity_id: climate.better_thermostat_verwarming_aneth
state: heat
then:
- type: turn_on
device_id: ea5771db53a31a34d0d5ec691340bf7b
entity_id: light.lamp_1
domain: light
- stop: ""
- if:
- condition: state
entity_id: input_select.chaudiere_verwarmingsmodus
state: Tijdsschema
then:
- if:
- condition: state
entity_id: schedule.chaudiere_verwarmingsschema
state: "on"
then:
- type: turn_on
device_id: ea5771db53a31a34d0d5ec691340bf7b
entity_id: light.lamp_1
domain: light
- stop: ""
- type: turn_off
device_id: ea5771db53a31a34d0d5ec691340bf7b
entity_id: light.lamp_1
domain: light
mode: single
Solution
J’ai trouvé une solution grâce au développeur, merci KartoffelToby aka wtom, car il faut vérifier non seulement le hvac_action (= ‹ heating ›) mais aussi le hvac_mode (= ‹ heat ›). PS: Merci à tous ceux qui ont réfléchi.
Je donne ici une version simplifiée avec 2 radiateurs comme example, afin que vous puissiez facilement la mettre en route vous-même.
alias: Chaudière - contrôle
description: >-
Le chauffage central (chaudière) est mis en marche sur la base de 3
possibilités:
- si l'un des thermostats veut chauffer
- sur la base du programme "Chaudière - cycle de chauffage".
- continue
Si aucun de ces modes n'est activé, la chaudière est
éteint
trigger:
- platform: state
entity_id:
- input_select.chaudiere_mode_chauffage
- platform: state
entity_id:
- schedule.chaudiere_schema_chauffage
- platform: state
entity_id:
- climate.thermostaat_1_chambre1
- platform: state
entity_id:
- climate.thermostaat_2_chambre2
- platform: time_pattern
seconds: /15
enabled: true
condition: []
action:
- if:
- condition: state
entity_id: input_select.chaudiere_mode_chauffage
state: On
then:
- if:
- condition: device
type: is_off
entity_id: switch.meross_prise_7_chaudiere_outlet
domain: switch
then:
- type: turn_on
entity_id: switch.meross_prise_7_chaudiere_outlet
domain: switch
- stop: ""
- if:
- condition: state
entity_id: input_select.chaudiere_mode_chauffage
state: Thermostatique
then:
- if:
- condition: or
conditions:
- condition: and
conditions:
- condition: device
device_id: add0a484ef88e01263d25e8004fb4b26
domain: climate
entity_id: climate.better_thermostat_chauffage_salon
type: is_hvac_mode
hvac_mode: heat
- condition: state
entity_id: climate.better_thermostat_chauffage_salon
attribute: hvac_action
state: heating
- condition: and
conditions:
- condition: device
device_id: 2e612af7337f66ddaeda8b18c9709176
domain: climate
entity_id: climate.better_thermostat_chauffage_sanitaire
type: is_hvac_mode
hvac_mode: heat
- condition: state
entity_id: climate.better_thermostat_chauffage_sanitaire
attribute: hvac_action
state: heating
then:
- if:
- condition: device
type: is_off
entity_id: switch.meross_prise_7_chaudiere_outlet
domain: switch
then:
- type: turn_on
entity_id: switch.meross_prise_7_chaudiere_outlet
domain: switch
- stop: ""
- if:
- condition: state
entity_id: input_select.chaudiere_mode_chauffage
state: Tijdsschema
then:
- if:
- condition: state
entity_id: schedule.chaudiere_schema_chauffage
state: "on"
then:
- if:
- condition: device
type: is_off
entity_id: switch.meross_prise_7_chaudiere_outlet
domain: switch
then:
- type: turn_on
entity_id: switch.meross_prise_7_chaudiere_outlet
domain: switch
- stop: ""
- if:
- condition: device
type: is_on
entity_id: switch.meross_prise_7_chaudiere_outlet
domain: switch
- condition: numeric_state
entity_id: sensor.meross_prise_7_chaudiere_power
below: 10
then:
- type: turn_off
entity_id: switch.meross_prise_7_chaudiere_outlet
domain: switch
mode: single
Ma configuration
System Information
version | core-2023.2.1 |
---|---|
installation_type | Home Assistant OS |
dev | false |
hassio | true |
docker | true |
user | root |
virtualenv | false |
python_version | 3.10.7 |
os_name | Linux |
os_version | 5.15.90 |
arch | x86_64 |
timezone | Europe/Paris |
config_dir | /config |
Home Assistant Community Store
GitHub API | ok |
---|---|
GitHub Content | ok |
GitHub Web | ok |
GitHub API Calls Remaining | 4996 |
Installed Version | 1.30.1 |
Stage | running |
Available Repositories | 1194 |
Downloaded Repositories | 16 |
Home Assistant Cloud
logged_in | false |
---|---|
can_reach_cert_server | ok |
can_reach_cloud_auth | ok |
can_reach_cloud | ok |
Home Assistant Supervisor
host_os | Home Assistant OS 9.5 |
---|---|
update_channel | stable |
supervisor_version | supervisor-2023.01.1 |
agent_version | 1.4.1 |
docker_version | 20.10.22 |
disk_total | 30.8 GB |
disk_used | 12.3 GB |
healthy | true |
supported | true |
board | ova |
supervisor_api | ok |
version_api | ok |
installed_addons | Terminal & SSH (9.6.1), Mosquitto broker (6.1.3), Zigbee2MQTT (1.30.0-1), Studio Code Server (5.5.2), motionEye (0.18.0), Duck DNS (1.15.0), Network UPS Tools (0.11.0) |
Dashboards
dashboards | 1 |
---|---|
resources | 5 |
views | 5 |
mode | storage |
Recorder
oldest_recorder_run | 26 januari 2023 06:29 |
---|---|
current_recorder_run | 3 februari 2023 11:37 |
estimated_db_size | 1737.84 MiB |
database_engine | sqlite |
database_version | 3.38.5 |
Spotify
api_endpoint_reachable | ok |
---|