Robot Rover Arduino Giacomino
Come prodotto di un lungo periodo di riflessione, un gruppo di appassionati di Arduino ha dato forma questa sera a un robottino che lasciato tutti sorpresi per la sua forma compatta. Dopo un primo momento di stupita ammirazione si è voluto dare un nome all’aggeggio. Per le sue dimensioni e per l'assonanza con Arduino, il nome è stato ricercato fra i nomi che finiscono in "ino". La scelta è stata Giovannino. Orgoglioso del suo nome Giovannino ha mosso per la prima volta le sue ruotine sul tavolo opportunamente istruito dai suoi costruttori. Come accade e a tutti coloro che per la prima volta muovono i primi passi nel mondo, anche Giovannino ha sbandato ora a destra ora a sinistra. Ma dopo quattro o cinque volte ha fatto la sua prima camminata diritta. Dopodiché Giovannino è stato coricato nella sua scatolina.
A seguito dei corsi base di Arduino tenuti sia presso l'ASEV di Empoli che al GOLEM, si è costituito un gruppo "open hardware" con l'intenzione di sviluppare progetti applicativi.
Per il primo lavoro c'è stata convergenza d'intenti sulla realizzazione di un robot rover.
Lista dei materiali
Elettronici
- Scheda "arduino uno";
- Scheda "motor shields adafruit";
La scelta di una shield dedicata ottimizza la gestione dei motori e comprime costi e tempi di lavorazione.
- Sensore ad ultrasuoni;
E' stato preferito questo tipo di sensore ad uno all'infrarosso perché non risente del colore e della eventuale trasparenza degli ostacoli.
Elettrici
- 2 motori con riduzione 48:1;
La riduzione assicura maggior coppia e stabilità in caso di pendenza;
Batteria metal idruro 9V 800 mAh;
Questo tipo di batteria permette di ottimizzare il dimensionamento dello chassis trovando alloggio tra i due motori.
- Batterie x4 AAA Eneloop NiMh da 1.2v l'una (per un totale di 4.8v)
Le Batterie sono state saldate e collegate fra di loro dentro lo chassis, come le precedenti. Queste però entrano in maniera più ottimale e sono più durature per il nostro progetto.
Meccanici
- Telaio in alluminio;
Inizialmente era stato pensato un telaio intagliato a laser, che per varie questioni, fra le quali la disponibilità di tempo, non è stato possibile realizzare. Rimane comunque un progetto per una stampa in laser cut.
Il telaio è quindi diviso fra un tubo quadro che sostiene ai lati i due motori, tramite due barre di ferro e una lastra di metallo avvitata sopra il tutto, opportunamente isolata con della gomma, sopra la quale sono installate le schede di Arduino e la motor shield adafruit.
- Ruote gommate in legno;
Anche per le ruote, che erano state pensate originariamente intagliate in alluminio, alla fine sono state realizzate in legno con il battistrada intagliato, nel quale è stato poi inserito un anello di gomma (o-ring) per una maggiore aderenza.
- Dado cieco per terzo punto di appoggio anteriore;
Purtroppo le alternative erano troppo costose o troppo ingombranti. Rimane comunque l'opportunità di ottimizzare il tutto in futuro.
- Bulloneria varia;
Progettazione
Sviluppo
- Saldature
Per le saldature effettuate sui motori DC, è stato necessario rinforzare le basi delle saldature con una punta di colla a caldo per evitare che eventuali strappi potessero danneggiare i circuiti.
Programmazione
Il codice di progetto, totalmente open-source, che viene scritto in C++ tramite il programma dedicato di Arduino, (programma scaricabile dal sito Arduino), verrà pubblicato su questo sito in modo che ognuno sia libero di scaricare, modificare e usare il codice per il proprio progetto.
Per controllare la Motor Shield è necessario utilizzare la relativa libreria scritta da Adafruit.
- Listato di testing Via seriale si inviano dei codici per accendere i motori separatamente e a velocità desiderata. In particolare: snnn regola il motore sinistro e dnnn il motore destro, dove nnn è la velocità espressa in valore compreso fra 0 e 255.
- Primo listato funzionante Comprende anche il sensore ad ultrasuoni, si muove ed evita (ancora non con precisione) gli ostacoli.
Foto Gallery
Appunti scritti da PinPas, ri-editato da Giulio e Massimo Romagnoli.