XRP NL - First Tech Challenge

1. Bas zijn robotstofzuiger

Maak van jouw XRP een robotstofzuiger

Maak van jouw XRP een robotstofzuiger

Missie

De robotstofzuiger van Bas is kapot.

Bas-en-zn-kapotte-robotstofzugier.png
Jij gaat met de XRP-robot een nieuwe slimme stofzuiger maken voor Bas.

Je robot moet:

  • zelf vooruit rijden

  • stoppen als hij bijna tegen een voorwerp botst

  • achteruit rijden

  • wegdraaien

  • verder zoeken naar een vrije richting

Je begint klein, met een simulatie. Daarna ga je dit programmeren in de XRP.

Deel 1 – Mini-simulatie op tafel

Voordat je gaat programmeren, doe je eerst een kleine oefening om het gedrag te begrijpen.

Benodigdheden

  • Een object ter grootte van een computermuis (dit is jouw mini-robot)

  • 3 kleine objecten, bijvoorbeeld: beker, etui, rekenmachine (dit zijn de meubels)

  • Een gedeelte van de tafel als “woonkamer”

Opdracht

  1. Zet de drie objecten ergens op de tafel neer, wel in de buurt van elkaar.

  2. Je gaat nu regels volgen, alsof de robot echte sensoren heeft.

Regels voor je mini-robot

Schuif jouw mini-robot steeds één klein stapje vooruit.

  • Regel 1: Ga langzaam vooruit.

  • Regel 2: Kom je binnen 5 cm van een object?

    • Dan “stop” je.

      • Daarna schuif je mini-robot 10 cm achteruit.

        • Draai hem ongeveer 90° (kwartslag, links- of rechtsom maakt niet uit).

          • Ga terug naar: Regel 1.

Herhaal dit drie keer.

Wat merk je?

  • Stopt de robot bij obstakels?

  • Lukt het om een andere kant op te draaien en een nieuwe richting op te rijden?

  • Soms blijft hij een beetje hangen, precies zoals echte robots ook doen.

Dit gedrag ga je nu bouwen in de XRP-robot.

Deel 2 – De robot vooruit laten rijden

Nu ga je de echte XRP programmeren.

Stappen

  1. Zet de XRP aan.

  2. Verbind hem met de computer.

  3. Open de XRP Code Editor -> https://xrpcode.wpi.edu

  4. Kies voor de Blocks-omgeving.

  5. Maak een nieuw programma.

Opdracht

Bouw het volgende programma:

  1. Laat de robot 20 cm vooruit rijden met de volgende snelheid: effort op 0.5
    image.png

De volgende waardes die je voor snelheid in het blok bij 'effort' kan gebruiken zijn:

Snelheidswaarde

Actie wiel

1

Wiel draait vooruit bij 100% inspanning

0.5

Wiel draait vooruit bij 50% inspanning

0

Wiel stopt met draaien

-0.5

Wiel draait achteruit bij 50% inspanning

-1

Wiel draait achteruit bij 100% inspanning

Testen

Zet de XRP op de grond.

Start het programma.

Let op:

  • Blijft hij rijden?

  • Rijdt hij een bepaalde afstand?

  • Stop hij?

Deel 3 – De robot laten stoppen voor een muur

Nu ga je het programma verder uitbreiden.

Opdracht

Bouw het volgende programma en volg het filmpje:

  1. Maak een oneindige loop: 'Repeat While True'

  2. Laat beide motoren vooruit draaien op de volgende snelheid: effort 0.5

  3. Maak een blok “Repeat While” met de voorwaarde: zolang de afstand gelijk is dan 15 cm

  4. Na de herhaling laat je de robot stoppen.

Testen

Zet de XRP op de grond, in de buurt van een stukje van een muur, doos of kast.

Start het programma.

Let op:

  • Stop hij op tijd?

  • Te vroeg of te laat?

  • Verander de afstandsdrempel (bijv. 20 of 30 cm) en test opnieuw.

    • Dat doen we in dit blokgedeelte: image.png

Deel 4 – Maak een echte robotstofzuiger

Nu ga je van jouw robot een echte rondrijdende stofzuiger maken.

Opdracht

Ik daag je uit om de volgende aanpassingen zelf te zoeken en te bedenken. Het vorige programma kan je grotendeels hergebruiken.

In het programma heb je het volgende:

Een oneindige herhaling (Loop) en hierin zet je:

  1. Motoren vooruit (Effort 0.5 voor links en voor rechts)

  2. Maak een tweede herhaling (loop) met:
    De afstand of '= 15 cm' of '> 20 cm' (Weet jij het verschil in de werking?)

  3. Wacht 0,05 sec

  4. Stop de motoren

  5. Achteruit rijden:
    Motoren op 30 cm met effort -0.5

  6. Wacht 0,3 sec

  7. Draaien:

    • Kies een draaihoek, bijv. 90°

    • Of gebruik een “willekeurig getal” tussen 90° en 180°

Testomgeving

Zet de XRP op de grond, in de buurt van een stukje van een muur, doos of kast.

Laat je robot 1–2 minuten rijden.

Observeer

  • Komt hij vast te zitten?

  • Welke hoek werkt beter?

  • Heeft hij een goede snelheid?

TIP: Mocht de aanpassing niet lukken, dan heb je hieronder het voorbeeldprogramma:
image.png

Deel 5 – Verbeter je robot

Kies een verbetering waarop je de robot gaat aanpassen. Bijvoorbeeld:

  • de robot iets langzamer maken

  • eerder of later laten stoppen

  • grotere of kleinere draaihoek

  • korte extra pauze na de draai

  • random hoek toevoegen

Pas je programma aan en test opnieuw.

Reflectie

Beantwoord de volgende:

  1. Wat doet jullie robotstofzuiger goed?

  2. Wat kan beter?

  3. Wat heb jij geleerd over “regels” en “sensoren”?

Goed gedaan, het is je gelukt!

Bas is enorm blij dat je een nieuwe robotstofzuiger voor hem hebt gefixt!