Thermostat intelligent (ESP32)

Les thermostats classiques permettent de programmer des plages horaires pendant lesquelles le chauffage est en route. Par exemple, on peut définir un démarrage à 6h pour que la pièce soit chaud à 7h. Malheureusement, en fonction de la température extérieure, parfois il fera chaud à 6h30, et parfois il fera chaud à 7h30.

Ce thermostat permet d'adapter l'heure de démarrage en fonction de la vitesse de chauffe. On définit ainsi des horaires de présence au lieux de définir des horaires de chauffe.

Courbe de chauffe chaudière.

Par exemple, si la vitesse de chauffe est de 2°C par heure et qu'il fait 18°C. Il suffira de chauffer à 6h30 pour qu'il fasse 19°C à 7h. J'appelle cette vitesse pente, elle est exprimée en °C / h et est mise à jour à chaque chauffe.

Matériel

Je n'ai pas fait grand chose de ce côté là. Vincent m'a prêté le matériel et a fait quelques soudures. Et pour l'instant, j'ai tout monté sur une platine de prototypage.

  • ESP32-PICO-KIT V4
  • Sonde de température TMP175 (I2C)
  • Un relais de type SRD-05VDC-SL-C
  • LEDs, boutons poussoirs, etc

La base : les entrées/sorties

Tout est programmée en C avec la toolchain IDF de l'ESP32. J'ai essayé les différents éléments tout seul : une première sonde de température analogique, puis la sonde I2C, puis le relay, etc. Je me suis aussi familiarisé avec le wifi sur ESP32 et le serveur web.

Fonctionnement du régulateur

La chaudière est pilotée en tout ou rien. Lorsque le relais est passant, la chaudière chauffe, sinon elle s'arrête.

Ce thermostat implémente une hystérésis. C'est-à-dire que pour atteindre une consigne à 19°C, il va chauffer jusqu'à dépasser un peu la température (19.3°C par exemple). A la descente, il va attendre de dépasser la consigne (18.7°C par exemple) pour chauffer.

Fonctionnement de la prédiction

La prédiction à deux entrées : le booléen qui indique la chauffe et la température. Grâce à ces deux données, elle actualise la pente (en °C/h).

La prédiction agit au début et à la fin de la chauffe. C'est-à-dire lorsque chauffe passe à vrai, puis lorsqu'il passe à faux. Elle enregistre alors 2 points X1 et X2. Si la différence de température entre ces deux points est d'au moins 1 degré, elle calcule la pente. La pente est la différence des températures entre X1 et X2 divisée par la durée entre X1 et X2.

Pendant un période d'absence, le logiciel calcule le temps qu'il faudra pour atteindre la consigne. Cette durée dépend de la température actuelle et de la pente. Lorsque la durée jusqu'à la période de présence est inférieure à ce temps de chauffe, la consigne du régulateur est mise à jour pour atteindre la température de présence.

L'Architecture

Modules du thermostat qui adapte le temps de chauffe.

Le module Régulateur (controller/hysteresis.h) implémente l'hystérésis. Il pend en entrée la température actuelle et renvoie le booléen chauffe. Il est paramétré par une consigne.

Le module Prédiction (controller/estimator.h) reçoit en entrée la température actuelle et le temps (jour de la semaine, heure et minute) et renvoie la pente.

Enfin le module Gestion (le main dans thermostat.c) reçoit la température actuelle et définie la consigne en fonction de la pente et des horaires de présence.

Tout ces modules reposent sur une couche d'abstraction donnant accès au matériel (température, relais, bouton poussoir) et au serveur web (définition des endpoints). Un module stock aussi la configuration et les horaires sous forme d'un jour (lundi-dimanche), heure et minute.

Interface web

Page web du thermostat connecté.

Tout est très léger et sans cosmétique. Un endpoint permet d'accéder aux statistiques sur 24h (température, pente et chauffe).

Deux boutons poussoirs permettent de passer en mode présence ou absence.

Améliorations

  • Ajouter un écran LCD. Il pourrait même permettre de remplacer l'interface web.
  • Économie d'énergie : mettre l'ESP32 en veille entre chaque mesure.

Quelques livres lus en 2021

Je parle ici de quelques romans que j'ai lus en 2021. Ils ne sont pas classés par préférence car ils sont tous bien.

Couleurs de l'incendie de Pierre Lemaitre

Vous connaissez sûrement Au revoir là-haut. C'est un livre de Pierre Lemaitre sorti en 2013. L'adaptation cinématographique par Albert Dupontel est de 2017. L'histoire raconte comment deux amis et anciens combattants de la première guerre mondiale doivent ruser pour vivre dans un Paris qui les rejette. En effet, suite à la guerre, Edouard Péricourt a été défiguré et son ami Albert Maillard est devenu paranoïaque. Le fond est lourd mais l'histoire est drôle et colorée.

Couleurs de l'incendie est la suite de ce romans mais peut très bien se lire indépendamment. L'histoire est bâtie autour de la soeur d'Edouard Péricourt, Madeleine et son fils Paul. Au début du romans, Marcel Péricourt, leur père, décède. Il dirige une banque et c'est Madeleine qui en hérite mais elle n'est pas formée pour gérer ça. L'héritage fait des envieux chacun veut sa part. Parallèlement on assiste à l'actualité de l'époque notamment l'arrivée d'Hitler au pouvoir en Allemagne. L'histoire parle aussi de l'industrie de l'époque et de la musique.

Ce que je retiens de ces deux histoires, c'est l'humour même aux moment les plus sombres de l'histoire et surtout les stratagèmes des personnages pour arriver à leurs fins.

Le Miroir de nos peines complète cette trilogie.

Travail soigné et Alex de Pierre Lemaitre

Ces livres racontent les enquêtes de Camille Verhœven. Je conseille de lire dans l'ordre Travail soigné puis Alex. Il y en a d'autres avec cet enquêteur.

Les intrigues sont vraiment originales et m'ont tenu en halène jusqu'au bout. Un point commun entre tous les livres de Pierre Lemaitre que j'ai lu : même les personnages secondaires ont leur petit défaut (radin, calculateur, il ne communique pas, etc). J'ai bien aimé Alex pour l'humour de l'auteur dans les scènes les plus difficiles.

Seul sur Mars de Andy Weir

Journal de bord très réaliste d'un astronaute laissé seul sur Mars. Il essaie de survivre avec le matériel et les vivres dont il dispose. C'est intéressant à lire si on aime la science : c'est très juste et rempli de calculs et d'explications. En revanche, la psychologie du personnage ne parait pas du tout. L'inventivité de l'astronaute est impressionnante et l'histoire est captivante.

Ubik de Philip K. Dick

Je trouve que la prouesse de ce livre de science fiction est qu'il date de 1966 et qu'il n'a pas vieilli.

Il n'est pas vraiment basé sur des technologies mais des modifications de l'humain qui permettent une sorte de télépathie. La mort peut aussi être suspendue.

Dans son silence de Alex Michaelides

C'est l'histoire d'une peintre qui est retrouvée pleine de sang au côté de son mari assassiné. Depuis elle ne parle plus. Un phychothérapeute essaie de la faire parler et de comprendre ce qui s'est passé.

Vraiment très bien.

Quand sort la recluse de Fred Vargas

Un policier que j'ai beaucoup aimé. Le thème est original.

Le crépuscule de l'Aube de Ken Folett

Un préquel de la série Les Piliers de la Terre parue entre 1989 et 2020.

Chaque livre de cette série parle d'une famille d'artisans, souvent sur plusieurs générations. L'intrigue d'un seul livre peut se passer sur des décennies.

Les Piliers de la terre, raconte la vie de bâtisseurs de cathédrale, dans Un monde sans fin, un homme bâti des ponts. On assiste aussi à l'inventivité d'une commerçante de tissus. Une colonne de feu, parle des conflits entre protestants et catholiques.

Cette année, j'ai lu Le Crépuscule et l'Aube qui est un préquel. Il est similaire au premier tome des piliers de la terre avec un personnage qui construit des bateaux. J'ai beaucoup aimé retrouver l'univers de la série. Si vous ne connaissez pas la série, je conseille de commencer par Les Piliers de la terre, même si ce livre se situe avant dans la chronologie.

Je trouve que les métiers sont expliqués avec précisions. Mais ces romans sont beaucoup plus large que ça. Leur dimension historique nous apprend beaucoup sur le moyen âge. On s'attache aussi aux personnages : le bon homme d'église contre le mauvais, le personnage astucieux contre les traditions. Les nombreuses intrigues secondaires rendent les personnages plus intéressants.

Le style d'écriture est dynamique et même si les livres sont long, ils se lisent très bien.

Quelques autres

J'ai lu aussi Regarde de Hérvé Commère. Je l'ai assez bien aimé.

La république des pirates de Jean-Marie Quéméner qui était plutôt sympa.

J'ai lu les deux premier de la série du Sorceleur de Andrzej Sapkowski: Le Dernier voeu et L'Epée de providence j'ai bien aimé l'univers et le personnage du sorceleur. Les deux premiers livres étant juste des recueils de contes, il faudrait que je lise la suite pour connaitre l'histoire.