Controller e loop
Nelle competizioni, le squadre utilizzano controller per controllare in modalità wireless i propri robot. Il controller è programmato per aggiornare il robot in base all'input dell'utente. I loop vengono utilizzati nel progetto in modo che il robot controlli ripetutamente le informazioni di input aggiornate. I loop consentono al progetto di verificare rapidamente quali pulsanti sono stati premuti o fino a che punto sono stati spinti i joystick. Una volta verificate, queste informazioni vengono rapidamente trasmesse al robot in modo che risponda rapidamente alle istruzioni del controller.
L'immagine sopra mostra il progetto di esempio Clawbot Control di VEXcode IQ. Il ciclo eterno in questo progetto controlla sempre le posizioni degli assi A e D per impostare la velocità dei motori.
I loop sono importanti anche per la programmazione autonoma senza controller. Un ciclo aiuta a semplificare e organizzare i comandi ripetuti all'interno di un progetto.
Motivare la discussione - Comportamenti ciclici
Rivedi il gioco VEX IQ Competition di quest'anno con gli studenti facendo clic su questo collegamento. Oppure, fai in modo che la seguente discussione sia basata sui giochi degli anni precedenti.
D: Quali comportamenti potrebbero essere ripetuti dal robot durante una competizione?
A: Gli studenti probabilmente risponderanno immediatamente con i movimenti, ma è meno probabile che il progetto utilizzi cicli per i movimenti piuttosto che per il controllo dei sensori.
D: Come trasformeresti questi comportamenti ripetitivi in un ciclo continuo?
A: Indipendentemente dal comportamento ripetuto, trascinare i blocchi all'interno di un ciclo è un passaggio obbligatorio. Gli studenti devono sentirsi a proprio agio nell'annidare i blocchi all'interno dei blocchi ad anello.
D: Chiedi agli studenti quale blocco in VEXcode IQ potrebbe aiutarli a programmare i loro robot in modo che si comportino dopo aver premuto un singolo pulsante del controller. Inoltre, chiedi di quale gruppo di blocchi fa parte.
A: Quel blocco è chiamato blocco del pulsante del controller Quando e si trova sotto i blocchi Eventi in VEXcode IQ.
Estendi il tuo apprendimento - Revisione di progetti di esempio
Per espandere questa attività, chiedi ai tuoi studenti di esplorare le differenze tra il controllo arcade e il controllo del carro armato. Gli studenti possono seguire i progetti di esempio trovati in VEXcode IQ. Esistono quattro progetti di esempio: Left Arcade, Right Arcade, Split Arcade e Tank Drive.
Discuti come funzionano i loop all'interno dei programmi, nonché i pro e i contro di ciascun tipo di controllo.
Per collegare questa attività alla matematica, utilizza i progetti arcade sinistro/destro (un joystick) e arcade diviso/tank drive (entrambi i joystick) sopra per discutere i ruoli degli assi X e Y all'interno del progetto. Le letture della posizione dell'asse X catturano i movimenti orizzontali da sinistra a destra dei joystick, mentre le letture della posizione dell'asse Y catturano i movimenti verticali su-giù dei joystick.