Gebeurtenisgebaseerde programmering: communicatie tussen instructies - Python
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.
# Bibliotheek importeert van vex import * # Begin projectcode # Maak callback-functies voor elke controllerknopgebeurtenis def controller_L1_Pressed(): arm_motor.spin(FORWARD) while controller_1.buttonL1.pressing(): wait(5, MSEC) arm_motor.stop() # Maak controller-callbackgebeurtenissen - 15 msec vertraging om ervoor te zorgen dat gebeurtenissen worden geregistreerd controller_1.buttonL1.pressed(controller_L1_Pressed) wait(15, MSEC)In het bovenstaande voorbeeld is het indrukken van de L1-knop de trigger die de arm_motor laat draaien.
Voor meer informatie over de instructies, open de Python helpinformatie.

Gebeurtenisgebaseerde programmering
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. Deze gedragingen worden ook wel 'triggers' genoemd.
Je hond weet dat het brengen van zijn riem of bij de deur zitten de trigger is die je 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 dan op de trigger door een beroep op je te doen.
Gebeurtenisgebaseerde programmering in robotica is wanneer bepaald robotgedrag de robot ertoe aanzet om bepaalde dingen te doen of op bepaalde triggers te reageren.
Toolbox voor docenten
-
De instructies doornemen
- Open het voorbeeldproject Clawbot Controller met gebeurtenissen 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 ben je klaar om het voorbeeldproject Clawbot Controller with Events te verkennen en de Controller te gebruiken om de Clawbot, zijn arm en zijn klauw 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 (indien u een computer gebruikt) |
| 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?