Skip to main content
Portale insegnanti

Programmazione di due pulsanti

Icona della cassetta degli attrezzi del docente Teacher Toolbox - Lo scopo di questa attività

Nella pagina precedente, lo studente stava programmando il braccio per farlo girare usando il pulsante Brain Up. Questa pagina si baserà sul progetto precedente per programmare anche il braccio a girare verso il basso utilizzando il pulsante Brain Down.

Blocco VEXcode IQ If then else dalla cassetta degli attrezzi

Questa attività introdurrà gli studenti alla programmazione con blocchi [If then else] e all'utilizzo di sensori e blocchi operatore per far controllare al robot se i pulsanti Brain Up o Down sono premuti. Se si preme il pulsante Brain Up, il braccio dell'Artiglio si solleverà. Se si preme il pulsante Brain Down, il braccio dell'Artiglio si abbassa. Ciò si basa sull'attività precedente e getterà anche le basi per la Sfida dell'interfaccia utente nella sezione Ripensare.

Per la Sfida dell'interfaccia utente, gli studenti dovranno programmare il loro Clawbot per sollevare il braccio, abbassare il braccio, aprire l'artiglio e chiudere l'artiglio utilizzando i pulsanti sul cervello del robot IQ.

Per ulteriori informazioni sui blocchi [If then], [If else], <Brain premuto o [Spin]>, visitare le informazioni di aiuto all'interno di VEXcode IQ. Per ulteriori informazioni su questo strumento di aiuto integrato, fai clic qui.

Di seguito è riportato uno schema di ciò che i tuoi studenti faranno in questa attività:

  • Usa l'ArmUp2 esistente per costruire il  progetto ArmUpDown fornito e prevedere cosa farà il progetto.
  • Visualizza un diagramma di flusso per aiutare a spiegare il flusso dei blocchi nel progetto.
  • Affina le loro spiegazioni su ciò che fa il progetto ArmUpDown.
  • Guarda il video tutorial If Then Else Blocks.
  • Modificare il progetto utilizzando i blocchi [If then else].
  • Fermati e discuti: gli studenti rifletteranno sulle loro previsioni su ciò che il progetto farà fare al Clawbot rispetto alle loro osservazioni effettive.
  • Programmare l'artiglio utilizzando lo stesso schema di progetto dalla programmazione del braccio.
Materiali necessari:
Quantità Materiali necessari
1

VEX IQ Super Kit

1

VEXcode IQ

1

Taccuino tecnico

1

Modello Clawbot (Drivetrain)

Icona della cassetta degli attrezzi del docente Cassetta degli attrezzi per insegnanti

Per suggerimenti sulle strategie di insegnamento per questa sezione, consulta la colonna Consegna della Guida alla stimolazione da fare o da non fare (Google / .docx / .pdf).

Il braccio Clawbot è pronto a muoversi su e giù!

Questa attività ti fornirà gli strumenti per programmare il tuo robot con comportamenti condizionati.
Il blocco [If then else] è l'obiettivo principale all'interno dell'attività, ma vengono utilizzati anche altri blocchi di rilevamento, controllo e operatore.

Blocchi campione dalla VEXcode IQ Toolbox - Pulsante Brain premuto, non operatore, attendere fino a quando, se allora, e se poi altri blocchi.

È possibile utilizzare le informazioni della Guida all'interno di VEXcode IQ per conoscere i blocchi. Per indicazioni sull'utilizzo della funzione Guida, vedere il tutorial Utilizzo della Guida.

Barra degli strumenti VEXcode IQ con l'icona Tutorial richiamata in una casella rossa, a destra del menu File.

Passo 1: Programmazione per muovere il braccio verso il basso.

Nella pagina precedente, hai programmato il braccio del Clawbot per farlo girare quando veniva premuto il pulsante Brain Up. Ma, che ne dici di abbassare anche il braccio? Rivediamo prima il precedente progetto ArmUp2.

ciao

Sarebbe possibile utilizzare lo stesso blocco [If then] per far ruotare il braccio verso l'alto per far ruotare anche il braccio verso il basso? Proviamo! Costruisci il progetto qui sotto modificando il tuo progetto ArmUp2 già esistente.

Arm Up 2 progetto con un ulteriore blocco If then aggiunto sotto il primo, all'interno del ciclo Forever. Il secondo blocco If then legge If Brain Down button pressed, then spin arm motor down, wait until not Brain Down Button pressed. Quindi il blocco motore del braccio di arresto si trova sotto l'If.

  • Salva il progetto come ArmUpDown. Se gli studenti hanno bisogno di aiuto per salvare il progetto, fare riferimento al tutorial Denominazione e salvataggio.

    Finestra di dialogo del nome del progetto nella barra degli strumenti VEXcode IQ. Viene mostrato lo slot 3 e il nome del progetto è Arm Up Down.

  • Verificare che il nome del progetto ArmUpDown sia ora nella finestra al centro della barra degli strumenti.
  • Prevedi cosa farà il Clawbot nel tuo quaderno di ingegneria. Spiegare sia i comportamenti dell'utente che del Clawbot.
  • Verifica se la tua previsione di ciò che fa il progetto Clawbot è corretta.
    • Scaricare il progetto nello slot 3 sul Clawbot, quindi eseguirlo.
    • Per assistenza durante il download e l'esecuzione di un progetto, consulta il tutorial in VEXcode IQ che spiega come scaricare ed eseguire un progetto.
      L'icona del tutorial recita Scarica ed esegui un progetto con un'icona di download e una freccia sopra.
  • Controlla le tue spiegazioni del progetto e aggiungi note per correggerle secondo necessità.

Icona Suggerimenti per l'insegnante Suggerimenti per l'insegnante

Se è la prima volta che lo studente utilizza VEXcode IQ, può anche vedere i Tutorial nella barra degli strumenti per apprendere altre competenze di base.

Barra degli strumenti VEXcode IQ con l'icona Tutorial richiamata in una casella rossa, a destra del menu File.

Icona della cassetta degli attrezzi del docente Cassetta degli attrezzi per insegnanti

Il progetto che gli studenti costruiscono sopra funzionerà. Quando si preme il pulsante Brain Up, il braccio si solleva e quando si preme il pulsante Brain Down, il braccio si abbassa. Anche se il progetto funziona così com'è, non è scritto in modo ottimale. Potrebbe esserci un caso in cui entrambe le condizioni possono essere vere allo stesso tempo. Inoltre, si noti che poiché la condizione del pulsante Brain Up inizia premuta per prima, se si tiene premuto il pulsante Brain Up e poi si preme anche Brain Down, il braccio continuerà a girare verso l'alto. Quell' azione non si fermerà fino a quando non verrà rilasciato il pulsante Brain Up. Pertanto, il progetto verrà riscritto nel passaggio successivo per includere un blocco [If then else] per evitare questi potenziali problemi.

Icona della cassetta degli attrezzi del docente Teacher Toolbox - Fermati e discuti

Ora che gli studenti hanno testato il progetto, chiedi loro come sono le loro previsioni rispetto alle loro osservazioni. Facilitare la discussione ponendo le seguenti domande:

  • La tua previsione era la stessa della tua osservazione?

  • Cosa sembra accadere nel progetto?

  • Le condizioni dei pulsanti Su e Giù premuti vengono controllate solo una volta?

  • Pensi che il progetto potrebbe essere riorganizzato per funzionare in modo più efficiente?

Fase 2: Comprendere il flusso del progetto.

Nella fase precedente, il progetto ha alzato e abbassato il braccio. Tuttavia, poiché la condizione del pulsante Brain Up inizia premuta per prima, se si tiene premuto il pulsante Brain Up e poi si preme anche Brain Down, il braccio continuerà a girare poiché quell' azione non si fermerà fino a quando il pulsante Brain Up non verrà rilasciato. Visualizza il seguente diagramma di flusso che spiega il flusso del progetto.

Immagine del flusso di progetto che mostra come viene eseguito il progetto per prendere una decisione. Il pulsante Se il cervello viene premuto è etichettato come condizione, se viene premuto/Vero, i blocchi sottostanti funzioneranno in ordine fino alla condizione successiva. Se non viene premuto/false, una linea rossa indica che i blocchi vengono saltati e il progetto si sposta per verificare la seconda condizione. La stessa ramificazione si verifica per la seconda condizione: se si preme il pulsante di abbassamento del cervello.

Pertanto, il progetto può sostituire i blocchi [If then] con blocchi [If then else] in modo che solo un'istanza possa essere vera in qualsiasi momento.

Guarda il seguente video tutorial sui blocchi [If then else]:

Inizia guardando il video tutorial If-Then-Else in VEXcode IQ.

L'icona del tutorial recita If then else blocks nella parte inferiore e mostra il contorno dei blocchi nella parte superiore.

L'utilizzo dei blocchi [If then else] eliminerà anche la necessità dei blocchi [Wait until] perché il braccio continuerà a girare fino a quando non verrà rilasciato il pulsante Brain Up. Ciò si verifica perché la parte "else" di [If then else] non viene mai raggiunta fino a quando la condizione del pulsante Brain Up non è falsa (rilasciata).

Il blocco [Forever] consente di controllare continuamente la prima condizione.

Progetto VEXcode IQ con un loop permanente collegato al blocco Quando avviato. All'interno del ciclo Forever c'è un blocco if then else. Il ramo If legge If Brain Up button pressed, then spin arm motor up. Il ramo else contiene un altro blocco if then else, che legge se si preme il pulsante Brain Down e quindi si abbassa il motore del braccio di lancio, altrimenti si arresta il motore del braccio.

Esploriamo la possibilità di modificare il progetto aggiungendo blocchi [If then else]. Il motore del braccio continuerà a girare fino a quando il pulsante Brain Up non sarà più premuto (rilasciato). A causa del blocco [Forever], questa condizione continuerà a essere controllata fino a quando non sarà falsa.

Una volta che la condizione del pulsante Brain Up è falsa, il progetto passerà al blocco successivo, che è quello di verificare la condizione se viene premuto il pulsante Brain Down. Se la condizione del pulsante Brain Down premuto è vera, il braccio si alzerà. Ancora una volta, a causa del blocco [Forever], questa condizione continuerà a essere controllata fino a quando non sarà falsa.

Una volta che la condizione del pulsante Brain Up è falsa, il progetto passerà al blocco successivo, che è il blocco [Stop motore]. Pertanto, il motore del braccio si arresta solo quando entrambe le condizioni sono false (nessuno dei due pulsanti è premuto).

Immagine del flusso del progetto che mostra come viene eseguito il progetto per prendere una decisione. Per prima cosa viene verificata la condizione del pulsante Se Brain up premuto, se è vero il progetto si muove per far girare il motore del braccio verso l'alto e torna all'inizio. Se la condizione è falsa, viene controllata la seconda condizione del pulsante Brain down premuto. Se si preme il pulsante cervello giù/vero, il motore del braccio di lancio giù gira e poi torna all'inizio. Se non viene premuto false, il blocco motore del braccio di arresto funziona.

Icona Motiva discussione Motiva la discussione

D: Qual è la progressione del flusso del progetto se la condizione del pulsante Brain Up premuto è FALSA (rilasciata)?
R: Se la condizione è falsa, il flusso del progetto continuerà a verificare la condizione del pulsante Brain Down premuto.

D: Qual è lo scopo dei blocchi [If then else] nel progetto di cui sopra?
R: L'utilizzo dei blocchi [If then else] consente a una sola istanza di essere vera alla volta. Pertanto, il pulsante Brain Up e i pulsanti Brain Down non possono essere veri allo stesso tempo utilizzando i blocchi [If then else], poiché la seconda condizione del pulsante Brain Down premuto non sarebbe nemmeno un'opzione a meno che la prima condizione del pulsante Brain Up premuto non fosse falsa. L'altro scopo è migliorare l'efficienza della programmazione.

D: Qual è la progressione del flusso del progetto se entrambe le condizioni dei pulsanti Su e Giù premuti sono false?
R: Se entrambe le condizioni sono false, il flusso del progetto continuerà fino al blocco [Stop motore] prima di tornare in cima alla pila ripetendosi per sempre.

Passaggio 3: programmazione con blocchi [If then else].

Usiamo i blocchi [If then else]:

  • Aggiungi i blocchi [If then else] al tuo progetto ArmUpDown in modo che il tuo progetto sia simile al seguente:

    Progetto VEXcode IQ con un blocco Forever collegato al blocco Quando avviato. All'interno del blocco Forever c'è un blocco If then else. Il ramo if legge se il pulsante brain up è premuto, il motore del braccio di lancio si alza. Il ramo else contiene un altro blocco if then else che legge se il pulsante Brain Down è premuto, quindi gira il motore del braccio verso il basso, altrimenti arresta il motore del braccio.

  • Salva il progetto come ArmUpDown2. Se gli studenti hanno bisogno di aiuto per salvare il progetto, fare riferimento al tutorial Denominazione e salvataggio.

    Finestra di dialogo del nome del progetto nella barra degli strumenti VEXcode IQ. Lo slot 4 è selezionato e il nome del progetto è Arm Up Down 2.

  • Scaricare il progetto nello slot 4 sul Clawbot, quindi eseguirlo.
  • Per assistenza durante il download e l'esecuzione di un progetto, consulta il tutorial in VEXcode IQ che spiega come scaricare ed eseguire un progetto.
    L'icona del tutorial recita Scarica ed esegui un progetto in basso con un'icona di download e una freccia sopra.
  • Verificare se il braccio ora gira verso l'alto quando si preme il pulsante Brain Up e verso il basso quando si preme il pulsante Brain Down.
  • Verificare che quando i pulsanti Cervello su e giù non vengono premuti (rilasciati) il motore del braccio si arresti.
  • Scrivi le tue osservazioni su come si è comportato il Clawbot prima e dopo aver aggiunto i blocchi if then else al tuo progetto nel tuo quaderno di ingegneria.

Icona della cassetta degli attrezzi del docente Teacher Toolbox - Fermati e discuti

Dopo che gli studenti hanno testato il progetto prima e dopo aver aggiunto il blocco [If then else], discutere con gli studenti di come ciò consenta al braccio di continuare a girare fino a quando non viene rilasciato il pulsante Brain Up. Chiedi agli studenti di condividere le loro osservazioni dai loro quaderni di ingegneria. Facilitare una discussione ponendo le seguenti domande:

  • Ritieni che il Clawbot si comporti in modo diverso tra l'utilizzo dei blocchi [If then else] rispetto ai soli blocchi [If then]?

  • Perché pensi che l'efficienza del programma sia importante?

  • La condizione del pulsante Brain Up viene controllata solo una volta nel progetto?

I quaderni di ingegneria degli studenti possono essere mantenuti e valutati individualmente (Google / .docx / .pdf) o in gruppo (Google / .docx / .pdf). I link precedenti forniscono una pagella diversa per ogni approccio. Ogni volta che una rubrica è inclusa nella pianificazione educativa, è buona pratica spiegare la rubrica o almeno dare copie agli studenti prima dell'inizio dell'attività.

Icona della cassetta degli attrezzi del docente Cassetta degli attrezzi per insegnanti

Gli studenti potrebbero non vedere molta differenza nel modo in cui il loro Clawbot si comporta tra l'utilizzo dei blocchi [If then else] rispetto ai blocchi [If then]. Se gli studenti non riescono a vedere fisicamente molta differenza, facilita una discussione sull'efficienza della programmazione e su come semplificare un progetto può portare a utilizzare meno blocchi. L'utilizzo di meno blocchi in un progetto può ridurre la quantità di potenziali errori.

Fase 4: programmazione dell'artiglio.

Nel passaggio precedente, il progetto è stato ottimizzato per funzionare in modo più efficiente utilizzando i blocchi [If then else]. Nell'esempio precedente, il braccio è stato manipolato utilizzando i pulsanti Cervello su e Giù.

Utilizzando lo stesso identico schema di progetto, l'Artiglio può anche essere manipolato.

  • Rivedere il progetto ArmUpDown2 e modificare i blocchi [Spin] in ClawMotor anziché ArmMotor utilizzando il menu a discesa.

    Assicurarsi che il pulsante Cervello su faccia ruotare l'artiglio "aperto" e che il pulsante Cervello giù faccia ruotare l'artiglio "chiuso" utilizzando i menu a discesa.

    Progetto Braccio Su Giù 2 con i blocchi del motore di lancio impostati su Motore ad artiglio. Il blocco motore di arresto ha la selezione dei parametri aperta con il motore Braccio selezionato.

  • Salva il progetto come ClawUpDown. Se gli studenti hanno bisogno di aiuto per salvare il progetto, fare riferimento al tutorial Denominazione e salvataggio.

    Finestra di dialogo del nome del progetto nella barra degli strumenti VEXcode IQ. Lo slot 1 è selezionato e il nome del progetto è Claw Up Down.

  • Scaricare il progetto nello slot 1 sul Clawbot, quindi eseguirlo.
  • Per assistenza durante il download e l'esecuzione di un progetto, consulta il tutorial in VEXcode IQ che spiega come scaricare ed eseguire un progetto.
    L'icona del tutorial recita Scarica ed esegui un progetto in basso.
  • Verificare se l'artiglio ora si apre quando si preme il pulsante Brain Up e si chiude quando si preme il pulsante Brain Down.
  • Verificare che quando i pulsanti Cervello su e giù non vengono premuti (rilasciati) il motore dell'artiglio si arresti.
  • Scrivi le tue osservazioni su come si è comportato il Clawbot prima e dopo aver aggiunto i blocchi if then else al tuo progetto nel tuo quaderno di ingegneria.

Icona della cassetta degli attrezzi del docente Cassetta degli attrezzi per insegnanti

Ora che gli studenti hanno le abilità per manipolare il braccio e l'artiglio usando i pulsanti, chiedi agli studenti di fare un brainstorming su come possono eseguire tutte e quattro le azioni nello stesso progetto (braccio su, braccio giù, artiglio aperto e artiglio chiuso).
Gli studenti utilizzeranno un altro blocco [if then else] nella sezione di ripensamento per consentire al loro robot di eseguire tutte e quattro le azioni.

Icona Estendi il tuo apprendimento Estendi il tuo apprendimento - Imposta il blocco di arresto del motore

Se gli studenti programmano il loro robot per sollevare e abbassare il braccio, il peso dell'artiglio potrebbe far scivolare il braccio verso il basso.
In questo caso, il blocco [Set arresto motore] può essere utilizzato in modo che il braccio non cada a causa della gravità e del peso dell'artiglio. Questo blocco può essere utilizzato all'inizio del progetto e verrà applicato a tutti i blocchi motore futuri per il resto del progetto.

Inizio delle informazioni della Guida per il blocco di arresto del motore impostato. Il blocco viene visualizzato con i parametri impostati su Claw motor e l'arresto impostato su Brake. Il testo legge Imposta il comportamento del motore intelligente VEX IQ una volta che smette di muoversi.

Il blocco di arresto del motore impostato ha tre impostazioni:

  • Il freno provoca l'arresto immediato del motore.
  • Coast lascia che il motore giri gradualmente fino a fermarsi.
  • Hold fa sì che il motore si arresti immediatamente e lo riporta nella sua posizione di arresto se spostato.