Le migliori offerte FPV

Grazie al nostro canale Telegram riceverai immediatamente le ultime offerte e i migliori coupon

Entra Ora!

28 marzo 2021  ·  @iamlucafpv

Guida al PID Tuning di un Drone

IntermedioTutorial per volareFirmware

La maggior parte dei configuratori di quad come Betaflight e KISS permettono di aggiustare i valori PID per migliorare le performance di volo. In questo tutorial vediamo che cosa si intende con PID, quali sono gli effetti sulla stabilità e manovrabilità del drone e anche qualche consiglio su come regolarli al meglio.

Cosa significa e come funzionano i PID?

PID è un acronimo che sta per Proporzionale, Integrale e derivativo. Parte del lavoro che il flight controller svolge durante il volo è eseguire questo algoritmo. L'FC in millesimi di secondo, legge i dati dei sensori (ad esempio quelli del giroscopio) e calcola quindi quanto veloci i motori devono girare per poter avere per eseguire la manovra imposta dai nostri comandi radio.

Sistema di controllo PID

La nostra "manovra" altro non è che la combinazione di tutti i movimenti fatti con i nostri stick sul radiocomando. La combinazione di tutti questi movimenti, sommata ai valori dei RATES (che indicano al flight controller la velocità angolare con cui questi movimenti devono essere eseguiti) è definita SETPOINT. Il Set-point è il parametro sul quale il Flight Controller applica l'algoritmo dei PID.

Quindi possiamo dire che (Throttle + Yaw + Pitch + Roll) + RATES = Set-Point. Ne consegue che ad ogni minimo movimento dei nostri stick su uno di questi assi, abbiamo un nuovo setpoint.

Approfondimento: Che  cosa sono i Rates

L'altro parametro utilizzato dall'algoritmo dei PID è la combinazione dei dati del GYROSCOPIO che, detto in parole semplici, determinano e comunicano al Flight Controller la velocità di rotazione in tempo reale del nostro drone. La rotazione cioè nell'esatto momento in cui il flight controller riceve un nuovo set-point.

Lo scopo del sistema di controllo PID quindi è quello di correggere l'errore, detto PID ERROR, ovvero la differenza tra il valore misurato dal giroscopio e il set-point.

Se non esistesse questo errore, non ci sarebbe ovviamente nemmeno bisogno del PID controller. Ma dato che il valore misurato dal giroscopio non è mai così preciso da corrispondere al valore desiderato dal set-point, la funzione del PID controller è quella di ridurre al minimo possibile il margine di questo errore. La foto qui sotto illustra bene questo concetto

Effetti del PID sul set-point

I tre parametri dell'algoritmo sono dunque:  Proporzionale, Integrale e Derivato

  • Il Proporzionale (P) controlla l'errore istantaneo – più lontano si trova dal setpoint e con più forza cerca di avvicinarsi. E' il valore che influenza maggiormente la reattività immediata del drone ai nostri comandi. Più questo valore aumenta, più il nostro quad sarà "reattivo" ad eseguire la manovra. 
  • Il derivativo (D) è una previsione sull'errore futuro – guarda quanto velocemente la P corregge l'errore per avvicinarsi al set-point e cerca di contrastarne l'effetto per minimizzare la possibilità di andare oltre. Questo valore sostanzialmente ammorbidisce l'effetto della P in modo da renderlo meno brusco e più preciso.
  • L'integrale (I) è la somma degli errori passati, è la parte dell'algoritmo che contrasta le forze esterne al drone per far si che il setpoint venga eseguito correttamente. Per esempio se il tuo quad devia costantemente da un se-tpoint per colpa del vento, questo termine farà in modo di compensare questo effetto.

L'arte di PIDDARE

Riuscire a fare un corretto PID-Tuning per un quadricottero è una forma d'arte. Il perfetto PID Tuning è quando il margine di errore tra il set-point e il gyroscopio è = 0, che è quasi impossibile ovviamente. Più ci si avvicina allo zero, più il nostro drone è "piddato" correttamente.

Diversi sono le caratteristiche che influenzano l'errore sul set-point: il peso del nostro drone, il suo baricentro, l'aerodinamica del frame, la potenza dei motori, le eliche utilizzate. Capire come bilanciare i diversi aspetti delle caretteristiche di volo per far rispondere perfettamente il modello ai comandi, non è una cosa che si impara in una giornata.

Qualche anno fa il PID tuning del quad era assolutamente necessario perchè i firmware degli FC non erano assolutamente ottimizzati. Per fortuna, oggi i nuovi firmware come Betaflight, iNAV o emuflight e Kiss escono già con PID ottimizzati, spesso con valori di stock ottimizzati per un 5 pollici freestyle. Questo grazie anche alle tecniche sofisticate di riduzione del rumore e ad algoritmi più ottimizati negli FC moderni.

Molto spesso i quad volano già bene con i PID di default, a meno che tu non stia usando componenti di scarsa qualità oppure modelli preassemblati veramente economici.

Detto questo, si possono sempre migliorare le performance di volo tramite un po' di PID tuning. E ricorda che ognuno ha diverse preferenze su come piddare i propri quad.

Cos'è il Looptime?

Il loop è l'insieme di passi che il PID controller deve compiere partendo dalla lettura dei sensori, al calcolo del valore di output del set-point. I processori montati sui flight controller moderni sono in grado di eseguire migliaia di iterazioni (loop) per secondo.

Il tempo che l'FC impiega a completare il loop, viene chiamato looptime e viene misurato in millisecondi oppure Hz. Ad esempio:

  • Looptime = 1 s ? 1 iterazione al secondo = 1Hz
  • Looptime = 1ms (0.001 s) = 1KHz

Come detto prima, i flight controller moderni sono in grado di avere looptime di 8KHz, e alcuni addirittura arrivano a 32KHz. Ad ogni modo, non è detto che un looptime maggiore sia meglio. Ci sono pro e contro nell'usare looptime alti, infatti molte persone preferiscono usare 8KHz.

L'effetto di ogni termine

Modificare i valori PID altera il comportamento del quadricottero in modi diversi. In questa sezione cerchiamo di capire gli effetti di ogni termine.

Termine P (la risposta ai tuoi comandi)

Il termine P determina con quanta forza il Flight Controller cerca di correggere l'errore per ottenere la traiettoria di volo che si vuole seguire.

Puoi anche immaginarlo come il parametro che gestisce la sensitività e la risposta del quad. Per valori alti di P il quad risponderà in modo più scattante, quasi come se avessi aumentato i tuoi rate.

Volendo fare un parallelismo con l'automobile, la P è la risposta più o meno diretta dello sterzo. Più è alta la P più sarà uno sterzo diretto tipo Go-Kart, più è bassa e più sarà morbido. Ovviamente valori eccessivi portano a vibrazioni sullo sterzo, valori troppo bassi rendono lo sterzo troppo mollo e poco reattivo.

Proporzionale

In generale quindi , un valore alto per il termine P si traduce in un controllo più deciso, mentre per valori bassi di P avrai un controllo più "morbido".

Se il valore di P è troppo alto, il quad diventa troppo sensibile e cercherà di correggere eccessivamente gli errori. In questi casi, la correzione dell'errore va troppo oltre e il tuo quad avrà oscillerà ad alta frequenza durante il volo. Queste oscillazioni saranno più nette nel momento in cui viri con molta decisione.

Se devi ridurre le oscillazioni, una possibilità è quella di ridurre il termine P, ma attento a non ridurlo troppo altrimenti il quad inizierà a risultare troppo morbido nelle risposte.

Termine I (il mantenimento del tuo comando nel tempo)

Il termine I determina con quanta forza il Flight Controller cerca di mantenere l'altitudine del drone rispetto alle forze esterne, come ad esempio vento e baricentro sbilanciato.

Puoi vederlo come ad un parametro di rigidità, ovvero quanto in assenza di comandi, il drone mantiene invariate altitudine e rotazione sotto l'influenza di fattori esterni, come il vento. Fattori esterni che possono essere anche altri, ad esempio un'elica rotta o scheggiata, che porta ad una costante deviazione dal set-point

Nel nostro parallelismo con l'automobile, la I potrebbe rappresentare la convergenza delle gomme in modo che, lasciando il volante, l'auto prosegua dritta per la direzione impostata.

Integrale nei droni

Quando I diventa troppo alto, il drone sembrerà molto rigido e non agile. Un valore eccessivo di I potrebbe causare anche oscillazioni a bassa frequenza. Un altro problema che il termine I può risolvere sono i così detti “throttle dips“, ovvero dopo una forte accelerazione verso l'alto, nel momento in cui si azzera il gas, il muso del quad tende verso il basso.

Nessuna coppia di ESC, motori o eliche sono veramente identiche, e quindi esse forniranno diversi livelli di spinta. Quando fai un punch out, ovvero dai. molto gas per poi abbssarlo velocemente, gli RPM dei diversi motori potrebbero essere leggermente out-of-sync causando un throttle dip.

Termine D (la correzione ai tuoi comandi)

Il termine D serve a smorzare e ridurre la correzione eccessiva causati da termine P. Riduce la sensazione di avere un quad che rimbalza troppo, aumentando D puoi ammorbidire e contrastare le oscillazioni dovute ad un valore troppo alto di P, inoltre è utile per minimizzare le oscillazioni causate dal propwash.

Quando D è troppo basso, il tuo quad avrà dei bounce-back alla fine di un flip o di un roll o di una virata particolarmente brusca, ovvero nel compiere la manovra, noterai un effetto "rimbalzo" in direzione opposta alla tua manovra. Questo perchè la P corregge troppo l'errore sul set-point andando oltre il valore corretto. Inoltre potrai notare un peggioramento nelle oscillazioni causate dal propwash durante i cambi bruschi di direzione.

Aumentare D può migliorare questi problemi, tuttavia, un valore eccessivamente alto di D, può introdurre vibrazioni nel drone perchè amplifica il rumore all'interno del sistema, e questo porta al surriscaldamento dei motori.

Un altro effetto collaterale di un D troppo alto è una diminuzione nella risposta del quad.

Prima di tunare PID…

  • Fai un backup dei tuoi PID
  • Vola sempre in Acro Mode quando tuni il quad
  • Assicurati che il baricentro del quad sia esattamente al centro. Nel caso non lo fosse puoi spostare leggermente la batteria avanti o indietro per cambiare la posizione del baricentro.

Ricorda, il PID tuning è completamente soggettivo!

Non esiste un modo giusto o sbagliato di tunare i PID, l'importante è che funzioni per te. Puoi dare lo stesso drone a due piloti diversi e probabilmente imposteranno dei PID diversi che si adattano al loro stile di volo.

Come regolare i PID

PID in Betaflight

Prima di tutto, imposto sempre i miei rates. Quindi mi concentro sui PID.

REGOLA UNIVERSALE: Quando correggi i valori dei PID, aumenta o diminuisci sempre di 1 punto alla volta e riprova a volare. Ad esempio se la P ti sembra bassa, dal valore 49 (numero di esempio) passa al valore 50 o 48, salva la configurazione e vola e ripeti l'operazione finchè non sei soddisfatto. Questo su tutti i valori e assi.

Tipicamente, provo sempre una nuova build con i PID di default prima di aggiustare i valori. Infatti, con Firmware come Betaflight, Emuflight e KISS, i valori di stock funzionano abbastanza bene per la maggior parte dei quad. Fai attenzione a qualsiasi comportamento indesiderato durante il volo, e quindi aggiusta i PID di conseguenza.

Un altro metodo molto utilizzato è partire con valori molto bassi. Ad esempio, abbassa tutti i valori ad almeno la metà, e comincia ad alzarli finchè non ottieni un risultato indesiderato.

Ogni volta che cambi un valore, dovresti chiederti se il quad comincia a volare meglio o peggio. Devi capire e trovare il punto in cui il quad ha le migliori caratteristiche di volo e oltre il quale le performance iniziano a peggiorare.

Aggiusta un asse alla volta: parti dal roll, quindi il pitch, e infine passa allo yaw. Aggiusto un valore alla volta su ogni asse.  Parti  con P, quindi D e alla fine I. A volte modficando un valore, potresti dover correggere nuovamente un altro valore, poiché i termini sono correlati.  Questo fino a che non si raggiunge il perfetto equilibrio tra i PID su ogni asse di Pitch, Roll e Yaw.

P sul Roll

Fai un po' di cruising ad una buona altitudine. Prova a virare utilizzando il Roll, con un buon valore di P, il controllo dovrebbe essere preciso il quad dovrebbe seguire i tuoi comandi in maniera istantanea e reattiva.

Prova a fare delle curve strette (usando sia il gas che il roll), se P è troppo basso il quad tenderà ad abbassarsi verso un lato, oppure lo sentirai "mollo" nel rispondere ai comandi. Quando P è troppo alto, noterai oscillazioni molto veloci. Se P è impostato correttamente, dovresti non vedere oscillazioni durante le curve strette.

P sul Pitch

Fai uno split-S, e mentre inizi ad dare gas per uscire dalla manovra, fai attenzione al movimento sull'asse del pitch. Se Il quad punta più in alto di quanto dovrebbe, allora probabilmente P è troppo basso. Se invece noti delle oscillazioni veloci, allora dovresti abbassare P.

Il tuning dovrebbe continuare finché non arrivi al punto in cui senti il quad reagire bene ai comandi e in modo agile, e controlla sempre che non ci siano troppe vibrazioni. Inoltre sarebbe utile sentire i motori, perché alcune vibrazioni possono non essere visibili attraverso la camera FPV.

TPA

TPA è un parametro che riduce l'efficacia del termine P mentre si accelera.

Se il quad vola bene quando il throttle è basso, ma si verificano delle oscillazioni solo quando apri il gas, aumentare il TPA potrebbe aiutarti.

Prova a fare un punch out e se noti delle oscillazioni, alza il valore TPA. Un buon valore per il TPA ti farà avere un punch out relativamente liscio.

D su Roll e Pitch

Quando fai delle manovre aggressive come ad esempio flip e roll, se il tuo quad tende a rimbalzare in senso opposto, allora dovresti aumentare la D sull'asse in questione.

Aumentare il termine D può anche aiutare a ridurre il propwash che si verifica durante i cambi di direzione bruschi.

Fai attenzione, un valore troppo alto per il termine D può introdurre delle oscillazioni, e inoltre può far surriscaldare i motori. Un altro segnale di un valore troppo elevato sul termine D sono oscillazioni veloci al termine di flip e roll.

I sul Roll

Dai gas e prendi quota, poi lascia andare il quad in caduta libera e inclina il quad a sinistra e destra e controlla se viene mantenuto  l'angolo di rotazione. Allo stesso modo poi procedi in avanti e inclina il quadricottero a destra e in avanti, controlla che in assenza di ulteriori tuoi comandi, l'angolo di rotazione venga mantenuto costante, . Se il quad non riesce a mantenere l'angolo, allora può significare che il termine I è basso.

Se il tuo drone viene portato via dal vento o non mantiene la rotazione in assenza di comandi, probabilmente devi aumentare i valori del termine I.

I sul Pitch

Quando voli in avanti, l'angolo a cui ai inclinato il quad dovrebbe rimanere lo stesso. Allo stesso modo che sul roll, dai gas a manetta, prendi quota, poi togli completametne gas e inclina il quad in avanti o indietro. Mentre sei in caduta libera controlla che non ci siano oscillazioni o cambi di rotazione. Se così non è dovresti provare ad aumentare la I sul pitch.

Anti Gravity Gain

Anti Gravity aumenta temporanemente il termine I quando avvengono rapidi cambiamenti nel throttle. Aumentando il gain viene migliorata la stabilità e la capacità di mantenere l'altituidine quando il thorttle viene aumentato rapidamente.

Vola dritto e prova a fare dei punch out rapidi, controlla se sull'asse del pitch l'angolo rimane lo stesso. Se il muso del quad tende ad abbassarsi, allora aumenta l'Anti Gravity.

P sullo Yaw

I PID relativi allo Yaw vanno tunati in modo separati. Tipicamente, i valori di default funzionano bene su tutti i modelli.

Gira velocemente sull'asse dello yaw e controlla come si ferma. Se noti delle oscillazioni veloci allora dovresti abbassare P, altrimenti se il quad tende ad imbarcarsi verso un lato, dovresti aumentare P.

Un valore eccessivo di P sullo yaw, a differenza degli altri assi (roll e pitch) non generarà troppe vibrazioni, perchè sullo yaw il quad esegue movimenti più deboli (mancanza di autorità sullo yaw). Un altro segnale che il termine P è troppo alto sul questo asse, è che durante movimenti veloci sullo yaw, il quad sale in altitudine.

Se il valore di P sullo yaw è corretto, le rotazioni dovrebbero essere pulite e rapide.

I sullo Yaw

Come ho già detto, il termine I cerca di prevenire drift, ma un valore troppo alto per la I dello yaw può portare a instabilità e ridurre la velocità di risposta. Nella maggior parte dei casi, questo valore di default va bene.

Non tutto dipende dal PID

La costruzione della tua build influenza molto le performance di volo del tuo quad. Ecco un paio di cose che dovresti controllare prima di procedere.

Vibrazioni

Non tutte le vibrazioni sono causate da valori alti di P o D. Dovresti eliminare tutte le fonti di vibrazione prima procedere col tuning. I motori e le eliche dovrebbero essere bilanciate, il flight controller dovrebbe essere montato con dei soft mount, in modo da rimuovere possibili vibrazioni e non interferire con le letture dati del giroscopio. pid/

Baricentro

Idelmente, il baricentro dovrebbe trovarsi esattamente nel centro del tuo drone. Quando il questa situazione non si verifica, alcuni motori dovranno lavorare più duramente per controbilanciare il velivolo. Questo causerà il surriscaldamento dei motori, limiterà la velocità massima e influenzerà la stabilità dell'intero quad.

Per esempio, se la LiPo è montata troppo indietro, il baricentro si sposterà verso il retro del quad. In questa situazione i motori posteriori dovranno spingere di più rispetto a quelli anteriori.

“Quali sono i tuoi PID?” – Sbagliato

E' inutile chiedere i PID di un altro pilota e provarli sul tuo quad. In un certo senso, ogni quad è unico: motori, eliche, ESC, Flight Controller, baricentro, il frame stesso. Quindi a meno di un quad RTF, non ha senso utilizzare gli stessi PID di altri piloti.

Fonte: oscarliang.com


Questo articolo è stato scritto in collaborazione con Mr. Oizo

iamlucafpv

Mi chiamo Luca e sono un appassionato di droni FPV. Questa passione mi ha portato anche a creare la prima community italiana di FPV chiamata NorthFPV, con lo scopo di aiutare chi vuole entrare in questo mondo.

Condividi l'articolo

Cos'è NorthFPV?

North FPV è una community FPV Italiana, creata per insegnare e condividere le emozioni del volo in FPV.
Cerchiamo di rispondere a ogni domanda che riceviamo. Aiutiamo quasi tutti senza richiedere alcun pagamento.

NorthFPV © 2020 · Link Affiliati · Supportaci

Seguiteci su: