ºÝºÝߣ

ºÝºÝߣShare a Scribd company logo
Tesi di Laurea Triennale in
INFORMATICA
Scuola di Scienze e Tecnologie
Anno Accademico 2014/15
Obstacle Detecting & Avoidance for drones
with Artificial Intelligence Algorithm
relatore:
Prof. Diletta Romana Cacciagrano
correlatori:
Prof. Roberto Lulli
Dott. Lorenzo Massacci
Dott. Michelangelo Guarise
candidato:
Marco Mancini
Mat. 087517
marco.mancini.mm@gmail.com
Creazione di un sistema di guida automatica attraverso l’utilizzo di sensori di
distanza e intelligenza artificiale
INTRODUZIONE
INTRODUZIONE
I computer sono incredibilmente veloci,
accurati e stupidi.
Gli uomini sono incredibilmente lenti,
inaccurati e intelligenti.
Insieme sono una potenza che supera
l'immaginazione.
Albert Einstein (1879-1955).
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Chi sono
L’idea
Perché
Coordinazione
•Studente di Informatica @ Università di
Camerino
•Fondatore del Google Developers Group di
Camerino
•Maker & Evangelist @ UDOO
Contatti:
Mail: marco.mancini.mm@gmail.com Facebook: http://goo.gl/rBJCFu
GitHub: http://github.com/MakerMark Skype: marco.mancini18
Twitter: http://goo.gl/Yup5I7 Sito: http://www.makermark.it
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Chi sono
L’idea
Perché
Coordinazione
Nelle slide seguenti ho voluto spiegare il mio progetto nonché primo prototipo di
un sistema innovativo per droni.
Verranno infatti presentati in una prima introduzione tutti gli aspetti positivi di un
sistema automatico come quello sviluppato in questo progetto nonché elencato
tutto ciò che è necessario avere o conoscere per poter costruire un primo
prototipo.
Potremmo poi vedere il lavoro svolto, diviso in fasi; per ogni fase verranno
analizzate tutte le parti più importanti e discusse sulla risoluzione di tutti i
problemi più grandi.
Più avanti riporterò tutti i dubbi e le considerazioni fatte durante la raccolta dati e
i vari test eseguiti in laboratorio per arrivare ad un prodotto performante e con
caratteristiche di sicuro successo rispetto a sistemi simili già in commercio.
Infine ringrazierò tutti i professori, aziende e persone che mi hanno aiutato nel
completamento di questo enorme progetto che sarà comunque oggetto di miei
studi futuri per arrivare ad un prodotto finito magari commercializzabile
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Chi sono
L’idea
Perché
Coordinazione
Nuove tecnologie poco sicure
Necessario un passo successivo per
renderle quasi autonome
RENDERLE IN GRADO DI APPRENDERE E MODIFICARE IL
PROPRIO STATO SECONDO IL MONDO ESTERNO
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Chi sono
L’idea
Perché
Coordinazione
Necessario
• Tecnologia sufficientemente testata e
affidabile;
• Algoritmi in grado di apprendere e gestire
qualsiasi occasione;
In poche parole intelligenza artificiale e un
buon hardware in grado di gestire una gran
mole di dati
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Chi sono
L’idea
Perché
Coordinazione
Settore in forte espansione, tante nuove idee ma ancora
l’intervento umano è necessario
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Chi sono
L’idea
Perché
Coordinazione
DHL così come Amazon stanno
sviluppando sistemi per la consegna
automatica dei pacchi
In Olanda è stato sviluppato un primo
prototipo funzionante di drone che
trasporta un defibrillatore, questo
permetterà di effettuare un primo
soccorso più efficiente
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Chi sono
L’idea
Perché
Coordinazione
Tutto Molto Bello
…Ma…
Se incontro un ostacolo?
Attualmente i mezzi in commercio non possono far nulla con l’unica
possibile conseguenza e cioè l’incidente del mezzo con l’ostacolo e la
possibile rottura di esso, non portando a termine quindi la missione
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Chi sono
L’idea
Perché
Coordinazione
Creare un sistema di guida automatica che riesca a percepire gli ostacoli e
sappia schivarli mantenendo la rotta più sicura per arrivare ad un obbiettivo o
per correggere un possibile errore umano
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Chi sono
L’idea
Perché
Coordinazione
Per poter completare un progetto di queste dimensioni servono
tantissime risorse sia economiche che di persone che collaborano per il
progetto.
Si sono susseguiti infatti moltissimi incontri a Camerino e all’I.T.T.
Montani di Fermo con i professori Diletta Romana Cacciagrano, Roberto
Lulli e Alessandro Saltarelli per poter capire quale poteva essere il
miglior modo per affrontare il progetto, quale poteva essere il giusto
hardware e quale poteva essere il modo giusto per affrontarlo in termini
di software. In seguito poi si è cercato di fare un team di lavoro per
rendere il lavoro più facile dividendo i compiti tra i vari componenti.
Sfortunatamente tutti i volontari interessati nel progetto hanno poi
abbandonato l’idea per paura di non riuscire a completarlo e mi sono
trovato da solo nell’ interezza del progetto.
Dopo questi primi incontri per decidere come realizzare il progetto, lo
sviluppo dei primi prototipi è stato portato avanti nei laboratori dell’I.T.T
di Fermo e nei laboratori dell’Università di Camerino con incontri
periodici ogni settimana e resoconti dei lavori in corso alla professoressa
relatrice Diletta Romana Cacciagrano.
FASI
FASI
Non ho paura dei computer, ma della loro
eventuale mancanza.
Isaac Asimov (1920-1992).
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Ricerca dei Sensori
Ricerca delle Board
Ricerca Sponsor
Studio dell’Hardware
Studio del Software
Modifiche ai sistemi
Montaggio
Test
3 categorie testate
Ultrasuoni
Laser
Infrarossi
Micro Impulsi
Ad Alta Energia
360 Gradi
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Ricerca dei Sensori
Ricerca delle Board
Ricerca Sponsor
Studio dell’Hardware
Studio del Software
Modifiche ai sistemi
Montaggio
Test
RPLIDAR LIDAR LITE SRF-02
Prezzo 349$ 99$ 12$
Portata 20 Centimetri - 6 Metri 15 Centrimetri - 40 Metri 15 Centrimetri - 11 Metri
Raggio 360° Punto Specifico Punto Specifico su brevi
distanze, circa 40 ° alla
massima distanza
Accuratezza < 1.5 Metri +/- 0.025 Metri Non Specificato ma
comunque da test risulta
molto impreciso
Tempo di
Acquisizione
0.0005 Millisecondi < 0.02 Secondi 0.000025 Secondi
Modalità di
Funzionamento
Seriale I2C o PWM I2C o PWM
Dimensioni 70 x 98.5 x 60 Millimetri 21 x 48.3 x 35.5 Millimetri 24 x 20 x 17 Millimetri
Peso 200 Grammi 16 Grammi 4.6 Grammi
Lista degli indirizzi Non supporta il protocollo I2c 0x62: Indirizzo I2C del Lidar-
Lite;
0x00: Registro per le modalità;
0x04: Registro dove è
memorizzata l’ultima
registrazione;
0x8f: Registro dove sono
contenute misurazione minima
e misurazione massima.
0xE0: Indirizzo di default I2C
del SRF-02;
0x50: Misurazione in Pollici;
0x51: Misurazione in
centimetri;
0x52: Misurazione in micro-
secondi;
0x5C: Trasmettere 8 cicli di
segnale senza ricevere
misurazione;
0x60: Autotune.
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Ricerca dei Sensori
Ricerca delle Board
Ricerca Sponsor
Studio dell’Hardware
Studio del Software
Modifiche ai sistemi
Montaggio
Test
RPLIDAR - Robopeak
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Ricerca dei Sensori
Ricerca delle Board
Ricerca Sponsor
Studio dell’Hardware
Studio del Software
Modifiche ai sistemi
Montaggio
Test
Lidar Lite - PulsedLight
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Ricerca dei Sensori
Ricerca delle Board
Ricerca Sponsor
Studio dell’Hardware
Studio del Software
Modifiche ai sistemi
Montaggio
Test
Lidar Lite - PulsedLight
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Ricerca dei Sensori
Ricerca delle Board
Ricerca Sponsor
Studio dell’Hardware
Studio del Software
Modifiche ai sistemi
Montaggio
Test
Lidar Lite - PulsedLight
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Ricerca dei Sensori
Ricerca delle Board
Ricerca Sponsor
Studio dell’Hardware
Studio del Software
Modifiche ai sistemi
Montaggio
Test
SRF-02
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Ricerca dei Sensori
Ricerca delle Board
Ricerca Sponsor
Studio dell’Hardware
Studio del Software
Modifiche ai sistemi
Montaggio
Test
SRF-02
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Ricerca dei Sensori
Ricerca delle Board
Ricerca Sponsor
Studio dell’Hardware
Studio del Software
Modifiche ai sistemi
Montaggio
Test
2 board Necessarie
In volo
A terra
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Ricerca dei Sensori
Ricerca delle Board
Ricerca Sponsor
Studio dell’Hardware
Studio del Software
Modifiche ai sistemi
Montaggio
Test
In volo
VR Micro Brain
• Micro controllore ARM Cortex M4F a
168Mhz con possibilità di processare segnale
digitale (DSP) e un’unità in virgola mobile
(FPU);
• 1024Kb di memoria flash e 192Kb di
memoria RAM;
• Accelerometro, barometro e giroscopio con
tecnologia MEMS;
• 1 slot Micro SD fino a 64 Gb;
• Porta Jtag per fare debug in realtime;
• 1 Bus I2C;
• 3 porte seriali: 1 per il GPS, 1 per la
connessione SBUS e 1 per la telemetria;
• 3 Switch digiali.
VR Brain
• 2 Bus i2c;
• 8 output a 490hz;
• Accelerometro e giroscopio integrato;
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Ricerca dei Sensori
Ricerca delle Board
Ricerca Sponsor
Studio dell’Hardware
Studio del Software
Modifiche ai sistemi
Montaggio
Test
A terra
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Ricerca dei Sensori
Ricerca delle Board
Ricerca Sponsor
Studio dell’Hardware
Studio del Software
Modifiche ai sistemi
Montaggio
Test 100+ email scambiate
1000+ € di partnership
Tante aziende e tanta fiducia
Roberto Navoni – Virtual Robotix;
Dennis Corey – Pulsed Light;
Shikai Chen – RoboPeak;
Maurizio Caporali – UDOO;
Michele Focanti – E-xtrategy
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Ricerca dei Sensori
Ricerca delle Board
Ricerca Sponsor
Studio dell’Hardware
Studio del Software
Modifiche ai sistemi
Montaggio
Test
Protocolli di connessione dei sensori
I2C
SPI
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Ricerca dei Sensori
Ricerca delle Board
Ricerca Sponsor
Studio dell’Hardware
Studio del Software
Modifiche ai sistemi
Montaggio
Test
I2C
SDA – Serial Data
SCL – Serial Clock
Vcc – 5V o 3,3V
GND
L'I2C ha 7 bit di indirizzo e quindi 128 possibili
indirizzi diversi (detti nodi). Di questi però 16
sono riservati quindi i dispositivi che possono
essere collegati sullo stesso bus sono al
massimo 112.
• nodo master – il dispositivo che emette il
segnale di clock
• nodo slave – il nodo che si sincronizza sul
segnale di clock senza poterlo controllare
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Ricerca dei Sensori
Ricerca delle Board
Ricerca Sponsor
Studio dell’Hardware
Studio del Software
Modifiche ai sistemi
Montaggio
Test
SPI
SCK - Serial Clock
MOSI - Master Output, Slave Input
MISO - Master Input, Slave Output.
CS - Slave Select
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Ricerca dei Sensori
Ricerca delle Board
Ricerca Sponsor
Studio dell’Hardware
Studio del Software
Modifiche ai sistemi
Montaggio
Test
PWM
La modulazione di larghezza di impulso (pulse-width modulation), è un tipo di
modulazione digitale che permette di ottenere una tensione media variabile
dipendente dal rapporto tra la durata dell'impulso positivo e di quello negativo, allo
stesso modo è utilizzato per protocolli di comunicazione in cui l'informazione è
codificata sotto forma di durata nel tempo di ciascun impulso. Grazie ai moderni
microcontrollori è possibile attivare o inattivare un interruttore ad alta frequenza e
allo stesso modo rilevare lo stato e il periodo di un impulso.
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Ricerca dei Sensori
Ricerca delle Board
Ricerca Sponsor
Studio dell’Hardware
Studio del Software
Modifiche ai sistemi
Montaggio
Test
I2C Multiplexer
Indirizzi non modificabili
su Lidar Lite
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Ricerca dei Sensori
Ricerca delle Board
Ricerca Sponsor
Studio dell’Hardware
Studio del Software
Modifiche ai sistemi
Montaggio
Test
ARDUPILOT
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Ricerca dei Sensori
Ricerca delle Board
Ricerca Sponsor
Studio dell’Hardware
Studio del Software
Modifiche ai sistemi
Montaggio
Test
VRPad Station
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Ricerca dei Sensori
Ricerca delle Board
Ricerca Sponsor
Studio dell’Hardware
Studio del Software
Modifiche ai sistemi
Montaggio
Test
UDOO + VR Pad Station
• Android;
• Touch Screen;
• MavLink;
• Google Apps.
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Ricerca dei Sensori
Ricerca delle Board
Ricerca Sponsor
Studio dell’Hardware
Studio del Software
Modifiche ai sistemi
Montaggio
Test
VR Brain + APM:Copter
• Nuttx;
• RTOS;
• Driver;
• Modalità di Volo;
• ll40ls vs ll40lsM.
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Ricerca dei Sensori
Ricerca delle Board
Ricerca Sponsor
Studio dell’Hardware
Studio del Software
Modifiche ai sistemi
Montaggio
Test
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Ricerca dei Sensori
Ricerca delle Board
Ricerca Sponsor
Studio dell’Hardware
Studio del Software
Modifiche ai sistemi
Montaggio
Test
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Ricerca dei Sensori
Ricerca delle Board
Ricerca Sponsor
Studio dell’Hardware
Studio del Software
Modifiche ai sistemi
Montaggio
Test
SIMULAZIONE
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Ricerca dei Sensori
Ricerca delle Board
Ricerca Sponsor
Studio dell’Hardware
Studio del Software
Modifiche ai sistemi
Montaggio
Test
SIMULAZIONE
CONSIDERAZIONI
CONSIDERAZIONI
Chiedersi se un computer possa pensare non
è più interessante del chiedersi se un
sottomarino possa nuotare.
Edsger Dijkstra (1930-2002).
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Pro e Contro del Progetto
Futuro
Difficoltà Riscontrate
PRO CONTRO
• Costoso;
• Ancora da migliorare;
• Punti Morti;
• Necessità di una grande mole di dati;
• Elaborazioni Pesanti.
• Performance;
• Ancora da migliorare;
• Nessun particolare competitor che
faccia la stessa cosa;
• Open Source;
• Non necessità di intervento umano;
• Compatibilità.
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Pro e Contro del Progetto
Futuro
Difficoltà Riscontrate
Lo scopo del progetto è arrivare il prima possibile ad un sistema funzionante
da poter mettere su droni normalmente in vendita per rendere il volo più
sicuro e per aprire opportunità in ambienti dove l’uomo risulta ancora
necessario. Seguendo i consigli del Prof Lulli e della Professoressa
Cacciagrano, il sistema completo verrà ultimato nei prossimi anni e portato
poi nella Magistrale adottando algoritmi di intelligenza artificiale su tre livelli
che verranno comunque implementati parallelamente:
• un primo livello che si occuperà di generare esperienza e quindi basato su
delle regole iniziali secondo la logica Fuzzy (come visto anche nella
simulazione);
• Un secondo livello verrà implementato attraverso le reti neurali che
daranno razionalità e una base di apprendimento per generare
autonomamente nuove regole da rispettare;
• Infine un sistema di emergenza nel caso vi siano casi in cui sia la logica
Fuzzy che le reti neurali falliranno.
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Pro e Contro del Progetto
Futuro
Difficoltà Riscontrate
Nuove discipline prima sconosciute
Driver mai implementati
Elettronica mai studiata
Poca collaborazione
Trovare Sponsor
RINGRAZIAMENTI
RINGRAZIAMENTI
In fourth grade, my robotics’ teacher told me
to build a small robot for the science fair. I
quickly finished it & named it Optimus prime.
Tony Stark(Iron Man).
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Università
Sponsor
Famiglia
Professoressa Diletta Romana Cacciagrano
Professore Roberto Lulli
Professoressa Margherita Bonanni (I.T.T. Fermo)
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Università
Sponsor
Famiglia
100+ email scambiate
1000+ € di partnership
Tante aziende e tanta fiducia
Roberto Navoni – Virtual Robotix;
Dennis Corey – Pulsed Light;
Shikai Chen – RoboPeak;
Maurizio Caporali – UDOO;
Michele Focanti – E-xtrategy
INTRODUZIONE
FASI
CONSIDERAZIONI
RINGRAZIAMENTI
Università
Sponsor
Famiglia
Mauro Mancini
Cecilia Albanesi
Mauro Tomassoni
Gessica Stortoni
Maria Verdolini
Marcello Mancini
e tutti i miei fratelli e sorelle
la mia fidanzata Filomena Ricciardi che ogni giorno è stata
accanto a me anche nei momenti più difficili,
i miei amici più cari,
il Gruppo Tamburi del Palio di San Floriano di Jesi e tutte
quelle persone che hanno sempre creduto in me.
Marco Mancini
RINGRAZIAMENTI
GRAZIE
GRAZIE ALLA COMMISSIONE DI LAUREA
PER L’ASCOLTO E L’ATTENZIONE

More Related Content

Obstacle Detecting & Avoidance for drones with Artificial Intelligence Algorithm