Utilizzo del sensore visivo - Python
Toolbox per l'insegnante
-
Lo scopo di questa sezione
Per utilizzare efficacemente il sensore visivo, è necessario che gli studenti siano in grado di configurarlo e regolarlo in base all'ambiente in cui si trova. Nell'attività seguente gli studenti impareranno a fare entrambe le cose.
Per maggiori informazioni sulla programmazione del sensore sezione della libreria VEX.
Di seguito è riportato uno schema di ciò che i tuoi studenti faranno in questa attività:
-
Aprire il progetto di esempio Rilevamento oggetti (Visione).
-
Configurare il sensore visivo.
-
Eseguire il progetto di esempio Rilevamento oggetti (Visione).
-
Discutere e riflettere.
-
Regolare il sensore visivo.
Suggerimenti per gli insegnanti
Se è la prima volta che uno studente utilizza VEXcode V5, può accedere a numerosi articoli utili nella VEX Library.
Suggerimenti per gli insegnanti
-
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, incoraggiateli a utilizzare la funzionalità di completamento automatico per aiutarli con la sintassi Python. Potresti notare una funzione di completamento automatico quando inizi a digitare il comando. Utilizza i tasti "Su" e "Giù" per selezionare il nome desiderato, quindi premi "Tab" o (Invio/A capo) sulla tastiera per effettuare la selezione. Per maggiori informazioni sull'utilizzo del completamento automatico consulta questo articolo.
Procuratevi l'hardware necessario, il vostro notebook di progettazione e aprite VEXcode V5.
Quantità | Materiali necessari |
---|---|
1 |
Kit di avvio per l'aula VEX V5 |
1 |
VEXcode V5 (ultima versione, Windows, macOS) |
1 |
Quaderno di ingegneria |
1 |
Configurazione di un sensore di visione (libreria VEX) |
1 |
Regolazione del sensore visivo (libreria VEX) |
1 |
Progetto di esempio di rilevamento di oggetti (Visione) |
Questa attività ti fornirà gli strumenti per utilizzare il sensore visivo.
È possibile utilizzare le informazioni Help presenti in VEXcode V5 per apprendere informazioni sui comandi.
Passaggio 1: aprire un progetto di esempio
VEXcode V5 contiene molti progetti di esempio diversi. In questa esplorazione ne utilizzerai uno.
Aprire il progetto di esempio Rilevamento oggetti (Visione) completando i seguenti passaggi:
- Aprire il menu File.
- Seleziona Apri Esempi.
- Utilizza la barra dei filtri nella parte superiore dell'applicazione e seleziona "Rilevamento".
Selezionare e aprire il progetto di esempio Rilevamento oggetti (Visione).
Salva il progetto con il nome Rilevamento oggetti.
- Verificare che il nome del progetto Rilevamento oggetti sia ora visualizzato nella finestra al centro della barra degli strumenti.
Suggerimenti per gli insegnanti
-
Assicurarsi che gli studenti abbiano selezionato Apri Esempi dal menu File.
-
Assicuratevi che gli studenti abbiano selezionato il progetto Rilevamento di oggetti (visione) Esempio. Puoi far notare agli studenti che ci sono diverse selezioni tra cui scegliere nella pagina Esempi Aperti.
-
Puoi chiedere agli studenti di aggiungere le loro iniziali o il nome del loro gruppo al nome del progetto. Ciò contribuirà a differenziare i programmi se chiederai agli studenti di inviarli.
-
Poiché VEXcode V5 dispone di salvataggio automatico, non è necessario salvare nuovamente il progetto dopo averlo salvato per la prima volta.
-
Se gli studenti hanno bisogno di aiuto per il salvataggio, indirizzali a uno di questi articoli:
Fase 2: Configurazione e utilizzo del sensore visivo
- Inizia leggendo Sensore di visione - Configurazione robot - VEXcode V5.
- Quindi, leggi Regolazioni del sensore di visione-Configurazione robot-VEXcode V5
- Successivamente, configura il sensore visivo per tre oggetti colorati: rosso, verde e blu.
Aprire il progetto di esempio Rilevamento oggetti (Visione) salvato in precedenza.
Come viene utilizzato il sensore visivo in questo progetto? Prevedi cosa accadrà una volta completato il progetto e annota le previsioni sul tuo quaderno di progettazione.
# Library imports
from vex import *
# Begin project code
check_red = Event()
check_blue = Event()
check_green = Event()
# Will check to see if there is a blue object in view of the vision
# sensor and display the result on line 1 on the V5 Brain's screen
def has_blue_callback():
brain.screen.clear_row(1)
brain.screen.set_cursor(1, 1)
vexcode_vision_5_objects = vision_5.take_snapshot(vision_5__BLUEBOX)
if vexcode_vision_5_objects and len(vexcode_vision_5_objects) > 0:
brain.screen.print("Blue Object Found")
else:
brain.screen.print("No Blue Object")
# Will check to see if there is a red object in view of the vision
# sensor and display the result on line 3 on the V5 Brain's screen
def has_red_callback():
brain.screen.clear_row(3)
brain.screen.set_cursor(3, 1)
vexcode_vision_5_objects = vision_5.take_snapshot(vision_5__REDBOX)
if vexcode_vision_5_objects and len(vexcode_vision_5_objects) > 0:
brain.screen.print("Red Object Found")
else:
brain.screen.print("No Red Object")
# Will check to see if there is a green object in view of the vision
# sensor and display the result on line 5 on the V5 Brain's screen
def has_green_callback():
brain.screen.clear_row(5)
brain.screen.set_cursor(5, 1)
vexcode_vision_5_objects = vision_5.take_snapshot(vision_5__GREENBOX)
if vexcode_vision_5_objects and len(vexcode_vision_5_objects) > 0:
brain.screen.print("Green Object Found")
else:
brain.screen.print("No Green Object")
# register event handlers
check_blue(has_blue_callback)
check_red(has_red_callback)
check_green(has_green_callback)
# small delay to ensure that the event handlers are ready to be used
wait(15, MSEC)
# set the print font for all future prints to the V5 screen
brain.screen.set_font(FontType.MONO40)
# constantly runs to check for new sensor data
while True:
check_blue.broadcast_and_wait()
check_red.broadcast_and_wait()
check_green.broadcast_and_wait()
wait(0.1, SECONDS)
- Scarica ed esegui il progetto. Posizionare oggetti di colore diverso davanti al sensore visivo e osservare il comportamento del robot. Annota nel tuo quaderno di progettazione in che modo la tua previsione è risultata diversa o corretta rispetto a quanto hai effettivamente osservato nel progetto.
Suggerimenti per gli insegnanti
I tre oggetti colorati non devono essere necessariamente cubi: possono essere qualsiasi oggetto relativamente piccolo di colore verde, rosso e blu.
Motivare Discussione
-
Risposte
Facilitare una discussione in classe per far sì che gli studenti condividano nel loro quaderno di ingegneria cosa hanno previsto che questo progetto avrebbe fatto e anche riflettere su come configurare il sensore di visione.
Facilitare la discussione ponendo le seguenti domande:
-
Quali sono i passaggi per configurare il sensore visivo?
-
A cosa serve la struttura if else?
-
Cosa succederebbe al modo in cui il sensore visivo rileva gli oggetti se cambiassimo stanza?
Le risposte possono variare:
-
Gli studenti devono tenere presente che il nome dell'oggetto dovrà essere ancora deciso. L'oggetto deve essere posizionato nell'inquadratura del sensore visivo e bloccato utilizzando il pulsante "Blocca". Il colore verrà quindi selezionato e configurato tramite il pulsante "Imposta". Gli studenti dovrebbero delineare i passaggi elencati in questo articolo.
-
La struttura if else esegue le istruzioni all'interno della prima o della seconda parte di if else in base al valore booleano riportato. Per ulteriori informazioni su come utilizzare queste istruzioni, consultare la Guida.
-
Se al sensore visivo venisse chiesto di rilevare oggetti in un ambiente diverso, l'illuminazione potrebbe cambiare e i colori degli oggetti potrebbero apparire diversi. Ciò potrebbe rendere difficoltoso il rilevamento degli oggetti da parte del sensore visivo.
Amplia il tuo apprendimento
-
Configura più oggetti
Scegli altri due oggetti colorati da configurare, possibilmente bianco, viola, giallo, ecc...
Se gli studenti hanno bisogno di aiuto, possono fare riferimento alle informazioni Aiuto o all'articolo Configurazione di un sensore di visione V5.
Fase 3: Regolazione del sensore visivo
Spesso un oggetto è configurato per essere riconosciuto dal sensore visivo in un ambiente, ad esempio in un'aula scolastica. Se il sensore visivo viene portato in un ambiente diverso, ad esempio durante una gara, l'oggetto potrebbe non essere riconosciuto dal sensore visivo. Ciò è spesso dovuto a un cambiamento nell'illuminazione dopo che il sensore di visione è già stato configurato. Per risolvere questo problema, potrebbe essere necessario regolare il sensore visivo.
- Inizia leggendo Regolazione del sensore di visione V5 in VEXcode V5.
- Quindi, regola il sensore visivo per i tre oggetti colorati: rosso, verde e blu.
Aprire il progetto di esempio Rilevamento oggetti (Visione) salvato in precedenza.
In che modo la messa a punto del sensore visivo influirà sulla sua capacità di rilevare gli oggetti? Sposta il Clawbot in una parte diversa della stanza, con più o meno luce.
- Scarica ed esegui il progetto. Posizionare oggetti di colore diverso davanti al sensore visivo e osservare il comportamento del robot. Annota sul tuo quaderno di progettazione quanto bene il sensore visivo rileva gli oggetti. È necessario regolare il sensore visivo dopo aver cambiato posizione?
- Regolare il sensore visivo secondo necessità. Dopo aver regolato il sensore visivo, testarlo per verificare se riesce a rilevare meglio gli oggetti e apportare le modifiche necessarie.
Motivare la discussione
-
Riflettere sull'attività
D: Il sensore visivo ha rilevato gli oggetti come previsto?
R: Le risposte possono variare; tuttavia, l'obiettivo di questa domanda è promuovere il pensiero cognitivo. Si prega gli studenti di tenere presente che la capacità del sensore visivo di rilevare gli oggetti può cambiare a seconda dell'ambiente e della luce.
D: Perché è importante poter regolare il sensore visivo in base alle esigenze?
R: Sebbene le risposte possano variare, una risposta comune dovrebbe essere che se un robot utilizza un sensore visivo e viene portato a una competizione o addirittura utilizzato in un gioco o in una sfida, le prestazioni del robot dipenderanno dalla precisione del sensore visivo. Per garantire la precisione è importante regolarlo.
Amplia il tuo apprendimento
-
oggetti multipli
Chiedere agli studenti di eseguire il progetto Rilevamento oggetti (Visione) e di posizionare più di uno degli oggetti configurati davanti al sensore visivo. Che succede? Chiedete loro di documentare le loro scoperte nel loro quaderno di ingegneria.
Ora, chiedete agli studenti di posizionare un oggetto configurato e un oggetto sconosciuto o non configurato davanti al sensore visivo. Che succede? Chiedete loro di documentare i risultati delle loro ricerche nel loro quaderno di ingegneria.
Prima di testare il tutto, chiedete agli studenti cosa accadrebbe se posizionassero tre oggetti configurati davanti al sensore visivo. Chiedete agli studenti di scrivere le loro previsioni prima di testarle. Chiedete loro di registrare le loro osservazioni dopo aver testato il prodotto.
Favorire una discussione su ciò che gli studenti hanno previsto e osservato.
Facilitare la discussione chiedendo:
- Quali erano le differenze tra uno, due e tre oggetti?
- Vorresti adattare in qualche modo il progetto per consentire il riconoscimento di più oggetti?