World Robot Olympiad 2018 - Regular Elementary

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

Sidst opdateret 13.9.18.

Robotudfordring trin 4

I udfordringen er 3 styk frisk frugt og 2 styk grim frugt:
tilfældigt placeret i positionerne mærket 6 til 10 på banen, f.eks. som vist til højre:
De friske frugter skal transporteres til et af de to Supermarkeder (et af de to rektangulære røde områder mærket GROCERY STORE). De gule frugter skal transporteres til Marmeladefabrikken (det rektangulære gule område). Robotten skal starte i Start området (det hvide område i nederste højre hjørne med to grønne linier som kant) og robotten skal slutte i Slut området (det røde område i øverste højre hjørne mærket FINISH).

Udfordringen skal klares på under 2 minuter. Pointgivning for de enkelte robotopgaver på banen i udfordringen på trin 4 er:

Der kan altså maksimalt opnås 80 point for udfordringen på trin 4. De detaljerede regler kan ses her.

Bygning og programmering af robot til trin 4 udfordringen

På videoen fra WRO 2018 Elementary - Surrogate Robotics ses, hvordan en svingarm skubber den røde frugt ind i et Supermarked:

Inspireret af ideen med en svingarm, kan robotten fra trin 3 udfordringen med en farvesensor monteret på venstre side af skubbestativet:

udbygges til trin 4 udfordringen ved at montere en svingarm sådan her:
Samtidig er der monteret en farvesensor på højre ben af skubbestativet, som peger ind mod de frugter robotten har foran skubbestativet, så farven på frugten kan registreres og kun de røde frugter skubbes ind i Supermarkedet af svingarmen. Videoen viser, hvordan robotten til trin 4 udfordringen håndtere den røde og gule frugt:

Svingarmen er bygget sådan her (klik på billedet for at se detaljer):

Svingarmen kan bygges ved at følge en byggevejledning. Sidst i vejledningen ses en liste over de LEGO elementer svingarmen er bygget af.

Byggevejledning for svingarmen er lavet ved hjælp af værktøjet LEGO Digital Designer (LDD). Byggevejledningen findes i filen svingarm.lxf. Det kan være en fordel at bruge byggevejledning i filen til at bygge efter, da det giver mulighed for at dreje LEGO modellerne på skærmen under byggeprocessen. Inden filen kan bruges, skal LDD installeres på maskinen. Når en byggevejledning er åbnet i LDD fås de enkelte trin i byggeprocessen ved at klikke på knappen "Building guide mode" øverst til højre.

Svingarmen monteres på robotten, som vist her (klik på billederne for at se detaljer):

Den mellemstore motor, som styrer svingarmen tilsluttes port A.

Farvesensormonteringen på højre ben af skubbestativet er bygget sådan her (klik på billedet for at se detaljer):

Farvesensorbenet kan bygges ved at følge en byggevejledning. Sidst i vejledningen ses en liste over de LEGO elementer farvesensorbenet er bygget af.

Farvesensorenbenet monteres på robotten ved at fjerne højre ben på skubbestativet og erstatte benet med det lidt længere ben med farvesensoren (klik på billedet for at se detaljer):

Den ekstra 9'er teknikbjælke på indersiden er sat på for at robotten skal kunne bakke med de to gule frugter uden at frugterne hænger på farvesensoren. Farvesensoren tilsluttes port 3.

Med svingarm og farvesensor kan robotten sørge for, at de tre røde frugter skubbes ind i Supermarkedet og de to gule frugter samles ind og det sker uanset hvilke positioner de fem styk frugt står på:

Den del af programmet, som styrer robotten på videoen, så robotten kører langs kanten af den sorte streg ind til Supermartkedet, ser sådan her ud:
Hele programmet, kaldet femFrugter, kan findes i EV3 projektet Trin4.ev3.

Den del af programmet, som hedder Kør til enden af kanten af streg ind til Supermarkedet, skub røde frugter ind i Supermarkedet og saml gule frugter, benytter den brugerdefinerede blok LeftEdgeDrive på samme måde, som blokken blev brugt i programmet langsKant i trin 3 udfordringen til at få robotten til at køre langs den venstre kant af den sorte streg ind til Supermarkedet.

Undervejs langs kanten bruges en forgrening-blok til at afgøre om der er en rød frugt ud for svingarmens arm. Hvis der er en rød frugt, altså hvis spørgsmålet i forgreningssætningen giver svaret rød, udføres øverste gren, som er en mellemstor motor-blok, der svinger armen en omgang, 360 grader, med hastigheden 50.

Resultatet er, at røde stykker frugt skubbes ind i Supermarkedet, mens de gule stykker ikke skubbes, da nederste gren i forgrening-blokken ingen blokke har, så der sker intet ved gul og de gule frugter samles derfor imellem skubbestativets to ben.

Se eventuelt i EV3 Hjælp > Programmering > Flow-blokke> Forgrening:

og i EV3 Hjælp > Programmering > Handlingsblokke > Mellemstor motor:

Farver og farvesensor

Tidligere har farvesensoren været brugt til at måle en lysprocent, f.eks. for at følge kanten af den sorte streg. Nu bruges farvesensoren til at registrere en farve. At farvesensoren kan bruges til begge slags målinger kan ses her under EV3 hjælp > Generelt > Farve > Brug af farvesensoren:
Farvesensoren kan altså bruges i en af tre tilstande (Det er kun de to første tilstande, der er brug for, derfor er teksten for den sidste tilstand ikke vist). Betydningen af det tal farvesensoren registrerer afhænger af tilstanden:
Når farvesensoren er ud for en rød frugt:
ser portview for de to farvesensorer på port 2 og 3 sådan her ud:
Tilstanden for farvesensorer i visningen ovenfor er for port 2 Intensitet af reflekteret lys og tallet 36 vises. Det passer med, at farvesensoren måler lysprocenten over kanten af den sorte streg ind til Supermarkedet. Tilstanden for farvesensorer for port 3 er Farve og tallet 5, som registreres af farvesensoren på port 3, viser, at farvesensoren er ud for en rød flade.
Opgave 1: Prøv at undersøge om de farver en farvesensorer registrerer ud for de fire forskellige slags frugt passer med fortolkningen i tabellen. F.eks. hvad vises i denne situation:

Opgave 2: Når robotten har samlet de gule frugter og har skubbet de røde frugter ind i Supermarkedet, står den i denne position:
Robotten på billedet har to farvesensorer monteret på benene af skubbestativet lige som robotten i trin 3 udfordringen. Brug den sidste del af programmet orangeRute2 fra trin 3 udfordringen til at få robotten til at gøre sådan her:
Og programmér dernæst resten af vejen ind i Slut området. Så er de 80 point hjemme.