Fermare la deriva nel quadricottero sospeso


13

A un certo punto costruirò un drone quadricottero a 4 eliche. Voglio rendere relativamente facile il volo facendolo rimanere sospeso quando i comandi non vengono toccati.

Qualcuno può offrire alcune informazioni su come farei rimanere in aria il quadrotore? Stavo pensando agli accelerometri per misurare la deriva e rollio / beccheggio / imbardata, ma non sono abbastanza sensibili da rilevare una deriva molto lenta a causa, ad esempio, di una leggera brezza. Il GPS è sufficientemente preciso da eliminare la deriva sulla scala di 10 cm (ovvero rilevare una deriva di 10 cm (o meno, forse?) Dalla posizione originale del drone)?


Se ti piacciono i robot da costruzione, non dimenticare di aderire alla proposta di robotica
Rocketmagnet,

Risposte:


16

Penso che vorrai usare una combinazione di sensori. Gli accelerometri e i giroscopi saranno in grado di correggere forti brezze. È quindi possibile utilizzare il GPS per contrastare la deriva a lungo termine (o la distorsione, come talvolta viene chiamata). Penso che la combinazione di questi due sensori in una sorta di filtro (probabilmente un Kalman) manterrà la deriva della tua posizione minimizzata.

Tuttavia, il GPS non sarà abbastanza preciso da solo. Un approccio alternativo al filtro Kalman (che può diventare un po 'pesante per la matematica) consiste nell'utilizzare l'algoritmo DCM di DIYdrones . Sembra esserci molto successo nell'utilizzare questo finora.

Infine, il quadrotore drone Parrot utilizza una fotocamera da 60 fps rivolta verso il basso per annullare la deriva. Guarda in basso ed estrae le caratteristiche dal terreno sottostante, quindi utilizza un tipo di odometria visiva (presumo una sorta di algoritmo di flusso ottico) per determinare fino a che punto il quadrotore si è spostato. Credo che questo funzioni solo a bassa quota sul pappagallo, ma non vedo alcun motivo per cui non possa essere esteso ad un'altitudine più elevata.


Grazie! Penso che andrò per l'opzione della fotocamera downfacing poiché alimenterò il drone tramite un LPC1768. È sufficiente potenza di elaborazione per eseguire il rilevamento di linea di base a 640x480, giusto? Grazie per la soluzione alternativa di utilizzo di giroscopi e GPS per la deriva a lungo termine. Inoltre, conosci qualche sensore in grado di rilevare la deriva?
Bojangles,

1
Oltre al 6 grado di libertà dell'IMU, ho sentito parlare di persone che usano i magnetometri per determinare la deriva a lungo termine rilevando i cambiamenti nel campo magnetico terrestre. Non so che questa sia necessariamente una buona opzione, poiché il campo può fluttuare rapidamente attorno ai dispositivi ad alta corrente (come 4 motori) e non varia in modo lineare.
mjcarroll,

3
Il problema con la fotocamera ad altitudini più elevate è che quantità ridotte di rollio produrranno spostamenti sempre più grandi nell'immagine all'aumentare dell'altitudine, a meno che la fotocamera non si trovi su un supporto autolivellante.
mikeselectricstuff

@mikeselectricstuff - Non potresti regolare l'algoritmo di elaborazione delle immagini in base all'altitudine?
mjh2007,

1
@mjh Penso che il problema sia meglio visto in un esempio. A un'altitudine di 50 piedi, un rollio o un passo di 5 gradi (abbastanza tipico per muoversi nella direzione X o Y su un quadrotore) causerà lo spostamento delle caratteristiche del terreno (abbronzatura (5 gradi) * 50 piedi) = 4,25 piedi (matematica approssimativa ). Anche senza il quadrotore in movimento, tutte le caratteristiche del terreno si sposteranno di 4 piedi. Ciò potrebbe essere compensato, ma diventa difficile con le restrizioni di risoluzione e calcolo.
mjcarroll,

3

Il GPS non è abbastanza preciso. Gli accelerometri possono misurare solo l'accelerazione, non una deriva costante.

Forse un sistema di posizionamento localizzato che utilizza beacon e trilateration o qualcosa del genere?

Forse telecamere economiche per rilevare la deriva rispetto al terreno o altri oggetti fissi? È possibile annullare le rotazioni utilizzando i giroscopi, quindi eseguire una correlazione incrociata tra i fotogrammi successivi per rilevare la deriva rispetto al terreno, come funziona un mouse ottico.


3

Se avessi intenzione di farlo utilizzando una fotocamera rivolta verso il basso, la prima cosa che vorrei sarebbe le alte prestazioni e la risoluzione relativamente bassa (questo è un sensore, non mi interessa davvero l'input della fotocamera) e quindi la fotocamera che farei l'uso per questo sarebbe da un mouse ottico: hanno telecamere ad altissima velocità e bassa risoluzione. Con un po 'di hacking, sono sicuro che potresti trovare una disposizione dell'obiettivo per distinguere tra le caratteristiche sul terreno e quindi utilizzare un algoritmo di flusso ottico a estrazione delle differenze per elaborare questo input.


Dubito che abbiate bisogno di enormi tassi di aggiornamento; la velocità relativamente lenta di un quadrotore e il suo tempo di reazione non lo rendono davvero adatto.
Nick T,

Grazie per la soluzione alternativa Choscura. Esaminerò sicuramente l'uso di un mouse ottico: non ho nemmeno bisogno della parte fotocamera di una fotocamera ;-) L'unico problema che posso vedere è che se l'immagine è sfocata, l'algoritmo di differenza potrebbe non funzionare anche . Ho ragione?
Bojangles,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.