1
Sommario PREMESSA ........................................................................................................................................................................................... 3 L’IDEA DI PROGETTO ....................................................................................................................................................................... 4 ORGANIZZAZIONE DEL TEAM ....................................................................................................................................................... 5 INIZIO DELLA PROGETTAZIONE ELETTRONICA DEL PROTOTIPO........................................................................................ 6 ACQUISTO DEI COMPONENTI ........................................................................................................................................................ 7 FASE 1 – PROGETTAZIONE, REALIZZAZIONE E COLLAUDO DEL TELAIO ESTERNO ....................................................... 9 COSTRUZIONE DEL TELAIO DEL DRONE .................................................................................................................................... 9 FASE 2 - PROGETTAZIONE DELLA SCHEDA DI ALIMENTAZIONE GENERALE ................................................................. 10 FASE 3 – PROGETTAZIONE, REALIZZAZIONE E COLLAUDO DEL CONTROLLO DI VOLO ............................................. 14 PROGETTAZIONE DELLA SCHEDA PER L’ALLOGGIAMENTO DEL µC ALL’INTERNO DEL DRONE ............................. 14 INTERFACCIAMENTO CON I COMPONENTI ESTERNI ............................................................................................................. 16 GLI ATTUATORI ............................................................................................................................................................................... 17 I MOTORI BRUSHLESS .................................................................................................................................................................... 18 I TRASDUTTORI ............................................................................................................................................................................... 19 IL GIROSCOPIO E L’ACCELLEROMETRO ................................................................................................................................... 19 PROVA DEL GIROSCOPIO E ACCELLEROMETRO - GY-521 ................................................................................................... 20 LA RICEVENTE RADIO ................................................................................................................................................................... 21 PROCEDURE DI INSTALLAZIONE DEI SOFTWARE IN AMBIENTE MICROSOFT ................................................................ 22 PROGRAMMAZIONE DEL MICROCONTROLLORE ................................................................................................................... 23 CORREZIONE DI ALCUNE BUG PRESENTI ALL’INTERNO DEL SOFTWARE PER IL µC ................................................... 25 CALIBRAZIONE DEL µC ................................................................................................................................................................. 27 PROVA DI VOLO .............................................................................................................................................................................. 30 UTILIZZO DELL’APP ANDROID QX2014 ..................................................................................................................................... 31 CONSIDERAZIONI SUL PROGETTO ............................................................................................................................................. 32 ULTERIORI PROPOSITI PER NUOVI FUTURI SVILUPPI DEL PROGETTO ............................................................................. 32 ANALISI DEI COSTI ......................................................................................................................................................................... 33 GLOSSARIO ....................................................................................................................................................................................... 34
2
Premessa Ho scelto quest'idea di progetto perché oggigiorno, il tema del “drone autonomo” è molto attuale. Ogni anno vengono studiate nuove tecniche per incrementare funzioni sempre più sorprendenti su elicotteri a quattro, sei, otto e sedici eliche. Esistono oramai droni capaci di giocare a ping-pong, droni acrobatici, droni che consegnano pacchi con l’utilizzo di un Gps e che sono in grado persino di ritornare al punto di partenza autonomamente. L’idea è piaciuta anche a me e ho deciso di far parte anch’io di tutto l’insieme di utenze che collaborano già da tempo in rete per lo sviluppo di altre idee su progetti Open Source, per condividerne conoscenze e curiosità. In questo senso ho scelto di rendere anche la mia un'iniziativa aperta a tutti gli appassionati e pubblicare una guida in formato pdf online, su di un sito gratuito come ad esempio: www.issuu.com . Con questo ci tengo a dimostrare che l'elettronica è, secondo me, un settore molto coinvolgente, soprattutto se lo studio della materia, attraverso la realizzazione pratica di un'idea, va ad arricchire il patrimonio conoscitivo personale dell'individuo. Il progetto consiste nella realizzazione di un elicottero quadrirotore con controllo a distanza per Smartphones. L'obiettivo è quello di poter effettuare delle misurazioni in tempo reale come ad esempio temperatura, umidità, distanza dagli ostacoli e molte altre; e acquisire, per poi elaborare, altri tipi di informazioni come audio, immagini e video durante il volo. La logica con cui questo potrà avvenire, sarà basata sull’utilizzo di un radiocomando per modellini, che piloterà il quadricottero e riceverà le informazioni registrate attraverso un computer collegato via usb. Il personal computer avrà al suo interno un software per la gestione dei comandi in uscita e per l'elaborazione dei dati in entrata quando il prototipo è attivo. L’idea è di realizzare un sistema che potrà interfacciarsi con un qualsiasi dispositivo android, pur che sia munito di una versione O.S. Android 4.2.2 o superiore, e di una tecnologia Bluetooth. Per mezzo di una semplice app, in assenza di collegamenti cablati , l’android device comunicherà con il computer e potrà rimanere collegato ad esso pur distanziandosi fino a dieci metri senza interruzioni di connessione. Questa modalità d’uso permette all'utilizzatore un volo monitorato in tutti i suoi aspetti con la possibilità di usufruire dei sensori che uno smartphone possiede, sia dei controlli touch o tasti fisici di cui è dotato. Il volo del drone potrà essere pilotato da ogni persona con il proprio dispositivo e l’esperienza oltre che ad essere interessante e coinvolgente, risulta costruttiva: perché una volta terminato il volo, saranno stati immagazzinati contenuti multimediali da poter riguardare o riascoltare e dati da poter inserire su tabelle o grafici poi utili per ulteriori studi e approfondimenti.
3
L’idea di progetto L’idea di progetto ora ben definita sotto il nome di : “QX2014” inizialmente non delineava un elicottero quadrirotore, ma un dirigibile, con tanto di gas elio all’interno e pesi per il movimento. Un motore avrebbe permesso lo spostamento orizzontale del modello e una pompetta separata dal pallone di elio con una valvola a pressione molto piccola,
lo avrebbe gonfiato e sgonfiato per gestire il quello verticale.
Constatando che la realizzazione di un modello simile sarebbe stata costosa e non molto semplice, iniziarono le ricerche verso alternative che comportassero meno conoscenze di fisica e più di elettronica. Il quadricottero risultò una soluzione interessante per la sua forma, per i motori di cui disponeva, per la possibilità di utilizzare schede a microcontrollore opensource come Arduino. Queste ultime sono piuttosto economiche e hanno molta flessibilità, per la moltitudine di tipologie di caratteristiche hardware che offrono, presentando soluzioni diverse per personalizzare il proprio progetto secondo le proprie esigenze. Le prime proposte sulla progettazione di questo modello sono state di utilizzare connessioni a raggi Infrarossi, Bluetooth e Wi-fi, ma nessuna di queste era adatta a garantire una connessione stabile a lunga distanza in uno spazio aperto, di conseguenza la soluzione risultò una comunicazione a radio frequenze con ricevente da 2.4 Ghz e una trasmittente a sei canali : il Throttle/Throttle per lo spostamento verticale, il Pitch/Elev per quello frontale, il Roll/Rudd per il movimento laterale, lo Yaw/Aile per la rotazione laterale intorno all’asse verticale, il Mode/Mode per la selezione dei settaggi del telecomando e l’AUX1 per un eventuale comando aggiuntivo. Le intenzioni furono di aggiungere immediatamente sensori di vario genere compresa una videocamera, però non è stato possibile incrementarli prima del completamento della fase di controllo di volo.
4
Organizzazione del Team Attività Specifiche
D’Imperio Luca,
ha lanciato
l’iniziativa ad
inizio A.S.2013/2014
proponendo la
costruzione di un drone pilotato a distanza; si è occupato della progettazione della scheda di alimentazione generale del modello; dello svolgimento delle attività di routine comuni a tutti e tre e dello sviluppo di un’App su O.S. Android specifica per il prototipo “Qx2014”.
Zacchilli Alessandro,
ha progettato la scheda per l’alloggiamento del microprocessore
Arduino Nano, così da
interfacciarlo con i componenti esterni quali la scheda di
alimentazione, la ricevente radio, il giroscopio e i quattro motori; ha svolto le attività di routine.
Tarini Simone, ha ricercato i software compatibili con il microprocessore scelto per il progetto, utilizzando il Web come fonte principale d’informazione e ne ha configurato, in ambiente Microsoft su O.S. WinXP, le corrette installazioni guidate e manuali, di drivers e programmi. Si è adoperato nello svolgimento delle attività di routine.
Attività comuni svolti dal team Preziosa è stata la partecipazione di tutti e tre allo studio dell’idea iniziale consentendo così di arrivare a formare un progetto ben definito. Il cablaggio del modello è stata un’attività comune a tutti, che si è ripetuta più volte a seguito dei test di funzionamento fatti sul quadricottero e con la stessa modalità sono state eseguite le procedure di configurazione e calibrazione del software all’interno dell’ Arduino Nano sul modello.
5
Inizio della progettazione elettronica del prototipo Il primo passo per la costruzione di un prototipo quadrirotore telecomandato a radiofrequenze, è stato svolgere ricerche sul web, per informarsi sui progetti già esistenti che potessero rispondere agli interrogativi spontanei di chi è alle prese con un nuovo argomento, riguardo il giusto tipo di componenti da scegliere in funzione dell’ utilizzo che se ne vuol fare, sulla differenza che può esserci tra un materiale per il telaio ed un altro o su come la dimensione del modello può influire sul tipo di alimentazione necessaria, quindi sul tempo di autonomia e sulle quantità di correnti che riescono ad assorbire i motori provocando riscaldamento nocivo alle schede regolatrici e al microcontrollore. Arduino Nano, in particolarmente, è molto sensibile alle variazioni delle caratteristiche elettriche sui piedini di ingresso e di uscita. Il sito più cliccato è stato www.Aeroquad.com dove sono stati cercati: l’ambiente di configurazione per il drone, le procedure guidate per il montaggio e il cablaggio di alcuni componenti, consigli attraverso i forum.
6
Acquisto dei componenti La lista di componenti da acquistare è stata stilata nel modo seguente:
Quattro Motori Brushless D2822/14 da 1450 kv: 38g
di
peso,
dimensioni:
22
x
28,
Tensione: 7.2v ~11.1v, Kv : 1450rpm / v, Albero: 3,17
millimetri
Diametro,
Max
Watt: 160W, Elica consigliata: 8x6-7x4.5
Quattro Schede ESC regolatrici per il controllo dei motori Brushless ESC
(Electronic
speed
control)
da 20A massimi con alimentazione a 12V
Connettori ad alta potenza Connettori per alte correnti da 3,5mm di diametro, prodotti in Germania, resistenza di transizione bassissima. Per correnti continue fino a 60ah e 65 ah per 2minuti.
7
Arduino Nano con cavo mini USB La scheda Arduino Nano 3.0 è una scheda Arduino prodotta dalla GRAVITECH, di piccolo formato basata sul Atmega328. Ha più o meno le stesse funzionalità della Arduino Duemilanove. Manca solo una presa di corrente continua, e funziona con un cavo Mini-B USB. Ricevente Spektrum 2.4 Ghz – 6 Channels SPMAR610 Spektrum - Ricevente AR610 DSMX 6CH La ricevente AR610 a 6 canali full-range a 2.4 Ghz è perfetta per ogni applicazione dove siano richiesti 6 canali o meno. Il sistema Spektrum DSMX offre la massima affidabilità e velocità del segnale. Trasmittente Spektrum - 5 Channels Nr. Canali: 5 Canali Modulazione : DMSX Banda : 2.400-2.4835GHz Potenza in uscita : 100 mW Ricevente : AR600 6-channel full-range
Batterie al Litio da 3,7 Volts e 2200 mAh Il peso e la densità di energia sono superiori a qualsiasi altra
batteria
ricaricabile. Sono
perfette
per
la
costruzione di aerei RC, RC auto e RC robot. Attenzione: La tensione di carica completa e cut-off scarico è 4.2V e 2.75V. Non riscaldare o bruciare.
8
Fase 1 – Progettazione, realizzazione e collaudo del telaio esterno La progettazione del telaio è stata fatta sulla base del peso totale da dover sollevare che si aggira attorno ai due chili, e tenendo conto che l’alluminio è un materiale più resistente del compensato o del polistirolo e che rientra nel peso di circa 500 grammi con dimensioni di 50cm x 50cm, il quadricottero con su le schede elettroniche, i cavi, e le componenti esterne può volare senza troppo sforzo con dei motori come i brushless D2822/14 da 16Ampère, che riescono a sostenere 500 grammi circa ognuno.
Costruzione del telaio del drone Per la costruzione del telaio sono stati sagomati tre cerchi in alluminio utilizzando un Compact Disc, che andranno a costituire i tre livelli della base centrale. Sono stati forati prima al centro con un foro da [16 mm] poi alle estremità con fori da [3,2 mm] in modo da poter applicare successivamente quattro distanziatori disposti a croce di lunghezza [40 mm] l'uno tra un livello e l’altro. Per alleggerirli ulteriormente sono stati fatti altri quattro fori da [35 mm] ruotati di quarantacinque gradi rispetto ai precedenti quattro. Una fresatura sul bordo esterno ha smussato ogni eventuale imprecisione del taglio iniziale. Con quattro asticelle di alluminio di forma cubica lunghe [500 mm], sono stati realizzati i prolungamenti per il fissaggio dei 4 motori brushless. Sono state forate per alleggerirle effettuando un foro da [8 mm] ogni [50 mm] lungo la loro superficie superiore e successivamente assemblate alla base del livello centrale del telaio con l’utilizzo di colla al silicone e dei rivetti di diametro [2,5 mm]. Sono stati applicati i distanziatori fissati con otto viti da [3 mm] a testa svasata di lunghezza [15 mm], nella parte superiore ed inferiore del telaio, mentre al centro tra i quattro distanziatori superiori, il livello centrale e i quattro distanziatori inferiori, sono state inserite quattro viti senza fine. Sotto ad ogni prolungamento per i motori è stato fissato un cavalletto fisso d’appoggio, sempre con della colla al silicone e dei rivetti da [2,5 mm] per sorreggere il drone quando è a terra. Per finire alle estremità di ognuno è stata applicata una basetta circolare di diametro [30 mm], spessa tre millimetri circa. E' stata forata con quattro fori da [3,2 mm] disposti a croce per il fissaggio del motore brushless utilizzando, per ogni motore, quattro viti da [3 mm] a testa svasata di lunghezza [15 mm] e quattro dadi di corrispondente misura.
9
Fase 2 - Progettazione della scheda di alimentazione generale La scheda di alimentazione è stata ideata in modo tale da permettere il passaggio di elevate quantità di corrente determinando la scelta di un tipo di scheda senza piste, a doppia faccia e rivestita completamente in rame con l'isolamento nei punti necessari; del numero di connessioni da effettuare con le schede elettroniche presenti sull'elicottero (nove); e della forma circolare della parte centrale del telaio.
Adesivo Fronte
Adesivo Retro
Serigrafia Fronte
Maschera fronte
10
Circuito di alimentazione_ strato fronte (dimensioni reali)
Circuito di alimentazione_ strato retro (dimensioni reali)
11
Misure Lato B (dimensioni reali)
Misure Lato A (dimensioni reali)
12
Dopo aver stampato il circuito della scheda di alimentazione cono stati inseriti i connettori ad alta potenza e puntati con dello stagno.
Successivamente sono stati saldati correttamente cosĂŹ da non avere problemi durante il funzionamento del drone.
Infine la scheda è stata montata sul telaio e fissata tra il livello centrale, degli spessori da [2mm] e i distanziatori superiori.
13
Fase 3 – Progettazione, realizzazione e collaudo del controllo di volo Il controllo di volo è una sezione portante del progetto in quanto è necessario poter gestire con precisione lo spostamento del modello nello spazio libero.
Progettazione della scheda per l’alloggiamento del µC all’interno del drone La scheda di alloggiamento per il microcontrollore Arduino Nano è stata progettata suddividendo le connessioni in quelle per la ricevente, quelle dei motori e quelle per il collegamento con il giroscopio. In questo modo i collegamenti sono più semplici da ricordare e minore è il rischio di sottoporre a sollecitazioni dannose il circuito inavvertitamente.
Circuito _ strato retro
Adesivo Retro
14
Circuito progettato con KiCad (dimensioni reali)
Misure esterne del circuito
Serigrafia Fronte
Circuito con rame esterno alle piste
15
Interfacciamento con i componenti esterni Il microcontrollore Arduino Nano utilizza i piedini di ingresso 2,4,5,6 e 7 per ricevere i segnali dalla ricevente, mentre il 3,9,10 e 11 sono uscite e vengono usati per pilotare le schede ESC dei motori brushless. I piedini di ingresso analogico A4(SDA) e A5(SCL) sono riservati alla comunicazione con il giroscopio tramite I2C-bus. Ogni segnale in comunicazione tra Arduino ed un altro dispositivo, viene affiancato da un alimentazione di potenziale 0á5 Volts realizzata con due cavetti aggiuntivi: il nero per la massa ed il rosso per il Vcc; queste alimentazioni sono fornite da Arduino.
Microcontrollore Tensione
di
funzionamento
Atmel , ATmega328 (livello
logico) Tensione in ingresso (raccomandata)
7-12 V
Tensione in ingresso (limiti)
6-20 V
I/O digitali
16
5V
14 (di cui 6 con PWM)
ingressi analogici
8
Corrente in uscita per I/O Pin
40 mA
Memoria Flash
32 KB (ATmega328)
SRAM
2 KB (ATmega328)
EEPROM
KB (ATmega328)
VelocitĂ di clock
16 MHz
Dimensioni
18.5 mm x 43.18mm
Gli attuatori Gli attuatori presenti in questo tipo di sistema sono i motori brushless che agiscono modificando l’angolo di posizione del drone in funzione del segnale di riferimento dettato dalla ricevente, delle azioni regolatrici applicate per mezzo di un software presente all’interno di Arduino Nano e del giroscopio posto in retroazione.
Ricevente: e
angolo di riferimento
+
+
Arduino Nano e
Attuatori
Sistema
+
+
Angolo
Regolato -
-
re PID
Giroscopio
Per “sistema” s’intende un oggetto con determinate caratteristiche quali forma, massa, peso soggetto alle variazioni di angolazione imposte da un lato dai fattori esterni come il vento, che impedisce al drone di sostenersi in aria in posizione orizzontale con i quattro motori mantenuti alla stessa velocità e dall’altro da quelle interne volte a stabilizzarne l’angolazione riportandolo all’angolo zero . I segnali riportati in ingresso dal giroscopio vengono rielaborati dal microcontrollore secondo il funzionamento del regolatore PID. Il Regolatore PID è composto da tre blocchi in parallelo ovvero quello proporzionale, l’integrativo e il derivativo. Il primo determina la potenza o il guadagno con cui vengono effettuate le compensazioni da parte dei motori, il secondo influisce sulla durata della compensazione determinando la precisione della compensazione e l’ultima interviene sulla velocità di risposta del giroscopio alle repentine variazioni di posizione.
17
I motori Brushless I motori brushless sono i principali componenti responsabili del volo del modello e per questo si richiede particolare sicurezza, affidabilità e precisione sul loro funzionamento. Questo tipo di motori sono senza spazzole ed hanno particolari vantaggi rispetto ad altri motori come quelli a spazzole e quelli passo passo: a parità di giri al minuto, si riscaldano molto meno, hanno meno attrito e di conseguenza anche vita piu lunga, migliore robustezza, risposta dinamica piu ampia e pronta e si adattano meglio alle alte velocità e ai sovraccarichi. Il funzionamento del motore si basa su di un commutatore elettronico che, in base alla posizione del rotore, alimenta la fase dello statore che in quel momento è in grado di generare un campo magnetico perpendicolare a quello del rotore. Il grande vantaggio dei Brushless consiste nel fatto che gli avvolgimenti presenti al suo interno, facendo parte dello statore, non necessitano di commutatori in movimento per la loro alimentazione. L’alimentazione delle fasi durante l’angolo attivo viene effettuata con tecnica impulsiva PWM: il dutycycle, ovvero il tempo di stato ON del segnale, può variare da 1 a 2 millisecondi e a questa variazione corrisponde un angolo da 0° a 180° gradi che per i Brushless rappresenta la velocità di rotazione.
I motori sono pilotati elettronicamente da dei dispositivi chiamati regolatori ESC, composti da MOSFET di potenza che riescono a gestire la corrente erogata dalla batteria fornendo diverse decine di Ampere alle bobine dei motori.
18
I trasduttori I trasduttori utilizzati per il controllo della stabilità di volo sono un giroscopio e un accellerometro riconoscibili sotto la sigla Gy-521 che servono per poter gestire le variazioni di inclinazione del drone in modo da correggere e far ritornare il drone all’angolazione orizzontale.
Il giroscopio e l’accellerometro Il sensore InvenSense MPU-6050 contiene un accelerometro e un giroscopio MEMS in un singolo chip. Questi, permettono al modellino di riconoscere l’asse in cui si presenta una variazione dell’angolo corrispondente alla posizione orizzontale del modello attraverso il primo e la velocità con cui sposta nei tre assi con il secondo. E’ molto preciso, in quanto contiene 16 bit per la conversione analogico/digitale di ogni canale. Cattura i canali x, y, z allo stesso tempo. Il chip MPU-6050 non è costoso, soprattutto tenendo in considerazione il fatto che combina due sensori di movimento nello stesso circuito.
GY-521 Si noti inoltre che la Invensense ha combinato la MPU-6050 con un magnetometro (bussola) in un unico chip chiamato MPU-9150, oppure è possibile integrare il magnetometro con l’utilizzo di due chip separati che comunicano attraverso AUX_DA e AUX_CL, ovvero sono piedini per un secondo I2C-bus in entrata al MPU-6050. I valori del magnetometro possono essere passati all’ Arduino attraverso il primo I2C-bus. Il sensore ha un processore “Digital Motion" (DMP), chiamato anche "Motion Processing Unit Digital". Questo DMP può essere programmato con un firmware in grado di fare calcoli complessi con i valori del sensore, ma necessita della memoria del microcontrollore e ciò riduce il carico da poter assegnare al microcontrollore per l’esecuzione di altri processi.
19
Prova del giroscopio e accellerometro - GY-521
Per interfacciare questo chip con Arduino nano è stato necessario capirne il funzionamento. Collegandolo alla porta USB del computer e trasferendo un software per la lettura dei valori del Gy-521 sono state verificate sul monitor seriale le corrispondenze sugli assi x,y,z in valori decimali delle posizioni assunte del giroscopio, le misurazioni di temperatura, il tipo di firmware ed il nome della MPU.
Con il giroscopio possiamo misurare l'accelerazione angolare di un corpo su di un proprio asse, invece con l'accelerometro possiamo misurare l'accelerazione di un corpo lungo una direzione. Ovviamente per effettuare tale misurazione nello spazio tridimensionale c'è bisogno che il nostro componente (MPU-6050) disponga di tre gradi di libertà sia per il giroscopio che per l'accelerometro, cioè i tre assi x, y, z per una rappresentazione 3D. Se ad esempio andiamo ad installare questo componente su un quadricottero possiamo gestire decollo, atterraggio e volo ricavandoci i valori dei parametri ROLL, YAW, PITCH.
20
Dispositivi interfacciati con il µC Nella fase del controllo di volo gli unici dispositivi interfacciati con il microcontrollore sono la ricevente, le schede regolatrici ESC per i motori e il giroscopio.
La ricevente radio L’AR610 ha una tensione minima di esercizio di 3.5 volt; quindi si raccomanda vivamente di testare il sistema di alimentazione. Rispetto al segnale a banda larga di DSMX, il segnale a banda stretta di altri trasmettitori a 2.4GHz subisce più facilmente una perdita di dati nel caso in cui ci siano interferenze sul canale. È come paragonare un fiume ad un affluente. Ci vuole uno sforzo più grande per bloccare il fiume che per bloccare l’affluente. Poiché diventano sempre di più i trasmettitori a 2.4GHz che competono per ancora lo stesso numero di canali, c’è più probabilità di interferenza e quindi un maggior rischio di perdita di dati. Il risultato è un tempo di collegamento inferiore ed una maggiore risposta anche negli ambienti molto affollati con frequenze 2.4GHz. I sistemi di alimentazione inadeguati che non sono in grado di fornire la tensione
minima
ricevitore
durante
necessaria il
volo,
al sono
diventati la prima causa di guasto durante il volo. Alcuni dei componenti del sistema di alimentazione che influiscono sulla capacità di fornire un’adeguata tensione sono: • Set di batterie del ricevitore (numero di celle, capacità, tipo di celle, stato della carica) • La capacità dell'ESC di fornire una corrente
adeguata
al
ricevitore
presente nell’aereo • Il collegamento dell’interruttore, i cavi della batteria, i cavi del servo, regolatori, etc.
21
Procedure di installazione dei software in ambiente Microsoft Iniziando dal download dei seguenti software Arduino e Aeroquad tramite questi link, occorre impostare un ambiente di configurazione che possa essere adatto a settare le giuste impostazioni nel quadricottero. LINK PER AEROQUAD CONFIGURATOR E ARDUINO NANO : http://code.google.com/p/aeroquad/downloads/list LINK PER ARDUINO 1.0.4 https://arduino.googlecode.com/files/arduino-1.0.4-windows.zip Dopo aver scaricato i software sono stati avviati gli eseguibili, scelte le cartelle di istallazione e completate le istallazioni. Una volta finito il primo passo, si sono copiate le librerie contenute dentro al file archivio del software da caricare nell’arduino Aeroquad, nella sottocartella “libraries" contenuta nella cartella di istallazione di arduino.
22
Programmazione del microcontrollore Il software caricato all’interno di Arduino Nano v3.0 è “Aeroquad 3.2” con configurazione per Arduino mini. In primo luogo è stato trasferito il software originale Aeroquad v3.2 con la configurazione Arduino v1.
Configurazione v1
Prima parte di codice
Seconda parte di codice
Visualizzazione del software Aeroquad
In questo modo il microprocessore Arduino Nano viene riconosciuto come Arduino Uno e risponde bene ai test dei motori e del collegamento tra trasmittente e ricevente, ma seppur riesce a rilevare la presenza del chip Gy-521, non riesce a leggere i valori in ingresso al I2C-bus.
23
Dopo quest’imprevisto si è iniziato a pensare ad un modo che potesse far comunicare Arduino Nano con il chip. Successivamente è stato caricato nel Nano il software compatibile con l’ambiente di configurazione di volo Aeroquad e sono state incluse le librerie per la MPU-6050 del Gy-521 all’interno del codice Aeroquad v3.2. Configurazione mini
Prima parte di codice
Seconda parte di codice
La risposta del giroscopio così, può essere visualizzata nel tempo sul monitor di un computer mentre viene cambiata l’angolazione dei tre assi sul drone.
24
Correzione di alcune Bug presenti all’interno del software per il ¾C Una delle Bug che sono state riscontrate nel software per Arduino Aeroquad 3.2 sono stato le impostazioni del segnale da inviare ai motori durante il test e il controllo di velocità : nella scheda FlightControlProcessor.h Impostazioni errate
Impostazioni corrette
25
Una secondo punto di difficoltà incontrato è stato il settaggio della ricevente non di tipo PPM, perché il collegamento radio Spektrum a disposizione può funzionare solo nel caso in cui la configurazione esclude tutte le impostazioni per la modalità PPM, in caso contrario, il software una volta caricato nel microcontrollore, non comunica con la trasmittente. Con il seguente settaggio si è impostata una modalità a normale ricevitore a sei canali standard.
L’ultima e più complessa difficoltà è stata quella di rendere compatibile l’Arduino nano con il girocopioaccellerometro Gy-521 perché non risultava tra le configurazioni presenti nelle impostazioni di Aeroquad software. Sono state applicate delle modifiche al codice di configurazione di Arduino mini già presente nell’ultima scheda di Aeroquad v3.2 perché comprendeva la comunicazione in I2C-bus necessaria per l’utilizzo della MPU6050 del chip e questo includendo le librerie adeguate ci ha permesso di rendere riconoscibile al software Aeroquad per computer l’Arduino Nano come se fosse Arduino mini. Codice mini originale
Codice mini modificato
26
Calibrazione del µC La calibrazione del microcontrollore viene eseguita sul software Aeroquad. Connettere il drone Connettere il drone e verificare la corrispondenza della porta USB con il dispositivo connesso da: pannello di controllo, gestione dispositivi e cercare nell’elenco arduino; solitamente è denominata COM ed un numero affianco che cambia a seconda della porta in cui il cavo mini USB dell’Arduino Nano è stato inserito.
L’inizializzazione della EEPROM è il primo passo da fare per la calibrazione del quadricottero. La memoria del microcontrollore viene preparata alla calibrazione.
Calibrare schede ESC
Calibrare il Giroscopio La calibrazione del
La calibrazione
giroscopio
delle schede
memorizza i valori
Esc consiste
che il Gy-521 legge
nell’ inviare
in posizione
loro il segnale
orizzontale.
di velocità massima e registrare i punti di minimo e di massimo throttle.
27
Calibrare l’accellerometro Calibrare l’accellerometro è una procedura che comprende la memorizzazione delle inclinazioni più estreme che il drone piò assumere quando è in volo. Il programma chiederà di mettere il quardicottero in verticale, orizzontale, su ambo i lati, in avanti, in dietro capovolto e di ritornare alla posizione orizzontale. Calibrare i motori
Motori non allineati
Motori allineati
La calibrazione dei motori serve ad impostare la loro velocità in modo che partano insieme, che siano tutti al massimo o tutti al minimo contemporaneamente.
Calibrare la trasmittente (direzione frontale verso i cartelli appesi al muro)
Spostamento Pitch in avanti
Spostamento Pitch in indietro
Spostamento Yaw nelle due direzioni
Spostamento Roll a destra
Spostamento Roll a sinistra
28
Calibrare l’accellerometro
La calibrazione della trasmittente, ultima tra tutte, è importante per definire i valori che i joy-pads del telecomando possono assumere e così, dopo averla effettuata,
si
termina
con
“Ok”
e
si
prosegue
all’inserimento dei valori di configurazione delle azioni integrali, proporzionali e derivative sugli assi
ROLL,
PITH,
destra.
YAY
nella
sezione
in
alto
a
Si trasferiscono con il tasto Upload to Aeroquad ed il drone è in condizioni di volare. Disconnesso il modellino si effettua la prova di volo.
29
Prova di volo La prova di volo si è svolta nel giardino dell’istituto IIS Volterra Elia il giorno giovedì 12 giugno 2014, ed è servita per confrontare le scelte progettuali fatte con il modello finito e calibrato. Abbiamo potuto costatare che le calibrazioni della regolazione PID sono ancora da perfezionare, il volo è di breve durata, ma al contrario il telaio ha potuto impedire che negli impatti a terra la circuiteria si potesse rompere. Le eliche sono la parte più delicata, non resistono agli urti, ma contrariamente a questo sono le parti più esposte al rischio di collisione con il suolo.
30
Utilizzo dell’App Android Qx2014 La realizzazione di un’ Android App è stata pensata per un controllo più interattivo con il drone. Avendo a disposizione l’audio e il video in tempo reale di quello che sta accadendo in volo e i dati sulle condizioni esterne dell’ambiente, si potrebbero migliorare difetti ed incrementare nuove funzionalità. L’App è stata realizzata con l’utilizzo di Eclipse, un
Eseguita su Smartphone
software gratuito scaricabile da internet per lo sviluppo di applicativi Android. E’ stata pensata con un layout semplice per renderne l’utilizzo fluido e veloce. L’immagine di sfondo verrà sostituita con la ripresa video nel momento in cui il drone attiverà la videocamera che dovrà essere stata progettata, realizzata e configurata per la comunicazione con un computer.
L’applicativo
ancora
in
fase
di
aggiornamento dovrà poter comunicare utilizzando una connessione Bluetooth, pilotare il drone attraverso dei joy-pads virtuali o con i sensori di movimento, racchiudendo
e
realizzare
un
documento
con grafici e tebelle
i dati
immagazzinati durante il volo. L’obiettivo è di sviluppare qualcosa che sia interessante nell’utilizzo e allo stesso tempo spunto per osservazioni e curiosità dopo.
Eseguita su Tablet
31
Considerazioni sul progetto Il progetto “Qx2014” è stata un’esperienza molto entusiasmante, mi ha dato curiosità, voglia di fare e motivo di riuscire a migliorarmi. Io e i miei due compagni di progetto siamo stati molto coinvolti nella risoluzione di imprevisti sin dai primi giorni e siamo riusciti a terminare la prima fase con buoni risultati.
Ulteriori propositi per nuovi futuri sviluppi del progetto Una volta in aria però, si deve volare! La prima fase di questo progetto è terminata e c’è ancora molto spazio per sensori, luci e videocamera. Un drone per essere autonomo deve essere molto sofisticato quindi perché non progettare una scheda con ricevente radio e trasduttori integrati? Il gps è molto utilizzato e potrebbe essere interessante poter integrare una tecnologia di questo tipo così da poter registrare foto e video di paesaggi o monumenti come google maps già ha fatto per le strade e perché no, poi condividerle su un social apposito.
32
Analisi dei costi Prodotto
Prezzo(€)
Quantità
Motori Brushless D2822/14
36€
4
Schede ESC regolatrici da 20A
40€
4
Connettori ad alta potenza
15€
3
Arduino Nano + cavo USB
18€
1
Ricevente Spektrum AR610
50€
1
Trasmittente Spektrum DX5
90€
1
Batterie al Litio
9€
3
Telaio
0€
1
Gy-521 Mpu6050
6€
1
TOTALE
264€
Materiale
Colori
• alluminio
• Grigio
33
Glossario
Drone:
Dispositivo radiocomandato
Quadricottero:
Un velivolo dotato di quattro rotori in grado di decollare, volare e atterrare su un punto fisso, in verticale.
Microprocessore :
Una tipologia particolare di processore elettronico che si contraddistingue per essere [1] interamente costituita da uno o piĂš circuiti integrati e per questo di dimensioni molto ridotte.
Telaio :
Struttura a scheletro
Ambiente di sviluppo : Un ambiente di sviluppo integrato, in informatica è un software che, in fase di programmazione, aiuta i programmatori nello sviluppo del codice sorgente di un programma.
34