Gebeurtenisgebaseerde programmering: communicatie tussen instructies - C++
Toolbox voor docenten
-
Het doel van deze sectie
Het doel van het Rethink-onderdeel is dat studenten knoppen op de Controller gebruiken met behulp van gebeurtenisgebaseerde programmering.
Dit gedeelte bevat:
-
Overzicht van gebeurtenisgebaseerde programmering
-
Voorbeeldproject Downloadinstructies & Overzicht
-
Remix-activiteiten:
-
Pak een voorwerp!
-
Gekleurde edelstenen
-
Estafette!
-
-
Remixvragen
Tips voor leraren
- De Controller kan vóór de les worden gekoppeld aan de Robot Brain om tijd te besparen. Beslis of u deze stap zelf wilt uitvoeren of dat u wilt dat de studenten dit doen. Volg hier de stappen. U kunt dit artikel uitprinten en aan uw leerlingen laten gebruiken, als u wilt dat zij de Controller aan de Brain koppelen.
- Dankzij gebeurtenisgebaseerde programmering kan Clawbot gebeurtenissen activeren of reageren op triggers. Dit type programmering zorgt ervoor dat één instructie met andere instructies kan communiceren.
Met andere woorden: de Clawbot reageert op de bewegingen van de joysticks van de Controller. De beweging van de joystick is de trigger en de Clawbot reageert daarop. -
#include "vex.h" using namespace vex; void controller_L1_Pressed(){ ArmMotor.spin(forward); } int main() { // Robotconfiguratie initialiseren. NIET VERWIJDEREN! vexcodeInit(); Controller1.ButtonL1.pressed(ControllerButtonL1_pressed); }
In het bovenstaande voorbeeld is het indrukken van de L1-knop de trigger die de ArmMotor laat draaien.
Open deC++helpinformatie voor meer informatie over de instructies.

Event-based programmeren
Als je hond je zijn riem brengt of bij de deur zit, dan laat hij je weten dat hij naar buiten moet. Op school, wanneer je leraar een vraag stelt en je je hand ziet opsteken, geloven ze dat je het antwoord weet en willen ze de vraag beantwoorden. Dit soort gedragingen worden ook wel 'triggers' genoemd.
Uw hond weet dat het feit dat hij zijn riem naar u toe brengt of bij de deur gaat zitten, de trigger is die u laat weten dat hij naar buiten moet. Dus als je hem met zijn riem bij de deur ziet zitten, dan reageer je op de trekker door hem naar buiten te brengen. Je hand opsteken is de trigger die de leraar laat weten dat je de vraag wilt beantwoorden. De leraar reageert vervolgens op de trigger door jou aan te spreken.
Gebeurtenisgebaseerde programmering in robotica is wanneer bepaald robotgedrag de robot triggert om bepaalde dingen te doen of te reageren op bepaalde triggers.
Toolbox voor docenten
-
De instructies doornemen
- Vraag studenten om het voorbeeldproject Clawbot Controller met gebeurtenissen te openen in VEXcode V5.
- Neem als activiteit met de hele klas de programmeerinstructies met de leerlingen door. Vertel de leerlingen dat er in het Clawbot Controller with Events-project meerdere gebeurtenissen tegelijkertijd kunnen worden geactiveerd. Hierdoor kunnen ze de rijbeweging van Clawbot en de beweging van de arm en klauw van Clawbot besturen.
Controller: Clawbot Control
Nu bent u klaar om het voorbeeldproject C++Clawbot Controller met gebeurtenissen te downloaden en de controller te gebruiken om de Clawbot, zijn Arm en zijn Claw tegelijkertijd te bedienen!
Zorg ervoor dat je de benodigde hardware en je technische notebook hebt. Open VEXcode V5.
| Aantal | Benodigde materialen |
|---|---|
| 1 |
Clawbot |
| 1 |
Opgeladen robotbatterij |
| 1 |
VEX V5 Radio |
| 1 |
Controller |
| 1 |
Tetherkabel |
| 1 |
VEXcode V5 |
| 1 |
USB-kabel (bij gebruik van een computer) |
| 1 |
Technisch notitieboekje |
Voordat u met de activiteit begint...
Heb je elk van deze items klaar? De Bouwer moet elk van de volgende controleren:
-
Zijn alle motoren en sensoren aangesloten op de juiste poort?
-
Zijn de slimme kabelsvolledig in alle motorengestoken?
-
Is Controllergekoppeld aan Robot Brain?