Récupération données InfluxDB sous Python pour post-traitement

Histoire de bien réguler ma commande de chaudière, j’ai besoin de post-traiter quelques mesures qui sont stockées régulièrement sur InfluxDB. Ceci peut être utile pour, par exemple, calculer l’erreur (P), la pente de l’erreur (D), et l’intégration de l’erreur (I) avec pandas pour tenter de réguler la chaudière avec un régulateur PID.

from influxdb import DataFrameClient
import pandas as pd
import plotly.plotly as py
import plotly.graph_objs as go

dbname = 'temperature'
client = DataFrameClient(host, 8086,username,password, dbname)

consigne = client.query("SELECT value FROM consigne_chaudiere")

Petit problème, mes sondes ne sont pas toutes enregistrées en même temps (quelques ms d’écart, voir minutes pour la sonde extérieure). On doit donc retravailler le tableau, resample à 1minute, et interpoler linéairement pour les trous qui apparaissent (NaN).

consigne = client.query("SELECT value FROM consigne_chaudiere")
consigne = pd.concat(consigne, axis=1)
consigne.columns = consigne.columns.droplevel()
consigne.index.name="time"
times = pd.to_datetime(consigne.index)
consigne  = (consigne.groupby(times.round('1min') )['value'].mean()).asfreq('Min')
consigne2 = consigne.resample('T')
consigne_interpolated = consigne2.interpolate(method='linear')

On fait pareil avec la mesure de température (salon), puis on peut calculer l’erreur entre les deux car les points correspondent temporellement dans les deux séries.

A moi les folles soirées de calcul et de test de régulation !

Gestion du chauffage – arduino / nodered / grafana

Avec l’arrivée de l’hiver, il devient plus que nécessaire de rebrancher la vieille chaudière et de lui redonner un petit coup de jeune. Du moins, essayer.

Je m’étais déjà attelé à placer un plancher chauffant dans la majeure partie du rez-de-chaussée, avec tout ce qui va bien pour s’adapter à une chaudière existante (régulateur combimix). Mais, comme j’ai viré le vieux thermostat de 1970 qui fonctionnait en mode « débile » (juste une consigne, pas de régulation avancée) on était obligé d’allumer la chaudière à la main tant que la domotique n’était pas passée par là … je n’avais pas envie de taper 100€ dans un thermostat qui n’allait faire que la moitié des choses que je voulais. Lire la suite

Domotique en rénovation lourde

Dans la rénovation de ma nouvelle maison « toute pourrie à refaire », j’ai voulu intégrer de la domotique. Pas pour gérer simplement les luminaires (c’est la partie « fun » et visible de l’iceberg), mais plutôt pour gérer la partie technique de la maison. Finalement, une bonne installation domotique ne se voit pas et gère tout ce qu’il faut :

  • gestion chaudière
    • eau chaude sanitaire
      • gestion de la boucle d’eau chaude sanitaire
      • gestion des cycles de chauffe (on chauffe avant l’heure des douches/bains, pas en plein milieu de la journée … sauf sur demande)
    • chauffage, avec tout ce qui est gestion température, courbe de chauffe, sonde extérieure, gestion des circulateurs, …
  • monitoring températures
    • visuels interactifs
  • VMC
    • gestion bypass (si je me décide à en prendre un)
    • gestion des débits
  • absences
    • température basse
    • simulation présence
  • portail / videophone
  • lumières
    • les WC sont allumés depuis 15minutes ? on éteins !
    • gestion des ambiances (soirée, film, diner, lecture, …)
    • lumières extérieures avec la luminosité
  • gestion serre
    • ouverture en cas de surchauffe ou humidité extrême
    • arrosage
  • et tellement plein d’autres choses. Sky is the limit !

Lire la suite

Un PCB pour mes poules !

A mon retour de vacances, après un mois d’utilisation de ma porte automatique de poulailler, j’ai pu améliorer ce qui n’allait pas. En tout cas, le système a tenu mon mois de congé sans broncher (ou presque)

Plusieurs problèmes ont étés observés:

  • la jonction écrou / porte était fragile. Je l’ai donc amélioré en noyant l’écrou dans l’épaisseur d’un bloc en chêne, bien plus rigide.
  • Les glissières utilisées (les moins cher du brico) avaient trop de jeu. Avec la gravité et le poids de la porte, elles génèrent beaucoup de frottement. Le moteur doit donc beaucoup forcer pour refermer/ouvrir la porte. Je l’ai donc changé pour une version avec roulement à bille, avec peu de jeu.
  • J’ai refait la porte dans une chute de plateau en chêne, bien droit cette fois.

Le résultat est déjà beaucoup plus professionnel !

Nouvelle porte de poulailler

Lire la suite