Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Dipartimento di
Ingegneria Civile e Meccanica
Corso di laurea in
Ingegneria Industriale
A.A. 2015/2016
Modulo :
Docenti :
Studenti :
Alessio Silvestro
Luigi Giona
1
Studenti: Silvestro, Giona
Indice :
Presentazione e Componenti
Programmazione
Controllo
Studio Cinematico
Studio Dinamico
Algebra dei sistemi a blocchi
Analisi degli aspetti negativi e positivi del progetto
Sviluppi futuri
Costi
2
Studenti: Silvestro, Giona
Presentazione e Componenti
Gennarino
Robot Evita Ostacoli
Arduino
3
Studenti: Silvestro, Giona
4
Studenti: Silvestro, Giona
Breadboard
Una breadboard (o anche detta basetta sperimentale) uno
strumento utilizzato per creare prototipi di circuiti elettrici. La
breadboard non richiede saldature ed completamente riusabile (e
perci utilizzata soprattutto per circuiti temporanei). Sebbene
venga usata normalmente per la prototipazione di circuiti semplici,
pu essere usata anche per testare interi calcolatori. Tutte le
breadboard hanno generalmente una struttura simile composta da
linee di trasmissione (strips) che consistono in collegamenti elettrici
tra i fori. Come in figura, si possono notare le linee di alimentazione,
che sono generalmente poste ai lati e collegate lungo tutta la
verticale, e le linee dedicate ai componenti, collegate in orizzontale
e pi corte. Spesso le breadboard sono componibili, cio possibile
collegare pi basette tra di loro per ampliare le linee a disposizione.
Sensore ad ultrasuoni
Il sensore ad ultrasuoni srf05
formato da un emettitore o Tx di
ultrasuoni ed un ricevitore o Rx degli
stessi orientati nella medesima
direzione, inoltre dotato di una
circuiteria (visibile in figura) che
facilmente le misurazioni.
aiuta ad
eseguire
Servomotore
Nella robotica per gli azionamenti, sono molto utilizzati i
servomotori. Di solito questi si presentano come piccoli contenitori
di materiale plastico da cui fuoriesce un perno in grado di ruotare in
un angolo compreso tra 0 e 180 mantenendo stabilmente la
posizione raggiunta. Per ottenere la rotazione del perno utilizzato
5
Studenti: Silvestro, Giona
Jumper
I ponticelli (o jumper) sono dei contatti metallici ideali per essere
utilizzati con le breadboard; essi permettono di realizzare in modo
rapido contatti elettrici tra componenti elettronici evitando l'uso di
saldature. Presi di colore diverso, si possono distinguere alla fine
diversi circuiti sul progetto in esame.
6
Studenti: Silvestro, Giona
Immagine 3D
Robot Gennarino nelle sue componenti essenziali
7
Studenti: Silvestro, Giona
Programmazione
Nel seguente capitolo vengono spiegati i vari passaggi che hanno
portato alla compilazione dello sketch per far muovere il robot
mediante lutilizzo del linguaggio C++.
Si usano i servo
Per poter movimentare il robot si utilizzano dei particolari motori
elettrici di cui si possono controllare, con un certo grado di
accuratezza, i gradi di rotazione.
9
Studenti: Silvestro, Giona
10
Studenti: Silvestro, Giona
11
Studenti: Silvestro, Giona
12
Studenti: Silvestro, Giona
13
Studenti: Silvestro, Giona
Schema
Al fine di facilitare il pi possibile chi stia leggendo la relazione
tecnica in oggetto e non abbia le conoscenze tecniche della
programmazione informatica, si creato uno schema logico per
facilitare al pi la comprensione di quello che scritto allinterno del
programma partendo dallavvio, quindi la dichiarazione dei servo,
fino alle scelte che compie il programma quando incontra un
ostacolo sul suo percorso.
Di seguito riportato lo schema logico, le domande e le risposte
che si pone il robot stesso.
14
Studenti: Silvestro, Giona
15
Studenti: Silvestro, Giona
Controllo
Il controllo del Robot Gennarino affidato, come precedentemente
detto, ad Arduino, una piattaforma open-source utilizzata per la
costruzione di progetti di elettronica e automazione. Arduino
consiste in una scheda fisica programmabile con un microcontrollore e in una parte software, o IDE (Integrated Development
Environment), che eseguito sul computer viene usato per scrivere e
caricare codice informatico in linguaggio C nella scheda fisica.
Alimentazione (USB / Barrel Jack)
Ogni scheda Arduino ha bisogno di
essere collegata ad una fonte di
alimentazione. Arduino UNO
pu essere alimentato da un
cavo USB (1) proveniente dal
computer o una presa a
muro (da 6 a 12 Volt
massimo) che termina con un
jack
Barrel
(2).
Il
collegamento USB anche il
modo con cui caricare il codice
nella scheda Arduino.
Pins (5V, 3.3V, GND, analogico, digitale, PWM, AREF)
I pin sulla scheda sono i connettori in cui inserire i fili per costruire
un circuito. Di solito sono di plastica e consentono di collegare un
solo cavo alla volta. Arduino ha diversi tipi di pin, ciascuno dei quali
segnato sul bordo interno e utilizzati per funzioni diverse.
GND (3): abbreviazione di 'GROUND', 'TERRA', 'NEGATIVO', o
anche 'MASSA'. Ci sono diversi perni GND su Arduino, ognuno dei
quali pu essere utilizzato per mettere a terra il circuito.
(4) 5V e 3.3V (5): come si pu immaginare, questi pin forniscono
5 volt e 3,3 volt. La maggior parte dei componenti semplici utilizzati
con Arduino utilizzano 3.3 volt o 5 volt al massimo.
16
Studenti: Silvestro, Giona
Analogico (6): l'area dei pin sotto l'etichetta 'Analog In' (da A0 ad
A5) sono ingressi Analogici. Questi pin possono leggere il segnale
da un sensore analogico (come un sensore di temperatura) e
convertirlo in un valore digitale che possiamo leggere ed usare nel
programma.
Digitale (7): nella parte opposta ai pin Analogici, ci sono i pin
Digitali (da 0 a 13). Questi pin possono essere utilizzati sia per
l'ingresso digitale (per verificare se un pulsante stato premuto ad
esempio) che per luscita digitale (come l'alimentazione di un LED).
PWM (8): la tilde (~) accanto ad alcuni pin digitali (3, 5, 6, 9, 10,
e 11) indica la possibilit di usare tali uscite come segnali PulseWidth Modulation (PWM).
AREF (9): acronimo di riferimento Analogico. La maggior parte
delle volte questo pin non necessario. A volte utilizzato per
impostare una tensione di riferimento esterna (tra 0 e 5 Volt) come
il limite superiore per i pin di ingresso analogico.
Pulsante di ripristino
La scheda Arduino ha un pulsante di reset (10). Premendolo si
collegher temporaneamente il pin di reset a massa e quindi sar
possibile riavviare l'esecuzione di qualsiasi codice caricato in
Arduino. Questo pu essere molto utile se il codice non viene
ripetuto o per operazioni di DEBUG.
Indicatore LED di alimentazione
Appena sotto a destra della parola "UNO" sul circuito, c' un LED
accanto alla parola 'ON' (11) molto piccola. Questo LED dovrebbe
accendersi ogni volta che si collega Arduino ad una fonte di
alimentazione. Se questa luce non si accende, c' una buona
probabilit che qualcosa non va.
LED RX TX
TX l'abbreviazione di trasmissione, RX l'abbreviazione di
ricezione. Questi segni appaiono un p ovunque in elettronica per
indicare i pin responsabili della comunicazione seriale. In questo
caso ci sono due posti su Arduino UNO dove si nota la scritta TX e
17
Studenti: Silvestro, Giona
Collegamenti
Tramite la breadboard, sono stati realizzati su Gennarino diversi
collegamenti tra Arduino e gli altri componenti, come servomotore e
sensore a ultrasuoni.
Alimentazione Arduino
18
Studenti: Silvestro, Giona
La pi importante da un punto
di vista fisico, ma la pi
semplice da un punto di vista
manuale, il collegamento
dellalimentazione
(batteria)
da 9V, tramite un jack Barrel.
stata scelta la pila da 9V in
quanto risulta essere la pi
conforme con la necessit di
alimentare il microcontrollore
che oscilla da 6V a 12V.
19
Studenti: Silvestro, Giona
20
Studenti: Silvestro, Giona
Cinematica
Lidea di movimento di un punto materiale data dalla percezione
delle differenti posizioni occupate dal punto in instanti diversi. La
legge che associa a ciascun istante di tempo la posizione del punto
materiale P(t) detta legge oraria del punto P: la conoscenza di
questa legge loggetto della cinematica. Linsieme complessivo
delle posizioni occupate dal punto materiale nel corso del suo moto
detto traiettoria, e rappresenta quella linea immaginaria (in
generale, curva) che collega tutte le posizioni occupate dal punto in
tutti gli istanti.
Ma come si fa a descrivere la posizione di un punto materiale? Per
farlo necessario introdurre un sistema di riferimento, che consta
di:
un punto fisso O, detto origine del sistema di riferimento;
un certo numero di rette, dette assi, tra loro perpendicolari,
che passano per il punto O;
un verso e ununit di misura, che identificano una coordinata
per ciascun asse.
Se
gli
assi
sono due,
si
parla
di
sistema
di
riferimento bidimensionale: il sistema di riferimento del piano
cartesiano, studiato dalla geometria analitica, dotato di due
coordinate, usualmente denominate X e Y.
21
Studenti: Silvestro, Giona
22
Studenti: Silvestro, Giona
23
Studenti: Silvestro, Giona
Servi
I servi utilizzati per il nostro robot sono gli Sm-s4303r della Springrc,
a rotazione continua. Dalle specifiche del costruttore possiamo
ottenere le varie prestazioni dei servi ai vari voltaggi di
funzionamento:
rotazioni
minuto
cm
minuto
circonferenza = 990
= 9,9
m
minuto
Distanza
secondiun minuto
Velocit =
9.9
60
= 0,164
kg
cm
m
secondo
25
Studenti: Silvestro, Giona
v 1 = v0 + a t
al tempo t1 , la velocit non aumenta pi, diventa costante, e di
conseguenza laccelerazione per definizione uguale a zero :
rilevare
ostacolo:
un
26
Studenti: Silvestro, Giona
27
Studenti: Silvestro, Giona
Dinamica
La dinamica quella parte della meccanica che si occupa di
studiare la relazione tra le forze e gli effetti che esse hanno su un
corpo.
1. Il principio di inerzia o primo principio della dinamica:
Se su un corpo non agiscono forze o agisce un sistema di forze
in equilibrio, il corpo persevera nel suo stato di quiete o
di moto
rettilineo
uniforme.
Per sistema di forze in equilibrio si intende un insieme di
forze, grandezze vettoriali, la cui somma vettoriale sia nulla.
2. La legge fondamentale della dinamica o secondo principio
della
dinamica:
Se su un corpo agisce una forza o un sistema di forze, la forza
risultante applicata al corpo possiede direzione e verso della
sua accelerazione e, in modulo, direttamente proporzionale
al modulo la sua accelerazione. La costante di proporzionalit
tra queste due grandezze la massa (detta appunto inerziale),
grandezza specifica di ciascun corpo. Questa legge pu essere
enunciata mediante lequazione
F=ma
dove F la risultante delle forze agenti sul corpo, m la massa dello
stesso, a laccelerazione cui soggetto (il prodotto quello tra uno
scalare e un vettore).
3. Il principio di azione-reazione o terzo principio della dinamica:
Se due corpi interagiscono tra loro, si sviluppano due forze,
dette comunemente azione e reazione: come grandezze
vettoriali sono uguali in modulo e direzione, ma opposte in
verso.
La prima legge serve a definire una classe di osservatori: i
cosiddetti osservatori inerziali, per lappunto. Gli osservatori
inerziali sono coloro per i quali vale il principio di inerzia, ovvero
tutti gli osservatori che, in presenza di un equilibrio di forze,
28
Studenti: Silvestro, Giona
Al
tempo t0
30
Studenti: Silvestro, Giona
31
Studenti: Silvestro, Giona
32
Studenti: Silvestro, Giona
RISVOLTI POSITIVI
I.
II.
III.
IV.
V.
VI.
VII.
33
Studenti: Silvestro, Giona
RISVOLTI NEGATIVI
I.
II.
III.
IV.
V.
34
Studenti: Silvestro, Giona
Sviluppi futuri
1. Si potrebbe inserire un terzo servo motore che permette al
sensore di ruotare di 90 gradi tenendo per conto del limite
strutturale riguardante laggiunta di una nuova alimentazione
per questultimo.
2. Nel caso questo problema non sia ovviabile possibile
aggiungere un secondo sensore in modo da coprire unarea di
interesse maggiore.
3. Al fine di alleggerire il peso del robot si potrebbero realizzare
basi in materiale pi leggero (plastica o alluminio, casomai
tagliato con il laser), cos che si possa avere pi precisione e
bilancio nella struttura con materiale come ad esempio fibra di
carbonio.
4. Si potrebbe realizzare una cover superiore al fine di proteggere
i componenti e i collegamenti, di per se molto fragili e
complicati, dandogli anche una forma pi estetica con
materiale come vetroresina.
5. Si potrebbero cambiare i servomotori con altri pi potenti in
modo tale che il robot possa seguire il suo cammino a velocit
maggiore a quella attuale.
6. Si potrebbe modificare il programma di modo che quando si
trova di fronte ad un ostacolo potremmo avere una dolce
curvatura, casomai anche verso destra e non sempre di 90
verso sinistra.
7. Si potrebbe sostituire le ruote in plastica, accessori dei servo
motore, con altre in materiale diverso, tali da aumentare
lattrito ruota-terreno in modo tale da evitare slittamenti.
8. Si potrebbe cambiare il cervello del nostro robot con uno simile
ma con sistema Bluetooth cosi che si possa dare da un
qualsiasi dispositivo come tablet o smartphone lo START e lo
STOP.
9. Si potrebbe implementare la struttura con un sensore di
prossimit in modo tale che potrebbe percorrere anche
superfici con gradini o irregolari.
35
Studenti: Silvestro, Giona
Sistema a blocchi
Naturalmente anche importante studiare il suo sistema di
controllo.
Da un punto di vista generale un sistema robotico pu essere
schematizzato come nella figura seguente.
36
Studenti: Silvestro, Giona
37
Studenti: Silvestro, Giona
Costi
Si analizza in questa sezione quelli che sono stati i costi per creare
Gennarino.
Componenti
Costi
Arduino UNO R3
21.11
4.74
Jumper
1.83
3.66
2 x 10.25
Compensato 1 m2
7.00
Batteria da 7V
4.76
4 batterie da 1.5V
2.59
Totale
66.39
38
Studenti: Silvestro, Giona