
|
![]() |
| Strumenti discussione ![]() | Visualizzazione ![]() |
|
![]() | #1 (permalink) Top |
User | ![]()
PID Tuning, ovvero come ottimizzare i parametri P - I - D del vostro Multiwii. Un buon riferimento (in inglese) per fare pid tuning è la guida di Aeroquad, nella quale Ted Carancho spiega come fare un primo setup al banco: AeroQuad Forums - PID Tuning Your AeroQuad Alcune premesse: - Fare il settaggio al banco, con un multirotore vicino al porprio viso/mani ecc... può essere pericoloso. Cercate di non farvi male e tagliarvi o cavarvi un occhio mentre fate queste prove. Operate sempre in sicurezza, tenendo il mezzo saldamente in modo che non possa scappare, specialmente alla prima accensione, per verificare che i motori girino tutti nella direzione prevista e che le eliche siano state montate correttamente. Se il quad ha improvvise reazioni e tenta di inclinarsi, spegnete subito il mezzo e controllate orientamento dei sensori/verso di rotazione dei motori e tipo di elica. - Per un mezzo ben montato (senza problemi di vibrazioni o di elettronica) e dimensioni standard (bracci da 18/25cm) i parametri di default del Multiwii sono molto conservativi. Si possono quindi alzare moltissimo per avere un mezzo più stabile in hovering e nei movimenti lenti, e successivamente lavorare sul rate di diminuzione del pid per rendere il mezzo più veloce e reattivo per manovre veloci e movimenti rapidi. Il parametro P (Proporzionale) è il GAIN, ovvero la potenza con cui i giroscopi interverranno. Più è alto e più i giroscopi influiranno sui motori cercando di correggere l'assetto del quad. E' importante che sia il più alto possibile per avere un quad molto stabile, ma non deve essere eccessivo, altrimenti il mezzo sovracompenserà le variazioni di assetto e non sarà in grado di recuperare le oscillazioni, anzi ne causerà lui stesso. Si deve lavorare prima di tutto su questo parametro (cercando di alzarlo a step di 0.5 - 1 unità) per trovare un valore ottimale intorno al quale fare poi piccoli aggiustamenti. Al banco, tenendo saldamente il quad da sotto in modo che non possa scappare o farvi male, ma lasciandogli la possibilità di muoversi senza forzarlo eccessivamente, portate i motori quasi all'hovering (deve sostenere la maggior parte del suo peso autonomamente) e cercate di inclinare il mezzo con le mani. Questo deve risultare "duro" da muovere, contrastando il movimento che gli si vuole imporre. Il P va alzato finchè il mezzo è sufficientemente "duro" da spostare ma non vibra o innesca oscillazioni quando viene forzato. Se inizia ad oscillare, dovete ridurre il P finchè il fenomeno sparisce. Scuotendolo vistosamente non deve mostrare la tendenza ad amplificare l'oscillazione. Il parametro D (Derivativo) ha influenza sulla velocità con il quale i giroscopi interverranno e quindi nei transitori, sui passaggi dal volato all'hovering, sui cambiamenti di assetto veloci e continuativi. Per comodità è ora un valore positivo sulla gui, mentre in realtà è un valore negativo nel filtro. Va generalmente aumentato proporzionalmente al P, in passi di 2-5 unità per cercare di rendere il quad più sincero nel volo e meno soggetto ad oscillazioni. Per ottimizzarlo al banco, quando avete finito di settare P, provate a scuotere il quad, colpendolo leggermente da sotto su un braccio. Questo deve ritornare in posizione smorzando il colpo in fretta, senza oscillare. Se rimbalza un po' od oscilla, alzate il D finchè l'oscillazione non viene smorzata efficacemente. (Provate anche valori estremi di D, troppo alti e troppo bassi, per capire come lavora, e poi cercate il valore corretto) Il parametro I (Integrale) ha influenza sulla durata e sulla persistenza con cui il quad compensa le variazioni di assetto, cercando di mantenere l'angolo impostato dagli stick. Va modificato con cautela e in piccoli passi di 0,05 unità, durante le prove al banco, cercando di evitare che induca oscillazioni ad alta frequenza durante le piccole correzioni col mezzo in hovering. Più e alto e più a lungo la correzione in caso di disturbo esterno (tipo folata di vento) viene mantenuta. Questo parametro determina quanto il mezzo tenderà a mantenere l'angolo di inclinazione voluto, più è alto e più il mezzo tenderà a rimanere nella posizione comandata dal pilota. Con le nuove versioni del codice è possibile alzarlo molto di più rispetto a prima, avendo un mezzo molto più insensibile ai disturbi esterni e che mantiene meglio l'inclinazione voluta. Il codice multiwii non ne tiene conto nei movimenti veloci, per evitare problemi.
__________________ Johnny (GTE - Torino) Out of sight, NOT out of mind. ![]() Ultima modifica di jhoexp : 28 marzo 11 alle ore 01:31 |
![]() | ![]() |
![]() | #2 (permalink) Top |
Sospeso Data registr.: 20-09-2005
Messaggi: 8.000
|
Grazie Jhoexp, metto in evidenza il 3d e nel caso volessi fare aggiunte o modifiche dammene notizia cosi' almeno la prima pagina rimarra' sempre aggiornata. Se riusciamo a non parlare delle ricette della zia maria tanto meglio. Questo settaggio nasce principalmente per l'uso sulla Multiwii, ma si adatta in parte anche ad altri sistemi. Per divagazioni o domande specifiche sul progetto MUltiWii vi pregherei di accodarvi al 3d principale: http://www.baronerosso.it/forum/mode...nsori-wii.html Grazie ancora G. ![]() |
![]() | ![]() |
![]() | #3 (permalink) Top |
User Data registr.: 05-10-2008 Residenza: Modena-Lecce
Messaggi: 2.209
|
E' giusta come procedura, prima di settare il P portare il D a 0? in questa maniera si potrebbe osservare l effetto del P senza offuscarlo con il parametro D(che ad esempio su Multiwii di default è gia 15), le oscillazioni si osserverebbero subito e il passo tra P molto alto e P troppo basso sarebbe piu marcato.
__________________ FpvProjekt channels: http://www.youtube.com/user/Arnald26 http://www.vimeo.com/album/72997 |
![]() | ![]() |
![]() | #4 (permalink) Top | |
User Data registr.: 15-01-2009 Residenza: Cuneo
Messaggi: 2.248
| Citazione:
Il parametro I è semplice da capire, in pratica è un trim automatico, somma lentamente l'errore attuale e genera un offset cumulativo. Esattamente cosa faremo noi col trim e I a 0. Attenzione anche che un valore basso di I non significa che interviene poco, vuol dire che il trim ci mette tanto ad alzarsi ma anche ad abbassarsi, è lento a cambiare. Un valore troppo alto di I invece innesca tipicamente delle oscillazioni "circolari" abbastanza rapide ma di piccola intensità. Come se muovessimo il trim ad ogni manovra. Per chi volesse approfondire basta dare un occhiata alle regole di ziegler nichols: Controllori PID - Wikipedia.
__________________ Informatico Professionista, Amante dei 4x4 e delle auto ibride, costruttore di quadricotteri. Ultima modifica di ciskje : 05 aprile 11 alle ore 20:13 | |
![]() | ![]() |
![]() | #5 (permalink) Top |
User | Settaggio riuscito
Seguendo i consigli di Johexp (soprattutto quelli dati a voce) è stato possibile alzare sensibilmente i valori con evidenti vantaggi ![]() Prima il tricottero (si tratta di un tricottero in legno, con bracci di obece rinforzato con nastro fibrato ed attacchi, sia centrale che dei motori, in profilato di alluminio, motori Towerpro). Precedentemente volava con P intorno a 2,6, dopo i consigli di Joh sono arrivato senza problemi a P=6 (6,1) e D=25. In questo modo è talmente stabile che è possibile tenere il tricottero, da 90cm di ingombro a volare sicuro in salotto, quasi come se fosse appeso al lampadario. Anche sugli altri due, i quad, a x e + PID aumentati, con P intorno a 6 e stanno in aria molto, molto + stabilmente, pronti per le riprese aeree o l'FPV. E tutto senza intervenire sulle strutture dei frames Un consiglio (grazie JOHEXP) che è meglio iniziare ad aumentare il valore D prima di aumentare il valore P, cioè: aumentare il D di 5; verificare la stabilità (in mano... si dice a banco?); se tutto ok allora aumentare il P di 0,5 verificare la stabilità e così via di nuovo col D fin quando tutto va bene; se cominciano ad esserci dei comportamenti ballerini bisogna tornare al valore di massima stabilità. il valore di I per ora non l'ho toccato, vedremo in seguito se servirà. Adesso invece il problema è che non riesco ad utilizzare versioni Multiwii sopra la 1.5 a causa di problemi di comunicazione tra USB con il PC. Utilizzo delle schede autocostruite, assemblate in casa con ATMEGA 328P, che volano benissimo e comunicano benissimo con il pc, ma solo fino alla la versione 1.5. Sopra, se uso la GUI non è possibile impostare i valori. In pratica prende valori stranissimi sia di PID che tutte le altre regolazioni, ed è impossibile quindi dare un settaggio alla Multiwii; inoltre è evidente la lentezza con cui comunica con il pc. Perchè? ![]() Ciao ![]() |
![]() | ![]() |
![]() | #6 (permalink) Top | |||||
User | Citazione:
![]() Purtroppo non è sempre possibile rendere bene per scritto quella che è una operazione pratica un po' particolare e che comunque comporta qualche rischio, specie se l'orientamento dei sensori o i versi di rotazione eliche/motore non sono corretti. Magari alla prossima occasione facciamo vedere dal vivo come si fa a testare il mezzo "live" e cosa cambia agendo sui vari parametri. Citazione:
![]() ![]() Citazione:
Normalmente però i valori di default per mezzi più piccoli del tuo e costruiti in alluminio sono abbastanza conservativi, quindi è bene procedere per gradi aumentando prima P e solo successivamente D testando il comportamento come mi hai visto fare (colpendo il braccio e osservando come l'oscillazione veniva smorzata). Citazione:
Citazione:
__________________ Johnny (GTE - Torino) Out of sight, NOT out of mind. ![]() | |||||
![]() | ![]() |
![]() | #7 (permalink) Top | |
User Data registr.: 26-01-2007
Messaggi: 93
| Pid Citazione:
| |
![]() | ![]() |
![]() | #8 (permalink) Top | |
Sospeso Data registr.: 20-09-2005
Messaggi: 8.000
| Citazione:
RC Groups - View Single Post - Improved firmware for the KK multicopter, also the HK KK. | |
![]() | ![]() |
![]() |
Bookmarks |
| |