Dato:
04-06-2013
Varighed:
Fælles lab: 8 timer
Blog: 5 timer
Deltagere:
Steffen Høi
Nikolaj Mols Hansen
Martin Vang
Ulrik Sahl Lystbæk
Nikolaj Mols Hansen
Martin Vang
Ulrik Sahl Lystbæk
Status
Farvesensor og angrebstrategier er ikke færdige, og robotten er endnu ikke klar til at blive præsenteret.
Mål
Målet med denne laboratoriesession er at lave robotterne færdige, så de er klar til vores præsentation.
Plan
- Oprydning i adfærdshierarki.
- Forbedringer af adfærd
- Aim
- Shoot
- Angrebsstrategier
- Montering af isolering på farvesensoren og test med denne
Proces
Adfærdshierarki
Efter at have kigget på på vores tidsplan i forhold til de udfordringer, vi havde med farvesensoren, har vi ændret vores adfærdshierarki til nedenstående. Vi har valgt at droppe de forskellige angrebsstrategier, der skulle bruge farvesensoren, for i første omgang bare at fokusere på det at sigte og skyde mod mål lige når robotten har fået bolden.
Vi har en delvis færdig implementering af strategi-arbitrator, men valgte i første omgang at droppe den, indtil vi har mere end Aim-Shoot strategien, hvilket forudsætter bedre information om positionering. Tanken er at lade denne arbitrator håndtere. hvilke strategier der skal vælges til eksekvering, for så at lade de individuelle strategier kunne skifte prioritet indbyrdes ift. hvad robotten erfarer.
Herover ses en af vores overvejelser ift. vores Aim, der går ud på altid at rotere den korteste vej imod vores "falske Nord". Denne ide blev implementeret, hvilket potentielt set, halverer vores rotationtid for Aim, der dog stadig er noget langsom.
Som det måske kan ses herover, har der været en del trial-and-error ift. at få sat den lille grå brik sådan at boldens runde flade falder korrekt ind og trykker på den, uden at den lille brik pga. touch-sensoren's fjeder yder for stor modstand. I sidste ende havde vi en særdeles stabil, omend noget skrøbelig løsning, der præcist kunne fortælle, om bolden var i robottens greb.
![]() |
| Illustration af adfærdshierarki |
Vi har en delvis færdig implementering af strategi-arbitrator, men valgte i første omgang at droppe den, indtil vi har mere end Aim-Shoot strategien, hvilket forudsætter bedre information om positionering. Tanken er at lade denne arbitrator håndtere. hvilke strategier der skal vælges til eksekvering, for så at lade de individuelle strategier kunne skifte prioritet indbyrdes ift. hvad robotten erfarer.
Aim
Ved denne adfærd har vi forsøgt at benytte en PID-controller for at mindske oscillering, i forbindelse med, at robotten prøver, at finde den rigtige vinkel. Tilpasningerne var dog større end, hvad vi havde tid til, så vi valgte i stedet en simpel løsning, hvor Aim har en skalering på hastigheden, således at denne bliver sat ned, jo tættere robotten kommer på den rigtige vinkel.| Diskussion af rotation af robot, til venstre, samt skitse af strategier til højre |
Herover ses en af vores overvejelser ift. vores Aim, der går ud på altid at rotere den korteste vej imod vores "falske Nord". Denne ide blev implementeret, hvilket potentielt set, halverer vores rotationtid for Aim, der dog stadig er noget langsom.
Shoot
Vores problem med skydemekanismen var, at vi nogle gange fik udført to skud i træk. Dette problem blev løst ved at lave en buffer af læste værdier, og så kun påstå, at vi har bolden, hvis touch-sensoren har været berørt de sidste par målinger.![]() |
| Touch-sensor samt berøringsflade for bolden |
Som det måske kan ses herover, har der været en del trial-and-error ift. at få sat den lille grå brik sådan at boldens runde flade falder korrekt ind og trykker på den, uden at den lille brik pga. touch-sensoren's fjeder yder for stor modstand. I sidste ende havde vi en særdeles stabil, omend noget skrøbelig løsning, der præcist kunne fortælle, om bolden var i robottens greb.
Angrebsstrategier
Efter at robotten er begyndt at kunne leve op til de forskellige sensorer vi havde stillet for øje, er vi begyndt at analysere, hvordan vi kan udnytte dette fremadrettet. De vigtigste teknikker vores robot nu besidder er følgende:
Hvis den region vi bevæger os ind i, når vi bevæger os imod midten, er den hvide region, eller hvis vi allerede befinder os i den hvide region når bolden findes, så vil vi bruge enten den blå eller gule strategi vist på billedet. Den blå strategi går ud på at bevæge sig over i den ene side og udnytte vores robots hurtighed til at køre tilbage i den modsatte region og afslutte i retning mod mål. Den blå strategi går primært ud på at få modstanderens robot til at bevæge sig imod den ene side, og så bruge vores hurtighed til at udmanøvrere modstandernes robot. Vi forventer at modstanderens robot primært vil rette sig efter bolden, og har næppe mulighed for at tage forbehold for at vi vender. Vores ide er, at modstandernes robot ikke er hurtig nok til at komme på plads efter vores finte, så vi kan skyde bagom den. Den gule strategi går ud på hurtigt at køre over i den ene side og afslutte, og derved gribe modstanderens robot ude af position, specielt hvis man kommer fra den modsatte side. Alle strategier kan udnyttes fra begge sider, hvor strategierne spejlvendes i forhold til illustrationen.
Den overordnede ide bagved disse to (gul og blå) strategier er, at vi hvis vi fik tilbagemelding om succes/fiasko fra vores miljø, nemt ville kunne oparbejde en præference. Vi forventer ikke at vores modstanders robot, der jf. reglerne kun må køre direkte imod bolden, og derfor ikke parere med siden, vil være i stand til at blokere begge strategier lige godt.
- Opnå kontrol over bolden.
- Drible med bolden.
- Afslut med bolden imens den er i besiddelse.
![]() |
| Skitsering af overvejede strategier |
Hvis den region vi bevæger os ind i, når vi bevæger os imod midten, er den hvide region, eller hvis vi allerede befinder os i den hvide region når bolden findes, så vil vi bruge enten den blå eller gule strategi vist på billedet. Den blå strategi går ud på at bevæge sig over i den ene side og udnytte vores robots hurtighed til at køre tilbage i den modsatte region og afslutte i retning mod mål. Den blå strategi går primært ud på at få modstanderens robot til at bevæge sig imod den ene side, og så bruge vores hurtighed til at udmanøvrere modstandernes robot. Vi forventer at modstanderens robot primært vil rette sig efter bolden, og har næppe mulighed for at tage forbehold for at vi vender. Vores ide er, at modstandernes robot ikke er hurtig nok til at komme på plads efter vores finte, så vi kan skyde bagom den. Den gule strategi går ud på hurtigt at køre over i den ene side og afslutte, og derved gribe modstanderens robot ude af position, specielt hvis man kommer fra den modsatte side. Alle strategier kan udnyttes fra begge sider, hvor strategierne spejlvendes i forhold til illustrationen.
Den overordnede ide bagved disse to (gul og blå) strategier er, at vi hvis vi fik tilbagemelding om succes/fiasko fra vores miljø, nemt ville kunne oparbejde en præference. Vi forventer ikke at vores modstanders robot, der jf. reglerne kun må køre direkte imod bolden, og derfor ikke parere med siden, vil være i stand til at blokere begge strategier lige godt.
Monter isolering på farvesensoren og test med denne
For at mindske påvirkningen af lys fra miljøet lavede vi isolering til, at
have rundt om farvesensoren. Vi lavede den i første omgang i pap, da det gik noget hurtigere end at bygge et mørkekammer i LEGO. Formålet var, at se om vi kunne få gode nok målinger til, at
det kunne betale sig at bygge en i LEGO, da regelsættet dikterer, at alt på
robotten skal være af LEGO komponenter.
Efter isoleringen, med en kappe af pap, var sat på foretog vi nye målinger i banens fire forskelligt farvede felter. Målingerne var denne gang følgende:
![]() |
| Kappe til isolering set nedefra |
Efter isoleringen, med en kappe af pap, var sat på foretog vi nye målinger i banens fire forskelligt farvede felter. Målingerne var denne gang følgende:
- Mørkegrøn: 145 +- 5
- Lysegrøn: 288 +- 5
- Sort: 83 +- 5
- Hvid: 432 +- 5
| Måledata med isolerende kappe |
Konklusion
Med isolering mod lys fra miljøet monteret på farvesensoren, gav det meget
stabile målinger. Den maksimale forskel, vi fik i målinger på ét felt var 10 ,
hvorimod den var 164 før vi havde lavet isoleringen. Udover at målingerne var
stabile, så var der også stor forskel på de fire forskellige felter. Derfor
kunne farvesensoren på denne måde godt bruges til at kende forskel på felterne. Desværre kom dette på plads så sent, at vi ikke kunne nå at implementere angrebsstrategier baseret på denne nye information.
Robotterne er nu klar til at blive præsenteret, og projektet mangler kun præsentationen samt redigering af blogindlæg.
Robotterne er nu klar til at blive præsenteret, og projektet mangler kun præsentationen samt redigering af blogindlæg.




No comments:
Post a Comment