Techniek

Grandix weerstation is een weerstation in de gemeente Oud-Beijerland. De gegevens die wij met ons weerstation verzamelen zetten we graag voor u op een rijtje. Maar wat moet er nu allemaal gebeuren om dit voor elkaar te krijgen?

Inhoud

Lokaal

Het weerstation Grandix staat opgesteld in een achtertuin in de wijk ‘De Oosterse Gorzen’ in Oud-Beijerland. Er wordt gebruik gemaakt van een Davis Vantage Pro 2 weerstation. Dit weerstation stuurt bijna constant de gegevens naar een lokaal scherm (zeg maar het hart van het station) dat de binnenkomende data analyseert en interpreteert. Deze gegevens worden op het scherm weergegeven.

Door middel van een datamodule wordt de data ook verstuurd naar een lokale server. Deze server heeft als software WeatherLink en doet eigenlijk hetzelfde: data verwerken. Deze data is in dit softwarepakket te bekijken, maar ook te exporteren.

Internet

Dit exporteren gaat volledig geautomatiseerd. Elke 5 minuten genereert de server meerdere platte tekstbestanden die naar internet worden verzonden. Deze plek, waar alle actuele data is te vinden, wordt door allerlei webservices, zoals Hetweeractueel.nl en Wheater Underground, benaderd om de data op te halen.

Ook deze website haalt elke 5 minuten van die plek de data op. De data wordt vervolgens door de webserver bewerkt waarna het netjes in de database geplaatst wordt.

De site

De website haalt alle data uit de lokale database, waardoor de site niet afhankelijk is van een constante verbinding met het lokale weerstation of de ‘verzamelplek’ met alle data. Doordat de gegevens in de database staan kunnen er ook makkelijk gemiddelden berekend worden, zoals bij de historische gegevens.

Overige weerdata op de site

We gebruiken niet alleen onze eigen weerdata op de site. Zo hebben we bijvoorbeeld ook nog de meerdaagse verwachtingen en de actuele weerkaart. Deze gegevens komen onder andere van het KNMI, Meteo Consult, Hetweeractueel.nl en Buienradar. Deze gegevens worden bijna allemaal openbaar gemaakt door de betrokken instanties. Meestal gebeurt dit door middel van een XML-feed.

In het geval van de meerdaagse verwachting voor Oud-Beijerland wordt er gebruikt gemaakt van een op maat gegenereerde XML-feed van Hetweeractueel.nl en Meteo Consult. Deze data krijgen we door mee te doen aan de samenwerking tussen deze instanties.

De XML-feeds worden geautomatiseerd binnengehaald. De interval hiervan verschilt per dienst. De XML-feed van Buienradar wordt elk kwartier vernieuwd, terwijl de data voor de meerdaagse verwachtingen slechts een of twee keer per dag binnengehaald wordt. Wanneer de webserver de data binnen heeft wordt er een lokale kopie opgeslagen van het bestand. Deze lokale kopie wordt gebruikt door de website als er een pagina wordt opgevraagd die de gegevens gebruikt.

Het voordeel van een lokale kopie is dat de gegevens sneller beschikbaar zijn. Als het bijvoorbeeld druk is op de server van de andere partij wordt onze website ook slomer. Daarnaast besparen we op deze manier veel dataverkeer.

Historische data

De historische data is een aardige berg data. Om deze pagina’s snel te houden worden de gemiddelden die op de pagina’s staan ook lokaal opgeslagen. Dit is niet erg, omdat historische data toch niet veranderd. De data blijft vanzelfsprekend wel in de database staan.

Er worden meerdere berekeningen uitgevoerd om de historische data te bepalen. Zo worden alle metingen van een dag of maand geanalyseerd om een gemiddelde windrichting of –snelheid te krijgen, maar ook om de totale neerslag te berekenen.

Webcam

Linksys WVC210De webcam is een draadloze Cisco WVC210. Deze webcam staat opgesteld in de dakkapel, recht onder de windmeter (anenometer). De camera neemt beelden op van het noorden. Globaal richting Rhoon - Hoogvliet.

De webcam heeft een draadloze verbinding met de lokale server. Op die server draait momenteel Webcam XP Pro. Deze verstuurt elke 5 minuten een snapshot van de stream van de camera via FTP naar de website.

Er wordt lokaal een dagarchief opgebouwd. ’s Nachts wordt dit archief geautomatiseerd verstuurd naar de server, waarop het oude archief gelijk wordt verwijderd. Lokaal worden de afbeeldingen in het grote archief gezet.

API

De API wordt gebruikt om data aan andere sites beschikbaar te stellen. De data wordt geautomatiseerd verwerkt naar een XML-feed of een afbeelding. Dit gebeurt een keer per uur voor de XML en elke vijf minuten voor de afbeelding.

Zowel de XML-feed als de afbeelding worden vervolgens lokaal opgeslagen. Als een andere site een request doet voor deze onderdelen wordt het een en ander gecontroleerd. Zo heeft de site een geldige en unieke API-sleutel nodig die gratis aangevraagd kan worden. Als de controles niet kloppen wordt er een foutmelding gegeven. Als de controles wel goed zijn krijgt de website toegang tot de opgeslagen gegevens.

Weericoon

Voor het weericoon is er een algoritme geschreven die de data analyseert. Enkele variabelen hierin zijn de tijd, de tijd van zonsopkomst en –ondergang en de huidige weercondities. Aan de hand van deze gegevens zoekt het systeem een eerder aangegeven afbeelding.

Deze afbeelding wordt op diverse plaatsen gebruikt. Onder andere in de API-afbeelding, bij de diverse voorspellingen en in de favicon van de site, die dynamisch wordt gegenereerd.

Dagelijkse nieuwsbrief

Vanzelfsprekend staan wij niet elke dag om 5 uur in de ochtend op om de nieuwsbrief te verzenden. Dit gebeurt volledig geautomatiseerd. Elke dag berekent de server alle waarden en verwerkt deze in een HTML-template. Tegelijkertijd wordt er ook een tekstversie van de nieuwsbrief aangemaakt.

De nieuwsbrief wordt samengesteld uit de data van de dag ervoor. Dit is niet alleen weerdata, maar ook, indien aanwezig, data uit het nieuws van de dag ervoor en de voorspelling die op dat moment door het station wordt gegeven. In de voorspelling zit onder andere de lokale meerdaagse verwachting verwerkt.

Als de nieuwsbrief is samengesteld wordt deze verzonden. Alle ontvangers krijgen de nieuwsbrief in principe binnen in HTML-vorm waardoor de nieuwsbrief afbeeldingen kan gebruiken. Als het programma van de lezer de HTML-versie niet ondersteund wordt de platte tekstversie gebruikt.

Twitter

Tweets verzenden gebeurt ook automatisch. Elk uur bepaalt de server de actuele waarden en verzend deze naar ons Twitter-kanaal. Ook nieuwe voorspellingen, nieuwsberichten en eens per uur een webcambeeld worden naar het kanaal verzonden. Alle Tweets worden vergezeld door een korte URL waarmee direct naar de goede pagina op Grandix.nl wordt genavigeerd. De korte URL worden gemaakt door gebruik te maken van de Bit.ly API. De webcam afbeelding wordt verzonden naar TwitPic.

Alle berichten worden netjes in een wachtrij gezet die eens per tien minuten door de server naar Twitter wordt verzonden. Op deze site langskomen heeft dus zeker zin: daar staat alle informatie toch als eerste!

Enkele cijfers

Grandix is nu twee jaar in de lucht. In deze periode hebben we ruim 200.000 metingen gedaan. We hebben gemiddeld 40 bezoekers per dag, maar in tijden met extreem weer kan dit oplopen tot 100 unieke bezoekers per dag. Er zijn meer dan 20 andere sites die op de een of andere manier gebruik maken van onze gegevens. Meestal gebeurt dit met de API-afbeelding.

Grandix neemt deel aan 4 partnerprogramma's en stelt aan de twee grootste weerpartijen in Nederland de gegevens beschikbaar: KNMI en Meteo Consult.

 
Temperatuur: -5,6 °C
Windsnelheid: 0,0 km/h ZO
Neerslag: 0,0 mm
Luchtdruk: 1.033,1 hPa
Licht bewolkt, weinig verandering van temperatuur.