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 guarda 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.
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). Utilizzando lo stesso scenario di esempio di cui sopra, è possibile programmare il robot per verificare ripetutamente se la sua schermata Brain è 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 su uno dei seguenti link (Google Doc / .docx / .pdf).
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.
# Begin project code
while True:
if brain.screen.pressing():
drivetrain.drive(FORWARD)
else:
drivetrain.stop()
wait(5, MSEC)
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 aiutare con la sintassi Python. È 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 sull'utilizzo del completamento automatico, consulta l'articolo Python.
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.