LEZIONI E FORMAZIONE DAI DOCENTI PER I DOCENTI

Scopri WeTurtle, la community di educatori dove trovare e condividere risorse innovative

home - progetti - L'inseguitore di linea con Lego Mindstorms EV3 - Algoritmo di inseguimento proporzionale

Algoritmo di inseguimento proporzionale

Durata LezioneTempi

Tempo stimato per la lezione in classe: 1.00 h

StrumentiStrumenti

  • 1 Computer ogni 3 studenti (circa)
  • 1 Kit LEGO® Mindstorms® EV3 Education (ogni 3 studenti)
  • Software LEGO® Mindstorms® EV3 Education
  • Un telo bianco su cui viene predisposto un percorso utilizzando, ad esempio, il nastro isolante nero da 1cm. Ricordatevi che più le curve saranno strette, più sarà complesso programmare il robot e trovare algoritmi adeguati per l’inseguimento della linea!

Registrati a WeTurtle per accedere ai vantaggi, è gratis!

La community di docenti e educatori ti offre:

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

Linee guida delle attività Linee guida delle attività

Si potrebbe partire con questa sfida: migliorare l’algoritmo di controllo! Il robot oscilla molto sopra la linea con l’algoritmo ON-OFF, come possiamo vedere a questo video:


Si può evitare (o diminuire) questa oscillazione?
Si può chiedere agli studenti a che cosa è dovuta, e come mai il robot si comporta in questo modo (lasciando sempre il tempo di riflettere, ipotizzare e sperimentare).

Il solito piatto d’argento…

Il robot oscilla perché l’algoritmo ON-OFF prevede solo 2 stati, indipendenti dal valore rilevato dal sensore: gira a destra o gira a sinistra, sempre della stessa quantità! Ma i valori rilevati potrebbero essere infiniti, come si può intuire dalla figura qui sotto, e quindi le correzioni da applicare al robot possono divenire di ordine “infinito”.

La correzione cioè, dovrebbe essere proporzionale all’errore che il robot sta commettendo!

Che cosa significa errore commesso dal robot?

L’errore (indicato con e) non è altro che la differenza tra il valore acquisito dal sensore, e il valore desiderato (la media tra bianco e nero):

                                          e = Valore_desiderato – Valore_acquisito

La correzione del robot (cioè quanto sterza) dovrebbe essere proporzionale a questo errore:

                                 Sterzata = Kp*( Valore_desiderato – Valore_acquisito)

Dove Kp rappresenta il coefficiente di proporzionalità a cui va assegnato un valore da trovare sperimentalmente.

In ambiente EV3 Mindstorms si potrebbe tradurre tutto con uno schema di questo tipo:

Nella figura sopra la costante Kp è stata impostata a 2.2, ma questo valore non è univoco!

Va trovata dagli studenti: dipende dalla velocità a cui si muovere il robot, da quanto è spessa la linea del percorso, dal tono di bianco del telo, dalla luce presente nella stanza. Insomma, gli studenti dovranno “smanettare” un po’ per trovare il giusto valore per questa costante, che dovrebbe essere compreso tra 0.5 e 3 (nel caso di un progetto di questo tipo).

Consiglio.
Sarebbe interessante documentare il comportamento del robot in base ai diversi Kp assegnati.
Per trovare il valore migliore vale la pena consigliare agli studenti di impostare inizialmente 1, e poi procedere modificano di circa 0.2 la costante, fino ad arrivare al valore che li convince di più.

L’effetto che si ottiene si può osservare in questo video:


Scopri i servizi di Weturtle

per il PIANO SCUOLA 4.0 del PNRR


Ottieni uno spazio di apprendimento con contenuti didattici per docenti e studenti, dove facilitare lo scambio e favorire la comunità di pratica e dove tenere sotto controllo i progressi della classe e dei docenti.

Vuoi leggere la lezione quando vuoi, anche offline?





POTREBBE INTERESSARTI ANCHE

ROBOTICA A SCUOLA CON LEGO MINDSTORMS EV3 – DOMANDE E RISPOSTE

FREE

Tempo: 49 min

TUTORIAL
   Lorenzo Cesaretti
Introduzione alla robotica educativa Lego® Mindstorms® EV3

FREE

Tempo: 1 min

BLOG
   Danila Leonori
Programmare il Lego Mindstorms EV3 in Python

FREE

Tempo: 43 min

TURTLETALK
   Lorenzo Cesaretti
Introduzione alla Robotica con Lego Mindstorms EV3

5.00€

Tempo: 70 min

PROGETTO
   Lorenzo Cesaretti
Robotcar e il moto rettilineo: distanza e intervallo di tempo,...

FREE

Tempo: 8 min

PROGETTO
   Lorenzo Cesaretti

Vuoi fare una domanda all'autore?

oppure


GLI ALTRI UTENTI HANNO CHIESTO

Chat Icon

Wetruvio

Ciao! Sono Wetruvio, il tuo assistente virtuale!