headerimage

SneManden.com

Samlet 5. plads ved DTU RoboCup

12. April 2013

Så er DTU RoboCup vel overstået! Og hvilken fantastisk turnering det var for os i år. Vi fik i år en samlet 5. plads i finalen, blandt 17 andre finaledeltagere. Vi tog 2x 11 points, hvilket vi er svært tilfredse med.

Du kan se eller gense hele konkurrencen fra hjemmesiden: robocup.dtu.dk. Vores første gennemløb finder sted ca. 32 minutter inde i videoen og andet gennemløb: ca. 1 time og 24 minutter inde. Men lad Dem ikke dvæle ved bemærkelsesværdige kommentarer. Efter knap 7 timers søvn på 2-3 dage, med intensivt arbejde på robotten, var fremtoningen på banen ikke en prioritet.

  • MJC før konkurrencen

    Før konkurrencen

    Mikkel og jeg måtte på egen hånd stå for forberedelsen til Robocup'en, da Joakim var udenlands, weekenden op til konkurrencen. Gulvet var som sædvanligt tilklistret med sorte streger.

  • MJC har motorproblemer

    Motorproblemer

    De sædvanlige hardware problemer. Vores robot-mekaniker forsøger at reparere motorerene. Det lykkedes at få dem under kontrol!

  • MJC ved start

    MJC til start

    Så skal MJC vise hvad den kan. Batteriet tilsluttes og robotten sætter igang.

  • MJC ved start

    Tæt på katatstrofe!

    I det første gennemløb sker en mærkelig fejl ved start; Mikkel er dog vågen, og får den startet rigtigt.

  • MJC kører gennem guilotinen

    Guillotineporten

    Første forhindring er en guillotine, som fastsætter en minimumsgrænse for den tilladte hastighed. Den står dog ikke mål med MJC's hastighed.

  • MJC kører op ad rampen

    Op ad rampen

    For at komme op ad rampen kører vi her en smule stærkere end på resten af banen. Den klarer den dog uden problemer.

  • MJC closeup

    MJC helt tæt på

    MJC er ikke typen der skal have et chasis; Vi synes det er smukt at man kan se de mange forbindelser og komponenter den er gjort af.

  • MJC på rampen

    MJC på rampen

    Her ses en af de to orange golfbolde, som hver giver ét point hvis de opsamles og "skydes" i hullet. Ikke noget MJC er forberedt på.

  • MJC kører ned ad rampen

    Ned ad rampen igen

    Der er i alt 3 nedgange: via vippe, trappe eller rampe - MJC vælger den sikre løsning.

  • MJC på linjen

    På linjen

    Det meste af tiden befinder MJC sig på en sort linje, som den følger. Dette klares ved hjælp af 8 infrarøde sensorer, placeret under det sorte "fejeblad" forrest.

  • MJC udenfor stregen

    Udenfor linjen

    Men banen er delt i to dele, som ikke er forbundet af en streg. Dette er et af de sværeste steder på banen, da der ikke er noget at navigere efter.

  • MJC kører stærkt

    Hastighedsbanen

    På hastighedsbanen, gives 0-3 point efter hvor hurtigt strækningen tilbagelægges.

  • MJC stærkt i svinget

    Rundt i svinget

    Vi anvender en PID algoritme, som gør at vi kan følge stregen ved høje hastigheder - også med sving.

  • MJC tager alle 3 hastighedspoint

    3 hastighedspoint

    Vi tog alle 3 hastighedspoint med den bedste tid på hastighedsbanen (Sortskæg kørte i samme tid). Grænsen til 2 point går ved 7.5 sekunder.

  • MJC ved okseporten

    Økseporten

    Økseporten har vi aldrig rigtig haft problemer med. Vi anvender en sikker algoritme, der langsomt nærmer sig øksen, indtil det er forsvarligt at køre igennem. Til dette anvendes ultralydscensorerene, der ses forrest på robotten.

  • MJC er igennem okseporten

    Sikkert igennem

    Okseporten giver 2 point, så vi er på dette tidspunkt oppe på 9 point.

  • MJC vender om

    Der vendes om

    Noget af det sværeste er at køre uden streg. Så derfor valgte vi i år ikke at køre gennem labyrinten. Den tager istedet økseporten igen.

  • MJC på linjen

    På vej hjem

    Turen går tilbage ad hastighedsbanen, over stykket uden linje og tilbage til mål. Under kvalifikationen havde vi ikke helt styr på at komme hjem, så med 2 hastighedspoint fik vi her 8 point.

  • MJC på fliserne

    Fliser

    Gulvbelægningen er ikke helt ensartet; der er også fliser på dele af banen, som med deres mørkere overflade står i svagere kontrast til den sorte streg. Noget især Lego-robotterne har problemer med.

  • MJC tør ikke roskilderingen

    Roskilderingen

    Foran MJC tårner sig højt den frygtindgydende Roskildering. Robottens fysiske karakteristika gør, at den med dens høje vægt har svært ved at køre derigennem og få de 3 ekstra point.

  • MJC er i mål

    MJC kører sikkert i mål

    Så derfor drejedes i stedet af, og robotten fortsætter til mål, som udløser yderligere 2 point. I alt 11 point, som MJC tog sikkert i begge gennemløb.

  • DTU Robocup finalen 2013 stillingen

    En 5. plads

    Her ses den samlede stillingen i finalen efter de to gennemløb; Sortskæg vandt suverænt konkurrencen, 2. pladsen gik til en sej Lego-robot med tilpasningsfunktionalitet og 3. pladsen gik til Wild Willy, som har været med i rigtig mange år.

Der er anvendt billeder fra det rå livestream af finalen, som her kan ses på Youtube.

Motorproblemer

Men det var ikke uden vanskeligheder, at vi nåede til dertil. Som det altid har været tilfældet havde vi igen i år motorproblemer. Det er et udpræget problem for robotterne generelt, at der er noget i vejen med motorer, sensorer, og så videre. Vores akilleshæl er dog vore motorer, som ellers er de meget populære Pololu 19:1 Metal Gearmotor 37Dx52L mm with 64 CPR Encoder. Præcis hvad der er galt har vi kun teorier om, men vi har haft dem skilt ad af flere omgange og indsmurt dem i kløver vaseline flere gange. De har været meget igennem og har naturligvis også kørt mange mange baneomgange.

Men inden kvalifikationsrunden fik vi dog endelig lidt kontrol over motorerne. Ved at tilsutte dem direkte til en strømforsyning med 12V en gang ca. hver anden time, kunne vi ligesom eliminere vore problemer for en stund. Det er som om de ikke har godt af at køre ved små hastigheder hele tiden.

Men noget af det der bragte os op på 11 point ved finalen, var at vi i år formåede at tage alle 3 hastighedspoint på banen. Dette kræver at robotten kører med en hastighed højere end 1 m/s via den sorte streg. Det kunne vores robot ved hjælp af vores tilstrækkeligt fungerende PID-algoritme. Vores tuning kan dog forbedres gevaldigt, hvilket er et af flere ting vi skal arbejde på til næste års konkurrence.

MJC - en pålidelig robot

Hver robot er speciel. Hver robot har sin egen identitet i form af fysiske karakteristika og software. Vores robot er, i modsætning til vinderen Sortskæg, ikke bygget til at klare alle forhindringer på banen. Vi kan imidlertid ikke samle bolde op, vi kan ikke tage trappen og vi har store vanskeligheder med Roskilde ringen. Men dét vi kan, og det vi har gjort, er at skabe og skrive en robot, som er pålidelig. Dét er vores mantra: sikkerhed. Vi lægger stor vægt på, at robotten til altid, under de samme forudsætninger, skal kunne køre den samme tur uden fejl. Forudsætningerne er naturligvis, at motorerne virker, der er tilstrækkelig spænding på batteriet og at banen er uændret. Denne tilgang er hvad der har bragt os i finalen og sikret os en flot 5. plads.

Vores tilgang var nemlig, at det ikke var nok at robotten kunne klare en bestemt forhindring én gang, to eller tre gange. Nej, vi testede hver eneste forhindring inidividuelt mindst 10-15 gange, og godtog ikke andet end 100% succesrate. Dertil gennemtestede vi hele rutens gennemløb utallige gange. Det kan virke fanatisk, men overfør scenariet til industrien og de robotter der er i vor hverdag og som kommer i fremtiden; her er der ikke råd til, at robotten fejler bare 1% af gangene - det skal virke hver gang.