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 ON-OFF

Algoritmo di inseguimento ON-OFF

Tempi

Tempo stimato per la lezione in classe: 2.00 h

Strumenti

  • 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!

Ancora non sei iscritto? Diventa una tartaruga digitale con centinaia di docenti da tutta Italia.

ISCRIVITI SUBITO!

Linee guida delle attività

E' il momento in cui gli studenti iniziato a “sbattere la testa” contro il problema principale. Provare a inseguire la linea!
Qui è sempre molto interessante lasciare ai ragazzi il tempo per costruire ipotesi di algoritmo in totale libertà, senza influenzare le loro scelte e sperimentazioni. Chiederanno sicuramente spunti e consigli.

Il supporto da parte del docente potrebbe arrivare sotto forma di ulteriori stimoli e quesiti:

  • se partiamo dall’ipotesi che il robot si trova sopra la linea nera, qual è il valore desiderato, quello che il robot vorrebbe misurare di continuo (con il sensore di luce) durante il suo funzionamento?
La risposta più scontata è il valore del nero, perché questo significherebbe che il robot durante tutto il suo funzionamento si troverebbe sempre perfettamente sopra la linea nera.
Da cui possono nascere altri spunti.

Ma se il robot si trova precisamente con il sensore sopra la linea, e ad un certo punto il valore di luce riflessa rilevato dal sensore aumenta, da che parte faccio curvare il robot per correggere la posizione e tornare sul nero? Destra o sinistra?

Come si vede dalla schematizzazione nella figura seguente (a sinistra), il valore aumenterebbe allo stesso modo in entrambe le direzioni, quindi non sarebbe possibile impostare un algoritmo risolutivo partendo da questa idea. Non potremmo mai sapere che curva imporre al robot per correggere la posizione e tornare al centro della linea nera!


Serve una soluzione alternativa!

A questo punto gli studenti possono lavorare alla ricerca di un diverso valore da seguire, il nero “puro” non ci piace più.
In questa fase è fondamentale concedere loro del tempo per sperimentare alla ricerca di una soluzione alternativa ed efficace.

La soluzione su piatto d’argento che vi proponiamo è quella di scegliere come valore desiderato il 50% di bianco e il 50% di nero (tipica situazione ideale con bianco = 100 e nero = 0 tra cui si media ottenendo il valore 50), attuando poi la strategia presentata nella figura seguente, con il sensore posizionato sull’estremità destra del nastro:

Ripeti all’infinito
    Acquisisco un valore dal sensore
    Se il valore letto > 50 (valore medio) --> il robot si sta spostando verso il bianco (che sta alla sua destra)
       Il robot gira a sinistra
    Se il valore letto < 50 (valore medio) --> il robot si sta spostando verso il nero (che sta alla sua sinistra)
       Il robot gira a destra

Che in Ambiente Mindstorms si potrebbe tradurre così:

Questa soluzione si chiama ON-OFF perché il robot o gira a destra o a sinistra, sempre con gli stessi parametri di curvatura. Non ci sono altre possibilità!

Nello schema come valore medio si trova 38.5 perché in condizioni reali (in cui ci sono variabili da tenere in considerazione come la luce ambientale, il telo di un colore bianco non perfetto), non avremo mai come valori:

  • Luce riflessa sul nero = 0
  • Luce riflessa sul bianco = 100
E quindi il valore medio non potrà essere 50.

Gli studenti quindi dovranno misurare questi due valori e poi calcolare il valore medio reale tra i due, prima di costruire l’algoritmo.

Approfondimenti

A questo punto si potrebbe ragionare con gli studenti intono al concetto di feedback e alla differenza tra un robot che si muove in un ambiente conosciuto, sfruttando relazioni matematiche note, e il loro robot che si muove sfruttando le informazioni del sensore.
Se conoscessi la circonferenza della ruota del robot, e volessi farlo andare avanti di 2 metri, potrei calcolare quanti giri di ruota occorrono per coprire questa distanza. Stessa cosa se avessi a disposizione l’esatta velocità e accelerazione del robot: potrei sfruttare delle relazioni fisiche per ottenere il comportamento desiderato.
Queste tecniche di controllo del sistema vengono definite ad anello “aperto”.

Dopo aver osservato e studiato il sistema robot, definisco delle equazioni (circonferenza delle ruote, velocità, accelerazione) che mi permettano di controllare i motori senza l’utilizzo dei sensori.

Nota. Questa strategia si può scegliere solo in certi casi, ad esempio se conosco la stanza dove si dovrà muovere il robot e come sono posizionati eventuali ostacoli.

Una ulteriore tecnica di controllo è quella “ad anello chiuso” o retroazione (feedback) precedentemente utilizzata per impostare la strategia ON-OFF.
Se non si può conoscere nulla dell’ambiente in cui il robot si muoverà, c’è bisogno dei sensori per acquisire informazioni sullo stato del sistema (su come si sta attualmente comportando) così da poter decidere le correzioni future.

Chiariti questi concetti con gli studenti, si passa all’incontro successivo.

Vuoi leggere la lezione quando vuoi, anche offline?



Hai letto la lezione? Che cosa ne pensi? Lascia un commento qui sotto!