Web 2.0 in the real world

alt
 

Hot topics

Track & Trace

Guus Disselkoen  25 November 2014 23:50:27
Image:Track & Trace
Wie kent het niet? Je besteld wat via een web winkel en vervolgens ontvang je een e-mail met een tracking code om je pakket te volgen, van verzending tot bezorging.

Wie mijn website, www.waarisguus.nl, kent, weet dat dit er een beetje op lijkt. Je kun precies zien waar ik ben en in welke richting ik beweeg. Het enige verschil is, je hebt me niet besteld.
Voor mijn Track & Trace maak ik gebruik van de Android App "Real Time GPS Tracker" van greenalp.com die je kunt vinden in de App store van Google.

De werking is vrij simpel, je installeerd de App en configureert een aantal instellingen en klaar. Wil je een kaartje waarop je actuele positie getoond wordt op je website, dan moet je dit aanvragen. Een minpuntje. Ook ben je verplicht een banner op je website te plaatsen. Helaas is ook de App niet geheel vrij van reclame, niet dat het hinderlijk is, maar ik houd er niet van.

Domotica

Nu ben ik de laatste tijd ook veel bezig met Domotica, het automatiseren van je huis. Van verlichting die automatisch aan gaat wanneer het donker wordt, tot het dimmen van verlichting wanneer ik een video of TV kijk. Ik gebruik hiervoor Domoticz, een open source product dat volledig gratis is.

Ook de thermostaat van de verwarming, de E-thermostaat van Essent, is gekoppeld aan Domoticz. De E-thermostaat is via een hub verbonden met het internet en via een website of App stel je de thermostaat in. Je kunt een dag programma instellen per dag of een hele week. Je kunt per dag bepalen wanneer de verwarming aan moet en wanneer deze uit moet. Daarnaast kun je via de website of de app 'handmatig'  ingrijpen. De thermostaat hoger zetten wanneer je onverwachts thuis bent, of juist lager zetten wanneer je onverwachts weg gaat of op vakantie gaat.

Met mijn niet geheel regelmatige werktijden zou het handig zijn dat de verwarming niet automatisch om zes uur aanspringt als ik toch pas om half acht thuis kom. Ook zou het handig zijn dat, wanneer ik mijn huis verlaat en de verwarming aan staat, deze automatisch naar een lagere temperatuur overschakelt en naar een hogere temperatuur als ik weer thuis kom.
Met Domoticz kan dat. Ik kan de temperatuur instelling van de thermostaat aanpassen via Domoticz, maar dan moet Domoticz wel weten waar ik ben. Ben ik thuis of niet thuis? Ben ik onderweg naar huis en bijna in de buurt? Zo ja, dan moet de verwarming aan.

Er is een manier om te bepalen waar ik ben en dat heet geofencing. Geofencing is plaatsbepaling op basis van bijvoorbeeld GPS, connectie met GSM masten of via WiFi.
Aangezien vrijwel iedere smartphone is voorzien van GPS heb je eigenlijk alleen een App nodig die de locatie gegevens verzamelt en ergens naar toe stuurt om deze te kunnen gebruiken voor verschillende doeleinden.
Ik weet de GPS coordinaten van mijn huis en wanneer ik weet waar ik zelf ben, omdat ik mijn smartphone op zak heb, dan kan ik bepalen of ik thuis ben of in de buurt van mijn huis ben, en aan de hand van deze gegevens bepalen of de verwarming aan of uit moet.

Btraced

Tijdens mijn zoektocht naar geofencing en Domoticz stuitte ik op de App Btraced.Een App die op gezette tijden de huidige GPS coordinaten verstuurd naar de site van Btraced of naar een eigen server. Met name de laatste optie maakt het interessant. Ik kan de gegevens naar mijn eigen server sturen, deze verwerken en gebruiken om Domoticz de opdracht te geven mijn verwarming aan of uit te zetten.

Hoe werkt het?

Btraced stuurt op de ingestelde intervallen een XML bericht naar mijn server met daarin tal van gegevens betreffende mijn positie. De GPS coordinaten, het tijdstip, de hoogte waarop ik mij bevind, de snelheid waarmee ik beweeg, etc. Maar deze informatie moet wel omgezte worden naar data waar wat mee gedaan kan worden. Op het forum van Btraced is voorbeeld code te vinden om een eigen server op te zetten die de XML berichten kan verwerken en de gegevens opslaat in een database. Maar dat is nog niet voldoende. Op basis van de onvangen gegevens moet bepaald worden of er iets gedaan moet worden met de verwarming. En ook daarvoor is weer een oplossing. Ik ben kennelijk niet de enige die dit wil en iemand is druk in de weer geweest om een script te maken dat op basis van de locatie gegevens een opdracht stuurt naar Domoticz. Domoticz beschikt over een zeer goede API en kan via http url's aangestuurd worden. Zo kun je een schakelaar aan of uit zetten via een url commando of andere apparaten aansturen mits het apparaat dit ondersteund. Sensoren kunnen alleen uitgelezen worden.

Maar de schatkamer van Btraced is nog lang niet leeg. Omdat alle "tracking points" ook opgeslagen worden in een database kun je deze gebruiken om een kaart te maken met behulp van Google Maps. En niet alleen een kaart met de huidige locatie, maar ook de afgelegde route(s). en een historisch overzicht.
Ook hier voor hoef ik niet alles zelf te bedenken en is dat al door iemand bedacht en is er een voorbeeld script te vinden.

En hier vallen de puzzelstukjes in elkaar. Op zoek naar een oplossing om de verwarming aan te sturen en een betere oplossing voor het kaartje op www.waarisguus.nl.

ToDo

De scripts die ik tot nu toe gevonden heb bevatten allemaal functionaliteit die ik wil gebruiken. Er is een script dat de XML verwerkt en opslaat in een MySQL database, een script dat ook de XML opslaat in een MySQL database maar ook de kaart genereerd met behulp van Google Maps, en een script dat gebruikt kan worden om apparaten via Domoticz aan te sturen.
Van al deze scripts wil ik een oplossing maken die doet wat ik voor ogen heb. de oplossing zal er als volgt uit gaan zien:
  • Verwerken data uit XML, ontvangen van de Btraced App, en bepalen of er een commando naar Domoticz gestuurd moet worden om de verwarming aan of uit te zetten
  • Genereren van een kaart m.b.v. Google Maps om te tonen op de website
Aangezien er nog heel wat uit te zoeken is, en te sleutelen aan de scripts, zodat deze doen wat ik graag wil, zal het nog wel even duren voordat dit ook zichtbaar is voor de bezoekers van de website.


Comments
No Comments Found

Translate

Feeds

Companies

    Atos Origin
    Achmea
    Inter Access
    ilionx
    transavia.com
    IBM

Google searches

Referrers