Ochsner Warmtepomp – Grafiek TQE (MySQL / CSV)

ochsner logo

amcharts logo

Dit voobeeld laat zien hoe je vanuit een MySQL database een CSV bestand schrijft voor een grafiek met amCharts, het gaat hier om de laagste TQE waarde van een gegeven datum in de database.

Wat heb je nodig?

1) MySQL database gevuld met data van dit script voor de wamtepomp.
2) amCharts

Waarom eerst naar CSV?

Het script is gemaakt om standaard 365 dagen terug te gaan in de tijd vanaf de datum van vandaag, de query kan hier 20 a 30 seconden over doen (op een Synology NAS) voordat alle gegevens bekend zijn, dit komt omdat het script de database moet doorlezen, welteverstaan 365 dagen x 96 regels = 35040 regels, dit duurt even, daarom is het mogelijk om dit script ook in een CRON te zetten vlak na het wegzetten van de warmtepompgegevens. Op deze maier wordt de grafiek direct getoont en hoeft de gebruiker niet eerst te wachten.

Hoe werkt het?

Onderstaand script leest de gegevens uit de MySQL database waarin de warmtepompgegevens staan, het leest de ca 96 regels van een dag door en gaat dan steeds een dag terug (standaard 365 dagen, anders het opgegevens aantal), het script zet de laagste TQE waarde weg in een CSV bestand ‘\data\warmtepomp_tqe’ (punt-komma gescheiden):

Kolom 1 = Datum in YYYY-MM-DD
Kolom 2 = Getal (laagste waarde TQE van deze datum)

Bijvoorbeeld voor 20 dagen aan gegevens: warmtepomp_tqe.php?dagen=20

Krijg je dit in je browser te zien:

en de CSV in ‘data\warmtepomp_tqe.csv’:

Taakplanner (CRON)

Zet het aanroepen van dit script in de taakplanner (bijvoorbeeld van een Synology) om zo altijd over de laatste 365 dagen de actuele gegevens weg te schrijven naar het CSV bestand:

Voorbeeld van de Warmtepomp CRONs:

Cron 1 > 00:15 > php /volume1/web/boeke/warmtepomp.php gisteren database
Cron 2 > 00:20 > php /volume1/web/boeke/warmtepomp_tqe.php

Het ‘warmtepomp_tqe.php’ script (ik heb commentaar regels tussen het script gezet)

TQE Grafiek

We gaan nu verder met de grafiek om het gegenereerde CSV bestand ‘data\warmtepomp_tqe.csv’ uit te lezen, we gebruiken hiervoor amCharts, ik heb een tutorial hier geschreven om CSV bestanden in te laden en naar de grafiek te “drukken”, maak een bestand aan ‘warmtepomp_tqe_grafiek.php‘ met de inhoud:

Als je nu via de browser het php bestand opent krijg je de grafiek te zien:

warmtepomp_tqe_grafiek