[Multicotteri] Elettronica : IMU, MCU, Sensori ed algoritmi di controllo

che valori PID hai usato? come li hai trovati?

ratto93:
Ho appena fatto qualche prova... il risultato è che se acellero piano piano inizia a ballare su un lato allota con le altre leve stabilizzo il tutto continuo ad acellerare e parte di colpo rovesciandosi su di un lato.. risultato ? ho fatto fuori 4 eliche .... ho come l'impressione di doverne ordinare un camion prima di riuscire ad usarlo per bene...

Come ti capisco...
Allora... Verifica esattamente l'orientamento di motori ed eliche per prima cosa. Poi controlla di aver quantomeno fissato bene il giroscopio, a me dava esattamente lo stesso effetto per le prime prove che l'avevo lasciato un po' a caso.
Per i PID, io, non li ho ancora valutati... pensavo fossero raffinatezze per il dopo volo...
F

Federico:

ratto93:
Ho appena fatto qualche prova... il risultato è che se acellero piano piano inizia a ballare su un lato allota con le altre leve stabilizzo il tutto continuo ad acellerare e parte di colpo rovesciandosi su di un lato.. risultato ? ho fatto fuori 4 eliche .... ho come l'impressione di doverne ordinare un camion prima di riuscire ad usarlo per bene...

Per i PID, io, non li ho ancora valutati... pensavo fossero raffinatezze per il dopo volo...

Motori ed Eliche giurano e sono fissati correttamente... il Gyro è perfettamente ancorato così come tutto il resto dell'elettronica...

Per il PID come federico non c'ho messo mano...

ragazzi il PID e' la base del volo.

in pratica una volta che la IMU trova lo sfaso rispetto all'orientamento che desiderate, come fa a sapere quanto impulso PPM deve dare al motore?

In teoria qu= dovrebbe scendere in campo la fisica con forza torcente, momento angolare, aggiungere iterazioni con l'esterno come vento, densità dell'aria, etc..
Sia matematicamente sia dal punto di vista del micro e' un lavoro immane, difficile e delicato.

e qui entra in gioco il PID. Legate il vostro quad per un braccio al suolo, in modo che possa basculare, per esempio a destra e sinistra. tenetelo dritto, accendete, quando ha finito di fare le varie configurazioni di giroscopi e accelerometri, allora potete lasciarlo penzolare. Mettete P, I e D a 0. aumentate la P finche on inizia a sollevarsi, aumentate finché non continua a fare destra sinistra, il valore in mezzo e il valore P. Il P dice che se il quad e' inclinato di X rispetto all'angolo desiderato, il motore deve spingere di X*P
La I dice che piu tempo sta su un lato, piu forte deve essere la spinta. In pratica e' la somma delle X * I, di solito si da un limite a questa somma se no puo dare problemi di overflow.
Infine la D serve per far rallentare dolcemente il quad quando si avvicina all'inclinazione desiderata, in pratica e' la X attuale meno la X precedente *D

In pratica il PID cerca di dare risultati il piu possibile simili alla fisica senza il bisogno di troppe seghe mentali, ed e' largamente utilizzato in molti processi industriali e non.

Se voi non trovate i giusti valori PID per il VOSTRO quad, non volerete MAI!

Grazie della piccola guida :wink:
Domani provo se riesco.. se riesco faccio un video dell'operazione di taratura che potrebbe venire utile...

lesto:
ragazzi il PID e' la base del volo.
e qui entra in gioco il PID. Legate il vostro quad per un braccio al suolo, in modo che possa basculare, per esempio a destra e sinistra. tenetelo dritto, accendete, quando ha finito di fare le varie configurazioni di giroscopi e accelerometri, allora potete lasciarlo penzolare. Mettete P, I e D a 0. aumentate la P finche on

Scusa lesto ma da questa descrizione non si capisce una mazza... Lo lego per un braccio al suolo? Puo' girare comunque come vuole schiantantosi di sicuro.. Lo lascio penzolare? Ma non era legato al suolo? E poi cosa significa che se alzo P si solleva e va a destra e sinistra!?

Mi pare una cosa importante ma non la capisco da questa tua descrizione. Io avevo letto questa:
http://www.baronerosso.it/forum/modelli-multirotori/207249-pid-tuning-c-come-settare-i-parametri-del-vostro-multiwii.html

Forse questo PID puo' influire sul post che ho scritto qui?

Con due topic non si capisce una mazza...

Federico:
Mi pare una cosa importante ma non la capisco da questa tua descrizione. Io avevo letto questa:
http://www.baronerosso.it/forum/modelli-multirotori/207249-pid-tuning-c-come-settare-i-parametri-del-vostro-multiwii.html

Segui quella guida.

Federico:
Scusa lesto ma da questa descrizione non si capisce una mazza... Lo lego per un braccio al suolo? Puo girare comunque come vuole schiantantosi di sicuro.. Lo lascio penzolare? Ma non era legato al suolo? E poi cosa significa che se alzo P si solleva e va a destra e sinistra!?

un braccio va da motore a motore. quindi in pratica leghi un motore a terra, e pure il suo opposto, ma ci metti sotto dei rialzi cosi che il quad, anche se ancorato, può roteare o sul roll o sul pitch

Federico:
Mi pare una cosa importante ma non la capisco da questa tua descrizione. Io avevo letto questa:
http://www.baronerosso.it/forum/modelli-multirotori/207249-pid-tuning-c-come-settare-i-parametri-del-vostro-multiwii.html

quella guida e' migliore :slight_smile:

Federico:
Forse questo PID puo' influire sul post che ho scritto qui?
[Multicotteri]Elettronica di potenza e telai : Batterie - ESC -Motori e cablaggi - #30 by federico0 - Megatopic - Arduino Forum
Con due topic non si capisce una mazza...

no, secondo me e' normale che trasli ma non ho mai volato...

Log di questa sera...

Volo acro: ancora non sta fermo da solo, trimmarlo in questo modo mi pare un miraggio e inizio a chiedermi se sia davvero possibile. Nessun lavoro sui pid. Pilotarlo non e' facile, leggete sotto...

Volo stabile: un disastro. Appena accendo l'accelerometro inizia a traballare vistosamente! Inizio a domandarmi se non sia il caso di passare al 345 che e' direttamente previsto dal codice del multiwii. Per quale motivo puo' traballare cosi!? Gia' al banco notavo che accendendo l'accelerometro i motori danno un po' di matto e stasera ne ho avuto conferma.

Miglioro nel volo acro, adesso 20 secondi sta su :slight_smile: MA mi e' scappato via il quadri, si e' ribaltato su una zona del parco dove ci sono le panchine e una specie di rete che tiene l'erba. Risultato?
3 eliche rotte
Chassis piegato
1 motore piegato
Arduino si e' staccato dallo shield e l'ho dovuto cercare in giro...

Lo chassis l'ho rimesso in sesto, le eliche le aggiungo alla collezione (ma non posso andare avanti a 1 o piu' eliche al giorno) l'elettronica devo trovare il modo di proteggerla per forza a questo punto e non ultimo mi chiedo se il motore piegato posso ripararlo... Forse e' piegato solo l'albero e quindi mi fa vedere le due parti del motore disassate?

Federico:
Volo acro: ancora non sta fermo da solo, trimmarlo in questo modo mi pare un miraggio e inizio a chiedermi se sia davvero possibile. Nessun lavoro sui pid. Pilotarlo non e' facile, leggete sotto...

Fermo da solo non ci starà mai in modo acro, per i mezzi ad ala rotante è normale "scivolare" in una qualche direzione, per tenerlo fermo è necessario un lavoro continuo sullo stick controllo direzioni anticipando il movimento, una cosa che si impara a fare col tempo e con l'esercizio.
Per come vengono utilizzati i sensori dal MultiWii anche in modo stabile è impossibile che il quadri stia fermo da solo pure se utilizzi la full imu, anzi in caso di forze esterne che tendono a spostarlo, p.e. il vento, il quadri scivolerà via nella direzione della forza come una saponetta sul bagnato.
Ovviamente è possibile avere un modo volo specifico per l'hovering che tieni il quadri perfettamente fermo e a quota costante, serve un sensore aggiuntivo per misurare la distanza dal suolo, ma multiwii non lo prevede.

Volo stabile: un disastro. Appena accendo l'accelerometro inizia a traballare vistosamente! Inizio a domandarmi se non sia il caso di passare al 345 che e' direttamente previsto dal codice del multiwii.

Problemi di dinamica e setup sull'accelerometro.

Forse e' piegato solo l'albero e quindi mi fa vedere le due parti del motore disassate?

Una delle cose che avevo consigliato fin da subito quando si è iniziato a parlare dei quadri era di acquistare qualche albero di ricambio, costano pochi Euro, per i motori, in caso di impatto si piegano pure loro.

astrobeed:

Volo stabile: un disastro. Appena accendo l'accelerometro inizia a traballare vistosamente! Inizio a domandarmi se non sia il caso di passare al 345 che e' direttamente previsto dal codice del multiwii.

Problemi di dinamica e setup sull'accelerometro.

Riesci a spiegarmi meglio cosa significa, e cosa devo verificare? Come ne vengo a capo? :slight_smile:

Forse e' piegato solo l'albero e quindi mi fa vedere le due parti del motore disassate?

Una delle cose che avevo consigliato fin da subito quando si è iniziato a parlare dei quadri era di acquistare qualche albero di ricambio, costano pochi Euro, per i motori, in caso di impatto si piegano pure loro.

E infatti, seguendo il tuo consiglio, ho gli alberi di ricambio! Mi ha fatto un po' impressione vederlo in quello stato ma dopo averlo smontato ho visto che si trattava per l'appunto dell'albero.

Certo che non e' proprio semplice da gestire questo mezzo (e se lo spacco ogni volta che lo uso, e' pure un debito)... Vorrei provare a verificare sti pid qui...

Ho appena provato l'app MultiWii per Android, ho collegato ad Arduino un modulo Bluetooth RN41, funziona bene solo un piccolo problemino con un campo che si trova per metà fuori schermo, ho segnalato il problema all'autore, sicuramente molto pratico per fare setup sul campo senza portarsi appresso il notebook.

astrobeed:
Ho appena provato l'app MultiWii per Android, ho collegato ad Arduino un modulo Bluetooth RN41, funziona bene solo un piccolo problemino con un campo che si trova per metà fuori schermo, ho segnalato il problema all'autore, sicuramente molto pratico per fare setup sul campo senza portarsi appresso il notebook.

Bello.. mi piace questa cosa...

E ti pareva che la colpa non era mia ? :stuck_out_tongue_closed_eyes:
Allora... la configurazione è ad X
sulle braccia ho i gommani da piscina come carrello nelle punte come quello di fabio....
bene...
Ho preso due mattoni li ho messi in fila uno di fronte all'altro a distanza di una 40ina di cm....
poi ho preso il multi coso e ce l'fo piazzato sopra lasciando sospesi i motori (Frontale sinistro e posteriore destro)
L'ho legato ai mattoni, in questo mdo se lo muovo dalla parte dei motori "liberi" si muove solo il PITCH del giro infatti uso uno solo dei 3 Assi...
a questo punto l' acellarato un poco quel ttanto che basta a farlo stare in hovering (Imattoni sopra i mattoni li puoi ancge scollegare rubano corrente per nulla..)
a circa 1/4 di aclleratore con i valori di default il multi tende da una parte io, io non ho fatto altro che modificare i cvalori di PITCH fino a far si che stia quasi in bolla, poi con il comando che te hai a destra (perdonatemi ma devo ancora capire i nomi delle leve :)) se lo muovi a destra il multi si alza su un lato se la muovi a sinistra si alza dall'altro... io ho tentato anche se sicuramente cè da risprendere la cosa di far si che se acellero uno dei due motori e poi di colpo mollo lo stick il quad torni alla posizione iniziale (Di bolla) nello stesso tempo sia se acellero uno o se acellero l'altro...

Ho capito... lavori con l'accelerometro attivo?
La cosa che non mi e' chiara e' come fai con la configurazione a X a usare solo due motori opposti...
Cioe', se vuoi piegarlo in avanti, lui accelera i due motori dietro, mentre i due diametralmente opposti agiscono se usati assieme sostanzialmente sul yaw, e non sul pitch

Serve un video... Ehm il mio è un metodo completamente empirico potrebbe anche essere errato... ripeto non ho l'acellerometro...

questo video è un po vecchio, non si vede che da pc setto i parametri PID: test stabilità | c'è ancora molto da lavorare, ma i primi frutti saltano fuori :-) | By Mauro | Facebook

poi è saltato fuori che i giroscopi non funzionavano... ma va bè

Premetto che non posso vedere il video per il momento ma ho visto l'immagine in cui il multicoso è il bilancia quindi è lo stesso metodo che ho addottato io :)domani comunque se iesco ne metto uno vuoi mai che ne salti fuori qualcosa di buono ? :wink:

sisi, il metodo è lo stesso, 2 lettori cd come rialzo e 2 pesi da 2kg l'uno che tengono il quadricoso dal "carrello"

notare l'elettronica su breadboard... :roll_eyes:

Ciao a tutti,
vi invio un link ad un video carino , visto che si parla di algoritmi , nel video vedete in azione Arducopter32 che esegue funzionalita' di loiter e return to home. Nel progetto Multiwii queste funzioni non sono ancora disponibili , in arducopter invece le abbiamo messe a punto da tempo e stiamo lavorando al debug.
Ecco il link ... ovviamente durante le fasi di test puo' accadere qualche imprevisto :slight_smile:

http://www.virtualrobotix.com/video/multipilot32-vrimu-arducopter32-firmware-stable-rtl-and-loiter

Buon volo a tutti
Roberto