3 points par GN⁺ 2024-05-06 | 1 commentaires | Partager sur WhatsApp
  • En connectant Tasmota sur les prises connectées athom.tech EU style plug V3 à Prometheus et Grafana déjà présents sur le serveur domestique, il est possible de visualiser la consommation électrique à long terme des appareils électroménagers et du matériel informatique
  • L’architecture consiste à exécuter tasmota-power-exporter pour chaque prise, puis à faire en sorte que Prometheus scrape toutes les secondes ; dans Grafana, il faut régler min step sur 1 seconde pour obtenir des graphiques détaillés
  • Sur environ 4 mois de mesures, le chauffe-eau électrique a consommé en moyenne 4.51kWh/jour, tandis que l’ensemble du bureau de télétravail a consommé en moyenne 0.95kWh/jour ; le Zimaboard tournait autour de 7W en usage normal, soit moins qu’un modem/routeur d’opérateur
  • Les graphiques de tension ont aussi révélé les heures de pointe et le fonctionnement des appareils à forte puissance ; quand le chauffe-eau, la bouilloire électrique, la cuisinière électrique ou le micro-ondes s’allument, la tension baisse légèrement sur toutes les prises
  • C’est utile pour des mesures de longue durée, mais certaines prises n’envoyaient pas leurs statistiques à temps ou disparaissaient du réseau, ce qui nécessitait un redémarrage électrique ; l’automatisation basée sur le prix de l’électricité reste une prochaine piste d’expérimentation

Observer la consommation électrique sur le long terme avec des prises connectées

  • L’objectif est de suivre visuellement sur la durée la consommation électrique d’équipements comme un serveur domestique, un routeur, une station de travail ou un chauffe-eau électrique
  • Le simple wattmètre numérique utilisé auparavant suffisait pour consulter des mesures instantanées, mais montrait ses limites pour comprendre comment les appareils consomment sur de longues périodes
  • Le produit utilisé est une variante de la EU style plug V3 d’athom.tech, avec une livraison vers l’UE en 9 jours, Noël compris
  • Les prises sont livrées avec Tasmota préinstallé, et peuvent être connectées au Wi-Fi puis administrées dans le navigateur en suivant la notice fournie
  • La mise à jour du firmware jusqu’à la dernière version se fait en quelques clics dans l’interface web

Architecture de collecte avec Prometheus et Grafana

  • Les données du compteur électrique sont collectées dans une instance Prometheus déjà présente sur le serveur domestique
  • Prometheus sert à lire périodiquement des métriques depuis plusieurs sources, à les stocker sur disque, puis à les interroger et les manipuler plus tard
  • Sur le serveur, une instance de tasmota-power-exporter est lancée par prise
    • Prometheus scrape chaque exporter une fois par seconde
    • Il serait aussi possible de faire exporter les métriques directement par la prise, mais l’option de construire soi-même le firmware Tasmota n’a pas été retenue
  • Pour la visualisation, l’instance Grafana existante a été réutilisée
    • Pour obtenir les points de données les plus détaillés sur les graphiques, il faut régler min step sur 1 seconde

Consommation électrique observée sur environ 4 mois

  • Chauffe-eau électrique

    • Le chauffe-eau électrique de 30L est l’équipement qui a consommé le plus parmi ceux mesurés
    • Il s’agit d’un modèle suffisant pour une ou deux douches rapides ou une grosse vaisselle
    • Les mesures sont les suivantes
      • Consommation électrique typique : 4.51kWh/jour
      • Minimum observé : 0.56kWh/jour, généralement quand il n’y avait personne à la maison
      • Maximum observé : 11.1kWh/jour, lors d’une journée avec beaucoup de lessive et de douches
  • Serveur domestique et équipements réseau

    • Les charges du serveur domestique tournent sur un Zimaboard, choisi notamment pour sa faible consommation
    • La consommation du Zimaboard est la suivante
      • Au repos : environ 2W
      • En usage normal avec tous les services actifs : environ 7W
      • Consommation maximale : environ 15W
    • Le boîtier modem/routeur fourni par le FAI consomme en permanence 12 à 14W, en mode routeur comme en mode bridge, donc plus que le Zimaboard
    • L’ajout de charges sensibles à la latence a conduit à revenir temporairement à un ASRock Deskmini X300 pour le serveur domestique
    • La consommation au repos du Deskmini est médiocre par rapport au Zimaboard, autour de 15 à 20W
    • Le Deskmini semblait ne pas exposer d’états basse consommation CPU au-delà de C3, alors que le Zimaboard expose des C-states jusqu’à C10
    • Aucune méthode n’a été trouvée pour exposer des C-states plus bas, ni dans les réglages UEFI ni via le noyau Linux
    • Après ajout d’un panneau de consommation du serveur dans la vue Grafana de Prometheus node exporter, l’augmentation de l’activité CPU apparaît aussi très nettement dans le graphique de consommation

Variations de tension et profils de consommation autour du bureau

  • Variations de tension

    • Les prises Tasmota remontent aussi la tension instantanée
    • Le graphique de tension présentait un motif ressemblant à une saisonnalité, et la tension baissait globalement pendant les périodes habituelles de forte demande électrique
    • Ce type de signal pourrait servir à des expérimentations de détection d’anomalies avec Prometheus ; on peut se référer à l’article de GitLab sur la détection d’anomalies avec Prometheus
    • Des baisses de tension apparaissent aussi quand des appareils très consommateurs comme le chauffe-eau, la bouilloire électrique, la cuisinière électrique ou le micro-ondes fonctionnent
    • Le chauffe-eau fait légèrement baisser la tension sur toutes les prises
    • Lorsqu’on cuisine avec la cuisinière électrique, ses cycles d’allumage et d’arrêt se voient aussi dans les relevés de tension de toutes les prises
  • Station de travail du bureau à domicile

    • Une prise mesure ensemble l’écran, le dock USB-C, la barre lumineuse de moniteur et les appareils en charge sur le bureau du home office
    • La consommation varie fortement selon les horaires de télétravail et selon que plusieurs appareils sont en charge ou non
    • Pendant le travail sur ordinateur, la consommation typique de l’ensemble est de 45 à 60W, avec des pointes autour de 90 à 110W
    • La consommation quotidienne mesurée est la suivante
      • Consommation électrique typique : 0.95kWh/jour
      • Minimum observé : 0.07kWh/jour
      • Maximum observé : 1.52kWh/jour
  • Profils de charge

    • Les prises connectées sont aussi utiles pour observer les profils de charge de plusieurs appareils
    • Un ordinateur portable ou une batterie externe se charge rapidement au début, puis la vitesse diminue à mesure que la batterie se remplit, avant de passer à une phase ressemblant à une charge d’entretien jusqu’à la charge complète
    • La batterie de vélo électrique constitue une exception : sa consommation augmente légèrement pendant la charge, puis chute plus rapidement en fin de cycle
    • En préréglage Turbo, le vélo électrique a consommé 0.5kWh pour 60km d’autonomie, soit un coût calculé à un demi-centime par km

Problèmes de stabilité et prochaines expérimentations

  • La fiabilité des prises connectées était globalement correcte, mais certaines remontaient fréquemment leurs statistiques en retard
    • La cause peut aussi venir du point d’accès Wi-Fi
    • Deux prises ont complètement disparu du réseau sans revenir, ce qui a nécessité plusieurs redémarrages électriques complets
  • Les prises peuvent allumer et éteindre les appareils via plusieurs API, dont HTTP
  • À l’avenir, il serait possible d’essayer Home Assistant ou un simple script pour allumer et éteindre certains appareils en fonction du prix courant de l’électricité
  • Dans le périmètre étudié, il existe une intégration nordpool pour Home Assistant
  • L’ensemble permet d’obtenir des mesures fiables de consommation sur divers équipements informatiques et aide à juger de leur efficacité énergétique sans devoir se fier à des estimations

1 commentaires

 
GN⁺ 2024-05-06
Commentaires sur Hacker News
  • J’ai acheté un disjoncteur de puissance Zigbee et j’ai branché toute l’électricité de la maison pour qu’elle passe par lui, et j’ai aussi fabriqué un écran e-ink qui affiche la consommation électrique
    https://www.stavros.io/posts/making-the-timeframe/

    • Aux Pays-Bas, tous les compteurs intelligents installés par l’opérateur du réseau électrique doivent prendre en charge la norme P1, ce qui permet au client de lire la consommation de courant instantanée, la consommation cumulée, etc., via une interface standard. En général, le compteur de gaz y est aussi connecté
      En y ajoutant un dongle peu coûteux, on peut voir des statistiques dans une application ; par exemple, j’utilise celui-ci : https://www.homewizard.com/nl/shop/wi-fi-p1-meter/
      Ce compteur fournit aussi une API en réseau local. J’ai créé un petit driver pour le SmartThings Hub afin de pouvoir voir les statistiques et les graphiques dans l’app SmartThings, et j’utilise le hub SmartThings pour les appareils Zigbee/Z-Wave : https://github.com/danieldk/homewizard-energy
    • On dirait que le lien AliExpress pour l’écran est cassé. Comme souvent
      L’intégration naturelle serait probablement Home Assistant. Je ne sais pas s’il existe encore une intégration directement exploitable dans Home Assistant, en dehors du fait qu’Earu lit les valeurs via Zigbee2MQTT et configure les entités. Cela dit, le schéma consistant à connecter le compteur à un hub d’automatisation, puis à laisser le hub pousser vers l’écran une image du compteur et d’autres informations, a l’air pertinent
    • J’aime bien cette personne parce qu’elle est amusante. J’ai même pris un abonnement annuel à 12 $ pour le projet IMGZ, et je précise que je n’ai aucun lien avec eux au cas où cela semblerait être une pub sophistiquée
      https://imgz.org/
      Le bouton « open in wallet » pour payer en BTC doit être corrigé. Le lien est cassé
      À part ça, ça fonctionne bien. Exemple : https://imgz.org/iAB4tgaJ/
    • Je me demande quel disjoncteur de puissance il utilise
  • Il y a quelques années, je me suis passionné pour le sujet et j’ai acheté un appareil peu connu appelé Rainforest Automation Eagle : https://www.rainforestautomation.com/rfa-z114-eagle-200-2/
    Une fois enregistré auprès du fournisseur d’électricité, c’est un simple appareil Linux qui lit le compteur intelligent, et il fournit une API XML que j’utilise via un bridge vers Prometheus : https://github.com/kklipsch/reagle
    Je fais aussi un bridge du flux tarifaire de ComEd vers Prometheus : https://github.com/kklipsch/comed_exporter
    Grâce à ces deux éléments, je peux assez bien visualiser dans Prometheus puis Grafana la consommation de toute la maison ainsi que les informations de prix

    • Je serais curieux de savoir si tu peux partager comment tu combines les tarifs horaires avec les mesures de consommation électrique
  • Je suis allé encore plus loin en installant un Emporia Vue 2 dans le tableau électrique. Il est connecté à 16 transformateurs de courant ainsi qu’au principal triphasé
    Il est basé sur ESP32, et il existe un excellent projet ESPHome qu’on peut flasher pour un reporting 100 % local. En y ajoutant Home Assistant et VictoriaMetrics, on peut voir tout le fonctionnement de la maison dans Grafana. La prochaine étape est le contrôle d’injection zéro pour piloter une petite installation solaire OpenDTU à partir de ces données. On vit vraiment une époque formidable

    • La combinaison VictoriaMetrics + Grafana est excellente. Cela dit, ce serait bien de pouvoir renseigner des descriptions de métriques pour alimenter les descriptions dans l’explorateur de métriques de Grafana. C’est traditionnellement le rôle du champ help dans les métadonnées des métriques Prometheus
      VictoriaMetrics/Grafana est en train de remplacer notre système industriel d’historisation, même si ce produit n’est évidemment pas le haut de gamme. OSI PI serait probablement meilleur
    • Je me demande s’il existe d’autres alternatives similaires en matériel open source. Si possible avec Ethernet, et idéalement ESPHome
      Les clones qu’on peut trouver coûtent presque aussi cher que le matériel « original »
      Les ATM90E32AS coûtent environ 1 $ par canal chez JLCPCB, donc en confiant même l’assemblage SMT, ça devrait être possible d’en fabriquer à assez bas coût. Dans mon cas d’usage, le circuit compte environ 60 canaux
    • L’appareil athom.tech sur lequel l’auteur original a installé Tasmota peut aussi être commandé, au même prix, en version préflashée avec ESPHome, et il fonctionne avec Home Assistant. Je l’ai utilisé pendant environ un an sur une charge de prise unique de 2500 W et j’en ai été satisfait
      Pour la charge de toute la maison, je recommande plutôt une intégration avec la technologie de compteur intelligent utilisée dans chaque pays
      Pour les charges intermédiaires, par exemple un disjoncteur 32 A dans un tableau de distribution résidentiel, je n’ai pas encore trouvé de solution à la fois fiable et rentable
    • J’ai acheté un moniteur CURB Energy il y a environ 6 ans, et je me demande si quelqu’un sait s’il est possible d’y flasher un firmware open source. Il n’y a qu’une intégration cloud, et j’aimerais le connecter à Home Assistant
    • Je serais curieux d’avoir plus d’explications sur ce qu’est une installation solaire OpenDTU
  • J’ai utilisé un appareil IoTaWatt qui peut être installé dans le tableau électrique. C’est une excellente solution pour la surveillance par circuit, et il s’intègre directement à InfluxDB, ce qui permet d’utiliser Grafana
    La surveillance par prise est aussi géniale pour identifier des appareils précis sur certains circuits
    Courte vidéo de configuration : https://www.youtube.com/watch?v=-tcbJCvuJG8

    • J’ai découvert la chaîne récemment, et le contenu est très bon. J’ai dû regarder la vidéo sur le homelab une dizaine de fois
      J’ai trois locations de vacances dans un vieux bâtiment, et je suis en train d’y ajouter de l’automatisation et du monitoring ; l’une d’elles inclut un kiosque Raspberry Pi basé sur l’une des vidéos
    • Un ami m’a envoyé aujourd’hui en DM un lien YouTube de visite de homelab, et c’est comme ça que j’ai découvert la chaîne. On a des centres d’intérêt assez proches
      J’utilise aussi IOTAWATT et j’en suis très content. Mon seul reproche, c’est que j’aimerais pouvoir enregistrer plus de canaux sur le même appareil, par exemple autour de 30 canaux
  • Je récupère les métriques de consommation électrique depuis le Tapo P110 et je les pousse vers Grafana Cloud avec https://github.com/richardjennings/tapmon. Mais comme d’autres l’ont dit, utiliser le Wi-Fi pour des prises intelligentes a ses aspérités

    • D’accord. J’ai remplacé plusieurs interrupteurs muraux par des interrupteurs intelligents Wi-Fi Leviton, et je ne pense pas revenir au Wi-Fi. C’est difficile de leur faire totalement confiance
      Les prises intelligentes Meross sont un peu meilleures, mais elles perdent quand même la connexion de temps en temps. C’est légèrement mieux depuis une mise à jour
  • J’essaie de pousser Grafana vers un usage IoT/SCADA de contrôle. C’est un excellent outil pour visualiser les sources de données, et j’aimerais aussi en faire un outil pour contrôler les puits de données
    Personnellement, ça ne me plaît pas trop de devoir recommander Home Assistant pour cet usage
    Je travaille chez Grafana Labs

    • Si Grafana prenait en charge les champs de saisie numérique et les boutons, il pourrait facilement remplacer quelque chose comme Wonderware InTouch
      Les systèmes SCADA traditionnels sont tellement mauvais pour les graphiques que c’est un domaine qu’on pourrait vraiment bousculer
    • Ce serait vraiment bien. J’utilise un tableau de bord Grafana pour des essais thermiques sous vide, et tout le monde continue à demander des fonctions SCADA simples
    • Je serais curieux que tu expliques davantage comment ce que tu appelles des puits de données s’appliquerait ici à cette idée
  • À moitié pour rire mais à moitié sérieusement, je me demande si l’usage de Grafana à lui seul n’annule pas les gains obtenus grâce au monitoring. S’il faut citer un logiciel qui consomme régulièrement bien plus de ressources que ce qui paraît raisonnable, ce serait Grafana

    • En l’exportant vers Splunk ou Datadog, on peut brûler bien plus d’argent que ce qui paraît raisonnable
    • La solution simple, c’est de tirer une rallonge depuis chez le voisin et d’alimenter l’équipement de monitoring avec cette électricité
  • J’ai acheté un ESP32 bon marché avec un capteur de luminosité, puis j’ai fixé ce capteur sur le compteur électrique. Le compteur clignote 1000 fois par kWh, donc je lis ça
    J’envoie les données vers Google Sheets, puis je laisse la feuille faire les graphiques, et ça fonctionne bien
    J’ai aussi installé chez un parent âgé un autre ESP32 avec un capteur PIR, qui envoie les données de mouvement vers une autre feuille Google Sheets afin de surveiller s’il y a un minimum d’activité
    Est-ce que je m’attends à ce que Google supprime ce service un jour ? Oui, mais pour l’instant ça marche. On peut écrire et lire des données dans Google Sheets depuis l’ESP32 en JSON ; ce n’est pas intuitif, mais c’est possible et gratuit

    • J’aime bien la simplicité de l’approche. Mon ancien compteur n’avait qu’un disque rotatif, donc j’ai fait des pieds et des mains pour brancher sur un Arduino un capteur capable de détecter le repère noir sur le bord du disque
      Il y avait tout juste assez de mémoire pour héberger un service HTTP permettant de remonter cette valeur vers iobridge pour du monitoring à distance
    • J’utilise un appareil Frient Zigbee qui fait la même chose, et j’envoie les données vers Home Assistant
  • Je suis surpris qu’on ne parle pas davantage ici des moniteurs Shelly. Ils sont bien pour le monitoring de la maison entière, c’est-à-dire l’arrivée principale et la consommation par circuit, leurs intégrations sont assez ouvertes, et ils s’intègrent directement à Home Assistant
    À la maison, il semble plus logique de garder des disjoncteurs standards « stupides » et d’ajouter un moniteur complémentaire plutôt que de coupler fortement les fonctionnalités dans un seul appareil

    • J’utilise une douzaine de relais Shelly et j’en suis satisfait. En revanche, pour le comptage électrique, ce n’est pas une excellente solution
      Les pinces triphasées sont très chères, et il n’y a pas d’option pour brancher 8 ou 16 capteurs comme avec Emporia Vue. Shelly mérite d’être mentionné, mais pas pour de la mesure électrique fine
  • Il y a aussi le fait qu’on peut aller jusqu’à l’automatisation. Une automatisation récente que j’ai mise en place baisse le volume de la sonnette quand le générateur de bruit blanc du bébé est allumé

    • Je serais curieux que tu expliques davantage comment Prometheus ou Grafana aident pour l’automatisation. Je ne pensais pas que l’un ou l’autre fournissait ce genre de fonctionnalité