Eliminazione di PWM su Ardrone Parrot 2.0


8

Sto riscontrando alcuni problemi con ARDrone Parrot 2.0 e spero che qualcun altro stia incontrando la stessa cosa.

Mentre si libra, il drone sta perdendo quota (apparentemente) in modo casuale, quindi si sta riprendendo. Lo sta facendo senza ricevere alcun comando di velocità e dovrebbe mantenere l'altitudine.

Stiamo usando i driver di ardrone_autonomy (ramo dev_unstable) su github . Siamo in grado di guardare le uscite PWM inviate al motore e stanno cadendo dal comando hover fare un piccolo valore prima di tornare esponenzialmente al valore hover quando si verifica questa caduta.

Il problema potrebbe essere una comunicazione tra l'IMU e il controller di bordo o sulla nostra implementazione del controllo del software.

Qualcuno ha visto un problema simile o suggerimenti per testare / risolvere ciò che sta accadendo?


Stai usando l'ARDrone all'interno o all'esterno? Inferito dalla domanda precedente su quale terreno stai cercando di passare il mouse? Alcuni terreni possono causare problemi con il volo in bilico. Hai provato in vari ambienti? Quale strategia di controllo stai usando nella tua implementazione del controllo software? PID? Tieni l'altezza usando il sensore a ultrasuoni integrato?
Tom Bamber,

Risposte:


1

Non ho usato l'ARDrone ma ho esperienza con il mantenimento dell'altezza su un altro pilota automatico.

Senza ulteriori informazioni, una rapida ricerca su Google ha rilevato un possibile problema di firmware con ARDrone in questo thread .

Se stai usando il sensore a ultrasuoni di bordo, come ho già detto nel mio post su Come posso rilevare il bordo di un tavolo? . I sensori a ultrasuoni possono saltare a zero sporadicamente per parte di un secondo e questo potrebbe causare l'ARDrone a cambiare altitudine e quindi tornare al valore reale.


Tom, al momento stiamo usando il drone al chiuso. Siamo nel nostro laboratorio, che è un pavimento in moquette e utilizziamo piastrelle colorate ad alto contrasto per il sistema di visione su cui attaccare. Non siamo stati in grado di testare molto in altri ambienti a causa della nostra attuale configurazione di laboratorio all'università.
Daman,

Per quanto riguarda una strategia di controllo, stiamo usando un controller xbox per volare usando un nodo ROS per leggere gli input. I file ROS che stiamo ottenendo provengono dal github di ARdrone_autonomy. Il comando viene inviato al controllo di bordo del drone che sembra essere un PID. Abbiamo ristretto meglio il nostro problema dal mio primo post. Il ROS ha un argomento dai dati di navigazione interni che fornisce informazioni sul motore. Mostra i valori PWM inviati al motore e un termine integrale interno per il controller PID di altitudine. Stiamo vedendo che viene ripristinato da 60 a 0 quando il quad cade
Daman il

Per confermare che i segnali PWM inviati al motore si resettano da 60 a zero quando il quad cade? In tal caso, bisognerebbe risalire indietro e determinare da dove proviene l'errore matematico. Penso che il problema provenga dal modo in cui i tuoi dati del sensore vengono utilizzati in altezza, non puoi ottimizzare il tuo PID con quel tipo di errore che si verifica.
Tom Bamber
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.