07 giugno 17, 00:47 | #1 (permalink) Top |
User Data registr.: 19-04-2015 Residenza: Domodossola
Messaggi: 90
| RX->Arduino->Accelerometer+gyro
Salve ragazzi. Qualcuno ha esperienza su come usare arduino non per un drone ma per stabilizzare un aereo? Io ci sto mettendo la testa. Per adesso posto il link per leggere i comandi mandati dal radiocomando tramite questo circuito Il risultato preso tramite la serial port: Cito la fonte: Reading RC Receiver PPM Signal Using Arduino: 3 Steps Prossimo passaggio collegare Accelerometer+gyro in questo caso l' MPU5060 A presto
__________________ tracciatura.net |
07 giugno 17, 09:38 | #2 (permalink) Top |
User |
Una cosa non mi convince molto: i valori letti mi sembrano di "fantasia" come temporizzazioni, bisognerebbe verificarli con un oscilloscopio o un analizzatore di stati logico. Con il sistema dell'articolo poi mi pare che alla fine legga un pacchetto su due quindi si aumenta la latenza. Per imparare a programmare il progetto è valido, per uso pratico ci sono in commercio buoni stabilizzatori cinesi a 10, esiste anche progetto open source serio per modificarne il firmware, potresti prender spunto da li.
__________________ Peace & Love Fate le cose nel modo più semplice possibile, ma senza semplificare. (A. Einstein) |
07 giugno 17, 13:35 | #4 (permalink) Top |
User Data registr.: 19-04-2015 Residenza: Domodossola
Messaggi: 90
|
Non saprei per i pacchetti (non me ne intendo moltissimo) ma se ad ogni interrupt vengono memorizzari i cambi di stato, sapendo che l'intervallo di un pacchetto con successivo è di 11500 microseconds , come fai a dire che ne viene saltato uno? Comunque visualizzando i movimenti dal serial monitor in diretta non vedevo alcun ritardo rispetto ai comandi dati al trasmettitore.
__________________ tracciatura.net |
09 giugno 17, 13:31 | #5 (permalink) Top |
Adv Moderator Data registr.: 14-10-2002 Residenza: Roma
Messaggi: 19.841
|
Beh il ritardo non é di secondi, ma decimi o o meno, difficile che a vista lo noti. Comunque mi sa che se prendi qualche vecchio progetto multiwii o simile risolvi, li é spiegato bene come usare un arduino e i chip giro/acc. Poi se é per giocare sperimentare ok, ma se vuoi qualcosa di pronto, ormai ci sono decine di stabilizzatori, anche per tutti e e tre gli assi, per non parlare poi quota, GPS ecc.. Ma se a te interessa sol stabilizzatore, cerca un po' multiwii... Inviato dal mio iPad utilizzando Tapatalk |
29 agosto 17, 11:32 | #6 (permalink) Top |
User Data registr.: 19-04-2015 Residenza: Domodossola
Messaggi: 90
|
Aggoirnamento: ho scartato l'opzione di lettura dei 6 canali PPM dal pin 1 , ho notato che ci sono dei blackout anche di alcuni secondi nella lettura ... e non so perchè. Sono passato quindi alla lettura diretta dei canali AIL e ELE sui pin 5 e 6 il canale GEAR lo userò per poter attivare e disattivare il programma i pin 9 e 10 saranno in uscita sui servi AIL e ELE La logica è questa: AIL tutto a destra inclinazione massima dell'aereo +60° e -60° per tutto sinistra stesso per ELE +60 / -60 Questo vuol dire che per esempio mettendo tutto a destra l'alettone il servo risponderà fino all'inclinazione di 60° a destra dopo di che si metterà in posizione centrale cercando di tenere l'aereo stabile. In teoria usando il timone l'aereo dovrebbe fare una virata perfettamente in piano (o almeno questa è la teoria) Ora mi manca di trasferire tutto su arduino nano e cablare sul mio edge-flat per poter fare il primo test. Vi farò sapere Saluti
__________________ tracciatura.net |
31 agosto 17, 12:07 | #7 (permalink) Top | |
Rivenditore - devCad Data registr.: 04-12-2013
Messaggi: 1.265
| Citazione:
E se l'aereo e' in volo rovescio ad esempio cosa fai? Per misurare l'inclinazione cosa usi? L'accelerometro non va mica bene, in una virata corretta anche a 60 gradi segnerebbe 0 gradi, mi sa. Ti serve un sensore piezoelettrico con logica hold applicata, direi che le cose si complicano. | |
31 agosto 17, 14:37 | #8 (permalink) Top | |
User | Citazione:
__________________ Peace & Love Fate le cose nel modo più semplice possibile, ma senza semplificare. (A. Einstein) | |
01 settembre 17, 17:09 | #9 (permalink) Top | |
Rivenditore - devCad Data registr.: 04-12-2013
Messaggi: 1.265
| Citazione:
In questo caso secondo me senza un software con logica di tipo Hold da inizializzare alla partenza non riuscirai ad avere indicazioni attendibili. Con logica Hold direi che basta un giroscopio ad un asse, per valutare l'angolo di rollio. Gli elicotteri rc di vecchio tipo (quelli con flybar e giroscopi tipo Gy401) funzionavano cosi', sull'asse di imbardata pero'. | |
01 settembre 17, 19:27 | #10 (permalink) Top | |
User | Citazione:
Se poniamo riferiti all'accelerometro: asse X = rollio, asse Y = beccheggio , asse Z verticale anche in caso di virata a coltello avremo che l' asse Z indicherà l'accelerazione centrifuga (con segno opposto in caso di virata rovescia) e l'asse X l'accelerazione di gravità, mentre l'asse Y il relativo angolo di beccheggio. Chiaramente è necessario filtrare i segnali dell'accelerometro applicando opportuni algoritmi, se già non li conosci dai un occhiata ai quaternioni. IMHO.
__________________ Peace & Love Fate le cose nel modo più semplice possibile, ma senza semplificare. (A. Einstein) | |
Bookmarks |
| |
Discussioni simili | ||||
Discussione | Autore discussione | Forum | Commenti | Ultimo Commento |
T REX 500/T REX 450/ GYRO ALIGN GP 780/GYRO SPARTAN DS 760/rx spektum | zeus463 | Merc. Elimodellismo | 3 | 12 marzo 13 11:02 |
Distinguere mini elicottero con gyro e senza gyro | e-falcon | Elimodellismo Principianti | 42 | 30 gennaio 12 15:42 |