World Robot Olympiad 2017 - Regular

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

Sidst opdateret 13.8.17.

Køre indtil

Under navigationen rundt på banen skal robotten ofte køre indtil en ønsket situation er registreret, f.eks. køre ligeud indtil en sort streg er registreret af en farvesensor. Vent-blokken eller løkke-blokken kan bruges til at programmere en sådan køre indtil funktionalitet, se EV3 hjælp > Programmeringsblokke > Flow-blokke > Vent og Løkke:

DriveToColor

DriveToColor bruges f.eks. sådan her for at få robotten til at køre med Power = 20 til farvesensoren på port 4 er over en farve med koden 1, altså over sort:
Åbnes blokken DriveToColor ser den sådan her ud:
Den første blok, en bevægelsesstyring-blok, benytter tilstanden Til, så robotten sættes til at køre lige ud. I den næste blok, vent-blokken, benyttes værdien af den anden input parametren ColorId, som kode for en farve, der sammenlignes med den aktuelle, registrerede farve fra farvesensoren på den port som er angivet som første input parameter Port. Farvekoderne kan ses under EV3 hjælp > Generelt > Brug af sensorer > Farve:
Vent-blokken får altså programmet til at vente indtil den registrerede farve er lig farvekoden i parametren ColorId. Først i den situation vil programmet fortsætte med næste blok, som får robotten til at standse.

Den tredie input parametren til DriveToColor bestemmer, hvor hurtigt robotten kører ligeud. Hvis input parametren er negativ vil robotten bakke.

DriveRightSec

DriveRightSec bruges f.eks. sådan her for at få robotten til at følge højre kant af en sort streg i 2,2 sekunder ved hjælp af en farvesensor som er tilsluttet port 4. Farvesensorens offset er sat til 50, Power = 10 og pFaktor = 0,2:
Åbnes blokken DriveRightSec ser den sådan her ud:
I løkke-blokken gentages blokken RightEdgeDrive indtil der er gået det antal sekunder, som er angivet i den femte input parameter sec. Når det sker slutter løkken og robotten stopper.

DriveRightSec får altså robotten til at følge kanten af en sort streg et antal sekunder. De fire første input parametre til DriveEdgeSec, Port, offset, Power og pFaktor, gives videre til blokken RightEdgeDrive.