Velocity verkennen - C++
Toolbox voor leraren
-
Activiteitenoverzicht
In dit onderzoek maken leerlingen eerst kennis met het instellen van de rijsnelheid en krijgen ze vervolgens de opdracht om te onderzoeken hoe de snelheid van de robot het momentum beïnvloedt. Klik hier (Google / .docx / .pdf) voor een overzicht van deze activiteit. Het begrijpen van het momentum van de robot is een belangrijk concept dat we moeten toepassen op het Strike Challenge bowlingspel. -
Wat de studenten zullen programmeren
Met behulp van het Speedbot-sjabloonproject (aandrijflijn 2 motoren, geen gyro) kunnen de studenten de snelheidsinstellingen van de Speedbot wijzigen door eenvoudigweg de instructie setDriveVelocity (50 procent) toe te voegen aan de instructie driveFor (1 inch). Tijdens het begeleide deel van de activiteit laten leerlingen de Speedbot met verschillende snelheden bewegen. Aan het einde van de activiteit moeten ze hun programmeersnelheidsvaardigheden toepassen op tests met impuls en energieoverdracht.
Speedbot is klaar om met verschillende snelheden te rijden!
Dit onderzoek zal u helpen om meer te leren over het programmeren van de Speedbot om te rijden met snelheden die het meest geschikt zijn voor de taak. In de Strike Challenge aan het einde moet je een snelheid voor de Speedbot vinden die het mogelijk maakt om snel te zijn en een groot momentum te hebben, maar de controle te behouden om de bal in een goede hoek en met grote kracht te raken.
Toolbox voor leraren
Hier is een overzicht van de gebruikersinterface van VEXcode V5. Tijdens de activiteiten in dit Momentum Alley STEM Lab maken studenten kennis met deze tabbladen/knoppen. Er zijn ook links beschikbaar in het STEM Lab met meer informatie over deze tabbladen/knoppen.

VEXcode V5-instructies die zullen worden gebruikt in het eerste deel van dit onderzoek:
- Drivetrain.setDriveVelocity(50, procent);
- Drivetrain.driveFor(vooruit, 200, mm);
-
Voor meer informatie over de instructie selecteert u Help en selecteert u vervolgens het vraagtekenpictogram naast een opdracht om meer informatie te zien.

Zorg ervoor dat u de vereiste hardware, uw engineering notebook en VEXcode V5 gedownload en gereed hebt.
Tips voor leraren
Als dit de eerste keer is dat de student VEXcode V5 gebruikt, kan hij/zij de tutorials op elk gewenst moment tijdens de verkenning raadplegen. De tutorials bevinden zich in de werkbalk.

Elke groep studenten moet de benodigde hardware en het technische notitieblok van de groep krijgen. Open vervolgens VEXcode V5.
| Aantal | Benodigde materialen |
|---|---|
| 1 |
Speedbot-robot |
| 1 |
Opgeladen robotbatterij |
| 1 |
VEXcode V5 |
| 1 |
USB-kabel (bij gebruik van een computer) |
| 1 |
Technisch notitieboekje |
| 1 |
Bal (de grootte en vorm van een voetbal) |
| 1 |
3m x 3m vrije ruimte |
| 1 |
Meterstok of liniaal |
| 1 |
Rol tape |
| 1 |
Tips voor leraren
Geef de studenten een voorbeeld van elke stap in het probleemoplossen.
Stap 2: Start een nieuw project
Voer de volgende stappen uit om het project te starten:
-
Open het menu Bestand en selecteer Voorbeelden openen.
-
Selecteer en open het Speedbot (Drivetrain 2-motor, No Gyro) -sjabloonproject. Het sjabloonproject bevat demotorconfiguratievan de Speedbot. Als de sjabloon niet wordt gebruikt, zal uw robot het project niet correct uitvoeren.

-
Omdat u bezig bent met het verkennen van snelheid, noemt u uw projectDriveVelocity. Als u klaar bent, selecteert uOpslaan.

Tips voor leraren
-
Projectnamen kunnen spaties tussen of na de woorden bevatten.

- U kunt leerlingen vragen hun initialen of de naam van hun groep aan de projectnaam toe te voegen. Hiermee kunt u de projecten differentiëren als u de studenten vraagt deze in te leveren.
- Omdat dit de eerste programmeeractiviteit is die uw leerlingen proberen, moet u de stappen modelleren en de leerlingen vervolgens vragen dezelfde handelingen uit te voeren. Vervolgens moet de docent toezicht houden op de leerlingen om er zeker van te zijn dat zij de stappen correct volgen.
- Zorg ervoor dat de studenten 'Voorbeelden openen' hebben geselecteerd in het menu 'Bestand'.
- Zorg ervoor dat de studenten het sjabloonproject Speedbot (aandrijflijn 2 motoren, geen gyro) hebben geselecteerd.
- U kunt de studenten erop wijzen dat er op de pagina met voorbeelden verschillende opties zijn waaruit ze kunnen kiezen. Naarmate ze andere robots bouwen en gebruiken, krijgen ze de kans om verschillende sjablonen te gebruiken.
-
Controleer of de projectnaamDriveVelocitynu in het midden van de werkbalk in het venster staat.

Toolbox voor docenten
-
Projecten opslaan
-
Wijs erop dat toen ze VEXcode V5 voor het eerst openden, het venster de naam VEXcode Project had. VEXcode Project is de standaardprojectnaam wanneer VEXcode V5 voor het eerst wordt geopend. Nadat het project was hernoemd naar Drive en opgeslagen, werd de weergave bijgewerkt met de nieuwe projectnaam. Met behulp van dit venster in de werkbalk kunt u eenvoudig controleren of de studenten het juiste project gebruiken.
-
Vertel de leerlingen dat ze nu klaar zijn om met hun eerste project te beginnen. Leg de leerlingen uit dat ze met behulp van een paar eenvoudige stappen een project kunnen maken en uitvoeren om de Speedbot verder te laten groeien.
-
Herinner leerlingen eraan dat ze hun projecten moeten opslaan terwijl ze eraan werken. In het gedeelteC++van de VEX-bibliotheek worden de opslagmethoden in VEXcode V5 uitgelegd.
Toolbox voor leerkrachten
-
Stop en bespreek
Dit is een goed moment om even stil te staan en de studenten de zojuist voltooide stappen voor het starten van een nieuw project in VEXcode V5 individueel of in groepen te laten doornemen. Vraag de studenten om individueel te reflecteren voordat ze hun bevindingen met de groep of de hele klas delen.
Stap 3: Rij 150 mm vooruit met verschillende snelheden
U bent nu klaar om te beginnen met het programmeren van de robot om met verschillende snelheden vooruit te rijden!
-
Voordat we beginnen met programmeren, moeten we begrijpen wat een instructie is. Een instructie bestaat uit drie delen.

Tips voor leraren
Zodra u begint met typen, ziet u mogelijk een functie voor automatisch aanvullen. Gebruik de toetsen ‘Omhoog’ en ‘Omlaag’ om de gewenste naam te selecteren en druk vervolgens op ‘Tab’ of (Enter/Return) op uw toetsenbord om uw selectie te maken. Voor meer informatie over deze functie, zie het artikelC++.

-
Voeg de instructies toe aan het project, zodat je project er als volgt uitziet:
int main() { //Robotconfiguratie initialiseren. NIET VERWIJDEREN! vexcodeInit(); // Begin projectcode Drivetrain.driveFor (vooruit, 150, mm); Drivetrain.setDriveVelocity (25, procent); Drivetrain.driveFor (vooruit, 150, mm); Drivetrain.setDriveVelocity (75, procent); Drivetrain.driveFor (vooruit, 150, mm); }
Tips voor leraren
Merk op dat de tweede en derde instructies (regels 29 en 30) hetzelfde zijn als de vierde en vijfde instructies (regels 31 en 32), maar met een andere snelheidsparameter. Nadat de derde instructie is toegevoegd, kunnen de leerlingen regels 29 en 30 selecteren om de regels eronder te kopiëren en te plakken, zodat ze regels 31 en 32 krijgen. Vervolgens kunnen ze de snelheid in lijn 31 naar 75 procent veranderen.
-
Selecteer het Slot-pictogram om een van de acht beschikbare slots op de Robot Brain te kiezen en selecteer sleuf 1.

-
Sluit de V5 Robot Brain aan op de computer met behulp van een micro-USB-kabel en schakel de V5 Robot Brain in. Het Brein-icoontje in de werkbalkwordt groenzodra er een succesvolle verbinding tot stand is gebracht.
-
SelecteerDownloadom het project naar de Brain te downloaden.
Toolbox voor leraren
-
Herinner de leerlingen eraan dat ze de USB-kabel uit de Robot Brain moeten halen. Als de robot tijdens het uitvoeren van een project verbinding maakt met een computer, kan het zijn dat de robot aan de verbindingskabel trekt.
-
Controleer of uw project is gedownload (C++) door naar het scherm van Robot Brain te kijken. De projectnaam DriveVelocity moet worden vermeld in sleuf 1.

Toolbox voor leraren
-
Stop en bespreek
Vraag de studenten te voorspellen wat er volgens hen zal gebeuren als dit project wordt gedownload en uitgevoerd op de Speedbot-robot. Vraag de leerlingen om hun voorspellingen in hun technische notitieboekjes te schrijven. Als de tijd het toelaat, vraag dan elke groep om hun voorspelling te delen.Studenten moeten voorspellen dat de Speedbot eerst met de standaardsnelheid (50%) vooruit zal rijden, vervolgens langzamer (25%) dan de standaardsnelheid en dan sneller (75%) dan de standaardsnelheid.
-
Model Eerst
Model het project uitvoeren voor de klas voordat alle studenten het tegelijk proberen. Verzamel de studenten op één plek en laat voldoende ruimte over voor de Speedbot om te bewegen als deze op de grond wordt geplaatst.Vertel de studenten dat zij nu aan de beurt zijn om hun project uit te voeren. Zorg ervoor dat ze een vrije doorgang hebben en dat de Speedbots elkaar niet kunnen raken.
-
Run(C++) het project op de robot door ervoor te zorgen dat het project is geselecteerd en druk vervolgens op de knopRunop de Robot Brain. Gefeliciteerd met het maken van je eerste project!

Stap 4: Rijd 150 mm vooruit en achteruit met verschillende snelheden
Nu je je robot hebt geprogrammeerd om met verschillende snelheden vooruit en achteruit te rijden, programmeer je hem om nu met verschillende snelheden vooruit en achteruit te rijden.
-
Verander de parameter in de tweededriveForinstructie naar omkeren, zodat uw project er zo uitziet:
int main() { //Robotconfiguratie initialiseren. NIET VERWIJDEREN! vexcodeInit(); // Begin projectcode Drivetrain.driveFor (vooruit, 150, mm); Drivetrain.setDriveVelocity (25, procent); Drivetrain.driveFor (achteruit, 150, mm); Drivetrain.setDriveVelocity (75, procent); Drivetrain.driveFor (vooruit, 150, mm); } -
Selecteer de projectnaam om deze te wijzigen van DriveVelocity naar ReverseVelocity.
-
Selecteer het Slot-pictogram om een nieuw slot te kiezen. Selecteer sleuf 2.

-
Download (C++) het project.
-
Controleer of uw project is gedownload (C++) door naar het scherm van Robot Brain te kijken. De projectnaam ReverseVelocity moet worden vermeld in sleuf 2.

-
Voer (C++) het project uit op de robot door ervoor te zorgen dat het project is geselecteerd en druk vervolgens op de knopRunop de Robot Brain.

Toolbox voor docenten
-
Stap 4 voltooien
- Om de opdrachtdriveForte wijzigen vanforwardnaarreverse, wijzigt u eenvoudigweg de eerste parameter in reverse. Hierdoor gaan de motoren in de aandrijflijn in de tegenovergestelde richting bewegen.
- U kunt het aantal mm wijzigen, maar voor dit voorbeeld laten we het op 150 mm staan, zoals ingesteld in de vorige stap.
- Herinner de leerlingen eraan de USB-kabel los te koppelen van de Robot Brain voordat ze het project uitvoeren.
- Herinner leerlingen eraan dat ze hun projecten moeten opslaan terwijl ze eraan werken. De VEX-bibliotheek heeft een sectie voorC++waarin de opslagmethoden in VEXcode V5 worden uitgelegd.
Tips voor leraren
Vraag teams om het testgebied en de bal te delen indien nodig. Er kunnen echter ook meerdere testgebieden met elk een eigen bal worden ingericht. Beslis of u de testruimte(s) zelf wilt inrichten of dat u wilt dat de studenten dit doen.
Stap 5: Uw testgebied instellen

Voorbeeld lay-out testgebied
- Gebruik tape en een meterstick om een lijn van 3 meter op de vloer te maken, zoals de horizontale lijn in de bovenstaande afbeelding.
- Nadat de lijn is gemaakt, gebruik je tape en plak je je meter opnieuw om 1 m lijnen over de 3 m lijn te maken, zoals de verticale lijnen in de afbeelding hierboven. Plak een lijn van 1 m op elke markering van 50 cm op de verticale lijn door te beginnen bij 0 cm.
- De kortere horizontale lijnen moeten worden gecentreerd op de langere verticale lijn.
- Terwijl het gebied wordt ingesteld, moeten een of twee leden van je team een nieuw project maken met de naam Momentum. Stel de snelheid in op 50% en laat de Speedbot naar voren rijden naar de eerste lijn op 50 cm. Houd rekening met 1 cm = 10 mm, zodat de robot 50 cm of 500 millimeter naar voren beweegt.
Toolbox voor leerkrachten
-
Waarom deze activiteit?
-
Het verzamelen en analyseren van gegevens, en zelfs het herkennen van simpele patronen, behoren tot fundamentele wetenschappelijke vaardigheden. Deze activiteit brengt structuur aan in de data-analyse door veelvoorkomende fouten te voorkomen.
-
Merk op dat de instructies niet aangeven dat leerlingen de rijafstand van de robot moeten variëren samen met de snelheid van de robot. Dit is een doelbewuste toepassing van wat leerwetenschappers de 'Controle van Variabelen Strategie' noemen. Het is belangrijk om beginnende onderzoekers te leren om met één variabele tegelijk te manipuleren (in dit geval de snelheid) om zo de invloed ervan op een tweede variabele te bepalen (in dit geval de afstand die de bal aflegt na de botsing). Dit is namelijk niet per se een aanpak die leerlingen spontaan zullen kiezen in plaats van een gok-en-controle-aanpak. Bij typische gok- en controlemethoden wordt er vaak met meer dan één variabele tegelijk gemanipuleerd (bijvoorbeeld door zowel de snelheid als de afstand die de robot aflegt te veranderen) en wordt gekeken naar de impact van de samenvloeiing op de afstand die de bal na de rotatie aflegt. Met deze activiteit willen we leerlingen daarvan afleiden, omdat de relaties tussen de variabelen dan dubbelzinnig zijn. Komt het door de hogere snelheid van de robot, de grotere afstand die de robot aflegt, of door beide, waardoor de bal verder vliegt? Die vraag kunnen we niet beantwoorden als we beide variabelen tegelijkertijd manipuleren.
-
Het kan echter ook voorkomen dat teams spontaan proberen de robot over verschillende afstanden te laten rijden. Als u dit ziet, vraag hen dan om alleen de afstand te veranderen, maar de snelheid gelijk te houden aan de proef met de oorspronkelijke afstand van 500 mm. Op die manier kunnen ze dezelfde snelheid met verschillende rijafstanden vergelijken en nagaan of de rijafstand van de robot ook een rol speelt bij de afstand die de bal aflegt.
Stap 6: Testen van de overdracht van energie tijdens botsingen

Bowlinguitdaging testgebied met robot en bal
Centreer de bal op de horizontale lijn op 50 cm en plaats je robot zo dat de voorkant ervan gecentreerd is op de horizontale lijn op 0 cm. Zorg ervoor dat de voorkant van de robot in de richting van de bal staat. Voer je eerste Momentum-project uit waarbij je de snelheid instelt op 50% en let goed op wanneer de robot tegen de bal botst.
Noteer de ingestelde snelheid, de afgelegde afstand en de afstand die de bal heeft afgelegd in deze gegevenstabel (Google / .pdf). De eerste rij van de tabel is voor u gestart op basis van het Momentum-project waaraan u in de vorige stap hebt gewerkt. Ga door met het toevoegen van gegevens aan deze tabel terwijl u verschillende snelheden probeert in te stellen. Je kunt vervolgens de gegevens van andere teams toevoegen terwijl je je bevindingen als klas bespreekt.
Tips voor leraren
-
Zorg ervoor dat de bal op verschillende afstanden en in verschillende richtingen kan stuiteren. Sluit deuren en/of ramen indien nodig.
-
De tabel voor Exploring Velocity kan hieronder worden opgeslagen, maar leerlingen kunnen de tabel ook zelf in hun technische notitieboekjes maken.
-
Een rubriek voor het evalueren van team engineering notebooks is hier te vinden (Google / .docx / .pdf), en een rubriek voor het evalueren van individuele notebooks is hier te vinden (Google / .docx / .pdf). Wanneer u van plan bent om het werk van studenten te beoordelen aan de hand van een of meerdere rubrieken, zorg er dan voor dat u de rubriek met hen deelt voordat ze aan het project gaan werken.

Denk na over en reageer op de onderstaande vragen in je technische notitieblok terwijl je je gegevens verzamelt:
- Hoe kun je zien dat het momentum van de robot tijdens de botsing energie naar de bal heeft overgebracht? Leg uit met details.
- Herhaal de test nog minstens twee keer. Probeer een snelheid van minder dan 50%. Reset de bal in zijn positie en noteer in de tabel hoe ver de bal beweegt. Probeer ook een snelheid van meer dan 50%. Reset de bal in zijn positie en noteer in de tabel hoe ver de bal beweegt.
- Wanneer alle groepen hun drie tests hebben voltooid, bespreek dan de snelheden die de andere groepen hebben gekozen en hoe ver de bal zich in hun tests heeft verplaatst. Terwijl teams hun gegevens delen, voeg je hun bevindingen toe aan je tabel.
- Zoek naar patroon(en) in de gegevens. Wordt de afstand die de bal aflegt groter of kleiner naarmate de ingestelde snelheid toeneemt?
Toolbox voor leraren
-
antwoorden
-
De beweging van de bal is bewijs dat de robot tijdens de botsing energie overbracht. Studenten kunnen ook de snelheid van de bal na de impact of de richting waarin de bal zich beweegt beschrijven als bewijs.
-
De afstand die de bal aflegt, hangt af van de massa/het gewicht van de gebruikte bal en de ingestelde snelheid van de robot.
-
Studenten moeten beseffen dat de bal bij hogere snelheden verder vliegt dan bij lagere snelheden. Koppel dit expliciet aan het momentum van de robot. Benadruk dat het gewicht van de robot niet is veranderd, alleen de snelheid. Beide factoren dragen bij aan het momentum van de robot. Vraag ze of ze denken dat de bal even ver zou komen als de robot zwaarder was. Dat zou vermoedelijk wel zo zijn. In de volgende lezing wordt meer verteld over de effecten van de massa van de bal tijdens de botsing.
-
Studentengroepen hebben misschien gekozen voor sterk uiteenlopende snelheden, maar het algemene leerdoel is dat studenten beseffen dat hogere snelheden leiden tot een groter momentum, waardoor er meer energie op de bal wordt overgebracht bij botsingen.