Ce projet permet de visualiser la consommation énergétique (électricité et gaz) d'une habitation.
.maConso.env.dist
vers .maConso.env
cp .maConso.env.dist .maConso.env
.maConso.env
avec vos identifiants ENEDIS et/ou GRDF
nano .maConso.env
docker compose up --build -d
Un tableau de bord préconfiguré est déjà disponible, mais vous pouvez en créer un autre à partir des données collectées dans la base de données.
Les enregistrements incluent un tag contenant le numéro du compteur (PRM pour Linky et PCE pour Gazpar), ainsi si vous possédez un accès à plusieurs compteurs, vous pouvez filtrer les données pour ne sélectionner qu'un compteur:
from(bucket: "maconso")
|> range(start: v.timeRangeStart, stop: v.timeRangeStop)
|> filter(fn: (r) => r["_measurement"] == "ENEDIS__ENERGIE_SOUTIRAGE")
|> filter(fn: (r) => r["PRM"] == "06587593521409")
|> filter(fn: (r) => r["_field"] == "kWh")
from(bucket: "maconso")
|> range(start: v.timeRangeStart, stop: v.timeRangeStop)
|> filter(fn: (r) => r["_measurement"] == "ENEDIS__ENERGIE_SOUTIRAGE")
|> filter(fn: (r) => r["_field"] == "kWh")
from(bucket: "maconso")
|> range(start: v.timeRangeStart, stop: v.timeRangeStop)
|> filter(fn: (r) => r["_measurement"] == "ENEDIS__PMAX_SOUTIRAGE")
|> filter(fn: (r) => r["_field"] == "kVA")
from(bucket: "maconso")
|> range(start: v.timeRangeStart, stop: v.timeRangeStop)
|> filter(fn: (r) => r["_measurement"] == "ENEDIS__CDC_SOUTIRAGE")
|> filter(fn: (r) => r["_field"] == "kW")
from(bucket: "maconso")
|> range(start: v.timeRangeStart, stop: v.timeRangeStop)
|> filter(fn: (r) => r["_measurement"] == "ENEDIS__ENERGIE_PRODUCTION")
|> filter(fn: (r) => r["_field"] == "kWh")
from(bucket: "maconso")
|> range(start: v.timeRangeStart, stop: v.timeRangeStop)
|> filter(fn: (r) => r["_measurement"] == "ENEDIS__CDC_PRODUCTION")
|> filter(fn: (r) => r["_field"] == "kW")
from(bucket: "maconso")
|> range(start: v.timeRangeStart, stop: v.timeRangeStop)
|> filter(fn: (r) => r["_measurement"] == "GRDF__CONSOMMATION")
|> filter(fn: (r) => r["_field"] == "kWh")
from(bucket: "maconso")
|> range(start: v.timeRangeStart, stop: v.timeRangeStop)
|> filter(fn: (r) => r["_measurement"] == "GRDF__CONSOMMATION")
|> filter(fn: (r) => r["_field"] == "m3")