Torna indietro   BaroneRosso.it - Forum Modellismo > Elettronica > Circuiti Elettronici


Rispondi
 
Strumenti discussione Visualizzazione
Vecchio 30 ottobre 18, 11:24   #1 (permalink)  Top
User
 
L'avatar di Minestrone
 
Data registr.: 13-09-2012
Messaggi: 3.461
Arduino e sensori accelerometri

Premesso che sono molto, ma molto, nubbio in elettronica, vorrei realizzare un circuito con degli accelerometri. Ho trovato in rete un progettino liberamente scaricabile e molto simile al mio che utilizza due Adafruit MMA8451 facendo largo uso di librerie preconfezionate. Gli MMA8451 però li ho trovati abbastanza costosi.
Siccome ho trovato sensori GY 520 con MPU-6050 molto più economici, vorrei chiedervi che differenze ci sono tra gli uni e gli altri e se l'utilizzo, dal punto di vista del codice, cambia molto oppure no.

Grazie tante a tutti.

Ultima modifica di Minestrone : 30 ottobre 18 alle ore 11:28
Minestrone non è collegato   Rispondi citando
Vecchio 30 ottobre 18, 11:52   #2 (permalink)  Top
User
 
L'avatar di gawain
 
Data registr.: 18-04-2008
Residenza: milano
Messaggi: 342
Citazione:
Originalmente inviato da Minestrone Visualizza messaggio
Premesso che sono molto, ma molto, nubbio in elettronica, vorrei realizzare un circuito con degli accelerometri. Ho trovato in rete un progettino liberamente scaricabile e molto simile al mio che utilizza due Adafruit MMA8451 facendo largo uso di librerie preconfezionate. Gli MMA8451 però li ho trovati abbastanza costosi.
Siccome ho trovato sensori GY 520 con MPU-6050 molto più economici, vorrei chiedervi che differenze ci sono tra gli uni e gli altri e se l'utilizzo, dal punto di vista del codice, cambia molto oppure no.

Grazie tante a tutti.
devi usare le librerie per mpu6050
gawain non è collegato   Rispondi citando
Vecchio 30 ottobre 18, 13:53   #3 (permalink)  Top
User
 
L'avatar di Minestrone
 
Data registr.: 13-09-2012
Messaggi: 3.461
Citazione:
Originalmente inviato da gawain Visualizza messaggio
devi usare le librerie per mpu6050
Trovate, grazie. Però immagino che dovrò creare una funzione di filtro per filtrare i valori in ingresso vero?

ps.
sono queste?
https://github.com/jarzebski/Arduino-MPU6050
Minestrone non è collegato   Rispondi citando
Vecchio 30 ottobre 18, 16:03   #4 (permalink)  Top
User
 
L'avatar di gawain
 
Data registr.: 18-04-2008
Residenza: milano
Messaggi: 342
Citazione:
Originalmente inviato da Minestrone Visualizza messaggio
Trovate, grazie. Però immagino che dovrò creare una funzione di filtro per filtrare i valori in ingresso vero?

ps.
sono queste?
https://github.com/jarzebski/Arduino-MPU6050
ce ne sono tante, probabilmente vanno bene anche queste. per i filtri ci sono gia dentro mpu6050 da parametrizzare credo che la banda passante piu bassa sia 5hz.
comunque se devi fare un inclinometro di alta performance ti conviene fare la sensor fusion tra accelerometri e gyro. oppure piu semplice puoi sfruttare il sw interno di mpu6050 che fa gia la sensor fusion... certo ti togli il gusto di capirci qualcosa...

importante procurarsi la mappa dei registri... la trovi facilmente su internet digitando su google register map mu6050 pdf
gawain non è collegato   Rispondi citando
Vecchio 30 ottobre 18, 16:19   #5 (permalink)  Top
User
 
L'avatar di Minestrone
 
Data registr.: 13-09-2012
Messaggi: 3.461
Citazione:
Originalmente inviato da gawain Visualizza messaggio
ce ne sono tante, probabilmente vanno bene anche queste. per i filtri ci sono gia dentro mpu6050 da parametrizzare credo che la banda passante piu bassa sia 5hz.
comunque se devi fare un inclinometro di alta performance ti conviene fare la sensor fusion tra accelerometri e gyro. oppure piu semplice puoi sfruttare il sw interno di mpu6050 che fa gia la sensor fusion... certo ti togli il gusto di capirci qualcosa...

importante procurarsi la mappa dei registri... la trovi facilmente su internet digitando su google register map mu6050 pdf
Ecco lo sapevo. Sono passato da un progetto quasi pronto da modificare nelle sue parti più banali ad un progetto da rifare quasi in toto. Vabbè, così sia.
A questo punto metterò in pausa perché questo mese non ho molto tempo ma tra un paio di settimane lo farò....
Intanto comincio a studiare perché non ne so nulla.
Se avessi qualche link da cui partire te ne sarei grato. Intanto grazie delle info.

Inviato dal mio Mi A1 utilizzando Tapatalk
Minestrone non è collegato   Rispondi citando
Vecchio 03 novembre 18, 06:51   #6 (permalink)  Top
User
 
L'avatar di gawain
 
Data registr.: 18-04-2008
Residenza: milano
Messaggi: 342
Citazione:
Originalmente inviato da Minestrone Visualizza messaggio
Ecco lo sapevo. Sono passato da un progetto quasi pronto da modificare nelle sue parti più banali ad un progetto da rifare quasi in toto. Vabbè, così sia.
A questo punto metterò in pausa perché questo mese non ho molto tempo ma tra un paio di settimane lo farò....
Intanto comincio a studiare perché non ne so nulla.
Se avessi qualche link da cui partire te ne sarei grato. Intanto grazie delle info.

Inviato dal mio Mi A1 utilizzando Tapatalk
https://github.com/musse/tricot-malin/wiki/IMU
da questo link raggiungi una grande quantità di altri link... c'è di tutto e di più ..
gawain non è collegato   Rispondi citando
Vecchio 03 novembre 18, 06:58   #7 (permalink)  Top
User
 
L'avatar di Minestrone
 
Data registr.: 13-09-2012
Messaggi: 3.461
Grazie molte

Inviato dal mio Mi A1 utilizzando Tapatalk
Minestrone non è collegato   Rispondi citando
Vecchio 13 novembre 18, 09:08   #8 (permalink)  Top
User
 
L'avatar di Minestrone
 
Data registr.: 13-09-2012
Messaggi: 3.461
una piccola imbeccata

Ormai è quasi una settimana che smanetto con i sensori e l'arduino. Ho letto molto in merito ed ho trovato una infinità di librerie. Purtroppo sono al punto in cui mi sono sturato di informazioni e ho confusione.

La lettura dei dati raw e la loro elaborazione non è un problema (ci sono riuscito senza librerie) però mi sembra che i valori siano molto sporchi e molto variabili. Quello che voglio realizzare è un incidenziometro e, calcolando l'angolo rispetto alla verticale sfruttando solo gli accelerometri, trovo che il dato mi varia di parecchi decimi di grado.
So che i dati provenienti dagli accelerometri sono rumorosi di natura e pertanto ho capito che devo filtrare i dati e combinarli con l'angolo ottenuto integrando i valori dei giroscopi. Qui mi sto trovando in difficoltà.

Qualcuno sa darmi un'imbeccata su come applicare un filtro Kalman o, ancora meglio, complementare e come combinare i dati dei giroscopi con quelli degli accelerometri per ottenere dei dati che mi permettano di arrivare a capire l'angolo rispetto alla verticale?

Ho capito che questi calcoli li potrebbe fare il DMP integrato nella scheda ma non ho trovato alcuna informazione su come usarlo.
Minestrone non è collegato   Rispondi citando
Vecchio 14 novembre 18, 13:41   #9 (permalink)  Top
User
 
L'avatar di gawain
 
Data registr.: 18-04-2008
Residenza: milano
Messaggi: 342
Citazione:
Originalmente inviato da Minestrone Visualizza messaggio
Ormai è quasi una settimana che smanetto con i sensori e l'arduino. Ho letto molto in merito ed ho trovato una infinità di librerie. Purtroppo sono al punto in cui mi sono sturato di informazioni e ho confusione.

La lettura dei dati raw e la loro elaborazione non è un problema (ci sono riuscito senza librerie) però mi sembra che i valori siano molto sporchi e molto variabili. Quello che voglio realizzare è un incidenziometro e, calcolando l'angolo rispetto alla verticale sfruttando solo gli accelerometri, trovo che il dato mi varia di parecchi decimi di grado.
So che i dati provenienti dagli accelerometri sono rumorosi di natura e pertanto ho capito che devo filtrare i dati e combinarli con l'angolo ottenuto integrando i valori dei giroscopi. Qui mi sto trovando in difficoltà.

Qualcuno sa darmi un'imbeccata su come applicare un filtro Kalman o, ancora meglio, complementare e come combinare i dati dei giroscopi con quelli degli accelerometri per ottenere dei dati che mi permettano di arrivare a capire l'angolo rispetto alla verticale?

Ho capito che questi calcoli li potrebbe fare il DMP integrato nella scheda ma non ho trovato alcuna informazione su come usarlo.


qui trovi comi utilizzare dmp
https://maker.pro/arduino/tutorial/h...pu-6050-sensor
gawain non è collegato   Rispondi citando
Vecchio 15 novembre 18, 13:18   #10 (permalink)  Top
User
 
L'avatar di ElNonino
 
Data registr.: 06-05-2007
Residenza: Tre Ville (Preore)
Messaggi: 3.510
Invia un messaggio via MSN a ElNonino
Non conosco direttamente la MPU in oggetto però per lavoro ho utilizzato accelerometri per leggere un'inclinazione sul piano, alcuni analogici altri con uscita digitale e DSP interni.

Per misurare un'inclinazione in regime statico come è la lettura dell'incidenza di ali, piani di coda o pale di elicottero basta un accelerometro, il giroscopio è inutile, il problema degli accelerometri analogici è che l'uscita non era lineare rispetto all'angolo d'inclinazione ma bensì ha un andamento sinusoidale che va compensato tramite algoritmi di fusione dei dati di almeno due assi e poi ulteriormente linearizzato con una tabella appositamente creata.

Uso un solo accelerometro analogico da oltre 10 anni per leggere l'inclinazione verticale dei pannelli FV installati in baita sul mio sistema di inseguimento solare senza alcun problema, utilizzo solo gli assi X ed Y in quanto l'asse Z è sempre parallelo al suolo e la velocità di rotazione è estremamente bassa quindi non ho necessità di effettuare ulteriori compensazioni.

Indipendentemente dal tipo di sensore usato è comunque necessario filtrare molto bene il segnale, sia attraverso reti RC passa basso + algoritmi digitali nel caso di analogico che filtri digitali + DSP in quelli puramente digitali, mi ricordo di aver disquisito di ciò sul Barone in un'altra discussione (forse in elicotteri o multirotori)

Comunque una soluzione semplicissima (ma non di soddisfazione) per realizzare un incidenziometro è quella di acquistare un inclinometro digitale e fissarlo su opportuni supporti, cosa che ho fatto io per le pale dei miei elicootteri RC.

Se servono info a disposizione.

__________________
Peace & Love
Fate le cose nel modo più semplice possibile, ma senza semplificare. (A. Einstein)
ElNonino non è collegato   Rispondi citando
Rispondi

Bookmarks



Strumenti discussione
Visualizzazione

Regole di scrittura
Non puoi creare nuove discussioni
Non puoi rispondere alle discussioni
Non puoi inserire allegati
Non puoi modificare i tuoi messaggi

BB code è Attivato
Le faccine sono Attivato
Il codice [IMG] è Attivato
Il codice HTML è Disattivato
Trackbacks è Disattivato
Pingbacks è Disattivato
Refbacks è Disattivato


Discussioni simili
Discussione Autore discussione Forum Commenti Ultimo Commento
Radiocomando 3 motori DC e 2 sensori di T con Arduino su trenino spraity Radiocomandi 3 09 febbraio 17 14:07



Tutti gli orari sono GMT +2. Adesso sono le 07:38.


Basato su: vBulletin versione 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
E' vietata la riproduzione, anche solo in parte, di contenuti e grafica. Copyright 1998/2019 - K-Bits P.I. 09395831002