Rete di scuole per la ROBOCUP JR ITALIA ROBOCUP JR ITALIA 2011 Catania 14-16 aprile REPORT DI DOCUMENTAZIONE della squadra DANCE dell’Istituto ITIS G.B.Pininfarina di Moncalieri (Torino) ROBOCUP JR ITALIA 2011 - Catania 14-16 aprile REPORT DI DOCUMENTAZIONE IL NOSTRO ISTITUTO 3 La “Rete di scuole per la Robocup Jr ITALIA” è espressione dell’Autonomia scolastica regolata dal D.P.R. 275/99 (art. 7) che permette alle scuole statali di operare sinergicamente per obiettivi condivisi e ritenuti importanti per l’offerta formativa erogata all’utenza. La Rete di scuole è nata sulla condivisione di una serie di principi EDUCATIVI e DIDATTICI riferiti alla realtà della scuola italiana. Questi principi e le conseguenti proposte operative erano stati riportati in un documento del maggio 2008 dal titolo: Manifesto per una RoboCupJr italiana - una proposta per la diffusione dell’utilizzo didattico della Robotica nelle scuole a cura di Andrea Bonarini, Augusto Chioccariello e Giovanni Marcianò. Maggio 2008 L’obiettivo della Rete – organizzare l’edizione italiana della Robocup Jr – concretizza una spinta al confronto e alla collaborazione tra Istituti scolastici, elementi che motivano docenti e studenti all’impegno nell’innovazione, sia didattica che tecnologica, affrontando i problemi che costituiscono uno standard internazionale dal 2000, quando la Robocup (manifestazione riservata alle Università di tutto il mondo) ha proposto le tre “gare” per la scuola: Dance – Rescue – Soccer. La Robocup Jr ITALIA è Una manifestazione nazionale fondata di tre punti forti: ROBOCUP JR ITALIA 2011 - Catania 14-16 aprile REPORT DI DOCUMENTAZIONE 1. una struttura che cura l’organizzazione e gestisce gli aspetti di organizzazione, promozione, svolgimento ai diversi livelli, regionali e nazionali; 2. un contenuto condiviso, ovvero regolamenti, formule di gara, supporto formativo e informativo ai partecipanti; 3. una documentazione delle proposte didattiche e del lavoro degli studenti che coinvolgono l’uso di kit o robot auto costruiti per la partecipazione agli eventi organizzati dalla Rete. Questo volumetto appartiene alla collana di documentazione. Sul piano organizzativo e gestionale della Rete di scuole lo Statuto prevederà organismi ben distinti ma fortemente integrati: COMITATO DI GESTIONE – formato dai Dirigenti scolastici degli Istituti fondatori o associati alla Rete. Si riunisce due volte l’anno in via ordinaria, e online per decisioni straordinarie. ISTITUTO CAPOFILA – come previsto dal DPR 275/99 cura gli aspetti burocratici, amministrativi e contabili della Rete. Il Dirigente scolastico dell’Istituto capofila è il legale rappresentante della Rete e provvede a dare esecuzione alle delibere del Comitato di Gestione. COMITATO TECNICO – formato dai docenti referenti degli Istituti fondatori o associati alla Rete, provvede a definire il Bando e i Regolamenti di gara per la manifestazione annuale nazionale, trasmettendoli al Comitato di gestione che li deve approvare. 5 RICERCATORI ASSOCIATI – portano nella Rete il loro contributo scientifico di alto livello. Partecipano di diritto al Gruppo Tecnico e un loro rappresentante al Comitato di Gestione (senza diritto di voto). ISTITUTI PARTECIPANTI – iscrivendosi alle gare, beneficiano del supporto della Rete ma non partecipano alle decisioni gestionali o tecniche. La partecipazione alla gara nazionale li rende idonei per aderire alla Rete. Diversamente serve il parere del Comitato Tecnico. ROBOCUP JR ITALIA 2011 - Catania 14-16 aprile REPORT DI DOCUMENTAZIONE Mairone Lorenzo Marchese Antonio Alessio Roberto Russo Matteo Russotto Andrea PININ DANCE PARTECIPA ALLA GARA DI DANCE Classi 4Ainfo-5Ainfo5Ainfo-5CTele REPORT DI DOCUMENTAZIONE 7 1- DATI GENERALI Componenti della squadra: Mairone Lorenzo ITIS Pininfarina V C Tele Marchese Antonio ITIS Pininfarina V A Info Alessio Roberto ITIS Pininfarina V B Info Russo Matteo ITIS Pininfarina IV A Info Russotto Andrea ITIS Pininfarina IV A Info Docenti responsabili: Iacobelli Cesare Spano Antonio ROBOCUP JR ITALIA 2011 - Catania 14-16 aprile REPORT DI DOCUMENTAZIONE CAP. 2 - DATI DI CONTESTO E MOTIVAZIONE L’idea di partecipare alla Robocup JR è stata raccolta e sviluppata già a partire in anni passati dai nostri attuali docenti responsabili, che cercano ogni volta di far chiarezza su ogni nostro dubbio. Il nostro gruppo è composto da studenti che hanno partecipato l’anno scorso e da altri che partecipano per la prima volta quest’anno. Il nostro istituto di provenienza, l’I.T.I.S. Pininfarina di Moncalieri, mette a disposizione alcune ore fuori l’orario scolastico per la realizzazione di progetti di eccellenza; tra questi la realizzazione e programmazione di robot. Tutto ciò con lo scopo di confrontare il nostro lavoro con quello di altre scuole d’Italia, partecipando alla RoboCup junior. 9 CAP. 3 - NOME E STRUTTURA DEL ROBOT Abbiamo deciso di attribuire al nostro corpo di ballo, composto da 3 robot, il nome di “Pinin Dance”. E’ stata presa questa scelta sia per ricordare il nome del nostro istituto di provenienza, che per continuare la tradizione dei nomi dati ai robot negli anni scorsi. I robot che si esibiranno saranno in totale tre, di cui uno auto costruito (composto da parti metalliche non appartenenti a nessun kit) e due LEGO. ROBOCUP JR ITALIA 2011 - Catania 14-16 aprile REPORT DI DOCUMENTAZIONE Questi ultimi sono identici, e sono composti da: • • • • • • N^1 Motore centrale che si occupa del movimento delle due ruote matrici. N^2 Motori laterali che si occupano del movimento delle braccia. N^1 Unità centrale (NXT), che conterrà il programma principale. N^1 Microfono. N^2 Sensori di luce. Vari componenti LEGO. FIGURA 1 I DUE ROBOT LEGO 11 Qui di seguito mostriamo lo schema a blocchi relativo ai robot LEGO: FIGURA 2 SCHEMA A BLOCCHI ROBOT LEGO ROBOCUP JR ITALIA 2011 - Catania 14-16 aprile REPORT DI DOCUMENTAZIONE FIGURA 3 DUE VISTE DEI ROBOT LEGO 13 Il robot auto costruito è formato da: • • • • • • • N^2 Motori che si occupano del movimento delle due ruote motrici (avanti, indietro, destra e sinistra) . N^2 Motori laterali che si occupano del movimento delle braccia (ruotando in avanti di 360 °). N^1 Unità centrale (ArduinoUno), che conterrà il programma principale. N^1 Microfono pre-amplificato (per far si che fornisca delle tensioni compatibili con gli ingressi di ArduinoUno). N^2 Sensori a infrarossi. N^1 Pannello fotovoltaico (utilizzato per alimentare il robot) Varie piastre in rame di vetronite da noi disegnati e tagliati. ROBOCUP JR ITALIA 2011 - Catania 14-16 aprile REPORT DI DOCUMENTAZIONE FIGURA 4 PRIMO PROGETTO ROBOT AUTOCOSTRUITO 15 Qui di seguito mostriamo lo schema a blocchi relativo al robot auto costruito: FIGURA 5 SCHEMA A BLOCCHI DEL ROBOT AUTOCOSTRUITO ROBOCUP JR ITALIA 2011 - Catania 14-16 aprile REPORT DI DOCUMENTAZIONE FIGURA 6 ROBOT IN COSTRUZIONE CON PROCESSORE E PANNELLI La struttura del robot è fatta di lamiera di rame con all’interno tutte le componenti elettroniche. All’esterno saranno presenti pannelli fotovoltaici per l’alimentazione. Il tutto verrà parzialmente “vestito” 17 FIGURA 7 ROBOT IN COSTRUZIONE ROBOCUP JR ITALIA 2011 - Catania 14-16 aprile REPORT DI DOCUMENTAZIONE CAP. 4 - MECCANICA Nel nostro progetto sono stati impiegati 3 robot. Due di questi (figura 1) sono stati montati utilizzando pezzi, motori e sensori (figura 2) appartenenti al corrispettivo kit Mindstorm-NXT, senza apportare alcuna modifica a quest’ultimo. FIGURA 8 IL KIT NXT DELLA LEGO 19 FIGURA 9 UNO DEI ROBOT LEGO FIGURA 10 ROBOT LEGO ROBOCUP JR ITALIA 2011 - Catania 14-16 aprile REPORT DI DOCUMENTAZIONE L’altro roboti, invece, è stato realizzato senza alcun kit. Il telaio è stato costruito utilizzando delle piastre di rame in vetronite (figura 3). FIGURA 11 COSTRUZIONE ROBOT CON PIASTRE RAME Anche il rivestimento esterno è in piastre di lamiera di rame 21 I motori e alcuni sensori (figura 4), invece, sono stati acquistati a parte dal sito www.futuraelettronica.it ROBOCUP JR ITALIA 2011 - Catania 14-16 aprile REPORT DI DOCUMENTAZIONE FIGURA 12 SENSOREI AUTOCOSTRUITI Altri sensori sono stati autocostruiti. Partendo da un progetto di schema e tracciando le piste sulle basette. 23 FIGURA 13 SCHEMA PER TRACCIATURA PISTA FIGURA 14 UN SENSORE COSTRUITO ROBOCUP JR ITALIA 2011 - Catania 14-16 aprile REPORT DI DOCUMENTAZIONE FIGURA 15 SCHEMI ELETTRICI SENSORI AUTOCOSTRUITI Il primo schema in alto rappresenta l’amplificatore necessario per il segnale prelevato dal microfono. Lo schema in alto a destra è lo schema elettrico del partitore di tensione che serve a diminuire l’alimentazione da 9 volt a 5 volt. Lo schema elettrico in basso a sinistra è lo schema di collegamento tra il pannello solare e la batteria di riserva. Lo schema in basso a destra invece è il circuito di condizionamento del sensore cny70. 25 CAP. 5 - UNITÀ DI CONTROLLO Le unità centrali adottate sono l’NXT, un computer che coordina un comportamento programmabile. Possiede 3 porte di uscita per il collegamento dei motori e 4 porte d’ingresso per il collegamento dei sensori. Sono alimentati da una batteria ricaricabile ai polimeri Li-Io (da 200 mA/h) e si interfacciano con il pc tramite cavo USB utilizzando il programma NXT Software V1.1 per interfacciare il robot con il PC. FIGURA 16 MATTONCINO INTELLIGENTE DELLA LEGO ROBOCUP JR ITALIA 2011 - Catania 14-16 aprile REPORT DI DOCUMENTAZIONE Per quanto riguarda l’auto costruito, possiede una unità centrale costituita da una scheda a microcontrollore: Arduino Mega come in figura 5. L’alimentazione avviene tramite batteria da 9V. Esso si si interfaccia con il pc tramite connessione USB e il firmware utilizzato è quello standard della scheda. Figura 5 Input motori P or te p er i se Interfaccia USB Alimentazione Porte per i sensori FIGURA 17 ARDUINO MEGA 27 CAP. 6 - SENSORI I sensori utilizzati nei robot Mindstorm-NXT sono collegati all’unità centrale tramite connettore standard, e appartengono al kit. Essi sono: • Di suono, permettendo al robot di reagire ai livelli audio • Di luce, in modo di reagire ai cambiamenti di luminosità e colore. I sensori utilizzati nell’auto costruito sono invece collegati all’unità centrale tramite cavi elettrici e non sono stati modificati. Essi sono: • Di suono, permettendo al robot di reagire ai livelli audio • Di luce, in modo di reagire ai cambiamenti di luminosità e colore. ROBOCUP JR ITALIA 2011 - Catania 14-16 aprile REPORT DI DOCUMENTAZIONE FIGURA 18 UN SENSORE IN COSTRUZIONE Di seguito gli schemi elettrici dei var sensori e componenti elettrici Il primo schema rappresenta l’amplificatore necessario per il segnale prelevato dal microfono FIGURA 19 SCHEMA AMPLIFICATORE 29 Il seguente schema è lo schema elettrico del partitore di tensione che serve a diminuire l’alimentazione da 9 volt a 5 volt. FIGURA 20 PARTITORE DI TENSIONE ROBOCUP JR ITALIA 2011 - Catania 14-16 aprile REPORT DI DOCUMENTAZIONE Questo è lo schema di collegamento tra il pannello solare e la batteria di riserva. FIGURA 21 COLLEGAMENTO PANNELLO SOLARE E BATTERIE 31 Questo è il circuito di condizionamento del sensore cny70. FIGURA 22 CIRCUITO CONDIZIONAMENTO SENSORE ROBOCUP JR ITALIA 2011 - Catania 14-16 aprile REPORT DI DOCUMENTAZIONE CAP. 7 - ATTUATORI I motori utilizzati nei appartengono ai kit LEGO. robot FIGURA 23 MOTORE DELL'NXT 33 Mindstorm-NXT Nell’auto costruito vi sono invece sono servomotori alimentati a 6 volt che raggiungono una velocità massima di 0.16 sec/60°, collegati direttamente con le ruote FIGURA 24 SERVOMOTORE ATTACCATO ALLA RUOTA FIGURA 25 COPPIA DI RUOTE CON I SERVOMOTORI ROBOCUP JR ITALIA 2011 - Catania 14-16 aprile REPORT DI DOCUMENTAZIONE Ogni servomotore viene poi collegato ad una uscita dell’Arduino e comandato da esso. FIGURA 26 CONNESSIONE SERVOMOTORE ALL'ARDUINO Glii attuatori comanderanno anche i led luminosi in dotazione al robt autocostruito. Questi si accenderanno e spegneranno a tempo di musica. comandati sempre dall’arduino. 35 FIGURA 27 LED LUMINOSI ROBOCUP JR ITALIA 2011 - Catania 14-16 aprile REPORT DI DOCUMENTAZIONE FIGURA 28 UN'ALTRA TIPOLOGIA DI LED USATA 37 CAP. 8 - AMBIENTE DI SVILUPPO. Mindstorm-NXT (LEGO): L’ambiente di sviluppo impiegato per la creazione dei programmi è BricxCC, programmando in NXC. FIGURA 29 AMBIENTE BRICXCC PER NXC ROBOCUP JR ITALIA 2011 - Catania 14-16 aprile REPORT DI DOCUMENTAZIONE ArduinoUno (auto costruito): L’ambiente di sviluppo impiegato per la creazione dei programmi è Processing, programmando in C. FIGURA 30 AMBIENTE SVILUPPO ARDUINO 39 FIGURA 31 ESEMPIO DI PROGRAMMA SCRITTO IN C DI ARDUINO Abbiamo scelto di programmare in C perché esso rispecchia la base di programmazione più comune alle due tipologie di robot da noi ideate. ROBOCUP JR ITALIA 2011 - Catania 14-16 aprile REPORT DI DOCUMENTAZIONE CAP. 9 - IL PROGRAMMA SOFTWARE Entrambi i robot (auto costruito ed NXT) sono dotati di programmi analoghi dal punto di vista della logica, anche se sviluppati in ambienti di programmazione diversi. Il programma è composto da un ciclo infinito al cui interno vengono controllati gli stati di tutti i sensori. Ciclo Infinito Controllo sensori di luce Controllo sensori di suono 41 Un modulo controlla il sensore di luce, con lo scopo di verificare che il robot non esca dal perimetro di gara. Un altro modulo controlla il sensore di suono verificando la soglia di intensità della musica, regolando il movimento delle braccia e delle ruote. Esempio di programma utilizzato negli NXT per la gestione delle luci. #include "NXCDefs.h" #define x 50 #define light_sx SENSOR_4 #define light_dx SENSOR_1 Dichiarazione librerie task main() { SetSensorLight(IN_1); SetSensorLight(IN_4); Dichiarazione sensori ROBOCUP JR ITALIA 2011 - Catania 14-16 aprile REPORT DI DOCUMENTAZIONE while(true) { if (light_dx > x && light_sx > x) { OnFwd(OUT_ABC, 60); } else { if (light_sx < x) { OnRev(OUT_C, -100); OnFwd(OUT_A, 100); } else { if (light_dx < x) { OnFwd(OUT_A, -100); Wait(1); OnFwd(OUT_C, 100); } else { if(SensorUS(IN_2)>NEAR) { OnRev(OUT_AC, 60); Wait (500); OnFwd (OUT_A, 60); OnRev (OUT_C, 60); Wait(1500); Off(OUT_AC); OnFwd(OUT_AC, 60); Wait(1500); OnFwd (OUT_C, 60); OnRev (OUT_A, 60); Wait(1400); Off(OUT_AC); OnFwd(OUT_AC, 60); Wait(3200); OnFwd (OUT_C, 60); OnRev (OUT_A, 60); Wait(1300); Off(OUT_AC); } } 43 Loop di controllo CAP. 10 - SORGENTE DI ALIMENTAZIONE La fonte di alimentazione dei robot Mindstorm-NXT deriva da una batteria ricaricabile ai polimeri Li-Io (da 200 mA/h). Negli auto costruiti l’alimentazione è data da celle fotovoltaiche. FIGURA 32 CELLE FOTOVOLTAICHE ROBOCUP JR ITALIA 2011 - Catania 14-16 aprile REPORT DI DOCUMENTAZIONE Sono presenti anche 6 pile da 1,5 volt ciascuna utilizzate nel caso in cui il pannello solare fornisca meno dell’alimentazione necessaria per far funzionare correttamente i motori e i sensori. FIGURA 33 PACCO DI BATTERIE FIGURA 34 UNA CELLA FOTOVOLTAICA CON COLLEGAMENTO 45 APPENDICE: LA COREOGRAFIA Al momento la coreografia non è stata completamente ultimata. Ci sarà un robot principale (auto costruito) che ballerà a ritmo di musica, rilevata con un microfono, secondo traiettorie curvilinee; attorno ad esso si muoveranno due robot (Mindstorm-NXT), che eseguiranno movimenti sincronizzati. Verranno anche accesi e spenti dei led luminosi. FIGURA 35 LED LUMINOSI ROBOCUP JR ITALIA 2011 - Catania 14-16 aprile REPORT DI DOCUMENTAZIONE INDICE P. 7 PININ DANCE P. 8 CAP 1- DATI GENERALI P. 9 CAP. 2 - DATI DI CONTESTO E MOTIVAZIONE P. 10 CAP. 3 - NOME E STRUTTURA DEL ROBOT P. 19 CAP 4 – MECCANICA P. 26 CAP 5 – UNITÀ DI CONTROLLO P. 28 CAP 6 - I SENSORI P. 33 CAP 7 – ATTUATORI P. 39 CAP 8 – AMBIENTE DI SVILUPPO P. 41 CAP 9 – PROGRAMMA SOFTWARE P. 44 CAP. 10 - SORGENTE DI ALIMENTAZIONE P. 46 APPENDICE: LA COREOGRAFIA 47