Skip to main content

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

Questo STEM Lab si concentra sulla programmazione del robot per rispondere alle condizioni che rileva. Questa prima lettura ha lo scopo di introdurre l'idea di condizionali, condizioni booleane (VERE o FALSE) e il vantaggio di includere queste strutture di programmazione all'interno di un progetto. Gli studenti dovrebbero iniziare a riconoscere che l'inclusione della programmazione condizionale migliora il modo in cui il robot risponde al suo ambiente.
Mentre osserva un robot, potrebbe sembrare che prenda decisioni sul proprio comportamento, ma all'interno della programmazione, controlla le condizioni e agisce in modo appropriato. Gli studenti potrebbero considerare in che modo le condizioni influenzano le proprie decisioni informate.
 

Decisione da prendere: devo prendere un ombrello? Condizione
attuale: è probabile che piova (VERO).
Decisione: prendi un ombrello.

Una persona in piedi a un bivio con due frecce dipinte a terra. La freccia sinistra, etichettata come FALSA, punta a sinistra, mentre la freccia destra, etichettata come VERA, punta a destra. La persona è posizionata all'intersezione dei due percorsi. Percorsi
VERI e FALSI

Processo decisionale

Al loro livello più elementare, i programmi sono scritti per realizzare semplici sequenze di comportamento. Ad esempio, potresti volere che il tuo robot guidi in avanti e faccia anche alcuni giri per raggiungere una destinazione. Ma cosa succede se vuoi che il tuo robot aspetti il momento giusto per iniziare a guidare in avanti e completare il suo percorso? Ciò richiederebbe la programmazione con istruzioni condizionali. Utilizzeresti una dichiarazione condizionale per definire quale sia il "momento giusto per iniziare" all'interno del tuo progetto. Forse il "momento giusto" è dopo aver premuto un pulsante o quando un sensore rileva un livello specifico e poi inizia a guidare. Quando osservi il comportamento del robot, sembrerà che stia decidendo quando iniziare a guidare, ma è perché hai impostato le condizioni per quando dovrebbe iniziare la guida.

Le dichiarazioni condizionali sono potenti dichiarazioni di programmazione che utilizzano una condizione booleana (VERA o FALSA). Usando lo stesso scenario di esempio di cui sopra, potresti programmare il tuo robot per controllare ripetutamente se la sua schermata cerebrale è premuta e avanzare quando lo è. La dichiarazione condizionale in quel progetto può leggere qualcosa di simile a "Se lo schermo rileva che è premuto (VERO), eseguire la sequenza di guida". Questa affermazione non menziona alcun comportamento se la condizione è FALSA (lo schermo non viene premuto), quindi il robot non intraprende alcuna azione quando è FALSO. Le dichiarazioni condizionali consentono di sviluppare progetti in cui il robot si comporta in modo diverso a seconda di ciò che percepisce. Per maggiori informazioni sulla Logica Booleana, clicca qui.

Nell'esempio seguente, se si preme lo schermo del Cervello (TRUE) il robot avanzerà. Se lo schermo del Cervello non viene premuto (FALSO) il robot smetterà di guidare. Questo mostra il robot che avanza solo quando viene premuto lo schermo del Cervello, altrimenti il robot si ferma.

// Inizio codice progetto
int main() {
  // Inizializzazione configurazione robot. NON RIMUOVERE!
  vexcodeInit();

  while (true) {
    if (Brain.Screen.pressing()) {
      Drivetrain.drive(forward);
    }
    else {
      Drivetrain.stop();
    }    
  }  
} 

 

Icona Suggerimenti per l'insegnante Suggerimenti per l'insegnante - Utilizzo del completamento automatico

Il completamento automatico è una funzionalità di VEXcode V5 che prevede il resto del comando che stai digitando. Mentre gli studenti lavorano in VEXcode V5, incoraggiali a utilizzare la funzione di completamento automatico per facilitare la sintassi. È possibile notare una funzione di completamento automatico quando si inizia a digitare l'istruzione. Utilizzare i tasti "Su" e "Giù" per selezionare il nome desiderato, quindi premere "Tab" o (Invio/Invio) sulla tastiera per effettuare la selezione. Per ulteriori informazioni su questa funzione, consulta gli articoli su C++.

Area di lavoro VEXcode V5 con l'avvio del comando Drivetrain digitato e un menu scorrevole che mostra le opzioni di completamento automatico per la parte successiva del comando.

Icona Estendi il tuo apprendimento Estendi il tuo apprendimento

Per espandere questa attività, chiedi ai tuoi studenti di accoppiarsi in squadre e creare uno schizzo di un labirinto da completare per un'altra squadra. Il labirinto dovrebbe richiedere un minimo di tre-cinque affermazioni condizionali. Ad esempio, continua in avanti fino a quando non c'è un muro. Quindi, gira a sinistra. Gli studenti dovrebbero scrivere una soluzione al labirinto sotto forma di diagramma di flusso. Gli studenti dovrebbero quindi scambiare labirinti con un'altra squadra che dovrebbe, a sua volta, creare una soluzione al labirinto sotto forma di diagramma di flusso. Le due squadre dovrebbero quindi confrontare le risposte per vedere quanto si avvicinano.

Per correlare questa attività ai giochi online o per dispositivi mobili, chiedi ai tuoi studenti di descrivere l'obiettivo del loro gioco/app preferito. Quindi chiedi agli studenti di creare un diagramma di flusso che delinei le prime dieci decisioni sì/no o vero/falso che seguono nel loro gioco.