Achtergrond
In deze codeereenheid verkennen studenten het iteratieve ontwerpproces. Leerlingen onderzoeken hoe ze het echte probleem van oceaanvervuiling kunnen oplossen door een uitbreiding te maken van de VEX GO Kit die afval verzamelt. Elke les in deze module eindigt met een analyse van de sterke en zwakke punten van de uitbreidingsbouw en ideeën voor verbeteringen voor het volgende ontwerp.
Wat is de Great Pacific Garbage Patch?
De Great Pacific Garbage Patch is een enorme hoeveelheid afval die elke dag groeit. De vlek ligt ergens in de Stille Oceaan tussen Hawaï en Californië en beslaat naar schatting een gebied dat twee keer zo groot is als Texas. Het afval drijft in één vaste massa van plastic, metaal en andere materialen, terwijl los afval buiten de perimeter drijft. In deze unit krijgen leerlingen de uitdaging om een uitbreiding te maken voor hun Code Base-robot, die helpt bij het opruimen van puin rondom de Great Pacific Garbage Patch.

Het technisch ontwerpproces
Studenten gebruiken het Engineering Design Process (EDP) om een hulpstuk voor hun Code Base-robot te ontwerpen en te bouwen. Het EDP is een reeks stappen die ingenieurs gebruiken om oplossingen voor problemen te bedenken. Vaak bestaat de oplossing uit het ontwerpen van een product dat aan bepaalde criteria voldoet of een bepaalde taak volbrengt.
Het EDP kan worden onderverdeeld in de volgende stappen: DEFINIËREN → OPLOSSINGEN ONTWIKKELEN → OPTIMALISEREN.
- Het definiëren van technische problemen houdt in dat het op te lossen probleem zo duidelijk mogelijk wordt geformuleerd in termen van criteria voor succes en beperkingen of limieten.
- Het ontwerpen van oplossingen voor technische problemen begint met het genereren van een aantal verschillende mogelijke oplossingen. Vervolgens worden potentiële oplossingen geëvalueerd om te zien welke het beste voldoen aan de criteria en beperkingen van het probleem.
- Het optimaliseren van de ontwerpoplossing omvat een proces waarbij oplossingen systematisch worden getest en verfijnd en waarbij het uiteindelijke ontwerp wordt verbeterd door minder belangrijke kenmerken in te ruilen voor kenmerken die belangrijker zijn.

De EDP is cyclisch of iteratief van aard. Het is een proces van het maken, testen, analyseren en verfijnen van een product of proces. Op basis van de testresultaten worden nieuwe iteraties gemaakt. Deze worden voortdurend aangepast totdat het ontwerpteam tevreden is met de resultaten.
In deze eenheid gebruiken leerlingen het EDP om een praalwagen te bedenken, plannen en bouwen. Na een eerste bouwproces testen en verbeteren de groepen hun basisontwerp om te voldoen aan de ontwerpcriteria en -beperkingen. Dit is hetzelfde Engineering Design Process dat wordt behandeld in de Next Generation Science Standards (NGSS).
Sequentiebepaling
Sequentie is de specifieke volgorde waarin gedragingen worden uitgevoerd. Een actie of gebeurtenis leidt tot de volgende actie in een reeks. Sequentie is belangrijk zodat leerlingen hun robots correct kunnen coderen.
Om een robot precies te kunnen vertellen hoe hij moet bewegen, zijn zowel decompositie als sequentie nodig. Eerst wordt het probleem, bijvoorbeeld hoe je door een doolhof navigeert, opgedeeld in kleinere stappen en gedragingen. Zodra deze gedragingen zijn geïdentificeerd, moeten ze in de juiste volgorde worden gezet. Dit is belangrijk, omdat de robot alleen precies zo beweegt als is geprogrammeerd.
Studenten programmeren hun Code Base om zich door het uitdagingsgebied te bewegen en objecten te verzamelen. Ze moeten de opdrachten in hun project zo ordenen dat hun codebasis in de juiste volgorde vooruit, achteruit, naar links en naar rechts beweegt om door het uitdagingsgebied te navigeren.
- Vooruitgaan
- Ga rechtsaf
- Vooruitgaan

Ontleding
Bij decompositie wordt een complex probleem opgedeeld in gedragingen die beter beheersbaar en gemakkelijker te begrijpen zijn. Door het probleem op te delen in kleinere onderdelen, kan elk onderdeel gedetailleerder worden onderzocht en gemakkelijker worden opgelost. Als een student bijvoorbeeld wil dat zijn robot in een vierkant beweegt, moet hij de opdracht opsplitsen in kleinere opdrachten. Het is belangrijk dat leerlingen het opsplitsingsproces verfijnen, omdat ze de opdrachten in eerste instantie misschien nog niet in kleinere onderdelen kunnen opsplitsen:
| Beweeg in een vierkante verdeling 1 | Beweeg in een vierkante verdeling 2 | Verplaats in een vierkante verdeling 3 |
|---|---|---|
|
|
|
Wat is Pseudocode?
Pseudocode is een verkorte notatie voor codering die verbale en schriftelijke beschrijvingen van code combineert.
Vaak kunnen leerlingen door te 'raden en te controleren' tot een oplossing komen. Dit resulteert echter niet in het ontwikkelen van een conceptueel begrip van de programmeerconcepten. Het schrijven van pseudocode helpt studenten om verder te kijken dan een oppervlakkig begrip van programmeren en een meer conceptueel begrip te ontwikkelen. Bij Pseudocode moeten studenten conceptueel nadenken over hun programmeeroplossing voordat ze beginnen met programmeren. Leraren moeten pseudocode met leerlingen bespreken door hen het volgende te vragen:
- Wat willen ze met hun project bereiken?
- Hoe ga je de intentie of het doel van het project omzetten in korte, specifieke uitspraken?
In dit voorbeeld zouden studenten een pseudocode moeten maken voor het vooruit laten rijden van de robot, het detecteren van een muur, het naar rechts afslaan en vervolgens weer vooruit laten rijden. De code zou er dan als volgt uitzien:
- Rijd de robot vooruit totdat hij 50 mm van een muur verwijderd is
- Stop de robot
- Draai de robot 90 graden
- Stop de robot
- Rijd 600 mm vooruit
Zodra een pseudocode is gemaakt, schrijven de leerlingen een programmeercode om de robot te instrueren hoe hij elke stap van de pseudocode succesvol kan voltooien.
Wat is robotgedrag?
'Gedrag' is een heel handige manier om te beschrijven wat de robot doet en wat hij moet doen. Vooruit bewegen, stoppen, omdraaien, op zoek gaan naar een obstakel: het zijn allemaal gedragingen.
Wanneer leerlingen beginnen met programmeren, moeten ze ook nadenken over het gedrag van de robot. Bij het coderen moeten studenten de volgende stappen volgen:
- Maak een plan voor de robot om de gewenste actie uit te voeren.
- Identificeer de gedragingen binnen het plan en probeer ze zo klein mogelijk te maken.
- Vertaal dat plan naar een project dat de robot kan uitvoeren.
Het plan bestaat simpelweg uit de reeks gedragingen die de robot moet volgen. Het project bestaat enkel uit die gedragingen, vertaald naar VEXcode GO.
Het opdelen van taken in kleinere gedragingen en het vervolgens bouwen van oplossingen op basis van die gedragingen is een vaardigheid die bij veel verschillende onderwerpen kan worden toegepast.
Wat is VEXcode GO?
VEXcode GO is een codeeromgeving die wordt gebruikt om te communiceren met VEX GO-robots. Studenten gebruiken de drag-and-dropinterface om VEXcode GO-projecten te maken waarmee ze de acties van hun robots kunnen aansturen. Het doel van elk blok kan worden geïdentificeerd aan de hand van visuele aanwijzingen, zoals de vorm , de kleur en het label.
De volgende VEXcode GO-blokken worden in deze unit gebruikt:
[Rijden voor] - beweegt de aandrijflijn vooruit of achteruit over een bepaalde afstand. Kies de richting waarin de aandrijflijn moet bewegen en stel in hoe ver deze moet bewegen door een waarde in te voeren in het ovaal.
[Draaien voor] - draait de aandrijflijn een bepaald aantal graden naar links of rechts. Kies de richting waarin de aandrijflijn moet draaien en stel in hoe ver deze moet bewegen door een aantal graden in te voeren in het ovaal.
[Commentaar] - Hiermee kunnen programmeurs informatie schrijven om hun project te beschrijven. Opmerkingen veranderen niets aan het project of de blokken eromheen.
Om aan de slag te gaan met VEXcode GO in uw klaslokaal, downloadt u de VEX Classroom-app op het apparaat van een docent en volgt u de stappen in het artikel De VEX Classroom-app gebruiken om te leren hoe u de firmware van GO Brains kunt bijwerken, GO Brains een nieuwe naam kunt geven en kunt vinden en de batterijen van GO Brains in uw klaslokaal kunt bewaken. Ga voor meer informatie over VEXcode GO naar van de VEX-bibliotheek.