Game of Drones

Mathias
Bos
  • Rian
    Beck

Drone banner 0

Machines en robots zijn al veelvuldig in gebruik in allerlei toepassingen, maar de stap zetten van voorgeprogrammeerde, domme toestellen naar slimme robots die autonoom taken uitvoeren, dat is vandaag nog steeds een uitdaging. En liefst doen ze deze taken nog beter, veiliger én sneller dan de mens. Wij gingen deze uitdaging aan met een drone.

‘Waarvoor is dit nuttig?’

Drones hebben veel potentieel op vlak van inspecties op moeilijk bereikbare plaatsen in industriële installaties, ze geven overzicht vanuit ‘vogelperspectief’ op een ongeval of rampsituatie, en kunnen snel kleine pakketjes afleveren. Maar laat ons eerlijk zijn: ze zijn ook gewoon leuk! Kleine quadcopters (drones met vier propellers) zijn snel, wendbaar en kunnen acrobatische toeren uithalen, wat indrukwekkende taferelen oplevert. Anderzijds zijn ze uitdagend om te besturen. Daarom zijn ze ideaal voor baanbrekend onderzoek.

De demo ontwikkeld in deze thesis is ontworpen om met behulp van een drone te tonen waar ingenieurs aan de KU Leuven mee bezig zijn. Het resultaat is een interactieve demo die principes uit de regeltechniek illustreert, en dat in een reeks taken met een stijgende graad van autonomie en dus ook stijgende moeilijkheid.

Laat de drone het maar zélf doen

Met autonomie bedoelen we hier: de drone kan zijn taak uitvoeren zonder dat een mens de besturing verzorgt. Dat wil niet zeggen dat de mens niets doet tijdens de demo: hij kan aangeven waar naartoe of waarlangs de drone moet vliegen. Maar hoe de drone dat doet, dat beslist hij helemaal zelf.

Het eerste niveau van autonomie voor een drone is: blijf waar je bent. De meeste drones hebben reeds een ingebouwde controller die de drone rechtop houdt, dus is het vooral van belang ervoor te zorgen dat de drone ook zijn gewenste positie behoudt en niet ‘ronddobbert’. Hiervoor moet hij zijn eigen locatie nauwkeurig kennen.          

De demo vindt indoor plaats, waar GPS onbruikbaar is. Daarom lokaliseert de drone zich met behulp van het HTC Vive VR gaming system. Ook al zijn de positiemetingen van de Vive erg nauwkeurig, een belangrijke bijdrage in deze thesis is het ontwerp van een positieschatter (een algoritme dat de drone gebruikt om te bepalen waar hij is) die in geval van minder nauwkeurige metingen toch een heel goede schatting kan geven van de exacte positie en snelheid van de drone. Dat doet hij door de positiemetingen af te toetsen tegen een model van de drone. Als wat de meting vertelt niet overeenkomt met wat volgens het model kan, dan gaat hij meer op het model vertrouwen en de meting automatisch bijstellen. Testen tonen aan dat in geval van toegevoegde ruis op de metingen en een lager aantal metingen per seconde, de positieschatting toch zeer nauwkeurig blijft.

Ter plaatse blijven kan de drone dan met een eenvoudige feedback controller: hij meet waar hij is, hij vergelijkt dat met waar hij zou moeten zijn, en hoe verder dit uiteenligt, hoe meer hij zijn best doet om terug naar de gewenste positie te vliegen.         

Dit kan ook uitgebreid worden naar een bewegende referentie; de referentie wordt verlegd door een toeschouwer die met een Vive controller rondbeweegt, en de drone volgt de handbeweging.

Het tweede niveau van autonomie is het volgen van een willekeurig pad doorheen de ruimte. Dat pad wordt door een toeschouwer getekend, die zijn of haar creativiteit kan tonen met eender welke 3d-tekening. Dan wordt het pas echt interessant qua controle. Naast de feedback, kan nu ook feedforward controle toegepast worden. Dit houdt in dat op basis van het model van de drone berekend wordt welke inputs aan de drone aangelegd moeten worden om de gewenste snelheden en posities op het getekende pad te halen. Dit heeft als voordeel dat de drone anticipeert op wat er komt door vroegtijdig bij te sturen. Feedforward controle zorgt er zo voor dat de drone veel sneller kan rondvliegen zonder aan nauwkeurigheid in te boeten.

navigate slalom

Het derde en laatste autonome niveau houdt in dat de drone zelf een vloeiend pad opstelt tussen stilstaande en bewegende obstakels en dat pad aflegt om zo snel en veilig mogelijk een opgegeven doel te bereiken. Het berekenen van dit optimale pad gebeurt met software ontwikkeld aan de KU Leuven genaamd ‘OMG-tools’. Deze thesis draagt bij tot het praktische gebruik van deze software in een echte toepassing.

Slim, snel, maar ook veilig?

Vaak zijn machines of robots dom, in de zin dat ze één taak heel snel en nauwkeurig kunnen uitvoeren, maar niet flexibel geprogrammeerd zijn om vlot tussen taken te wisselen. Tijdens de demo wil de operator graag kunnen kiezen wanneer hij welke opdracht geeft. Maar ook de drone zelf moet beslissingen kunnen maken. Allemaal leuk en wel, zo snel mogelijk rondvliegen tussen obstakels, maar wat als er iets misloopt? Zo kan het gebeuren dat de drone plots geen metingen meer binnenkrijgt van het Vive-systeem. Ook dan moet de drone op een veilige manier reageren.

Dit is mogelijk gemaakt door het besturingssysteem van de drone te programmeren als een ‘Finite State Machine’. Dit is een structuur waarin een aantal ‘toestanden’ voor de drone zijn gedefinieerd. Wanneer de drone een fout ontdekt, bijvoorbeeld het wegvallen van een meting, of wanneer de operator aangeeft dat het tijd is voor een andere opdracht, wisselt de drone van toestand. Het gedrag van de drone is altijd uniek bepaald door de toestand waarin hij zich bevindt. Via meldingen op het computerscherm weet de operator altijd in welke toestand het systeem zich bevindt en worden misverstanden tussen mens en drone vermeden. Deze Finite State Machine met een inbegrepen ‘noodtoestand’ maakt de drone dus slimmer, flexibeler en veiliger.

Onderzoek met speelgoed

Goed nieuws: iedereen die een Parrot Bebop 2 drone en een HTC Vive heeft, kan in principe aan de slag met deze demo (let wel op: reken voor de drone zo’n €400 en voor de Vive ongeveer €700, dus echt goedkoop is het niet). Het programma is volledig open source toegankelijk en de hardware is vrij te verkrijgen in elektronica- en multimediawinkels.

Toegegeven: ingenieurs spelen soms ook gewoon nog graag met speelgoed…

QR YouTube

Download scriptie (15.87 MB)
Universiteit of Hogeschool
KU Leuven
Thesis jaar
2019
Promotor(en)
Jan Swevers; Goele Pipeleers
Thema('s)