Kapittel 1. Innledning - Institutt for teknisk kybernetikk - NTNU
Kapittel 1. Innledning - Institutt for teknisk kybernetikk - NTNU
Kapittel 1. Innledning - Institutt for teknisk kybernetikk - NTNU
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
Forslag til Ut<strong>for</strong>ming <strong>for</strong> Eurobot 2002<br />
<strong>Kapittel</strong> 7. Diskusjon<br />
Denne prosjektoppgaven har gått igjennom robotens eksisterende virkemåte, oppbygging<br />
og funksjonalitet. Det er vurdert å bygge om roboten slik at den kan ved hjelp av ei klo<br />
kan løfte opp ballene fra spillebrettet, samle dem opp i ei renne, <strong>for</strong> så å avlevere dem i<br />
kurvene plassert i spillebrettets hjørner.<br />
Spørsmålet er om det skal være ei eller to renner, avhengig av fargene på ballene.<br />
Fordelen med å dele opp i to renner er at man ved adkomst til en kurv kan tømme hele<br />
renna med baller som har den rette fargen til den korresponderende kurven. Problemet<br />
med dette er plasshensyn, og pga størrelsen på ballene (14 cm i diameter), i <strong>for</strong>hold til<br />
robotens begrensninger i høyde og omkrets. Denne løsninga krever et <strong>for</strong>holdsvis<br />
kompakt design, som tillater oppsamling på denne måten.<br />
Ved bruk av ei renne sparer man plass, og får sannsynligvis plass til flere baller. Da må<br />
det implementeres en rutine, som holder styr på rekkefølgen på ballene i renna.<br />
Inneholder renna f.eks. en svart ball plassert mellom flere røde, kan det føre til<br />
uøkonomisk kjøring mellom kurvene <strong>for</strong> å få tømt den.<br />
Bruk av sensorer er også et viktig spørsmål. Mange sensorer kan gi et større ”bilde” av<br />
hvordan verden ser ut rundt roboten. Men også <strong>for</strong> mange sensorer kan føre til ”overkill”,<br />
dvs en kombinasjon av mange sensorinput krever et komplekst styringssystem som må<br />
prioritere mellom disse. Å satse på færre sensorer gir et mindre komplekst<br />
styringssystem, og vil gi bedre oversikt når man skal debugge dette. Det vil også bli<br />
enklere å lage effektive veivalg, altså en plan <strong>for</strong> hvordan roboten skal komme seg fra A<br />
til B.<br />
AI’en er hjernen til roboten, og det hjelper ikke hvor mange ”smarte” mekaniske<br />
innretninger og sensorer man har hvis roboten ikke kan samordne disse funksjonene og<br />
navigere over spillebrettet. Men det er likevel en stor <strong>for</strong>del å ha bestemt seg <strong>for</strong> og ha på<br />
plass de funksjoner og innretninger som man har tenkt å bruke før en går løs på AI-delen.<br />
Som kjent eksisterer det allerede et omfattende AI-system implementert i C. Denne<br />
koden kan være tung å sette seg inn i, som kan føre til <strong>for</strong>virring spesielt der denne koden<br />
er dårlig kommentert. Dette er et arbeid som tar tid, og tidligere <strong>for</strong>fattere kan det bli<br />
nødvendig å få tak i, <strong>for</strong> å oppklare utydeligheter. Alternativet er å begynne helt på nytt,<br />
og skrive koden sjøl. Man har der<strong>for</strong> frihet til å implementere AI-systemet i et valgfritt<br />
programmeringsspråk, uten å være bundet til det som allerede eksisterer. På den måten<br />
har man full kontroll på metodekall og liknende fra første tastetrykk.<br />
På den annen side har koden blitt skrevet og testet av to tidligere bidrag, nemlig teamene<br />
bak <strong>NTNU</strong>’s bidrag både i 2000 og 200<strong>1.</strong> Den har blitt testet og kjørt mot andre roboter,<br />
som vi mangler muligheter til her. Det vil da være svært nytting å studere disse<br />
løsningene som er brukt, spesielt siden veiplanlegging og målsøkingsalgoritmene er svært<br />
like med de nye reglenes ut<strong>for</strong>dringer. Koden er som nevnt skrevet i C, som er et<br />
programmeringsspråk mye brukt i <strong>for</strong>bindelse med sanntidsprogrammering. Erfaring fra<br />
<strong>for</strong>rige års team viser at de også i stor grad kunne benytte koden fra tidligere år.<br />
Frode Vik Bredesen, <strong>Institutt</strong> <strong>for</strong> Teknisk Kybernetikk<br />
Norges Teknisk-Naturvitenskaplige Universitet<br />
26