introduzione alla configurazione del software di bordo di un multicottero (1)

42
www.virtualrobotix.com presenta : Introduzione alla configurazione di bordo del multicottero di Emile Castelnuovo

Upload: roberto-navoni

Post on 17-May-2015

1.032 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Introduzione alla configurazione del software di bordo di un multicottero  (1)

www.virtualrobotix.com presenta :

Introduzione alla configurazione di bordo del

multicotterodi Emile Castelnuovo

Page 2: Introduzione alla configurazione del software di bordo di un multicottero  (1)

Introduzione : il multirotoreCos'è un multirotore

Principio di funzionamento

Esempi di configurazioni

Page 3: Introduzione alla configurazione del software di bordo di un multicottero  (1)

Introduzione : cos'è un multirotoreUn multirotore si differenzia dagli elicotteri standard per la presenza di 3 o più eliche a passo fisso.

Necessita di una centralina dedicata per il controllo del volo e della stabilizzazione.

E' un velivolo di semplice costruzione meccanica, ma di complessa gestione dinamica.

Page 4: Introduzione alla configurazione del software di bordo di un multicottero  (1)

Introduzione : principio di funzionamentoIl multirotore si stabilizza agendo solo sulla velocità dei suoi motori-eliche, quindi nessuna parte meccanica in movimento (ad esclusione del motore stesso).Eccezione: il Tricottero che richiede un servo per il movimento del motore di coda.Nel multirotore esistono due tipi di eliche:Destre e Sinistre o più comunemente Rotanti (spingenti) e controrotanti (traenti).

Page 5: Introduzione alla configurazione del software di bordo di un multicottero  (1)

Introduzione : principio di funzionamento 2

Verde Rotanti (pusher) - Blu Controrotanti (standard)

Page 6: Introduzione alla configurazione del software di bordo di un multicottero  (1)

Introduzione : principio di funzionamento 3La stabilizzazione avviene su tre assiGli assi X e Y sono controlati variando la velocità di motori con rotazioni opposte.

Asse Z controllato variando la velocita di motori con la stessa rotazione.

Page 7: Introduzione alla configurazione del software di bordo di un multicottero  (1)

Introduzione : principio di funzionamento 3Ogni accoppiata motore-elica produce due componenti di forza utili a governare il multirotore:

SPINTA e MOMENTO TORCENTE (coppia)

Regolando queste due forze si può spostare il multi in qualsiasi direzione nello spazio

Page 8: Introduzione alla configurazione del software di bordo di un multicottero  (1)

Introduzione : principio di funzionamento 4Per mantenersi in equilibrio sull'asse Z (YAW o IMBARDATA) le coppie di motori 1-3 e 2-4 devono avere velocità angolari uguali.

Per i rimanenti assi X e Y (ROLL e PITCH o Rollio e Beccheggio) la somma delle spinte sui 4 motori deve essere uguale.

Page 9: Introduzione alla configurazione del software di bordo di un multicottero  (1)

Introduzione : principio di funzionamento 5

Per il movimento si mantiene un angolo di ROLL o PITCH diverso da 0 Nell' esempio controllando la velocità dei motori 1-3 (aumentando 3 e diminuendo 1) il momento rimane costante ma cambia l'inclinazione facendo muovere il Quad verso la Y

Per la rotazione si modificano le velocità delle due coppie in modo che la differenza di momento torcente faccia ruotare il quad. La somma delle forze però deve rimanere costante quindi si agisce aumentando la velocità di una coppia e diminuendo l'altra

Page 10: Introduzione alla configurazione del software di bordo di un multicottero  (1)

Introduzione : principio di funzionamento 5La Matrix TableMatrice che identifica la percentuale

Page 11: Introduzione alla configurazione del software di bordo di un multicottero  (1)

Introduzione: Esempi tipici di configurazione 1QUAD:

Page 12: Introduzione alla configurazione del software di bordo di un multicottero  (1)

Introduzione: Esempi tipici di configurazione 1X8 OCTA QUAD:

Page 13: Introduzione alla configurazione del software di bordo di un multicottero  (1)

Introduzione: Esempi tipici di configurazione 1HEXA:

Page 14: Introduzione alla configurazione del software di bordo di un multicottero  (1)

Introduzione: Esempi tipici di configurazione 1OCTA:

Page 15: Introduzione alla configurazione del software di bordo di un multicottero  (1)

Introduzione: Esempi tipici di configurazione 1OCTA V: Y6:

Page 16: Introduzione alla configurazione del software di bordo di un multicottero  (1)

Introduzione: Esempi tipici di configurazione 1TRICOPTER:

Page 17: Introduzione alla configurazione del software di bordo di un multicottero  (1)

La centralina di controllo 1

Per funzionare un multirotore DEVE necessariamente disporre di una centralina di controllo con microcontrollore (MCU).La VRBRAIN usa un ARM a 32bit della ST.Molto popolari son gli Arduino a 8 bit (es. Arducopter)La centralina si occupa di variare la velocità dei motori ad alta velocità (250Hz per VRBRAIN, 100Hz per Arduino)Operare un multirotore senza centralina è impossibile

Page 18: Introduzione alla configurazione del software di bordo di un multicottero  (1)

La centralina di controllo 2

Le MCU devono disporre di almeno 4 ingressi e 4 uscite PWM per poter controllare un Quadricottero

I 4 ingressi base sono Roll, Pitch, Throttle, Yaw (Rollio, Beccheggio, Gas, Imbardata)I rimanenti ingressi servono per le modalità di volo

Le uscite sono 1:1 con i motori/eliche.Le uscite generano degli impulsi (PWM) che comandano gli ESC

Page 19: Introduzione alla configurazione del software di bordo di un multicottero  (1)

Gli ESC 1Altro elemento molto importante per una buona stabilità di volo è l' ESC-E' una scheda per il controllo di motori brushless (quelli tipicamente usati nei multirotori)Un buon ESC deve poter modificare la velocità del motore ad una frequenza elevata (~400Hz) e non deve in nessun modo filtrare l'input per evitare ritardi nelle correzioni motore.

Page 20: Introduzione alla configurazione del software di bordo di un multicottero  (1)

Gli ESC 2Questo è un esempio di cosa può fare un buon firmware per ESC

Page 21: Introduzione alla configurazione del software di bordo di un multicottero  (1)

La radioPer controllare un Multirotore serve una radio tipo RC.Con alcuni sitemi si può usare un Joystick (Fly By Wire) o addirittura un PC.Le comuni radio RC generano un segnale PPM o PWMLe più comuni generano segnali PWM (un cavo per canale) mentre quelle di fascia medio alta solitamente generano segnali PPM (un cavo per n-canali)

Page 22: Introduzione alla configurazione del software di bordo di un multicottero  (1)

I sensori di bordoEsistono 4 tipi di sensori che sono alla base del volo autonomo di un multirotore:

■ Giroscopio (essenziale)■ Accelerometro (opzionale)■ Bussola (opzionale)■ GPS (opzionale)Grazie alla tecnologia MEMS quasi tutti i sensori possono essere inseriti in un unico chip

Page 23: Introduzione alla configurazione del software di bordo di un multicottero  (1)

I sensori di bordo 2I sensori combinati su di una scheda compongono quella che in inglese viene chiamata IMU (Inertial Measurement Unit) VRBRAIN:MPU6000 (6 assi di misurazione) combina un accelerometro a 3 assi e un giroscopio a 3 assiHMC5883 bussola digitale su 3 assiGPS (Mediatek o UBLOX)

Page 24: Introduzione alla configurazione del software di bordo di un multicottero  (1)

I sensori di bordo 3I giroscopi misurano la velocità angolare su 3 assi. Unità di misura gradi/sGli accelerometri misurano la forza di gravità su 3 assi. Unità di misura 1G (9.8 m/s2)La bussola digitale misura il nord magnetico sui tre assi (°)

Page 25: Introduzione alla configurazione del software di bordo di un multicottero  (1)

I sensori di bordo 4Con una board appoggiata al tavolo i sensori dovranno fornire (assi x,y,z):Giroscopi : 0,0,0Accel.: 0,0,1G

Con il muso verso l'alto i sensori forniranno come output:Giroscopio: 0,0,0Accel.: 1G,0,0

Page 26: Introduzione alla configurazione del software di bordo di un multicottero  (1)

I sensori di bordo 5Gli accelerometri sono rumorosi, ma tendenzialmente resistenti agli sbalzi di calore

I Giroscopi sono molto precisi, ma sensibili alle vibrazioni e ai cambi repentini di temperatura

Le bussole sono molto sensibili ai campi magnetici e oggetti metallici in genere.

Page 27: Introduzione alla configurazione del software di bordo di un multicottero  (1)

La calibrazione dei sensori 1Tutti i chip escono dalla fabbrica con un offset leggermente differente.In ogni sistema di navigazione inerziale è fondamentale procedere con una corretta calibrazione per registrare lo zero.

Il codice della VBRAIN procede alla calibrazione dei GYRO e degli ACC. in fase di startup.La calibrazione della bussola deve essere fatta almeno una volta.

Page 28: Introduzione alla configurazione del software di bordo di un multicottero  (1)

La calibrazione dei sensori 2Dato che i giroscopi sono sensibili ai cambi di temperatura, l'ideale prima di volare è di lasciare che i chip si adeguino alla temperatura esterna soprattutto in inverno.

In alternativa si dovrebbe comprendere nel software un sistema per la calibrazione dinamica in base alla temperatura.Pro: nessuna calibrazione ulterioreContro: lungo processo di messa punto e complessità di gestione.

Page 29: Introduzione alla configurazione del software di bordo di un multicottero  (1)

La calibrazione dei sensori: Accelerometri (livellamento)Il level (o livellamento) è quella procedura che serve per registrare l'offset degli accelerometri sull'asse orrizzontale.Molto importante per avere un multirotore "fermo".

Esempio da planner.

Page 30: Introduzione alla configurazione del software di bordo di un multicottero  (1)

La calibrazione dei sensori: i giroscopiLa calibrazione dei giroscopi deve essere effettuata con il sensore più fermo possibile

Serve ad ottenere l'offset rispetto allo zero di fabbrica.

E' essenziale per avere un volo fluido e senza sobbalzi.

Page 31: Introduzione alla configurazione del software di bordo di un multicottero  (1)

La calibrazione dei sensori: la bussolaLa calibrazione della bussola è fondamentale per le funzioni di navigazione automatica.

Non è fondamentale per il volo stabilizzato manuale.

Page 32: Introduzione alla configurazione del software di bordo di un multicottero  (1)

La calibrazione dei sensori: la bussolaUna perfetta calibrazione permette di eliminare le interferenze magnetiche generate dai motori e da apparecchiature elettriche.

Page 33: Introduzione alla configurazione del software di bordo di un multicottero  (1)

L'orientamento del corpo nello spazio DCM (Direction Cosine Matrix)Usa le rotazioni di matrice per calcolare la posizione dell'oggetto relativa ad un sistema di riferimento fissoEs. il multirotore in riferimento alla terra

QUATERNIONSSono un'estensione dei numeri complessi e servono per poter descrivere le rotazioni in uno spazio a dimensione 4

Page 34: Introduzione alla configurazione del software di bordo di un multicottero  (1)

L'orientamento del corpo nello spazio Il risultato dei due precedenti sistemi viene poi trasformato in "angoli di eulero"Gli angoli di Eulero sono utili per comprendere l' inclinazione del corpo rispetto ad un sistema fisso utile nelle funzioni automatiche di navigazione

Page 35: Introduzione alla configurazione del software di bordo di un multicottero  (1)

PIDProporzionale Integrale Derivativosistema di controllo in retroazione negativa.(control loop feedback)

Molto usato in sistemi di controllo.

Page 36: Introduzione alla configurazione del software di bordo di un multicottero  (1)

PID di stabilizzazione in AC32

Page 37: Introduzione alla configurazione del software di bordo di un multicottero  (1)

GCS Ground Control Station

Page 38: Introduzione alla configurazione del software di bordo di un multicottero  (1)

GCS Ground Control Station

Visualizzazione in tempo reale dei parametri di volo.

Page 39: Introduzione alla configurazione del software di bordo di un multicottero  (1)

GCS Ground Control StationCreazione e gestione di missioni con waypoint.

Page 40: Introduzione alla configurazione del software di bordo di un multicottero  (1)

GCS Ground Control StationGestione dei parametri di volo e di stabilizzazione.

Page 41: Introduzione alla configurazione del software di bordo di un multicottero  (1)

GCS Ground Control StationGestione dei parametri di volo e di stabilizzazione.

Page 42: Introduzione alla configurazione del software di bordo di un multicottero  (1)

www.virtualrobotix.com

Join US at :