World Robot Olympiad 2017 - Regular

Ole Caprani
Institut for Datalogi, Aarhus Universitet,
ocaprani@cs.au.dk

Sidst opdateret 13.8.17.

wroRegular.ev3p - program til WRO Starter Bot 2017

Når WRO Starter Bot 2017 kører på banen, som det ses på videoen:

starter robotten i Starter Area, det grønne område, og kører ud til de to kuber som er placeret på de sorte firkanter markeret med 3 og 4:
Robotten på videoen styres af et program som hedder wroRegular.ev3p. Programmet findes i projektet WRO2017.ev3.

Når wroRegular.ev3p åbnes ser programmet sådan her ud:

Prøv i første omgang at få programmet wroRegular.ev3p til at styre WRO Starter Bot 2017 som på videoen.

For at få programmet til at virke efter hensigten skal der nok ændres/rettes i programmet. Derfor kan det være nødvendigt at kende lidt mere til detaljerne i programmets struktur og enkeltblokke: Programmet består af 9 blokke, hvoraf 5 er brugerdefinerede programmeringsblokke, nemlig InitGrab, GoTo4, Detect, GoTo3 og ColorName:

  • Den første blok, kaldet InitGrab, nulstiller omdrejningsdrejningstælleren for den mellemstore motor på port A som lukker og åbner grabben. Se InitGrab.
  • Den næste blok, kaldet GoTo4, får robotten til at køre ud fra StartArea og bruge de sorte streger til at nå frem til en position ved den sorte firkant markeret 4. Se GoTo4.
  • Den tredie blok, kaldet Detect, får robotten til at registrere farve og størrelse af kuben på firkanten markeret 4. Se Detect.
  • Den fjerde blok, kaldet GoTo3, bruger igen de sorte streger på banen til at finde hentil den sorte firkant markeret med 3. Se GoTo3.
  • Som den femte blok bruges igen Detect til at få robotten til at registrere farve og størrelse af kuben på firkanten markeret 3. Se Detect.
  • I den sjette og syvende blok bruges værdien af variablen BaseColor, farven på basen i enten position 3 eller 4, til at få robotten til at bruge ColorName til at "sige" navnet på base farven. Se ColorName. I ottende og niende blok bruges værdien af variablen DeciderColor på tilsvarende vis. Værdierne af BaseColor og DeciderColor er fundet i de to Detect blokke.