Outil de monitoring, analyse et recommandation pour maximiser le rendement de condensation d'une chaudière Viessmann Vitodens.
La chaudière condense si T° retour < 57°C (point de rosée gaz naturel).
Chaque °C sous 57°C ≈ +0.3% de rendement (récupération chaleur latente).
L'outil ajuste la courbe de chauffe (pente + niveau) pour rester en condensation.
- Monitoring temps réel — collecte MQTT toutes les 30s → SQLite + Prometheus
- Estimation τ bâtiment — constante de temps thermique par régression exponentielle
- Recommandation pente/niveau — optimisation adaptative de la courbe de chauffe
- Comptage gaz Gazpar — intégration Aqara Z2M (impulsions temps réel)
- Alertes — Gotify (pression, flamme, ionisation)
- Dashboards Grafana — 8 tableaux de bord (condensation, énergie, bâtiment, gaz…)
cd /app/eco/optimise
python -m venv myvenv # ou symlink vers venv optolink-splitter
source myvenv/bin/activate
pip install -r requirements.txt
cp optimise_config.py.example optimise_config.py
# Éditer optimise_config.py (MQTT, sondes, courbe de chauffe…)# Monitoring + collecteur (mode production)
./myvenv/bin/python optimise.py monitor -c
# Commandes
./myvenv/bin/python optimise.py status # État instantané
./myvenv/bin/python optimise.py analyse # Analyse des données
./myvenv/bin/python optimise.py recommande # Recommandation pente/niveau
./myvenv/bin/python optimise.py tau # Estimation τ bâtiment
./myvenv/bin/python optimise.py sante # Tableau de bord santé
./myvenv/bin/python optimise.py historique -n 48 # Historique 48h
./myvenv/bin/python optimise.py export -f data.csv
./myvenv/bin/python optimise.py courbe # Courbe de chauffe (-15 à +20°C)
./myvenv/bin/python optimise.py dephasage # Déphasage thermiqueLe collecteur expose un exporter Prometheus sur le port 9101 :
| Métrique | Description |
|---|---|
viessmann_ds_depart_celsius |
T° départ (DS18B20) |
viessmann_ds_retour_celsius |
T° retour (DS18B20) |
viessmann_t_ext_celsius |
T° extérieure |
viessmann_modulation_pct |
Modulation brûleur (%) |
viessmann_rendement_pct |
Rendement estimé (%) |
viessmann_in_condensation |
1 si en condensation |
viessmann_tau_heures |
τ bâtiment (heures) |
viessmann_gazpar_rt_m3 |
Compteur Gazpar (m³) |
viessmann_gazpar_rt_kwh |
Compteur Gazpar (kWh) |
Les dashboards sont dans /app/infra/grafana/dashboards/ (symlink grafana/ → /app/infra/grafana/).
Les recording rules Prometheus sont dans /app/infra/prometheus/etc/viessmann_rules.yml.
paho-mqtt— Client MQTTnumpy/scipy— Régression, curve_fitprometheus-client— Exporter métriquesloguru— Logging (vialogger_util.pyd'optolink-splitter)schedule— Tâches planifiéesrequests— API Gotify, Grafana
/app/eco/optolink-splitter— Splitter série Optolink ↔ MQTT (fournit les données)/app/eco/mccgq11lm_gazpar— Convertisseur Z2M compteur Gazpar
MIT