[Tuto] Transformer un contacteur recyclé en compteur de fioul précis (Home Assistant)

Dans mon précédent article, je vous expliquais comment j’ai sauvé un contacteur Wi-Fi Tongou dont le relais était grippé. Aujourd’hui, nous allons passer à la pratique : utiliser ce module en « mode dégradé » (mesure seule) pour suivre la consommation d’une chaudière fioul avec une précision chirurgicale.

Le principe : La mesure indirecte

Une chaudière fioul est un système simple : quand le brûleur tourne, il consomme un débit de fioul constant (défini par le gicleur). Plutôt que d’acheter un débitmètre physique coûteux et complexe à installer sur les tuyauteries, nous allons utiliser la puissance électrique pour en déduire le volume consommé.


1. Le matériel et le seuil de détection

J’ai branché mon contacteur recyclé sur l’alimentation de la chaudière.

  • Observation : En veille, la chaudière consomme quelques watts (électronique). Quand le circulateur tourne, elle monte un peu (90W). Mais quand le brûleur s’enclenche, la puissance dépasse les 150W.
  • Le but : Isoler uniquement ces phases de fonctionnement à plus de 150W.

2. Configuration dans Home Assistant

Voici les trois étapes à copier dans votre fichier configuration.yaml (ou via les entrées de l’interface utilisateur).

Étape A : Créer le détecteur de brûleur

Plutôt que d’utiliser un simple contact sec ou un thermostat, nous allons utiliser la consommation électrique de la chaudière pour savoir exactement quand le brûleur consomme du fioul. C’est la méthode la plus fiable pour éviter les erreurs de calcul.

Le principe : Un brûleur de chaudière fioul consomme généralement entre 150W et 250W lorsqu’il est en marche (moteur + électrovanne + préchauffage). En dessous, seule la pompe de circulation tourne.

La mise en place :

Branchez votre chaudière sur une prise connectée (ou un module Shelly) qui mesure la puissance (Watts).

Allez dans Paramètres > Appareils et services > Entrées.

Cliquez sur Créer une entrée > Capteur de seuil.

Configurez-le ainsi :

Nom : Bruleur fioul

Entité d’entrée : Votre capteur de puissance (ex: sensor.prise_chaudiere_power).

Limite supérieure : 150 (ce seuil permet d’ignorer la consommation des pompes de circulation pour ne capter que le brûleur).

Étape B : Compter le temps de fonctionnement

Pour calculer des litres, il faut d’abord transformer l’état « allumé/éteint » de votre chaudière en une durée précise. Pour cela, on utilise l’intégration history_stats.

Ce capteur va scanner l’historique de votre capteur de seuil et additionner chaque minute de fonctionnement depuis minuit :

YAML

sensor:
  - platform: history_stats
    name: "Temps de chauffe"
    entity_id: binary_sensor.bruleur_fioul
    state: "on"
    type: time
    start: "{{ now().replace(hour=0, minute=0, second=0) }}"
    end: "{{ now() }}"

Pourquoi c’est efficace ?

  • Automatique : Il calcule en temps réel la durée totale de chauffe du jour.
  • Précis : Il donne un résultat en heures décimales (ex: 1.5h pour 1h30), ce qui facilite le calcul des litres par la suite.
  • Fiable : Même après un redémarrage de Home Assistant, il retrouve ses données dans la base de données.

C’est la base indispensable : une fois qu’on a le temps, connaître la consommation n’est plus qu’une simple multiplication !

Étape C : Transformer le temps en Litres

Maintenant qu’on a le temps de chauffe, on le convertit en volume. Pour cela, on crée un capteur « Template » qui multiplie le temps par le débit de votre gicleur (ex: 2,41 L/h).

YAML

template:
    - sensor:
        - name: "Consommation Chaudiere"
          unit_of_measurement: "L"
          device_class: gas
          state_class: total_increasing
          state: "{{ (states('sensor.temps_de_chauffe') | float) * 2.41 }}"

À savoir :

  • Le multiplicateur : Vérifiez la valeur sur votre gicleur si connue (si non modifier cette valeur pour vous raporcher le plus de votre consomation reel).
  • Le rôle : Ce capteur affiche votre consommation en temps réel. S’il revient à zéro à minuit, c’est normal : c’est votre consommation journalière.

3. Créer la mémoire (Utility Meter)

Pour ne pas perdre le compte à minuit et suivre le niveau de la cuve sur des mois, on utilise un utility_meter. C’est lui qui va cumuler tous les litres jour après jour.

utility_meter:
  consommation_fioul_cumulee_totale:
    source: sensor.consommation_chaudiere
    name: "Consommation Fioul Cumulée Totale"

L’avantage : Ce compteur ne se remet jamais à zéro tout seul. C’est votre « index » de consommation totale.

4 : Calculer le niveau de la cuve

Dernière étape : on soustrait ce cumul à la capacité de votre cuve (1200 L).

template:
  - sensor:
      - name: "Fioul Restant"
        unit_of_measurement: "L"
        device_class: volume
        state: >
          {% set max = 1200 %}
          {% set consomme = states('sensor.consommation_fioul_cumulee_totale') | float(0) %}
          {{ (max - consomme) | round(1) }}

C’est fini ! Vous avez maintenant une entité sensor.fioul_restant qui s’actualise après chaque cycle de chauffe.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *