Discussione:
Accelerometro e velocità
(troppo vecchio per rispondere)
Stefano
2012-09-13 19:55:42 UTC
Permalink
Ciao,
mi scuso per la domanda sicuramente banale, ma sto realizzando
un'applicazione ed i risultati mi sconfortano :)
L'applicazione è su Android e legge i dati delle tre componenti
dell'accelerazione prelevati dall'accelerometro.
Da questi valori volevo ricavare la velocità e lo spazio percorso, ho
seguito questo procedimento:

- sommo le tre componenti dell'accelerazione
- calcolo l'intervallo temporale tra due misurazioni
- calcolo la velocità integrando con il metodo dei trapezi e sommando
il valore dell'integrale precedentemente calcolato

Noto però che esiste una deriva estremamente evidente che non riesco a
comprendere appieno, non riesco ad assegnarla unicamente allo strumento
ma credo sia dovuta anche ad una mia errata interpretazione della
realtà fisica.
Dove sbaglio?
Grazie, ciao. Stefano.
Giorgio Bibbiani
2012-09-17 16:42:53 UTC
Permalink
Post by Stefano
L'applicazione è su Android e legge i dati delle tre componenti
dell'accelerazione prelevati dall'accelerometro.
Immagino tre componenti ortogonali...
Post by Stefano
Da questi valori volevo ricavare la velocità e lo spazio percorso, ho
- sommo le tre componenti dell'accelerazione
Non ha senso sommare le tre componenti dell'accelerazione,
le devi trattare in modo indipendente se sono indipendenti,
quindi devi integrare nel tempo le tre componenti dell'accelerazione
per ottenere le tre componenti della velocita', analogamente
dovrai integrare le tre componenti della velocita' per ottenere
le tre componenti dello spostamento.

Ciao
--
Giorgio Bibbiani.
Daniele Orlandi
2012-09-17 18:17:17 UTC
Permalink
Post by Stefano
Noto però che esiste una deriva estremamente evidente che non riesco a
comprendere appieno
Ciao, quello che stai cercando di costruire si chiama "piattaforma
inerziale" e si usa sugli aerei per la navigazione.

http://en.wikipedia.org/wiki/Inertial_navigation_system

Una piattaforma inerziale utilizza le accelerazioni sui tre assi, unita alle
accelerazioni angolari di tre giroscopi sui tre assi integrandole una volta
per ottenere le velocità e una seconda volta per ottenere la posizione.

Comprenderai che qualsiasi errore di misura (per rumore, imprecisione,
saturazione del sensore) siccome viene integrato, porta ad un errore
costante nella velocità e un errore che cresce linearmente nello spazio.

Le piattaforme inerziali usate in aviazione usano sensori ESTREMAMENTE
precisi (giroscopi laser) e con grande banda passante per contenere questo
errore.

Nonostante ciò, dopo un ora accumulano facilmente più di 600 metri di errore
di posizione.

Quello che tu vuoi fare con dei sensori poco precisi, non ammortizzati,
facilmente saturabili e con poca banda passante, è difficilmente
realizzabile.

Probabilmente dovrai limitare la finestra temporale in cui la posizione
varia rispetto a una posizione iniziale nota.

Ciao,
--
Daniele "Vihai" Orlandi
Bieco Illuminista #184213
frengo
2012-09-18 05:21:18 UTC
Permalink
Post by Stefano
Ciao,
mi scuso per la domanda sicuramente banale, ma sto realizzando
un'applicazione ed i risultati mi sconfortano :)
L'applicazione è su Android e legge i dati delle tre componenti
dell'accelerazione prelevati dall'accelerometro.
Da questi valori volevo ricavare la velocità e lo spazio percorso, ho
- sommo le tre componenti dell'accelerazione
- calcolo l'intervallo temporale tra due misurazioni
- calcolo la velocità integrando con il metodo dei trapezi e sommando il
valore dell'integrale precedentemente calcolato
Noto però che esiste una deriva estremamente evidente che non riesco a
comprendere appieno, non riesco ad assegnarla unicamente allo strumento
ma credo sia dovuta anche ad una mia errata interpretazione della realtà
fisica.
Dove sbaglio?
Grazie, ciao. Stefano.
In che senso "sommi" le tre componenti dell'accelerazione ?
Due misurazioni di quanto sono intervallate piu' o meno ?
Sei sicuro che si possa considerare costante l'accelerazione in quel
lasso di tempo ?
Come fai a sapere valore della velocita' iniziale ?

frengo
Tommaso Russo, Trieste
2012-09-17 17:01:37 UTC
Permalink
Post by Stefano
Ciao,
mi scuso per la domanda sicuramente banale, ma sto realizzando
un'applicazione ed i risultati mi sconfortano :)
L'applicazione è su Android e legge i dati delle tre componenti
dell'accelerazione prelevati dall'accelerometro.
Da questi valori volevo ricavare la velocità e lo spazio percorso, ho
- sommo le tre componenti dell'accelerazione
- calcolo l'intervallo temporale tra due misurazioni
- calcolo la velocità integrando con il metodo dei trapezi e sommando il
valore dell'integrale precedentemente calcolato
Noto però che esiste una deriva estremamente evidente che non riesco a
comprendere appieno, non riesco ad assegnarla unicamente allo strumento
ma credo sia dovuta anche ad una mia errata interpretazione della realtà
fisica.
Dove sbaglio?
Il tuo metodo puo' funzionare (magari con un'integrazione numerica piu'
precisa del metodo dei trapezi) solo se l'apparecchio mantiene
rigorosamente la stessa orientazione, e se il suo asse verticale e'
sempre esattamente verticale. Altrimenti:

- per ogni inclinazione, l'accelerazione di gravita' (che immagino il
tuo algoritmo debba sottrarre all'accelerazione verticale misurata)
falsa la misura delle accelerazioni "orizzontali";

- ogni rotazione il cui asse non passa per il baricentro della massa
dell'accelerometro causa accelerazioni che lo strumento misura ma non
dovrebbero essere integrate.

Prova: inclina il tuo cellulare o tablet android di 45 gradi, oppure
appoggialo su un seggiolino girevole *fuori asse* e fallo girare.
Scommettiamo che l'applicazione ti dice che hai percorso parecchi
chilometri in pochi minuti?

Purtroppo non dispongo di soluzioni semplici.
--
TRu-TS
Buon vento e cieli sereni
Continua a leggere su narkive:
Loading...