IoT, Big Data et automatisation…les fondations d’une maison “green” ?
489.5 Térawatt heure, c’est ce que consomment chaque année en moyenne les Français en électricité, et les habitations représentent plus de 35% de cette consommation. Maintenant, imaginez que plus des deux tiers de l’énergie consommée est perdue dans les transferts entre milieux ; pire, plus de 65% de cette énergie provient de combustibles fossiles (gaz, fuel, charbon).
Si d’ici 2025 les nouvelles normes de fabrication devraient réduire de 30% environ l’énergie perdue, c’est vers la technologie qu’il faut se tourner pour imaginer un modèle plus efficace encore: l’internet des objets, l’automatisation et l’analyse des données.
Une façon de consommer éco-responsable
Aujourd’hui nombreux sont ceux qui cherchent à consommer de façon plus responsable, à ne plus céder aux sirènes de la surconsommation. Si le marché ne nous y aide pas toujours, mais c’est un autre débat, je reste persuadé que c’est une question de juste milieu. L’excès nuit en tout, et la nature nous le rappelle bien assez souvent.
De fait, il ne s’agit pas d’arrêter de consommer, mais de le faire de manière réfléchie et sans gaspillage inutile de ressources et d’énergie. Nos habitations étant toujours des gouffres énergétiques, penser son habitation autrement grâce aux nouvelles normes de construction et aux technologies informatiques peut grandement aider à réduire notre empreinte environnementale.
La maison connectée
Cela fait des années qu’on en parle, mais la maison connectée est tout juste en passe de devenir une réalité grâce à l’essor des technologies, et notamment l’IoT. Le projet présenté ici est la construction d’une maison familiale dans la moitié sud de la France, les matériaux mis en œuvre, les équipements de chauffage et de production d’eau chaude étant adaptés au climat local. La finalité étant de réaliser un bâtiment capable de capter et de conserver les calories disponibles naturellement. Ce projet s’appuie sur les concepts développés et éprouvés dans la démarche bioclimatique ou de la maison passive.
- Compacité du bâtiment et orientation au sud.
- Enveloppe isolante continue et étanche à l’air.
- Captation et maîtrise des apports solaires.
- Récupération des calories rejetés par la ventilation.
- Panneaux photo-électrique et chauffe-eau solaire.
L’intérêt de ce projet est que non seulement il présente une vision à long terme, mais il se veut également meilleur que le standard dans la prévision des gros écarts de température (réchauffement climatique, changement des saisons, effondrement du Gulf Stream régulant la température…). Nous en avons encore eu la preuve récemment, en Janvier 2015, où nous avons eu plus de 20° de différence d’une journée sur l’autre.
Les contraintes d’une approche éco-responsable
Néanmoins cette approche amène une certain nombre de contraintes qui doivent être connues pour y apporter des solutions adaptées. Prenons l’exemple des liquides caloporteurs des chauffe-eaux solaires : leur version bio est plus sensible aux montées de pression et de chaleur, ce qui entraîne par exemple une diminution de la durée de vie et une perte de leur pouvoir de transmission des calories importante. Dans ce cas précis, la solution consiste à placer un volet roulant sur le dispositif, de manière l’empêcher d’être trop exposé à la chaleur ; l’activation du volet roulant peut alors se faire par déclenchement d’un capteur ou des commandes manuelles…mais que se passe-t-il s’il n y a personne sur place pour déclencher la commande ?
L’apport de l’automatisation à la maison connectée
A quoi sert d’avoir un outil si on oublie de s’en servir ? C’est ici qu’entre en jeu l’automatisation, non seulement pour nous libérer de taches répétitives, mais surtout pour fiabiliser leur exécution. Qui n’a jamais oublié d’éteindre la lumière, laissé la fenêtre ouverte ou le chauffage allumé ? J’ai donc décidé de prototyper des mises en situation, en partant de l’idée d’un Arduino qui déclencherait des actions en réaction à un évènement. Par exemple, abaisser le volet en fonction de certains paramètres codés en dur…mais cette approche reste trop unitaire et manque de souplesse.
Pour palier à ces nouveaux problèmes il a fallu prendre la question à l’envers et faire un modèle de contrôle et d’interaction « plat » qui permet un interfaçage sans limite de composants, même ceux qui n’existent pas encore. La seule condition étant que ces contrôleurs puissent parler aux bases de données qui stockent les états des différents composants matériel.
L’automatisation, un projet en plusieurs phases
Au delà de vouloir automatiser une action comme la fermeture ou l’ouverture des volets, il faut considérer une phase d’anticipation et vraiment coder une intelligence qui lui permettrait par exemple de s’affranchir d’action humaine. Avant d’aller plus loin, il faut donc expliquer les différentes couches de l’automatisation spécifiques à ce projet :
- Couche 0 : Niveau actuel – pas du tout automatisé
- Couche 1 : Simplification des interfaces – communication centralisée
- Couche 2 : Automatisation des parties centrales – 99% du travail manuel
- Couche 3 : Automatisé à 99% – l’humain contrôle
- Couche 4 : Automatisé à 100% – la machine n’empiète pas sur les actions humaines (qui peuvent la contraindre)
- Couche 5 : Intelligence Artificielle – La machine prévoit et anticipe des phénomènes encore inconnus.
Ce découpage a plusieurs fonctions, déjà il permet de découper le travail de développement en plusieurs axes, plus ou moins prioritaires. Ensuite, il permettra à terme d’isoler des composants indépendamment des autres, par exemple si le niveau 5 se comporte aléatoirement, il pourra être désactivé afin de ne plus causer de problèmes tout en maintenant les niveaux de fonctionnement sous-jacents.
Infrastructure de la maison connectée
Au niveau de l’interaction entre les composants, l’objectif est la fiabilité, la scalabilité, mais surtout le maintien de coûts bas. Il s’agit également d’assurer l’adaptabilité des composants et de pouvoir facilement les remplacer.
Nous avons donc choisi des Arduino Uno, Mega et Nano en tant que collecteurs de données mais aussi contrôleurs. C’est un modèle de données simple à plusieurs états (On, Off, Analogique). Ces états peuvent se traduire tel que :
- On : 1 (ou 255)
- Off : 0
- Analogique : 1-254
Ces états sur des composants de la maison sont donc stockés dans un cluster de base de données entre une machine virtuelle (VM) et un Baggle Board Black (secouru par batterie – autonomie 12h), ce qui laisse une flexibilité à l’utilisateur de l’ordinateur qui héberge la VM. Cette base de données a pour vocation d’être très légère niveau système, elle est ne garde que les 24 dernières heures de données. Cette base s’appelle « IOSQL » pour : « Input, Output SQL ».
D’un autre côté on a un moteur de base complètement différent afin de pouvoir interfacer un module de corrélation basé sur la solution Big Data d’Elasticsearch. Les graphiques du tableau de bord sera fait grâce au moteur de graphiques Kibana.
Automatisation : garder le contrôle
Automatiser au maximum ne signifie pas pour autant ne pas laisser le contrôle à l’habitant. Dans certains cas, un état à un moment donné pourrait être contradictoire avec l’usage en cours : par exemple, les habitants décident de laisser une des portes fenêtres ouverte afin d’accéder à la terrasse exposée plein sud. Pour éviter que l’automate décide de fermer les volets comme c’est indiqué dans sa procédure habituelle (bloquant ainsi les habitants à l’extérieur), il est possible de palier à cette situation avec par exemple des détecteurs de présence. De manière plus générale, il est toujours possible d’appliquer un facteur “action humaine” pour prévenir certaines actions de l’automate. Certaines actions pourraient par exemple être validées par l’utilisateur après réception d’une notification par SMS.
Le lissage de données
Pour déclencher les bonnes actions (quoi faire à quel moment), l’automate doit disposer des bonnes informations (quand, où, comment?). Le déclenchement d’une action étant déterminé par la variation par rapport à un seuil (température supérieure à X° par exemple), on prévoit donc une gestion de seuil, et le stockage de ces seuils en base de données. Néanmoins, ces seuils doivent également être contrôlés, adaptés, ne serait-ce qu’en fonction de l’évolution des températures. Mais qui contrôle ces seuils, de l’humain ou de la machine? Encore une fois, l’humain peut se tromper, oublier, mal interpréter…et donc ne pas changer (ou mal le faire) l’une de ces valeurs parmi le millier que contient la table.
D’où l’idée d’une cinquième couche d’automatisation, qui lisserait les tendances en fonction du temps, et modifierait les variables d’environnement en fonction de ses prévisions. Certaines valeurs pourraient être bloquées pour éviter à l’automate d’interférer avec les préférences des habitants.
Pour prévoir l’avenir (climatique), il faut cependant s’appuyer sur des données passées : le système sera donc alimenté en données par une mini station météo sur site (installée en amont de la construction pour collecter des données), autoalimentée par l’énergie solaire, qui transmettra des blocs de donnée via GSM/MMS.