Pages: 1 ... 32 33 [34] 35 36 ... 46   Go Down
Author Topic: [Multicotteri]Elettronica di potenza e telai : Batterie - ESC -Motori e cablaggi  (Read 49885 times)
0 Members and 1 Guest are viewing this topic.
Milano, Italy
Offline Offline
Faraday Member
**
Karma: 10
Posts: 3085
Sideralis Arduino!
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Mi pareva di capire che con adeguato pid un po' contrasti?
Non voglio una saponetta :-) Non li! :-p
Posso farci qualcosa?
Logged

Federico - Sideralis
Arduino &C: http://www.sideralis.org
Foto: http://blackman.amicofigo.com

Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 120
Posts: 9186
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Mi pareva di capire che con adeguato pid un po' contrasti?

E' come lavora MultiWii a causare questa situazione, dato che non usa la IMU per rilevare i movimenti laterali non può opporsi a questi.
Logged

0
Offline Offline
Shannon Member
****
Karma: 117
Posts: 10105
:(){:|:&};: TOX id: fcb8e918bef08581e23f6ddf9d4dba77697c25b217bf372736ed959a95fde36df5b8c5b90fbb
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

come rilevi lo spostamento laterale, integrando i dati?
l'unico riferimento assoluto che mi viene in mente è il GPS
Logged

my Arduino code: https://github.com/lestofante/arduinoSketch
sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Milano, Italy
Offline Offline
Faraday Member
**
Karma: 10
Posts: 3085
Sideralis Arduino!
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Se domani sera (che oggi non posso) riesco a capire come mai non riesco a trimmare  la modalità stabile sarebbe gia' interessante. Ad ogni modo riesco a percepire che la modalità acro è leggermente piu' reattiva e mi consente di fare praticamente qualsiasi cavolata mentre la stabile -penso- mi eviti di piegarmi tanto da stallare. Visto che sono farcito di elettroniche sono contento che finalmente anche questa modalità mi funzioni...
Logged

Federico - Sideralis
Arduino &C: http://www.sideralis.org
Foto: http://blackman.amicofigo.com

Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 120
Posts: 9186
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

come rilevi lo spostamento laterale, integrando i dati?

Non devi integrare nulla, la IMU ti fornisce informazioni sia rotatorie che prismatiche, MultiWii usa solo quelle rotatorie e ignora quelle prismatiche, per tenere fermo il velivolo devi azzerare anche i movimenti prismatici oltre a quelli rotatori.
Logged

Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 120
Posts: 9186
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

mentre la stabile -penso- mi eviti di piegarmi tanto da stallare. Visto che sono farcito di elettroniche sono contento che finalmente anche questa modalità mi funzioni...

La stabile ti evita di ribaltarti, in pratica non permette al quadri di inclinarsi oltre un certo numero di gradi anche se dai comando massimo, se non mi ricordo male c'è pure un parametro apposito per decidere quanti da qualche parte dentro M.Wii .
Logged

Milano, Italy
Offline Offline
Faraday Member
**
Karma: 10
Posts: 3085
Sideralis Arduino!
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Che io sono un maestro di manovre azzardate, preso dai fumi dei motori..
Logged

Federico - Sideralis
Arduino &C: http://www.sideralis.org
Foto: http://blackman.amicofigo.com

0
Offline Offline
Shannon Member
****
Karma: 117
Posts: 10105
:(){:|:&};: TOX id: fcb8e918bef08581e23f6ddf9d4dba77697c25b217bf372736ed959a95fde36df5b8c5b90fbb
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

come rilevi lo spostamento laterale, integrando i dati?

Non devi integrare nulla, la IMU ti fornisce informazioni sia rotatorie che prismatiche, MultiWii usa solo quelle rotatorie e ignora quelle prismatiche, per tenere fermo il velivolo devi azzerare anche i movimenti prismatici oltre a quelli rotatori.


non ti seguo, i dati primastici li puoi ricavare relativamente dalle accelerazioni rilevate, ma non hai un riferimento assoluto abbastanza preciso (diciamo 5CM/s max di errore, e già si nota) sulla tua velocità laterale/orizzontale rispetto al suolo. In pratica NON puoi sapere se in un dato momento sei in stato di quiete o in moto rettilineo uniforme, nè in quale direzione è il tuo moto, con assoluta certezza.
Puoi a partire dalla IMU per fare una stima, ma la probabilità di sbagliare cresce col passare del tempo, salvo uso del GPS o altro sistema di triangolazione. è corretto o mi sfugge qualcosa?
Logged

my Arduino code: https://github.com/lestofante/arduinoSketch
sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 120
Posts: 9186
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Puoi a partire dalla IMU per fare una stima, ma la probabilità di sbagliare cresce col passare del tempo, salvo uso del GPS o altro sistema di triangolazione. è corretto o mi sfugge qualcosa?

Ti sfugge che l'accelerometro è un sensore assoluto sia di inclinazione che di accelerazione, te la faccio semplice se il giroscopio dice che non stai ruotando e l'accelerometro segna una accelerazione maggiore di quella attesa rispetto al volo livellato, ovvero sei in hovering, vuol dire che ti stanno spingendo.
Non ti serve integrare nulla perché lo scopo è azzerare il moto di traslazione e non tornare al punto di partenza, in quest'ultimo caso le cose cominciano a farsi molto complicate, ovvero ti basta correggere l'accelerazione dovuto alla forza perturbatrice.
Ovviamente non puoi ottenere un quadri che rimane perfettamente immobile per aria, però puoi contrastare l'effetto del vento facendolo muovere dentro uno spazio molto ristretto, decine di cm.
Logged

Tortona
Offline Offline
God Member
*****
Karma: 2
Posts: 590
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

quando dite "ho trimmato" intendete che muovete le levette vicino agli stick in modo da correggere i movimenti indesiderati del quadri vero?
Logged

Se gommo tiene,io vince gara! Se gommo non tiene,io come bomba dentro montagna

0
Offline Offline
Shannon Member
****
Karma: 117
Posts: 10105
:(){:|:&};: TOX id: fcb8e918bef08581e23f6ddf9d4dba77697c25b217bf372736ed959a95fde36df5b8c5b90fbb
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

ok ma se al tempo T1 arriva una spinta di 100m/s^2, il quad contrasta di -70m/s^2, a T2 la spinta scende a 50m/s^2 e contrasti diciamo di -49m/s^2, a T3 la spinta è 0m/s^2 e la contrasti di 0m/s^2.

risultato: ti stai muovendo di moto rettilineo uniforme (traslazione) ma non ci sono accelerazioni.

Potresti integrare le accelerazioni lette, le accelerazioni previste in base ai comandi utente, e stimare la velocità da correggere, ma converrai che il sistema è molto error-prone

Ora, integrando le accelerazioni precedenti, puoi STIMARE la velocità e tentare di contrastarla, ma è un sistema che accumula errore (come usare solo giroscopi)

Ora, certo puoi dirmi che il pid è settato male, (in questo caso direi P bassa), ma per quanto tu possa sistemare il PID sappiamo bene che non arriveremo mai al 100%

Questo errore si somma e se ti va bene si annulla da solo, se ti va male hai l'effetto "scivolamento" e più passerà il tempo è più sarà marcato.

Non vedo come, senza un sistema di triangolazione, si possa ovviare questo problema

quando dite "ho trimmato" intendete che muovete le levette vicino agli stick in modo da correggere i movimenti indesiderati del quadri vero?
in teoria trimmare vuol dire quello, però fede in questo caso intende sistemare i valori PID in modo tale che senza intervento umano il quad rimanga parallelo al suolo
Logged

my Arduino code: https://github.com/lestofante/arduinoSketch
sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Tortona
Offline Offline
God Member
*****
Karma: 2
Posts: 590
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

e si può fare una specie di trimmaggio da codice? cioè dato che io devo tenere il trim del roll tutto a sinistra per avere un valore a riposo di 1508, se da codice togliessi quei 40 o 50 ms in più poi potrei tenere il trim della radio in posizione centrale...è fattibile? se si dove metto mano?
Logged

Se gommo tiene,io vince gara! Se gommo non tiene,io come bomba dentro montagna

0
Offline Offline
Shannon Member
****
Karma: 117
Posts: 10105
:(){:|:&};: TOX id: fcb8e918bef08581e23f6ddf9d4dba77697c25b217bf372736ed959a95fde36df5b8c5b90fbb
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

sì, è fattibilissimo ma dipende da che codice usi. Tra l'altro quasi tutti i radiocomandi possono esse collegati al PC/tramite schermo LCD e settati minimi e massimi, se poi è un modello fighetto si possono settare anche chicche come esponenziali e chissà quali diavolerie

edit: cmq è una discussione dell'altro thread
Logged

my Arduino code: https://github.com/lestofante/arduinoSketch
sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 120
Posts: 9186
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

ok ma se al tempo T1 arriva una spinta di 100m/s^2,

Infatti non ti ho detto che rimane perfettamente immobile o che torna da solo dove a cominciato a spostarsi, ti ho detto che si oppone al movimento, il risultato è che in presenza di vento il quadri tende a muoversi oscillando avanti e indietro di qualche decina di cm, tende comunque a muoversi nella direzione della spinta allontanandosi dal punto, però lo fa molto lentamente e non con l'effetto saponetta su pavimento bagnato.
Quella che ti ho proposto è solo la soluzione più semplice che non impegna molta potenza di calcolo, poi ci sono soluzioni più complesse che ti permettono non solo di rimanere perfettamente fermo, ma anche di tornare al punto di partenza nel caso di perturbazioni particolarmente forti.
Logged

0
Offline Offline
Shannon Member
****
Karma: 117
Posts: 10105
:(){:|:&};: TOX id: fcb8e918bef08581e23f6ddf9d4dba77697c25b217bf372736ed959a95fde36df5b8c5b90fbb
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

ok, quindi la differenza tra questo metodo e quello del multiwii è che il multiwii se ne frega della spinta di 100m/s^2 e tenta solo di rimanere orizzontale, senza tentare sulla per "ammorbidire" la spinta, esatto?
Logged

my Arduino code: https://github.com/lestofante/arduinoSketch
sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Pages: 1 ... 32 33 [34] 35 36 ... 46   Go Up
Jump to: