Skip to main content

Programmeren van de robotarm - C++

Icoon Toolbox voor docenten Activiteitenoverzicht de Toolbox voor leerkrachten

  • Met dit onderzoek maken studenten kennis met de basisprogrammering van de Arm Motor van de V5 Clawbot.

  • Door te leren hoe je de Arm Motor programmeert, kunnen leerlingen de armbewegingen van de V5 Clawbot goed aansturen. Voor meer informatie over de instructies die in een tekstprogramma worden gebruikt, kunt uhelpinformatie raadplegen.

De V5 Clawbot is klaar voor actie!

Met deze verkenning krijgt u de tools in handen waarmee u een aantal coole projecten kunt maken die gebruikmaken van de arm van de V5 Clawbot.

  • VEXcode V5-instructies die in deze verkenning worden gebruikt:
    • ArmMotor.spinFor(vooruit, 90,graden);
    • ArmMotor.setPosition(0, graden);
    • wacht(2, seconden);
  • Voor meer informatie over de instructie selecteert u Help en vervolgens het vraagtekenpictogram naast een opdracht om meer informatie te bekijken.

    VEXcode V5 toont een Drive voor de opdracht die in de werkruimte is getypt en de Help voor die opdracht wordt rechts geopend. In de Help wordt Drive for gedefinieerd als het verplaatsen van de aandrijflijn over een bepaalde afstand. Ook wordt uitgelegd hoe u de opdracht in een project kunt gebruiken.

  • Zorg ervoor dat u de vereiste hardware, uw engineering notebook en VEXcode V5 gedownload en gereed hebt.
Benodigde materialen:
Hoeveelheid Benodigde materialen
1

VEX V5 Classroom Starter Kit (met up-to-date firmware)

1

VEXcode V5

1

Technisch notitieboekje

1

Clawbot en Advanced TrainingBot (aandrijflijn 2-motor, geen gyro) voorbeeldproject

Stap 1: Voorbereiding op de verkenning

Zorgt u ervoor dat de volgende items klaarliggen voordat u met de activiteit begint? Controleer elk van de volgende punten:

Tips voor leraren-pictogram Tips voor leraren

Geef de studenten een voorbeeld van elke stap in het probleemoplossen.

Stap 2: Start een nieuw project

Selecteer het juiste sjabloonproject voordat u met uw project begint. Het voorbeeldproject Clawbot en Advanced TrainingBot (aandrijflijn 2 motoren, geen gyro) bevat de motorconfiguratie van Clawbot. Als de sjabloon niet wordt gebruikt, kan uw robot het project niet correct uitvoeren.

VEXcode V5-werkbalk met het menu Bestand geopend en Voorbeelden openen gemarkeerd in een rood vak. Open voorbeelden is het vierde menu-item onder Nieuw blokkenproject, Nieuw tekstproject en Openen.

Volg de volgende stappen:

  • Open het menu Bestand.
  • SelecteerOpenVoorbeelden.

Pictogram met de tekst Clawbot en Advanced TrainingBot met een grijze robot boven de tekst.

  • Selecteer en open het voorbeeldproject Clawbot en Advanced TrainingBot (aandrijflijn 2-motor, geen gyro).
  • Omdat we de arm gaan programmeren om te besturen, hernoem je je projectArmControl.
  • Slaproject op.
  • Controleer of de projectnaam ArmControl nu in het venster in het midden van de werkbalk staat.

In het dialoogvenster met de projectnaam in de VEXcode V5-werkbalk staat Arm Control en wordt aangegeven dat Slot 1 is geselecteerd.

Tips voor leraren-pictogram Tips voor leraren

  • Omdat dit een beginnersactiviteit is met programmeren, moet de docent de stappen modelleren en vervolgens de leerlingen 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 voorbeeldproject Clawbot Template (Aandrijflijn 2 motoren, geen gyro) hebben geselecteerd.

    U kunt de studenten erop wijzen dat er op de paginaVoorbeeldenverschillende opties zijn waaruit ze kunnen kiezen. Naarmate ze andere robots bouwen en gebruiken, krijgen ze de kans om verschillende sjablonen te gebruiken.

  • 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.

Icoon Toolbox voor docenten Toolbox voor docenten - Projecten opslaan

  • Geef aan dat toen ze VEXcode V5 voor het eerst openden, het venster de naam MijnProject1 had. MyProject1 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 waarmee ze de arm van de Clawbot kunnen optillen en laten zakken.

  • Herinner leerlingen eraan dat ze hun projecten moeten opslaan terwijl ze eraan werken. Dit artikeluit de VEX Robotics Knowledge Base legt de opslagmethoden uit in VEXcode V5.

Icoon Toolbox voor docenten Toolbox voor leerkrachten - Stop en bespreek

Dit is een goed moment om even stil te staan en de studentengroepen de stappen te laten doornemen die zojuist zijn voltooid bij het starten van een nieuw project in VEXcode V5.

Stap 3: Beweeg de arm omhoog

We gaan nu beginnen met het programmeren van de arm om omhoog te gaan!

int main() {
  // Robotconfiguratie initialiseren. NIET VERWIJDEREN!
  vexcodeInit();

  ArmMotor.setPosition(0, graden);

}
  • Schrijf de instructie ArmMotor.setPosition(); zoals hierboven weergegeven in het programmeergebied om de startpositie voor de arm in te stellen.
  ArmMotor.setPosition(0, graden);
  ArmMotor.spinFor(vooruit, 90, graden);
  • Voeg de instructie ArmMotor.spinFor(); toe onder de opdracht ArmMotor.setPosition() zoals hierboven weergegeven om de arm omhoog te bewegen. Zorg ervoor dat de Spin For is ingesprongen, zodat deze overeenkomt met de opdracht Set Position , en dat alle opdrachten tussen de accolades staan.

VEXcode V5-werkbalk met de sleufselectie geopend naast de projectnaam. Slot 1 is geselecteerd en gemarkeerd met een rood vak en de projectnaam is Arm Control.

  • Klik op het Slot-pictogram. U kunt uw project downloaden naar een van de beschikbare slots in Robot Brain. Klik op Slot 1.

Werkbalk in VEXcode V5 met een rood kader rond het groene Brain-pictogram. Het Brain-icoontje staat rechts van het Controller-icoontje en links van de Download-knop.

  • Sluit de robot aan op uw computer of tablet. Het Brein-icoontje in de werkbalkwordt groenzodra er een succesvolle verbinding tot stand is gebracht.

Werkbalk in VEXcode V5 met een rood kader rond de downloadknop. De pictogrammen die van links naar rechts worden weergegeven zijn: Controller, Hersenen, Downloaden, Uitvoeren en Stoppen.

  • Klik op de knopDownloadop de werkbalk om het Drive-project naar Robot Brain te downloaden.

Icoon Toolbox voor docenten Toolbox voor docenten - Hulp met tekst

  • Als de leerlingen een computer gebruiken, vraag ze dan om nu de USB-kabel uit de Robot Brain te 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.

Op het startscherm van V5 Brain wordt het Arm Control-project weergegeven in slot 1 in de linkerbenedenhoek. In de rij hierboven ziet u de pictogrammen Drive, Apparaten, Instellingen en VEX.

  • Controleer of het ArmControl-project is gedownload naar de hersenen in het door u gekozen slot.

Icoon Toolbox voor docenten Toolbox voor docenten - Optie om eerst te modelleren

Laat het project eerst aan de klas zien voordat je het aan alle studenten tegelijk laat proberen. Verzamel de studenten op één plek en laat genoeg ruimte over zodat de Clawbot zijn arm kan bewegen. Laat zien hoe je het project beëindigt en de arm van de Clawbot terug laat zakken naar de rustpositie.

Vertel de studenten dat zij nu aan de beurt zijn om hun projecten uit te voeren. Zorg ervoor dat ze voldoende ruimte hebben om de arm van de Clawbot veilig omhoog te kunnen brengen.

  • Voerhet project uit op de Clawbot door ervoor te zorgen dat het project is geselecteerd en druk vervolgens op de knop Uitvoeren. Gefeliciteerd met het maken van je eerste Claw Arm-project!

Stap 4: Probeer dit: Programmeer de arm omlaag

Nu u de arm zo geprogrammeerd hebt dat deze omhoog beweegt, kunt u de arm ook programmeren om omlaag of omlaag te bewegen.

Afbeelding van de VEXcode V5 Clawbot met zijn arm naar beneden

  • Voeg een tweede ArmMotor.spinFor(); instructie toe aan uw ArmControl-project, zodat de arm tot 90 graden omhoog gaat, 2 seconden wacht en vervolgens weer omlaag gaat.
    • Tip:U moet de richting binnen de instructie wijzigen.
  • Merk op dat de arm zijn positie behoudt terwijl de opdrachtwaitwordt uitgevoerd. De motor haalt zijn energie uit de accu om de arm omhoog te houden, ondanks de zwaartekracht. Dat komt doordat de standaardinstelling voor het stoppen. Er zijn twee andere instellingen voor het stoppen:remmenenuitrollen. Daarover leert u meer in een ander lab.

Icoon Toolbox voor docenten Teacher Toolbox - Oplossing

De oplossing voor de uitdaging vindt u hieronder. Om de arm te laten zakken, moesten studenten de parameter 'forward' wijzigen in 'reverse' in de instructie ArmMotor.spinFor(); die werd toegevoegd.

// Begin projectcode
int main() {
  // Initialiseren van robotconfiguratie. NIET VERWIJDEREN!
  vexcodeInit();

  ArmMotor.setPosition(0, graden);
  ArmMotor.spinFor(vooruit, 90, graden);
  wachten(2, seconden);
  ArmMotor.spinFor(achteruit, 90, graden);
  
}

Stap 5: Voltooi de Flight Traffic Controller Challenge

Afbeelding van de VEXcode V5 Clawbot met zijn arm omhoog en rode pijlen die omhoog en omlaag wijzenIn de Flight Traffic Controller Challenge moet de Clawbot zijn arm één keer 90 graden omhoog en omlaag bewegen, 3 seconden wachten, de arm twee keer 45 graden omhoog en omlaag bewegen, 5 seconden wachten en de arm vervolgens drie keer 90 graden omhoog en omlaag bewegen.

Hier is een lijst met de gedragingen van de Clawbot:

  • Beweeg uw arm 90 graden omhoog en vervolgens omlaag.
  • Wacht 3 seconden.
  • Beweeg uw arm 45 graden omhoog en vervolgens omlaag.
  • Beweeg uw arm 45 graden omhoog en vervolgens omlaag.
  • Wacht 5 seconden.
  • Beweeg uw arm 90 graden omhoog en vervolgens omlaag.
  • Beweeg uw arm 90 graden omhoog en vervolgens omlaag.
  • Beweeg uw arm 90 graden omhoog en vervolgens omlaag.

Icoon Toolbox voor docenten Teacher Toolbox - Oplossing

De meeste instructies in deze uitdaging zijn ArmMotor.spinFor();. Nadat u een instructie voor het omhoog bewegen van de arm en een voor het omlaag bewegen van de arm hebt toegevoegd, kunt u de twee instructies markeren, met de rechtermuisknop klikken en ze vervolgens zo vaak als nodig kopiëren en plakken. Vervolgens kunnen de parameters worden aangepast om aan de uitdaging te voldoen en kunnen er wait();-instructies worden toegevoegd.

VEXcode V5 C++-project in de werkruimte met de opdracht Arm Motor positie instellen gemarkeerd en het contextmenu geopend. De cursor beweegt over de opdracht Kopiëren in het contextmenu. Dit is de elfde opdracht in de lijst, direct na Knippen.

  • Oplossing voor de uitdaging van een vluchtverkeersleider: 
// Begin projectcode
int main() {

  // Initialiseren van robotconfiguratie. NIET VERWIJDEREN!
  vexcodeInit();

  ArmMotor.setPosition(0, graden);
  ArmMotor.spinFor(vooruit, 90, graden);
  ArmMotor.spinFor(achteruit, 90, graden);
  wacht(3, seconden)
  ArmMotor.spinFor(vooruit, 45, graden);
  ArmMotor.spinFor(achteruit, 45, graden);
  ArmMotor.spinFor(vooruit, 45, graden);
  ArmMotor.spinFor(achteruit, 45, graden);
  wacht(5, seconden)
  ArmMotor.spinFor(vooruit, 90, graden);
  ArmMotor.spinFor(achteruit, 90, graden);
  ArmMotor.spinFor(vooruit, 90, graden);
  ArmMotor.spinFor(achteruit, 90, graden);
  ArmMotor.spinFor(vooruit, 90, graden);
  ArmMotor.spinFor(omgekeerd, 90, graden);
  
}