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

Post on 17-May-2015

1.032 views 0 download

Transcript of Introduzione alla configurazione del software di bordo di un multicottero (1)

www.virtualrobotix.com presenta :

Introduzione alla configurazione di bordo del

multicotterodi Emile Castelnuovo

Introduzione : il multirotoreCos'è un multirotore

Principio di funzionamento

Esempi di configurazioni

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.

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).

Introduzione : principio di funzionamento 2

Verde Rotanti (pusher) - Blu Controrotanti (standard)

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.

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

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.

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

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

Introduzione: Esempi tipici di configurazione 1QUAD:

Introduzione: Esempi tipici di configurazione 1X8 OCTA QUAD:

Introduzione: Esempi tipici di configurazione 1HEXA:

Introduzione: Esempi tipici di configurazione 1OCTA:

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

Introduzione: Esempi tipici di configurazione 1TRICOPTER:

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

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

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.

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

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)

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

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)

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 (°)

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

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.

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.

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.

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.

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.

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

Non è fondamentale per il volo stabilizzato manuale.

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

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

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

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

Molto usato in sistemi di controllo.

PID di stabilizzazione in AC32

GCS Ground Control Station

GCS Ground Control Station

Visualizzazione in tempo reale dei parametri di volo.

GCS Ground Control StationCreazione e gestione di missioni con waypoint.

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

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

www.virtualrobotix.com

Join US at :