De EmSE robot "Blikvanger".


[Home] [English] [Introductie] [Contact] [Doelstelling] [Projecten] [Aktiviteiten] [Aanmelden]

De EmSE BlikVanger


De robot blikvanger De blikvanger is ons EmSE gezamenlijke project rond het opzetten van een wedstrijdrobot. Oorspronkelijk opgezet als robot om ballen te vangen (zie de beschrijving op www.robochallenge.nl; de 2009 missies) is het project nu omgebogen naar een robot voor de Roborama wedstrijd van de HCC en RobotMc wedstrijd, met als doel het verzamelen van een aantal lege cola-blikjes in een parcours. Voor details zie de wedstrijdregels op robotmc.org (pdf download).

De charme van dit EmSE project is het wild-west karakter. Doordat ieder een deel inbrengt, is het een combinatie van materialen en stijlen (in de kunst zou je zeggen "gemengde techniek"). Gedeeltelijk fischertechnik, een deel aluminium profielen, hout, van alles komt er aan te pas. Ditzelfde is ook te zien aan de softwarekant; variërend van complexe beeldherkenning en 'visual servoïng' op een netbook tot simpele motorbesturing op een 8-bit AVR processor, het zit er allemaal in.

De groep aan het werk Het projectteam is met wisselende samenstelling een aantal avonden bezig geweest, waarbij een eerste werkende versie aan de praat is gekregen. Nog niet alle componenten zijn geïntegreerd, maar de basis heeft bewezen te werken, getuigende het filmje.

Onze strategie


Onze strategie: met beeldherkenning de blikken vinden en via visual servoïng er naar toe rijden. Het idee is dat je niet allerlei coördinaat- transformaties nodig hebt, en dat je rechtstreeks regelt aan de hand van wat je ziet (en zoals we het zelf ook doen; feedback via de ogen). Vervolgens worden de blikken met een arm opgepakt en in een verzamelbak gedeponeerd. Tegelijkertijd moet er voor gezorgd worden dat de robot niet tegen de wanden van het parcours oprijdt, via ultrasoon-sensoren. Deze formulering geeft al een ruwe opsplitsing in taken en mechanica, zoals vervolgens door verschillende leden uitgewerkt (zie ook het onderstaande plaatje). Het zal duidelijk zijn dat vervolgens de integratie ook het nodige gezamenlijke plezier heeft opgeleverd.

Centrale controle


De taken van de robot Besloten is één systeem als centrale master aan te wijzen. Oorspronkelijk hadden we hiervoor de fischertechnik controller in gedachten, maar door gebrek aan communicatiemogelijkheden hebben we toch besloten dit voorlopig op het netbook te doen. In deze unit komen alle touwtjes (softwarematig, maar ook hardwarematig via USB) bij elkaar en worden de hoog-niveau beslissingen genomen (de meeste units zijn vrij autonoom, dus laag-niveau beslissingen worden lokaal gemaakt).

Een voorbeeld van zo'n hoog-niveau beslissing is het op- en neer laten gaan van de arm; de controle zegt alleen 'op' en 'neer', de arm-besturing zorgt voor de details als een vloeiende beweging en het op tijd beginnen met afremmen.

Beeldherkenning (netbook)


Hoe vind je een blik? Hiervoor is met behulp van een USB web-cam een vision systeem geïmplementeerd, met behulp van de gratis IVT (Integrating Vision Toolkit) library. Aan de hand van van te voren getraind referentiemateriaal herkent deze de blikken, en geeft naar de centrale controller door of en hoeveel deze links danwel rechts uit het centrum staan. Hiermee is de visuele servo geïmplementeerd. Deze taak draait als zelfstandige thread op dezelfde netbook als waar de centrale controller draait.

Motorbesturing en sensoren (fischertechnik)


De aansturing van de motoren gaat door middel van pulsbreedte-modulatie (PWM, pulse width modulation), welke hardwarematig aanwezig is in de fischertechnik controller (al kan deze het benodigde vermogen niet aan; er zit nog een PWM booster in het chassis). Ook diverse sensoren en actuatoren zitten hierop aangesloten, zoals nabijheidsensoren (voor het voorkomen van botsingen) en de aansturing van het ventiel van de pneumatische grijper in de arm.

Grijparm


De grijparm was oorspronkelijk voor een eerder project ontworpen (zie de inleiding), en is hier hergebruikt. De aansturing gebeurt met twee intelligente AX-12 servo's, zodat de software daar weinig omkijken naar heeft (al zit de intelligentie ook wel eens in de weg). Door een contra- gewicht gaat het draaien van de arm met weinig kracht. Aan de arm zit een pneumatisch aangedreven grijper, waarbij een fischertechnik luchttank met compressor voor de benodigde druk zorgt.

Chassis (power en motoren)


De onderkant van de robot Alles moet van energie voorzien: computers en motoren. Alle vermogenscircuits zit onderin het chassis. De energie wordt verzorgt door twee battery-packs van ieder 6 NiMH cellen van 4600 mAh, totaal ongeveer 17 Volt. Dit is een heleboel energie in een klein pakketje (kortsluiting? 20A @ 15V is 300 Watt, gedurende 10 minuten...). Voorzorgsmaatregelen als zekeringen zijn dan wel op zijn plaats.

Vanuit de NiMH cellen worden diverse circuits van stroom voorzien:
De rij-motoren (ongeveer 10 Volt/1 Ampère per stuk); via pulsbreedte- modulatie vanuit de fischertechnik controller, met een FET-gebaseerde booster (print links naast de motoren) voor de stroomsterkte. Op dit moment regelen we de 17 volt met een aparte lineaire regelaar terug naar 10 Volt, om het vermogen van de motoren alvast wat terug te brengen, en storing op de electronische circuits te voorkomen (grijze koelblik rechtsboven). Dit soort motoren kan nogal wat storing geven!
De servo-motoren voor de arm (en ook de LED verlichtingsbalken): 12 volt via een geschakelde voeding
Fischertechnik (controller en luchtpomp voor grijper): vanaf de servo- motorvoeding via twee diodes en elco voor extra ontkoppeling naar 9Volt

En toen samen


Na alle onderdelen afzonderlijk gemaakt te hebben is het tijd om het geheel uit de delen samen te stellen. Daarbij stuit je soms op onverwachte problemen. Zo blijkt het niet handig te zijn om op rode blikjes te trainen als je ook een rode muur in de kamer hebt... Ondanks dat de software op de patronen op het blikje moet zijn getraind was de rode muur toch te aantrekkelijk. Maar na wat bijsturen en afregelen was toch de eerste rit richting het blikje een feit; zoals vastgelegd in het filmpje.

Nu nog verder voor deelname aan een werkelijke wedstrijd. Door tijdsgebrek moet hier nog het een en ander gebeuren; extra vrijwilligers zijn dan ook zeker welkom!

logo

Blikvanger de robot van EmSE from Nick Brok on Vimeo.


Website © Copyright 2016 Stichting Embedded Systems Eindhoven. Pagina vernieuwd op 28 maart 2016.