FLL Relazione Tecnica - Maserati La nostra squadra: Siamo un gruppo di studenti delle classi 1a e 2a del Liceo delle Scienze Applicate (opzione informatico) dell’Istituto Maserati di Voghera. È la seconda volta che partecipiamo alla First Lego League e il nostro obiettivo è dare seguito all’ottimo risultato conseguito l’anno scorso (6 o posto complessivo alla finale nazionale). Progettazione meccanica: Abbiamo analizzato la morfologia del campo di gara, notando che il nostro robot doveva possedere determinate caratteristiche: Una struttura bassa per evitare che il robot si impigli nel filo dell’aereo come già è capitato a Cuneo; Una pala per il trasporto di oggetti; Una benna per permettere l’attivazione di alcune leve e per prelevare degli oggetti. Strategie adottate: Durante le prove di movimentazione del robot ci siamo resi conto che il software scritto con i blocchi di base della lego presenta essenzialmente due problemi: uno nel controllo preciso della movimentazione contemporanea dei 2 motori per le ruote e l’altro nell’arresto dei motori al termine di un movimento poiché notiamo che prima di fermarsi del tutto compie delle oscillazioni. I due motori, pur funzionando contemporaneamente quando il comando è identico, si muovono in realtà non sincronizzati. Questo è dovuto sia alla logica utilizzata nella realizzazione dei blocchi di base NXT per la programmazione sia al fatto che i motori non sono perfettamente uguali visto anche il processo di usura (gli ingranaggi interni possono risultare più o meno consumati e di conseguenza esercitano una resistenza differente durante il movimento). I due movimenti, leggermente diversi per i motivi precedentemente citati, provocano a volte nel movimento del robot spostamenti lievemente differenti da quelli programmati e ciò può compromettere la riuscita della missione. Abbiamo così ipotizzato e realizzato un robot dotato di sterzo, che necessita di un motore per la trazione e di uno per lo sterzo. In questo modo le ruote motrici, comandate da un motore in comune risulterebbero sincronizzate. Dopo averne costruito un prototipo ci siamo accorti che i movimenti del robot erano influenzati dal posizionamento iniziale dello sterzo, che siccome era da allineare ogni volta manualmente risultava non ripetitivo. Questa motivazione ci ha indotto a utilizzare un robot più “tradizionale” Istituto Istruzione Superiore “A. Maserati” – Voghera - FLL Rovereto (TN) - a.s. 2013-2014 Pagina 1 dotato di due motori per le ruote. Per mantenere sincronizzate le ruote il nostro docente ci ha suggerito un metodo per realizzare quello che si chiama “asse elettrico”, che consiste nel fare un programma che obbliga il secondo motore (C) a seguire esattamente il movimento del primo (B) effettuando una correzione quando questo non succede. Abbiamo creato 2 blocchi, uno per il comando del motore B, l’altro per forzare il motore C ad emularlo. Il programma di comando di C deve eseguirsi contemporaneamente al programma principale e quindi abbiamo sfruttato la possibilità del software NXT di fare una programmazione parallela. Il blocco PIDBC muove il motore C contemporaneamente a quello B con il seguente funzionamento. Legge il trasduttore di posizione (encoder) di B e quello di C. Poiché il motore B si sta muovendo anche il suo encoder gira. Invece, il motore C è fermo, come pure il suo encoder. Facendo la differenza fra le due posizioni degli encoder si trova un valore che andrà a pilotare il motore C. Si introducono quindi dei parametri numerici per permettere ai due motori di andare a velocità diversa (sterzatura). Descrizione dei blocchi: lettura della sterzatura dal blocco di comando di B; lettura dell’encoder B; prodotto della sterzatura per il valore dell’encoder B per ottenere il comando posizione C; lettura dell’encoder C; differenza fra i 2 valori; confronto della differenza con 0 per creare la direzione del movimento; moltiplicazione della differenza per una costante che serve a ridurre il tempo impiegato da C per raggiungere B. Occorre limitare questo valore altrimenti l’asse C non riuscirà mai a terminare il movimento (pendola). In questo modo è stato creato un controllo proporzionale di un motore. Con questo valore si comanda in velocità (potenza) il motore. E’ evidente che il motore C seguirà B, quindi se B rallenta anche C rallenta. Istituto Istruzione Superiore “A. Maserati” – Voghera - FLL Rovereto (TN) - a.s. 2013-2014 Pagina 2 Nel caso in cui C rallentasse aumenta la differenza fra i 2 encoder per cui viene aumentata la velocità di C. Il valore della variabile sterzatura deve essere: 1 se i 2 motori devono andare alla stessa velocità e nella stessa direzione -1 se i 2 motori devono andare alla stessa velocità ma con direzione opposta da 0 a 2 se i 2 motori devono andare nella stessa direzione ma con velocità diversa La sterzatura aumenta o diminuisce se il valore letto dall’encoder di C è diverso da quello di B, C girerà di più o di meno rispetto a B per raggiungere la stessa posizione. Il blocco MotoreBC serve per il comando del motore B. il suo funzionamento è il seguente. Viene resettata la quota attuale di entrambi i motori B e C tramite il blocco rotazione il quale permette di leggere il valore attuale del sensore di rotazione di ogni motore. Questo serve a fare in modo che ogni movimento sia incrementale, cioè riferito all’ultima posizione raggiunta. Una variabile viene impostata per essere utilizzata dal blocco PIDBC. Vengono quindi impostati per il motore B i parametri: direzione per determinare il suo senso di rotazione; potenza per determinare la velocità; durata per determinare la rotazione in gradi. Per creare i nuovi blocchi abbiamo selezionato i programmi scritti e, tramite il menù “Modifica”,”Crea un nuovo Il mio blocco” abbiamo definito il simbolo del blocco e l’abbiamo salvato. Per copiarlo da un PC all’altro li dobbiamo cercare nella cartella con il percorso indicato in figura e inserirli nell’equivalente cartella del nuovo PC. Istituto Istruzione Superiore “A. Maserati” – Voghera - FLL Rovereto (TN) - a.s. 2013-2014 Pagina 3 LE MISSIONI Missione 1 Recupero oggetti sul camion dei rifornimenti Partenza: parte posteriore contro la parete sud e lato destro sul bordo sud-est della base. Svolgimento missione: il robot esce dalla base, si posiziona dietro al camion, lo blocca abbassando la benna e torna in base. Finalità: portare in base gli oggetti sul camion. Missione 2 Recupero animali domestici Partenza: parte posteriore contro la parete sud e la ruota sinistra sopra la lettera “E” della scritta Lego. Svolgimento missione: il robot alza la benna, va verso cane e gatto, successivamente abbassa la benna, prende i due animali e torna in base. Finalità: portare in base i due animali. Missione 3 Sollevamento casa Partenza: parte posteriore contro la parete ovest e lato sinistro sul bordo nord-ovest della base. Svolgimento missione: il robot alza la benna, compie il percorso per arrivare davanti alla casa, abbassa la benna e va indietro per sollevare la leva e torna in base. Finalità: spingere la leva per sollevare la casa Punteggio: 25 punti. Missione 4 Tsunami - omino Partenza: parte posteriore contro la parete ovest e lato sinistro sul bordo nord-ovest della base. Svolgimento missione: il robot esce dalla base e con una lieve curva si trova davanti allo tsunami e alzando la benna lo attiva, successivamente, con alcuni movimenti si porta in posizione perpendicolare all’omino, abbassa la benna e torna in base. Finalità: recuperare l’omino. Punteggio: 20 punti. Istituto Istruzione Superiore “A. Maserati” – Voghera - FLL Rovereto (TN) - a.s. 2013-2014 Pagina 4 Missione 5 Ambulanza, test di isolamento della base e segnale di evacuazione Partenza: parte posteriore contro la parete ovest e il lato sinistro del robot sul bordo nord-ovest della base. Il robot parte SENZA benna. Svolgimento missione: il robot esce dalla base e si dirige verso l’ambulanza, con l’ausilio della pala la porta nella zona gialla, dopo torna indietro trovandosi con la parte anteriore perpendicolare alle due torri e va a colpire il supporto mobile, successivamente torna leggermente indietro e, voltandosi verso il segnale,in retromarcia lo colpisce e lo alza, infine torna in base. Finalità: posizionare l’ambulanza nella zona gialla, attivare il segnale di evacuazione, effettuare il test di isolamento della base Punteggio: 25 punti (ambulanza)+30 punti (segnale di evacuazione)+30 punti (test di isolamento della base). Missione 6 Zona di sicurezza e trasporto di oggetti, animali e componenti della famiglia nella zona rossa Componenti aggiuntivi: asta per portare gli oggetti che hanno il supporto e recipiente per oggettini vari. Partenza: parte posteriore contro la parete ovest e lato sinistro sul bordo nord-ovest della base. Il robot parte SENZA benna. Svolgimento missione: il robot esce dalla base, gira due volte e percorre quasi tutto il campo, quando si trova poco prima del segnale di evacuazione ruota leggermente a destra e si dirige verso zona rossa. Finalità: Portare il robot nella zona di sicurezza con tutti gli oggetti che si sono raccolti Punteggio: 30 punti (acqua)+54 punti (sicurezza)+30 punti (animali domestici)+20 punti (rifornimenti e attrezzature) +66 punti (famiglia)+25 punti (zona di sicurezza). Le missioni precedentemente descritte sono quelle che abbiamo deciso di svolgere durante la gara; Nel corso della preparazione alla gara abbiamo ugualmente realizzato i programmi per svolgere tutte le missioni. Abbiamo successivamente montato un video che mostra tutte le missioni. Istituto Istruzione Superiore “A. Maserati” – Voghera - FLL Rovereto (TN) - a.s. 2013-2014 Pagina 5 Ringraziamenti Ringraziamo per aver collaborato al nostro progetto con modalità diverse: L’Università degli studi di Pavia – Dipartimento di Scienze della Terra e dell’Ambiente; Il Museo Elettrico Università degli studi di Pavia; Gli Insegnanti di Scienze delle classi 1SC e 2SC dell’Istituto Maserati; La ditta Elca System (sig. Franco Cavallaro) di Casei Gerola. Il Centro regionale di pronto intervento della Protezione Civile di Milano Componenti del gruppo: Giovanni Balma Lorenzo Ferrante Lorenzo Ferrari Gianluca Panebianco Matteo Pidalà Allenatori Maria Grazia Gallo Franco Cavallaro Istituto Istruzione Superiore “A. Maserati” – Voghera - FLL Rovereto (TN) - a.s. 2013-2014 Pagina 6
© Copyright 2024 ExpyDoc