Menu
Home
Werking
Kosten / Baten
Opbrengst
Blog
De installatie
De datalogger
Links

Laatste meting


DHZ Datalogger deel 1

Doe het zelf datalogger, deel 1

Dit is deel 1 van mijn doe het zelf datalogger project.

Zie ook deel 2.

Ik begin meteen met het "laatste" onderdeel: de website. Hier is een ZIP bestand te downloaden met daarin een draaiende versie van de grafieken op mijn website.

Instructies (ik ga uit van een Windows omgeving):
  • pak het bestand uit
  • ga met de verkenner naar het uitgepakte archief, naar de directory datalogging
  • start het bestand: Usb Webserver.exe
  • het adres http://localhost:8080 wordt nu geopend in de browser
  • kies een datum (ergens tussen juni en december 2008) en klik op "go", de grafieken worden ververst

Uitleg

Ik maak gebruik van USB Webserver. Dit is een volledige kant en klare Apache + PHP + Mysql omgeving onder Windows.
Het is (vind ik) de gemakkelijkste manier om een draaiende demo omgeving te verspreiden. Je hoeft niets te installeren: starten en draaien maar.

De directory datalogging\Root bevat de bestanden waar het feitelijk om gaat.

charts_library
charts.php
charts.swf

Deze directory en deze 2 bestanden bevatten de PHP/SWF Charts library, welke ik gebruik om grafieken weer te geven.

tik.php

Registreer een puls, afkomstig van de pulsen teller. Dit php bestand kan op 2 manieren worden aangeroepen

om een puls te registreren:
tik.php?teller=1&tijdstip=2009-01-04%2018:35

om alle totalen te berekenen
tik.php?tijdstip=2009-01-04&mode=bereken

index.php

Dit php script geeft alle gevraagde grafieken weer

chart_data.php

Dit bestand levert de "rauwe" data aan, welke in de grafiek getoond moet worden.

Berekenen...

Het berekenen gebeurt met behulp van tabellen in een Mysql database.
Deze database is ook te bekijken via

http://localhost:8080/phpmyadmin/

gebruikersnaam: root
wachtwoord: usbw

Bij het berekenen gebruik ik een "bottom-up" benadering. Ik begin op het meest gedetailleerde niveau, en gebruik telkens die tussenliggende uitkomst, op de globalere totalen te berekenen.

tabel: kwh_log
hier worden alle tikken geregistreerd, de tabel bevat veel extra kolommen, zodat er later makkelijk gegroepeerd kan worden

tabel: dagdeel
bevat de geproduceerde watturen en wattages per dagdeel. Een dagdeel is 5 minuten

tabel: dag
bevat de gesommeerde watturen per dag

tabel: week (niet gebruikt)
bevat de gesommeerde watturen per week

tabel: maand
bevat de gesommeerde watturen per maand

tabel: jaar
bevat de gesommeerde watturen per jaar

Bekijk en leer...

Toegegeven, de PHP code welke ik hier heb gemaakt is nogal "houtje touwtje" programmeerwerk, maar voor dit demo doeleinde functioneert het goed genoeg.

Ik zou zeggen, bekijk de code en probeer te begrijpen hoe het werkt. Misschien is het bruikbaar voor je. Pas het aan naar wens!

Commentaren
commentaren zijn voor rekening schrijver ervan. Wij zijn niet verantwoordelijk voor de inhoud.
datalogger op NSLU2
Verstuurd Op: 2009-07-12 22:38:01   Door: Anonymous
 
Hoi,
via de Google zoekopdracht 'NLSU2 en datalogger' kwam ik op jouw website uit. Ik ben al even bezig met een project dat vergelijkenissen vertoont met hetgeen je hier beschrijft.
Ik ben bezig een datalogger op te zetten met de NSLU2, met de bedoeling de data zichtbaar te maken via internet. Hiervoor draait op de NSLU2 een webserver. Data die wordt verzameld kan van allerlei bronnen komen. Op dit moment heb ik een kwh en gasverbruik teller gemaakt. Deze gegevens zou wil ik via een database of tekstbestand opslaan.

Op jouw website zag ik dat je een opstelling had van een AVR bord en een NSLU2. Ik heb ondertussen een seriele verbinding tot stand kunnen brengen met de NSLU2 (met een USB-to-serial converter), waarover ik data kan sturen. Ik heb alleen nog geen idee hoe ik deze data op kan slaan op de NSLU2. Gezien jij met een vergelijkbare configuratie hebt gewerkt, vroeg ik me af of jij hier misschien nog wat documentatie of informatie over had. Draait er een programma op de NSLU2 die op gezette tijden naar de USB poort 'luistert'? Of wordt er een commando naar de NLSU2 gestuurd (naar de usb poort) waarop de NSLU2 reageert?

Hopelijk kun je me op weg helpen.

Alvast bedankt.

groeten,
Sander
svboxtel at gmail . com