L’utilizzo dei sensori permette di capire il sistema in cui i robot sono capaci di interagire con il mondo circostante.
In che modo una macchina percepisce il senso di equilibrio o una rotazione in un dato verso?
Il kit “Lego® WeDo” contiene il sensore di inclinazione,...
Tempo di lettura/visione: 5 min
In questo tutorial vedremo l’utilizzo dei sensori in Lego® WeDo 1.0.
Nello specifico, tratteremo:
Tecnologia
Ti interessa approfondire il kit Lego® Wedo (e come introdurre la robotica educativa nella scuola primaria)? A questo link trovi un corso online gratuito e certificato che potrai seguire quando e come vuoi!
Il sensore di inclinazione è in grado di rilevare la direzione verso cui è puntato: in alto, in basso, a destra o a sinistra. È possibile sfruttarne il potenziale utilizzandolo con il software Scratch.
L’installazione è immediata e semplice: una volta collegato all’hub USB in dotazione con il kit e connesso l’hub al computer, Scratch rivelerà automaticamente la presenza del sensore.
Il passo preliminare da eseguire è far comparire a schermo i blocchi necessari. A questo punto:
1. Selezionare il pulsante “Altri Blocchi” situato in alto al centro della schermata;
2. su “Aggiungi un’estensione” (fig. 1): doppio clic su “Lego® WeDo 1.0” (fig. 2) si avrà accesso ai pulsanti necessari.
Il corso gratuito "Collaborare a scuola con il digitale"
Un'area personalizzata con i tuoi contenuti preferiti
Una lezione di prova gratuita per ogni corso online
Dirette ed eventi dedicati agli utenti iscritti
Il sensore di inclinazione associa ad ogni posizione un valore numerico, per un totale di 5 stati:
● 0 corrisponde al sensore non inclinato ed appoggiato orizzontalmente su un piano;
● 1 se inclinato verso il basso;
● 3 verso l’alto (rispetto all’asse Y);
● 2 se inclinato a destra;
● 4 verso sinistra (rispetto all’asse X).
Per verificare che l’installazione sia andata a buon fine è possibile far comparire in Scratch il valore che il sensore assume quando è inclinato.
Esistono differenti modi per svolgere questa operazione; dopo aver inclinato il sensore in una certa posizione:
● cliccare sulla spunta vicino al pulsante inclinazione, se presente (fig. 3);
● creare una variabile che aggiorni e visualizzi il valore del sensore durante i suoi movimenti, con uno schema tipo questo:
● cliccare sul pulsante una volta per far visualizzare il valore (fig. 4);
● mostrarlo come testo di dialogo del gatto di Scratch (fig. 5).
Se si dovessero notare imprecisioni nei valori mostrati a schermo dal sensore, controllare che esso sia correttamente installato nell’hub: il sensore è sensibile alle vibrazioni che, se eccessive, potrebbero causare problemi durante le inclinazioni.
Scratch mette a disposizione due modi per poter interagire con il sensore.
-Primo metodo-
Quello più semplice e intuitivo è associare il sensore al blocco “Quando inclinazione = (valore da inserire)”, programmando l’esecuzione di uno o più blocchi si verifica una certa inclinazione.
Possiamo ad esempio:
● aumentare la potenza del motore quando il sensore è inclinato verso l’alto, immaginando che la nostra costruzione Lego® abbia bisogno di velocità per scalare una salita;
● diminuire la potenza del motore se il sensore è inclinato verso il basso (fig. 6).
Un altro esempio di utilizzo: potremmo utilizzare un blocco diverso per ogni tipo di inclinazione, in modo tale da poter associare una funzione differente da far svolgere al nostro robot per ogni inclinazione scelta.
-Secondo metodo-
Questo metodo, consentito dall’estensione “Altri blocchi”, richiede la costruzione di uno script con un’istruzione condizionale.
È possibile domandarsi: “Cosa succederebbe se si utilizzasse il sensore inclinato in un dato verso?”. Questo quesito, tradotto in linguaggio informatico, necessita del blocco condizionale “Se allora”, situato nella categoria “Controllo” e dell’operatore verde di uguaglianza.
Componendo le istruzioni come in figura è possibile associare a una direzione scelta un qualsiasi compito si voglia far eseguire alla costruzione Lego® WeDo.
Lo script appena mostrato in figura esegue l’istruzione data solamente una volta. Nel caso si volesse ripetere l’esecuzione e rilevare ogni volta che il sensore viene spostato in una data direzione, è possibile utilizzare il blocco “per sempre”, come in figura:
Il sensore può essere programmato anche per muovere un personaggio virtuale in Scratch, come il gattino già presente o altri importati dall’utente.
In figura è riportato il seguente esempio: il personaggio si sposta lungo l’asse Y, per sempre, di 10 unità se il sensore è inclinato verso l’alto, di 10 unità verso il basso se inclinato in quella direzione.
L’installazione è semplice e rapida, esattamente come in Scratch: una volta collegato il sensore all’hub USB in dotazione e connesso quest’ultimo al computer, Lego® WeDo ne rivelerà automaticamente la presenza.
Il sensore di inclinazione associa ad ogni posizione un valore numerico, per un totale di 5 stati:
● 0 corrisponde al sensore non inclinato ed appoggiato orizzontalmente su un piano;
● 10 se inclinato verso il basso;
● 2 verso l’alto (rispetto all’asse Y);
● 8 se inclinato a sinistra;
● 4 verso destra (rispetto all’asse X).
Per verificare che l’installazione sia andata a buon fine è possibile far comparire in WeDo il valore che il sensore assume quando è inclinato.
Lo script in figura ci permetterà di visualizzare a schermo il valore che il sensore assume ogni volta viene spostato, combinando tra loro il blocco di inclinazione, il blocco “display” e la ripetizione ciclica.
Nella figura sottostante è presente un esempio di come si potrebbe programmare il sensore di inclinazione. È necessario usare il blocco “invio messaggio” abbinato al blocco del sensore: il valore mostrato a schermo verrà così salvato come “messaggio”.
Con il blocco “Avvia su messaggio” l’utente potrò abbinare al valore numerico salvato un’istruzione specifica: nell’esempio proposto il motore verrà ruotato a sinistra quando il sensore è rivolto verso l’alto, e si spegnerà quando inclinato in basso.
In questo caso utilizziamo il blocco “Attendi per” (la clessidra di colore giallo), per aspettare che il sensore venga rivolto verso l’alto (come si osserva dal blocco arancione connesso sotto); nel momento in cui si verifica questo evento, vengono eseguiti i blocchi successivi, cioè viene impostata la rotazione del motore in senso orario, la potenza a 10 e il tempo di accensione a 10 decimi di secondo. È presente anche il blocco ripeti, all’esterno di questa sequenza appena descritta, che permette la ripetizione all’infinito della logica implementata.
Se vuoi maggiori informazioni o una consulenza o se vuoi far parte della famiglia We Turtle scrivi all'indirizzo email: info@weturtle.org
Per restare sempre aggiornato iscriviti alla Newsletter e segui We Turtle e Talent su Facebook.
FREE
Tempo: 5 min
Ciao! Sono Wetruvio, il tuo assistente virtuale!