REV MiniBot - Programming & Engineering         

REV MiniBot - Programming and Engineering

Introductie

Op deze website kun je oefenen met het bouwen en programmeren van de REV MiniBot. In de menubalk links zie je opdrachten. Voer alle opdracht van Bouwen 1 en Programmeren 1 en 2 in die volgorde uit:

  • Bouw het basismodel, de REV MiniBot.
  • Verbind alle kabeltjes, verbind de laptop en de smartphone (of Driver Hub) met de Control Hub.
  • Maak het 1e basisprogramma TankDrive en bestuur de robot met de Gamepad.
  • Maak het 2e basisprogramma POVDrive en bestuur de robot met de Gamepad.
  • Schrijf je eigen programma om de robot te besturen en nauwkeuriger te laten rijden. Gebruik daarvoor ook andere knoppen op de Gamepad.
  • Test je programma op de Testbaan, en noteer je snelste tijd.
  • Oefen met een sensor en een servomotor.

Checks: Bij verschillende opdrachten staan een check. Laat dan je robot controleren dooe je docent/coach/begeleider.

Daarna ga je verder met programmeren voor Autonoom rijden en het ontwerpen van een robot voor de Rookie Challenge.

Daarna ga je de robot uitbreiden om verschillende taken uit te kunnen voeren, zoals het verplaatsen en/of oppakken van voorwerpen. Daarvoor moet je ook weer een programma schrijven. Er zijn dus twee soorten taken: programmeren en bouwen (engineering).

Engineering

  • Breid de basisrobot uit zodat je voorwerpen kunt verplaatsen.
  • Breid de basisrobot uit zodat je voorwerpen kunt oppakken en optillen.
  • Zou je de robot ook sneller kunnen laten rijden?
  • Zou je de basis van de robot breder kunnen maken? Of steviger? Of een andere constructie waarmee je makkelijker voorwerpen op kunt tillen?

Programmering

  • Schrijf en test programma's om autonoom te kunnen rijden (zonder Gamepad).
  • Schrijf en test programma's om voorwerpen te verplaatsen met behulp van servomotoren.
  • Nauwkeuriger rijden met Motor Encoders.
  • Gebruik sensoren tijdens het autonome deel.

Voordat je kunt programmeren moet je eerst de laptop verbinden met de Control Hub. Daarnaast moet je ook het Driver Station (de smartphone) verbinden met de laptop.

Veel succes en plezier met deze opdrachten!

Bouwen 1 - Basismodel MiniBot

Basismodel REV MiniBot

Van de Minibot is een zijkant al gebouwd.

  • Bouw de andere zijkant van de Minibot in spiegelbeeld.
  • Monteer de Control Hub en de Battery-Holder Plate. Plaats de accu op de plaat.
  • Sluit de accu met schakelaar aan op de Control Hub (Linksboven op de control Hub). Zet de Hub aan met deze schakelaar.
  • Verbind elke motor via twee kabels met de Control Hub (naast de aansluiting voor de stroomtoevoer).
  • Check dat de tandwielen zijn uitgelijnd en alle moertjes goed aangedraaid zijn.
  • Zorg dat de MiniBot symmetrisch en netjes is afgewerkt. Zorg ook dat de batterij goed vast zit en niet van de robot af kan vallen.

Building Guide for REV Minibot: Building Guide

Kabels aansluiten

In de figuur zie je hoe je DC motoren, servomotoren en sensoren (analoog en digitaal) aan kunt sluiten op de Control Hub.

  • Verbind de linker motor met uitgang 0.
  • Verbind de rechter motor met uitgang 1.
  • Check 1 - Basismodel

Elke motor is verbonden met 2 kabels. De ene kabel is voor de energie (power), de andere voor de data (encoder). Daarmee kun je de motor uitlezen en nauwkeuriger besturen. Controleer of beide kabels van dezelfde motor in dezelfde uitgang gaan.

Smartphone koppelen aan Control Hub

  • Open de app FTC Driver Station.
  • Kies “Settings” in het menu rechtsboven (drie puntjes).
  • Kies  “Control Hub” dan “Pair with Robot Controller”.
  • Kies “Wifi Settings” en kies de naam die op jouw Control Hub is geschreven.
  • Enter the password (default “password”).  “CONNECT”.
  • Kies meermaals de pijl terug, totdat je in het hoofdmenu bent.
  • In het hoofdmenu zie je de naam van je robot, de ping time en de batterijspanning.

 

Configuratie robot

In de configuratie beschrijf je:

  • Welk type DC-motor, servomotor of sensor is verbonden, en met welke poort (uitgang) van de Control Hub.
  • Elke motor en sensor geef je een unieke naam. Die naam gebruik je later bij het programmeren.

 

Maak voor de Minibot de volgende configuratie:

  • Open het menu (drie puntjes rechtsboven).
  • Selecteer Configure Robot.
  • Selecteer “Control Hub portal ..”  en “Control Hub …”
  • Stel poort 0 in als Rev Core Hex motor. Noteer als naam ‘left_drive’.
  • Stel poort 1 in als Rev Core Hex motor. Noteer als naam ‘right_drive

 

Programmeren 1 - Basisprogramma's

Laptop verbinden met Control Hub

Voor het programmeren van de MiniBot heb je een laptop nodig met Chrome of Edge als browser. Je code wordt steeds opgeslagen op de Control Hub. Met de smartphone kun je elk programma dat op de Hub staat starten.

  • Log met de laptop in op het netwerk van jouw Control Hub met het wachtwoord “password ”.
  • Ga naar de website:  http://192.168.43.1:8080
  • Kies 'Blocks'.
  • Je schrijft je programma op een website die opgeslagen is op de Control Hub.

TankDrive

Met dit basisprogramma kun je je robot besturen als een tank. Dat betekent dat je de wielen links en rechts apart aanstuurt.

Programma maken (Op Mode)

  • Kies ‘Create New Op Mode’.
  • Selecteer het programma (Sample):  BasicTankDrive.
  • Kies een eigen naam bijvoorbeeld:  TankDriveJane.
  • Bekijk het programma dat nu verschijnt. Het staat ook onderaan deze pagina.
  • Probeer te begrijpen hoe het programma werkt.
  • Sla het programma op.

Opdrachten:

  1. Test de Op Mode TankDrive (zodra de MiniBot gebouwd is).
  2. Als de Op Mode niet goed werkt: pas de Op Mode aan.
  3. Check 2 - TankDrive

 

Reverse one of the motors

Op de motoren staat een draairichting aangegeven met een pijl. In die richting gaat de motor als hij het signaal +1 krijgt (100% van de snelheid). Maar omdat de motoren gespiegeld gemonteerd zijn wijzen de pijlen in tegengestelde richting.

  • Check bij welke motor de robot naar voren gaat rijden als de motor in de richting van de pijl draait.
  • De eerste opdracht in de code hieronder is 'Reverse one of the motors'. Staat daar de verkeerde motor? Kies dan de andere motor.

De gamepad geeft het signaal -1 als je de Stick naar voren duwt, en +1 in de andere richting. Maar je wilt juist dat de robot naar voren rijdt als je de Stick naar voren duwt.

  • Bekijk de onderstaande code.
  • Hoe is in deze code geregeld dat de robot naar voren rijdt als van de gamepad het signaal -1 komt?

 

 

POVDrive

Met dit basisprogramma kun je je robot besturen met POV (Point of View). Dat betekent dat je met de ene knop gas geeft, en met de andere knop naar links of rechts draait.

Programma maken (Op Mode)

  • Kies ‘Create New Op Mode’.
  • Selecteer het programma (Sample):  BasicPOVDrive.
  • Kies een eigen naam bijvoorbeeld:  POVDriveJake.
  • Bekijk het programma dat nu verschijnt en probeer te begrijpen hoe het programma werkt.
  • Sla het programma op.

Opdrachten:

  1. Test de Op Mode POVDrive (zodra de MiniBot klaar is).
  2. Als de Op Mode niet goed werkt: pas de Op Mode aan.
  3. Rijdt de robot naar achteren als je de LeftStick naar voren duwt? Zet dan de andere motor in REVERSE.

Code begrijpen:

In de code die de motoren aanstuurt worden twee signalen opgeteld (zie de code hieronder).

  • Welk signaal gaat er naar de left-drive en welk signaal naar de right_drive als de LeftStick naar voren wordt geduwd?
  • Welk signaal gaat er naar de left-drive en welk signaal naar de right_drive als de RightStick naar rechts wordt geduwd?
  • Welk signaal gaat er naar de left-drive en welk signaal naar de right_drive als de LeftStick naar voren wordt geduwd én de RightStick naar rechts wordt geduwd?

Opdrachten:

  1. Pas de code zo aan dat je alleen de RightStick gebruikt, zowel voor het naar voren rijden als voor het draaien.
  2. Test of de code goed werkt.
  3. Check 3 - POVDrive.

 

De gamepad geeft het signaal Y = -1 als je de Stick naar voren duwt, en Y = +1 in de andere richting.

De gamepad geeft het signaal X = -1 als je de Stick naar links duwt, en X = +1 naar rechts.

 

 

Programma's aanpassen

Met de basisprogramma's kun je wel snel rijden, maar nauwkeurig sturen is lastig. In de wedstrijd wil je zowel snel kunnen rijden als langzaam (en dan nauwkeuriger sturen). Dat lukt wel als je daarvoor twee knoppen op de GamePad gebruikt:

  • Langzaam rijden doe je door het signaal van de GamePad te vermenigvuldigen, b.v. met factor 0.5.
  • Twee signalen kun je combineren doe je door ze op te tellen.

In de afbeelding zie je hoe bij TankDrive de LeftStickY en de TeftTrigger gecombineerd worden. Hier is de LeftTrigger vermenigvuldigd met 0.5 × gamepad1-LeftTrigger.

Opdracht:

  1. Kies uit 'Math' de code  ....... + ...... en plaats dat bij:  set Power links to ...
  2. Plaats in het linker vakje het signaal van gamepad1-LeftStickY (met het min-teken erbij)
  3. Plaats in het rechter vakje de code  ....... × ......
  4. Vul de code met  0.5 × gamepad1-LeftTrigger
  5. Test hoe dit programma werkt.
  6. Pas daarna TankDrive aan met de volgende eisen:
    • Snel vooruit rijden met RightTrigger.
    • Snel achteruit rijden met LeftTrigger
    • Langzaam vooruit, achteruit en draaien met LeftStickY en RightStickY
  7. Check 4 - TankDrive langzaam & snel

 

EXTRA:  POVDrive aanpassen

In de afbeelding zie je hoe bij POVDrive de LeftStick en de RightStick gecombineerd worden. Hier is de RightStick vermenigvuldigd met 0.5.

Opdracht:

  1. Pas POVDrive aan met de volgende eisen:
    • Snel recht vooruit rijden met RightTrigger.
    • Snel recht achteruit rijden met LeftTrigger.
    • Langzaam vooruit, achteruit en draaien met LeftStickY en RightStickX.
  2. Check 4 EXTRA - POVDrive langzaam & snel

Maak je eigen besturing

Met TankDrive en POVDrive heb je twee basisprogramma's voor de besturing, maar beide programma's zijn niet echt ideaal. Hoe zou je de besturing beter kunnen maken?

  • Kies eerst welke optie beter werkt: POVDrive of TankDrive.
  • Bedenk wat je zou willen aanpassen, bijvoorbeeld sneller/langzamer of een combinatie van Tank en POV.
  • Op de Game Pad zitten nog veel meer knoppen die je kunt gebruiken voor de besturing.
    • De meeste knoppen zijn binair: ze geven alleen de waarde 0 of 1.
    • De Trigger geeft ook alle waardes tussen 0 en 1.
    • De LeftStick en RightStick geven alle waardes tussen -1 en +1.

 

Opdrachten:

  • Ontwerp je eigen besturing voor de MiniBot.
  • Test je programma op de Testbaan.
  • Maak aanpassingen als de besturing nog niet ideaal gaat.
  • Probeer andere opties totdat je de ideale besturing gevonden hebt.
  • Check 5 - Eigen besturing

 

Knoppen op de GamePad F310

In de figuur zie je welke knoppen je allemaal kunt gebruiken op de Logitech F310.

  • De meeste knoppen geven alleen een binaire output (aan of uit, 0 of 1). Die zijn niet geschikt voor de besturing, maar wel om b.v. de servomotor in een bepaalde stand te zetten.
  • Alleen de joysticks en de trigger geven een variabele output (van -1 tot 1 of van 0 tot 1). Alleen deze signalen kun je optellen of vermenigvuldigen met een factor.

Triggers

De triggers (left and right) geven een signaal tussen 0 (0%) en 1 (100%). Als de trigger voor de helft is ingedrukt is het signaal 0.5. Volledig ingedrukt geeft de waarde 1.

Sticks

De joysticks (left and right) geven een signaal tussen -1 (-100%) en 1 (100%). En elke joystick heeft een X-as en een Y-as. In de tabel is het signaal weergegeven als de stick in de uiterste stand staat.

positie Stick Omhoog Omlaag   Links    Rechts
Stick-X     -1 1
Stick-Y -1 1    

 

 

 

Testbaan

Testbaan

De testbaan bestaat uit de volgende onderdelen:

  • Start achter de startlijn.
  • Slalom rond de drie kegels.
  • Rijd met vier wielen over de balansbrug.
  • Rijd terug over de finishlijn.
  • Noteer je snelste tijd.
  • Check 6 - Highscore Testbaan

Driver: Je mag zelf kiezen vanuit welke positie je de MinBot bestuurt, maar je mag tijdens de race niet van plek veranderen.

 

Servomotor

Een servomotor is gemaakt voor nauwkeurige bewegingen. Je kunt de servo met een opdracht in een bepaalde positie zetten. In die positie blijft de motor stilstaan.

De servomotor kan maximaal 180 graden draaien. Met de opdracht 'set Servo Position to' zet je de servo in een positie tussen 0 en 1. LET OP: decimale getallen noteer je met een punt, dus niet 0,45 maar 0.45.

 

Sluit een servomotor aan op een van de uitgangen voor servomotoren op de Control Hub.

Configuratie voor een Servo

  • Kies in het menu (drie puntjes) voor "Configure Robot" en kies “New”.
  • Select “Expansion Hub Portal ..”  and  “Expansion Hub …”
  • Kies "Servos" en kies bij de poort voor 'Servo'.
  • Kies als naam left_hand voor de servo.
  • Kies twee keer voor 'Done', en daarna voor 'Save'.
  • Ga terug naar het hoofdmenu en check of de configuratie actief is.

                                                                                                                                 

Op Mode voor een Servo

Met de Op Mode Smooth Servo kun je de servo ‘left_hand’ bedienen.

  • Kies ‘Create New Op Mode’.
  • Kies een eigen naam voor je programma.
  • Kies Sample Smooth Servo.
  • Test of het programma naar behoren werkt.
  • Breid de Op Mode uit voor een tweede servo: right_hand.
  • Pas de Op Mode aan met de volgende eisen:
    • Langzaam naar links draaien met LeftTrigger.
    • Langzaam naar rechts draaien met  RightTrigger.
    • Direct naar stand 0 of 1 met LeftBumper en RightBumper.
  • Check 7 - Smooth Servo.

 

De servomotor is vrij sterk, waardoor hij zijn positie ook vasthoudt als er kracht op wordt gezet.

Je kunt een servo ook continue laten draaien. Daarvoor gebruik je de SRS Programmer.

 

Sensor

Met de REV Color/Range Sensor kun je zowel kleuren herkennen als afstanden meten.

 

Sluit een REV Color/Range Sensor aan op de ingang I2C Bus 0 op de Control Hub.

Configuratie voor een Sensor

  • Kies in het menu (drie puntjes) voor Configure Robot en kies “New”.
  • Kies “Expansion Hub Portal ..”  en “Expansion Hub …”
  • Kies I2C Bus 0 en daarna "Add".
  • Kies “REV Color/Range Sensor”.
  • Kies als naam “sensorColorRange”.
  • Kies drie keer 'Done', daarna 'Save'. Kies een naam.
  • Kies 'OK' en ga terug naar het hoofdmenu. Check of de configuratie actief is.

 

Op Mode voor een Sensor

Met de voorbeeld Op Mode SensorColorDistance kun je de REV Color/Range Sensor programmeren.

  • Kies ‘Create New Op Mode’.
  • Kies als naam bijvoorbeeld:  SensorKleurAfstand.
  • Kies als Sample:  SensorColorDistance.
  • Test of het programma naar behoren werkt.
  • De kleur en de afstand worden zichtbaar op het scherm van de Driver Station.
  • Schrijf een autonoom programma, bij 'Put run blocks here'.
    • Laat de robot rechtdoor rijden totdat de robot vlak bij een muur is.
    • Lees de kleur op de muur.
    • Bij rood: draai 90 graden naar links, bij blauw 90 graden naar rechts.
  • Check 8 - Sensor Distance
  • Check 9 - Sensor Color

Opdracht: Laat de robot een zwarte lijn volgen en 1 rondje rijden over de baan.

  1. Gebruik 2 kleur sensors, 1 aan de linker kant van de robot en 1 aan de rechterkant van de robot. Beide sensors moeten naar de grond kijken.
  2. Herschrijf het vorige programma zo dat de robot de 2 sensors gebruikt om de baan af te leggen, en zo dat de zwarte lijn tussen de 2 sensors blijft.

Programmeren 2 - Autonoom rijden

In alle basisprogramma's op de REV MiniBot is het eerste deel van de code bedoeld voor het autonoom rijden. Dan mag de GamePad dus niet gebruikt worden..

  • Plaats alle opdrachten onder elkaar op de plek 'Put run blocks here' (zie onderstaande code).
  • De robot zal alle opdrachten in die volgorde uitvoeren.
  • De code voor een stukje recht vooruit rijden is dan bijvoorbeeld:
    • Set Power  left_drive  &  right_drive  to 0.50
    • Wacht 2 seconde  
    • Set Power  left_drive  &  right_drive  to 0

Eindig de serie opdrachten steeds met het stop zetten van alle motoren, anders blijft de robot doorrijden.

Stoppen op een lijn

Maak voor deze opdracht een parcours met start- en finishlijn.

 

Opdracht:

  1. Plaats je robot met de voorwielen op de startlijn.
  2. De robot moet precies rechtdoor rijden, en stoppen met de achterwielen op de finishlijn.
  3. Check 10 - Stoppen op een lijn

 

Stoppen, omkeren en terug rijden

Bij deze opdracht moet de robot na het rijden omdraaien en terug rijden.

 

Opdrachten:

  • Laat de robot minstens 50 cm rechtdoor rijden.
  • Daarna draait de robot 180 graden om zijn as.
  • Daarna rijdt de robot terug naar de startpositie.
  • Check 11 - Rijden, draaien, terugrijden

 

In een cirkel rijden

Bij deze opdracht moet de robot in een kleine of grote cirkel van 360o draaien om om een kegel (of een ander voorwerp.

De robot mag de kegel niet raken, en stoppen op dezelfde plek als de startpositie.

 

Check 12 - Rondje om een kegel

 

 

 

Een vierkant rijden

Bij deze opdracht moet de robot in een vierkant rijden.

  • Plaats vier pionnen in een vierkant.
  • Maak gebruik van de code 'Herhaal .... keer'.
  • De robot mag de pionnen niet raken, en terugkeren naar de startpositie

 

Check 13 - Vierkant rijden

 

Nauwkeurig rijden met Encoders

Nauwkeurig rijden met de IMU

Met de Inertial Measurement Unit (IMU) kun je kijken hoe de control hub is gedraaid op de x-as, y-as en z-as, daardoor kun je veel beter en nauwkeuriger rijden.

Selecteer de REV Internal IMU(BNO055) bij de ingang I2C Bus 0 op de Control Hub.

Configuratie voor een IMU

  1. Kies in het menu (drie puntjes) voor Configure Robot en kies het blokje dat je voor het drive programma gebruikt.
  2. Kies “Control Hub Portal”  en “Control Hub ”
  3. Kies "I2C Bus 0" en daarna kijk of de IMU al geselecteerd is, zo niet, volg de volgende stappen.
  4. Selecteer “REV Internal IMU(BNO055)”.
  5. Kies als naam “IMU”.
  6. Selecteer drie keer 'Done', daarna 'Save'. Kies een naam.
  7. Klik 'OK' en ga terug naar het hoofdmenu. Check of de configuratie actief is.

 

2 mogelijk heden voor opdrachten

of kijk de 5 video's in stappen en rij een andere route

of Op Mode voor een IMU(is wel moeilijk)

Met de OpMode-SensorIMU kun je de IMU programmeren om in de autonome fase te gebruiken.

  1. Kies ‘Create New Op Mode’.
  2. Kies als naam bijvoorbeeld:  IMUassistance.
  3. Kies als Sample:  SensorIMU.
  4. Test of het programma naar behoren werkt.
  5. De angels van de x, y en z-as worden zichtbaar op het scherm van de Driver Station.
  6. Schrijf een autonoom programma.
  7. Laat de Op Mode checken.

Bouwen 2 - Voorwerpen verplaatsen

Ballen en blokken verschuiven

Bij elke robotica wedstrijd moet je voorwerpen verplaatsen. Soms kun je ze verschuiven, maar vaak scoor je meer punten als je voorwerpen vast kunt pakken, optillen en verplaatsen.

 

De eerste opdracht gaat alleen over het verschuiven van voorwerpen (blokken en ballen).

  • Ontwerp aan de voorkant van je robot een constructie waarmee je twee voorwerpen kunt verschuiven.
  • Klem de voorwerpen vast of zet er een hekje omheen. Dan kun je ook achteruit rijden en rollen de ballen niet weg.
  • Gebruik servomotoren om de voorwerpen te klemmen, of om een hekje te plaatsen.
  • Schrijf een programma voor Autonomous.

 

 

Oefen voor deze opdracht met de start- en finishlijn.

  1. Plaats de robot met de voorwielen op de startlijn.
  2. De robot moet de voorwerpen op de finishlijn plaatsen.

 

Ballen en blokken optillen

Bij elke robotica wedstrijd moet je voorwerpen verplaatsen. Soms kun je ze verschuiven, maar vaak scoor je meer punten als je voorwerpen vast kunt pakken, optillen en verplaatsen.

 

De tweede opdracht gaat alleen over het optillen van voorwerpen (blokken en ballen).

  • Ontwerp aan de voorkant van je robot een constructie waarmee je een of twee voorwerpen kunt optillen.
  • Maak een soort klauw waarmee je de voorwerpen kunt klemmen. Wat is daarvoor een handige constructie?
  • Daarna moet je de klauw ook nog kunnen optillen, en daarna openen boven een bak.
  • Gebruik servomotoren om de voorwerpen te klemmen.
  • Gebruik servomotoren (of DC-motoren) om de klauw omhoog en omlaag te brengen.
  • Schrijf een programma voor Autonomous.
  • Breid het programma uit zodat je ook met de gamepad de klauw kunt bedienen.

 

Oefen voor deze opdracht met de start- en finishlijn.

  1. Plaats de robot met de voorwielen op de startlijn.
  2. Plaats een bakje op de finishlijn.
  3. De robot moet de voorwerpen in het bakje plaatsen.
  4. Bestuur de robot met de gamepad, pak twee andere voorwerpen op en leg die ook in het bakje.

A robot in a Day - Testmatch

De Testmatch is de afronding van A robot in a Day. Elk team probeert zobeel mogelijk punten te scoren. Je mag meerdere keren meedoen en de hoogste score telt.

 

Veldopbouw en Scoring Elements

  • Het veld is ca 1,6 bij 2,4 m (3 bij 4 tegels van een FTC-veld). Op het wedstrijdveld is een targetzone en een parking line P gemarkeerd.
  • Een team bestaat uit 1 of 2 drivers, een Human Player en eventueel een coach.
  • De Scoring Elements zijn 8 gele blokken en 8 witte ballen. De robot scoort punten door de blokken en ballen in de targetzone te plaatsen.

 

Matches & Ranking

  • Elke wedstrijd start met een autonoom deel van 30 s, gevolgd door een bestuurd deel van 2 minuten.
  • De robot start volledig in de Starting Zone. De scheidrechter plaatst twee gele blokken op een willeurige afstand voor de robot. Alle andere blokken en witte ballen liggen naast naast het veld.
  • Scores autonoom: stoppen voor gele blokken met behulp van sensor =  6p. Elk element in targetzone = 6p. Parkeren volledig binnen Starting Zone = 4p.
  • Scores bestuurd: Elk element in targetzone = 3p. Parkeren volledig binnen Starting Zone = 2p
  • Tijdens de gehele wedstrijd mag een robot steeds maximaal twee Scoring Elements vasthouden of (bewust) meenemen. Elk extra element geeft een penalty van 10 punten.
  • Tijdens de wedstrijd kan de Human Player Scoring Elements plaatsen in de starting zone. Dit mag alleen als de robot volledig buiten de Starting Zone is.
  • De robot mag het wedstrijdveld niet verlaten. Blokken en ballen die buiten het veld komen mogen door de Human Player opgepakt worden, en opnieuw in de Starting Zone gelegd, mits de robot daar niet is.
  • De punten voor blokken en ballen worden gescoord aan het einde van elke periode. Ze moeten volledig binnen de zone zijn, waarbij de rand bij de zone hoort.
  • Voor de ranking geldt de hoogst behaalde score.

Video Ubbo Tech Team

Video Ubbo Tech Rookie Team

Rookie Challenge

Start-up for the FTC

St Bonifatiuscollege Utrecht

 

De Rookie Challenge is een start-up activiteit voor leerlingen van leerjaar 3 of 4 met weinig of geen ervaring met programmeren en met het bouwen van een robot. Het is bedoeld als opstapje voor de First Tech Challenge, een internationale robotwedstrijd.

De landelijke Rookie Challenge wordt elk jaar in mei/juni gehouden op het St. Bonifatiuscollege in Utrecht. Het is natuurlijk ook mogelijk om een competitie binnen de eigen school op te zetten.

 

Matches and ranking

  • Het veld is 1,54 bij 1,54 m (4 bij 4 FTC-tegels).
  • Scoring elements: gele blokken en witte ballen.
  • Elke match wordt gespeeld met 1 robot op het veld.
  • Autonomous (30 s) en driver controlled (2 min).
  • Voor de ranking geldt de hoogst behaalde score.
  • Remote meedoen is ook mogelijk (video highscore).

Teams, robots and safety

  • Alle teamleden hebben niet eerder deelgenomen aan de FTC (zijn rookies).

  • Ouderejaars mogen wel coachen, maar niet bouwen of programmeren.
  • De robot moet volledig nieuw opgebouwd zijn.
  • Safety: veiligheidsbrillen en paardenstaarten.

 

Wedstrijdregels

Veldopbouw

 

Het veld is 2,5 bij 2,5 m (4 bij 4 tegels van een FTC-veld), omgeven door een wand. Op het wedstrijdveld zijn twee targetzones A en B, en een parking line P gemarkeerd. Targetzone C is een plastic bak (Ikea Samla 39×28×14). die bij elke match random aan de linkerzijde van het veld wordt geplaatst.

 

Scoring elements

De scoring elements zijn 8 gele blokken en 8 witte ballen. De robot scoort punten door de blokken en ballen in de juiste targetzones te plaatsen.

 

In zone C mogen zowel ballen als blokken geplaatst worden, in zone B tellen alleen blokken en in zone A alleen ballen. De blokken en ballen moeten aan het einde van de periode volledig binnen de zone zijn, waarbij de rand bij de zone hoort. Parkeren boven de Parking line aan het einde van beide periodes levert ook punten op.

 

Matches and ranking

  • Elke wedstrijd start met een autonomous period van 30 s, gevolgd door een driver controlled period van 2 minuten. De robot start volledig in de Starting zone, waarbij de robot de wand raakt.
  • Voor de match liggen alle ballen en blokken in het gebied naast de Starting zone.
  • Voorafgaand aan de start mogen twee blokken en/of ballen op of in de robot geplaatst worden. Tijdens de gehele wedstrijd mag een robot steeds maximaal twee blokken en/of ballen vasthouden of meenemen. Elk extra element geeft een penalty van 10 punten.
  • Voor de ranking geldt de hoogst behaalde score.

Overige regels

  • Alle teamleden hebben niet eerder deelgenomen aan de FTC (zijn rookies).
  • Ouderejaars mogen wel coachen, maar niet bouwen of programmeren.
  • De robot moet volledig nieuw door het team opgebouwd zijn.
  • Elk team heeft twee drivers. Tijdens de wedstrijd staan zij aan de zuidzijde van het veld.
  • Tijdens de wedstrijd dragen de drivers veiligheidsbrillen. Lang haar in een paardenstaart.
  • In de pit area dragen alle teamleden een veiligheidsbril. Lang haar in een paardenstaart.

Voorbereiding en planning

Stap 1: Brainstormen en keuzes maken

De eerste stap bij het ontwerpen van een robot is het maken van een plan, samen met het team. Begin vooral niet direct met bouwen, maar begin met een brainstorm:

  • Welke opties zijn er voor het maken van een klauw om voorwerpen op te tillen? Bedenk minstens drie verschillende opties, en werk die uit tot een concreet plan. Maak een schets van de constructie.
  • Welke opties zijn er voor het omhoog en omlaag brengen van de klauw? Bedenk minstens drie verschillende opties, en werk die uit tot een concreet plan. Maak een schets van de constructie.
  • Waar bevestig je de klauw? Aan de voorkant? Aan de achterkant? Of maak je een klauw die aan de ene kant oppakt, en daarna naar de andere kant draait om de voorwerpen los te laten?
  • Maak je een klauw voor 1 of 2 voorwerpen?
  • Maak je naast een klauw ook een constructie om voorwerpen te verschuiven? Dat gaat misschien veel sneller, en dan kun je ook veel punten scoren.

Na de brainstorm komt het belangrijkste moment: kiezen welke optie(s) jullie gaan bouwen als testmodel. Daarbij is het allebelangrijkste advies: Keep it Simple!! De simpelste oplossingen werken alrtijd het beste. Tijdens de wedstrijd heb je namelijk maar weinig tijd, dus je moet iets maken wat snel en simpel werkt.

 

Stap 2: Bouwen, testen en verbeteren

Het bouwen van een robot kost best veel tijd, maar daarmee ben je er nog lang niet. De meeste tijd gaat zitten in het testen en verbeteren van de robot. Dat geldt niet alleen voor de constructies en de motoren, maar zeker ook voor het programmeren.

  • Uiterlijk een week voor de wedstrijd moet de robot klaar zijn. Daarna mag je eigenlijk geen grote veranderingen meer aanbrengen.
  • Gebruik de laatste week om beide programma's (autonoom en besturing) perfact te maken.
  • Gebruik de laatste week om alle bewegende onderdelen te finetunen.

Tutorials

FTC Blocks Tutorials - YouTube

Voor het programmeren in Blocks zijn op YouTube verschillende tutorials beschikbaar. In deze video’s wordt steeds een onderdeeltje van het programmeren behandeld.

Reuze handig, want met zo’n video leer je bijvoorbeeld hoe het herkennen van kleuren bij een Color Sensor werkt. Bekijk met name de volgende video's:

  • Rotate Servo's
  • Using a Color Sensor
  • Blocks - Using Motor Encoders
  • Blocks - Rev IMU

  • Het arrangement REV MiniBot - Programming and Engineering is gemaakt met Wikiwijs van Kennisnet. Wikiwijs is hét onderwijsplatform waar je leermiddelen zoekt, maakt en deelt.

    Laatst gewijzigd
    2024-06-26 12:05:48
    Licentie

    Dit lesmateriaal is gepubliceerd onder de Creative Commons Naamsvermelding-GelijkDelen 4.0 Internationale licentie. Dit houdt in dat je onder de voorwaarde van naamsvermelding en publicatie onder dezelfde licentie vrij bent om:

    • het werk te delen - te kopiëren, te verspreiden en door te geven via elk medium of bestandsformaat
    • het werk te bewerken - te remixen, te veranderen en afgeleide werken te maken
    • voor alle doeleinden, inclusief commerciële doeleinden.

    Meer informatie over de CC Naamsvermelding-GelijkDelen 4.0 Internationale licentie.

    Aanvullende informatie over dit lesmateriaal

    Van dit lesmateriaal is de volgende aanvullende informatie beschikbaar:

    Toelichting
    In deze module vind je opdrachten om een basisrobot te bouwen met de REV MiniBot.
    Eindgebruiker
    leerling/student
    Moeilijkheidsgraad
    gemiddeld

    Bronnen

    Bron Type
    Video Ubbo Tech Rookie Team
    https://youtu.be/cDIKBd0fRN8
    Video

    Gebruikte Wikiwijs Arrangementen

    Hooyman, Kees. (2023).

    Programmeren met Micro:Maqueen

    https://maken.wikiwijs.nl/201197/Programmeren_met_Micro_Maqueen

  • Downloaden

    Het volledige arrangement is in de onderstaande formaten te downloaden.

    Metadata

    LTI

    Leeromgevingen die gebruik maken van LTI kunnen Wikiwijs arrangementen en toetsen afspelen en resultaten terugkoppelen. Hiervoor moet de leeromgeving wel bij Wikiwijs aangemeld zijn. Wil je gebruik maken van de LTI koppeling? Meld je aan via info@wikiwijs.nl met het verzoek om een LTI koppeling aan te gaan.

    Maak je al gebruik van LTI? Gebruik dan de onderstaande Launch URL’s.

    Arrangement

    IMSCC package

    Wil je de Launch URL’s niet los kopiëren, maar in één keer downloaden? Download dan de IMSCC package.

    Meer informatie voor ontwikkelaars

    Wikiwijs lesmateriaal kan worden gebruikt in een externe leeromgeving. Er kunnen koppelingen worden gemaakt en het lesmateriaal kan op verschillende manieren worden geëxporteerd. Meer informatie hierover kun je vinden op onze Developers Wiki.