Precisionwise bouwt robots die zelf over akkers rijden en onkruid plant voor plant verwijderen. De robots zelf bouwen we niet, wel het serversysteem erachter. Dat kent de boerderijen en percelen, geeft elke robot zijn opdracht en laat mensen het werk live volgen in een browser.
Hoe de robot zelfstandig wiedt
De akker staat op de kaart. Elk perceel is opgeslagen met zijn precieze omtrek en gewasrijen. Zo weet het systeem waar de robot mag rijden en waar de planten staan.
Er wordt een route gepland. Voor dat perceel wordt een route langs de rijen uitgezet, die als opdracht naar een robot gaat: deze robot, dit perceel, deze route.
De robot rijdt zelf. Hij volgt de route met precieze satellietnavigatie. Niemand hoeft te sturen. Zo nodig neemt een operator het over en bestuurt hem handmatig.
Hij bekijkt elke plant. Camera's op de robot kijken naar de rij vóór hem. Een herkenningsmodel aan boord onderscheidt het gewas van het onkruid. Het wiedgereedschap pakt het onkruid aan en laat het gewas staan.
Hij geeft onderweg alles door. Positie, accu, de kwaliteit van de satellietontvangst en de toestand van zijn generator komen binnen terwijl hij rijdt. De boer kijkt in een browser live mee via de camera en ziet of de robot zelfstandig rijdt, handmatig wordt bestuurd, stilstaat of in de problemen zit.
Wat we hebben gebouwd
Boerderijen en percelen
De kaart
Boerderijen, hun percelen en de omtrek van elk perceel, opgeslagen als echte kaartvormen in plaats van losse coördinaten.
Opdrachten
Robot, perceel, route
Elke taak die een robot uitvoert, met route en voortgang: van niet gereed via gereed en bezig tot afgerond.
Live telemetrie
Wat de robot doorgeeft
Positie, accu, satellietontvangst en generator, onderweg opgeslagen zodat een rit achteraf terug te kijken is.
Camerabeelden
Overal meekijken
De robots sturen hun video naar de server. Die maakt er een stream van die elke browser zonder plug-in kan afspelen.
Rollen en rechten
Wie mag wat wijzigen
Boeren, operators en beheerders zien elk alleen hun eigen bedrijven. Robots krijgen een eigen account waarmee ze gegevens kunnen doorgeven, en verder weinig.
Een eigen lijn
Robot naar server
Robots bereiken de server via hun eigen versleutelde tunnel. Hun camerabeelden zijn nooit vrij toegankelijk vanaf het internet.
Hoe we het beheren
Volledig vastgelegd in code. De hele server is beschreven in bestanden. Zo kan hij op een nieuwe machine opnieuw worden opgebouwd en kunnen de gegevens worden teruggezet.
Getest vóór elke release. Elke nieuwe versie doorloopt eerst alle tests. Faalt er een test, dan gaat de versie niet live.
Elke nacht een back-up, en elke nacht gecontroleerd. Elke dag gaat er een versleutelde kopie naar een externe locatie, en elke nacht zetten we de nieuwste kopie op proef terug, zodat we zeker weten dat die bruikbaar is.
Bewaakt. Monitoring van de beschikbaarheid, meldingen bij problemen met de back-ups, plus beveiligingsupdates en regelmatige controles.
Het draait op opensourcesoftware en is gedocumenteerd bij de code zelf, zodat een andere ontwikkelaar het zonder ons kan overnemen.
Over ons
Dit is een van onze projecten in software en infrastructuur. Wij zijn Stichting Elemental (de Elemental Foundation), een Nederlandse stichting zonder winstoogmerk die software en digitale infrastructuur bouwt die blijft werken als het misgaat.