Botsingsdetectie

From Control Systems Technology Group
Jump to navigation Jump to search

De drone is verantwoordelijk voor het detecteren van de robots, en analyseren of ze een overtreding begaan.

definitie botsing

Om over een daadwerkelijke overtreding, in dit geval botsing, te spreken, moet eerst de definitie ervan geformaliseerd worden.

De robots hebben een maximale versnelling. Bij een botsing wordt er een impuls doorgegeven, die zorgt voor een hoge, plotselinge versnelling.
Deze versnelling ligt hoger dan de robot's maximale versnelling. Als dit per frame bij wordt gehouden dan is dit een grote richtlijn.

Wat daar verder bij komt kijken is de manier van contact tussen robots

Een lastig punt blijft echter de interpretatie van een botsing en de juiste beslissing nemen. Zelfs voor een getrainde scheids en robotscheids is dit
een lastig karwei. Het is mogelijk een soort AI in te bouwen, en die te laten leren van echte spelmomenten. Natuurlijk vereist dit maanden van verfijning
om de robotscheidsrechter nauwkeurig te laten functioneren.

Analysemethode

Er wordt gebruik gemaakt van kleurdetectie op de turtles. Het 'rugnummer' (nr 5, zie hieronder) van de robot heeft een bepaalde kleur, zodat deze als robot gezien wordt en in een team ingedeeld kan worden.
Verder wordt de huidige en vorige positie per frame berekend, waardoor een richtingsvector opgesteld kan worden. Als deze richting ver afwijkt van de vorige richting,
dan is er een botsing opgetreden. Nogmaals, is deze methode onnauwkeurig en toegankelijk voor fouten.

Turtle.jpg

Kalman Filter

De bewegende beelden van de camera onder de drone bevatten veel signalen en zodoende veel ruis. Om het juiste eruit te filteren, de bewegende robots, wordt een Kalman-filter gebruikt. De Kalman-filter is een methode om de ruis uit meetgegevens te verwijderen. De Kalman-filter gaat uit van een proces dat wiskundig te modelleren is. De uitkomst van het model voorspelt de te bepalen waarde op elk gewenst moment. De daadwerkelijke meting wordt met de voorspelde waarde verrekend tot een gewogen gemiddelde. Deze uitkomst is de gefilterde waarde en wordt meteen ook gebruikt om het procesmodel aan te passen.

Richtingsvector

Het MatLab script bepaalt waar de waarschijnlijk nieuwe positie van de bal is, door te kijken naar de richting van beweging.

Collisiondetection.gif

Matlab Script

Alles is geanalyseerd in Matlab, waarbij het script voor botsingsdetectie is geschreven (Matlabscript Botsingsdetectie)

Verbeteringen botsingsdetectie


Terug naar: PRE2015_2_Groep2