Met het doel om instant inzichtbaar te maken hoe energie "flowt" in mijn woning wil ik een dashboard in Grafana bouwen wat de laatste gekende waardes weergeeft.
Op dit moment heb ik mijn 2 omvormers via een scriptje naar InfluxDB weten te loggen, ongeveer iedere seconde wordt er een record weggeschreven met een host tag waar alle AC en DC waardes inzitten.
Het is me ook gelukt om in Grafana netjes beide omvormers te laten rapporteren:
:fill(white):strip_exif()/f/image/WRqGaWOdoP8B9vshNRzfUkxD.png?f=user_large)
Maar zoals je ziet is het Totaal een probleem. Total is een Grafana calculatie van beide getallen. Beide getallen worden uiteraard niet op precies hetzelfde moment weggeschreven zoals je hieronder kan zien:
/f/image/rqqpvOZ1a39HKBcBBgKB6a7L.png?f=fotoalbum_large)
Als de omvormer actief aan het opwekken is dan liggen deze waardes trouwens doorgaans maximum maar een secondje uit elkaar. Ik dacht dus dat ik het zou kunnen oplossen met group by (1s) maar door een afronding gaat dat ook niet altijd lekker
Hoe kan ik inregelen in Grafana dat hij gewoon de laatste values pakt, ongeacht timestamp en ze bij elkaar optelt?
Nu is het maar een kwestie van 2 waardes, maar je kan je voorstellen dat als ik zodadelijk op 3 fases vermogen ga meten en dit voor injectie, afname en verbruik van het huis zelf dat dit probleem zich zwaarder gaat manifesteren.
Op dit moment heb ik mijn 2 omvormers via een scriptje naar InfluxDB weten te loggen, ongeveer iedere seconde wordt er een record weggeschreven met een host tag waar alle AC en DC waardes inzitten.
Het is me ook gelukt om in Grafana netjes beide omvormers te laten rapporteren:
:fill(white):strip_exif()/f/image/WRqGaWOdoP8B9vshNRzfUkxD.png?f=user_large)
Maar zoals je ziet is het Totaal een probleem. Total is een Grafana calculatie van beide getallen. Beide getallen worden uiteraard niet op precies hetzelfde moment weggeschreven zoals je hieronder kan zien:
/f/image/rqqpvOZ1a39HKBcBBgKB6a7L.png?f=fotoalbum_large)
Als de omvormer actief aan het opwekken is dan liggen deze waardes trouwens doorgaans maximum maar een secondje uit elkaar. Ik dacht dus dat ik het zou kunnen oplossen met group by (1s) maar door een afronding gaat dat ook niet altijd lekker
SQL:
1
2
3
4
5
6
7
8
| select last(vermogen) FROM ( SELECT mean("number_SMA_ACVermogen") as vermogen FROM "SMA_values" WHERE $timeFilter AND ("host" = 'SMA1') GROUP BY time(1s) ) |
Hoe kan ik inregelen in Grafana dat hij gewoon de laatste values pakt, ongeacht timestamp en ze bij elkaar optelt?
Nu is het maar een kwestie van 2 waardes, maar je kan je voorstellen dat als ik zodadelijk op 3 fases vermogen ga meten en dit voor injectie, afname en verbruik van het huis zelf dat dit probleem zich zwaarder gaat manifesteren.