SlidesTesiDamianoMattei - Ingegneria dell`Automazione

Università degli Studi di Roma
“Tor Vergata”
Corso di Laurea in
Ingegneria dell’Automazione
A.A. 2011/2012
Facoltà di Ingegneria
Relatore
Ing. Daniele Carnevale
Candidato
Damiano Mattei
Realizzazione di un LineFollower
4WD
Punti fondamentali
• Introduzione
• Struttura ed hardware
• Algoritmo di controllo
• Comunicazione seriale
• Conclusioni
2
Introduzione
Il lavoro svolto si colloca negli ambiti:
• Robotica Industriale
I LineFollower vengono utilizzati per
compiere spostamenti e/o trasporti di
prodotti.
E’ richiesta un’elevata precisione e
velocità in presenza di spazi angusti
Tunnel LHC al CERN di Ginevra
3
Introduzione
Il lavoro svolto si colloca negli ambiti:
• Intrattenimento ludico
Il progressivo calo dei costi delle
apparecchiature elettroniche ha fatto si che
queste entrassero all’interno delle abitazioni,
permettendo all’utente medio di sperimentare e
realizzare i propri progetti
Ogni anno vengono organizzate
gare di LineFollower
4
Introduzione
Cosa sono i LineFollower?
I LineFollower sono dispositivi automatizzati finalizzati a
compiere un percorso seguendo una linea tracciata sul
pavimento
Sensoristica divisa per:
- Rilevamento del percorso
- Rilevamento ostacoli
5
Struttura ed
hardware
•
Struttura meccanica
Tamiya Audi R8 LMS 24H Nurburgring TT-01E :
- Trasmissione cardanica 4WD
- 4 sospensioni indipendenti a doppio braccio con molle elicoidali
- Motore CC 540 collocato longitudinalmente
- Controllo elettronico di velocità Tamiya TEU-104BK
6
Struttura ed
hardware
•
Struttura meccanica
Servo Hitec HS-422 Deluxe:
- Velocità operativa 0.21 sec/60° a 4.8V
- Coppia d’uscita 3.3 kg*cm a 4.8V
- Doppio cuscinetto Dual Oilite
7
Struttura ed
hardware
•
Sensoristica
Sensori QRD1114
- Composti da un diodo LED, emettitore,
ed un fototransistor, ricevitore
- Pochi mV per superfici chiare,
con alto grado riflettente
- Circa 5V per superfici scure,
con basso grado riflettente
8
Struttura ed
hardware
Sensoristica
•
Sensori Sharp GP2Y0A21YK0F
- Distanza rilevamento 10cm - 80cm
- Composti da un diodo emettitore, un
rilevatore di posizione ed un circuito di
elaborazione
- Pochi mV per oggetti a distanza
massima
- Circa +5V per oggetti a distanza minima
9
Struttura ed
hardware
•
Hardware
Modulo Wireless Digi International Xbee
- Tre principali tipologie: Serie1, Serie 2 e Serie Pro operanti a 2.4Ghz con
caratteristiche tecniche crescenti
- 12 diversi canali, BaudRate seriale 1200 – 115200 baud/s, indirizzamento
univoco
- Protocollo ZigBee ideato appositamente, basato sullo standard IEEE 802.15.4,
concollegamento di tipo Mesh
10
Struttura ed
hardware
•
Hardware
Scheda di controllo STm32 VL Discovery
- 64 pin multifunzione, 128Kb di memoria Flash, 8Kb di Ram
- Potenza di calcolo processore fino a 24Mhz
- Versatilità, può compilare processori esterni ad essa
- Prezzo: più economica rispetto l’ Arduino
11
Struttura ed
hardware
•
Hardware
Alimentazione
- Pacco batterie da 6 pile NiMh da 1.2V
e 4.500 mAh ciscuna disposte in serie,
per una tensione totale di 7.2V
- Regolatore lineare di tensione LM1117,
per deviare la tensione dall’unità di controllo
ai sensori, regolandola a +5V
12
Algoritmo di
Controllo
Algoritmo di controllo
•
Rilevazione degli ostacoli
Blocco del motore, arresto del LineFollower
•
Rilevazione tracciato
Modifica della direzione per mantenere l’allineamento con il percorso
13
Algoritmo di
Controllo
Algoritmo di controllo
L’algoritmo implementato è riassumibile
da un’automa a stati finiti
Ogni stato è etichettato da tre bit,
[SX;CX;DX] = [b1;b2;b3]
I bit assumono valore:
•
•
1 se il sensore QRD rileva una
superficie scura
nastro rilevato
0 se il sensore QRD rileva una
superficie chiara
nastro non rilevato
14
Algoritmo di
Controllo
Algoritmo di controllo
•
•
•
FASE 1 (SX.CX.DX = 010): Il dispositivo procede diritto (pwm=0.9 ms,
D=4.5%)
FASE 2 (SX.CX.DX = 011): Il dispositivo rileva una curva, sterza
lentamente verso destra (pwm=0.5 ms, D=2.5%)
FASE 3 (SX.CX.DX = 001): la curva risulta molto pronunciata, il
dispositivo diminuisce il raggio di curvatura per ritornare sul tracciato
(pwm=0.3 ms, D=1.5%)
15
Algoritmo di
Controllo
Algoritmo di controllo
Casi non considerati:
•
•
SX.CX.DX = 111:
- presenza di un incrocio
- cause non considerate
SX.CX.DX = 101:
- presenza di un bivio
- cause non considerate
16
Regolatore
PD
•
Regolatore PD
Parte Proporzionale
•
Parte Derivativa
int PD(int sensore,float kp,float kd){
if (sensore>3800){
sensore=3800;
}
err=sensore-300;
P=kp*err ;
if(kd>0){
D=(kd*(err-old_err))/Ts;
old_err=err;
}
else {
D=0;
}
C=P+D;
return(C);
}
17
Regolatore
PD
Regolatore PD
int PD(int sensore,float kp,float kd){
if (sensore>3800){
sensore=3800;
}
err=sensore-300;
P=kp*err ;
if(kd>0){
D=(kd*(err-old_err))/Ts;
old_err=err;
}
else {
D=0;
}
C=P+D;
return(C);
}
18
Comunicazione
Seriale
Comunicazione
Seriale
Problema affrontato:
Stesura Protocollo di Invio e Ricezione
Cause:
•
•
Valori utilizzati 32 bit
Valori gestibili da periferica USART 8
bit
Risoluzione:
Scomporre i valori in 4 Byte gestibili dalla
USART
19
20
Conclusioni
Conclusioni
•
•
•
•
Soddisfacente inseguimento del tracciato
Utilizzo e gestione della scheda di controllo STm32 VL
Discovery
Realizzazione dei circuiti elettrici
Comunicazione Seriale con moduli XBee Serie2 stabile ed
efficiente
21
Grazie per
l’attenzione