mpu 6050

è giousto, se vedi il codice lato processing il codice della teiere è commentato e invece crea delle figure (vedi draw() )

quel coso dovrebbe muoversi assieme al tuo sensore

rispondo a un messaggio di mastraa che mi chiede come convertire i valori "grezzi" (LSB) in valori "fisici" (°/S e G)
dal datasheet http://www.invensense.com/mems/gyro/documents/RM-MPU-6000A.pdf
pagina 14, registro27, puoi configurare la precisione dei dati del giroscopio: +-250°/s, +-500°/s, +-1000°/s. +-2000°/s
la pagina dopo trovi quelli degli accelerometi. Però questi sono i limiti "arrotondadi, per maggir precisione devi vedere i registri di output.

pagina 30 dice a quanti LSB corrisponde 1G(1G = gravità sulla terra, 9.8m/s^2, quindi parliamo di accelerometri)

esempio:
full scale: ±4g Sensivity 8192 LSB/g

vuol dire che se leggi 8192 hai 1g.
se leggi il valore X hai: (X/8192) = y g

Molto bene! In effetti è in po che non prendo in mano il sensore!:smiley: allora, se è come dici tu nel playground (Arduino Playground - MPU-6050) ce scritto questo:

MPU-6050
Read accel, temp and gyro, error = 0
accel x,y,z: 232, -432, 15100
temperature: 29.682 degrees Celsius
gyro x,y,z : 382, 232, -790,

come si interpreta? Ci dovrebbero essere 1.5 g? Strano... Potrebbe essere però sensato perche anche glia ltri due assi hanno errori che vanno da 200 a 500 unità, magari basta cambiare la sensibilità... Per quanto riguarda invece la teiera provo a decommentare e vi so dire!

come si interpreta? Ci dovrebbero essere 1.5 g? Strano

bho, dipende dalla sensibilità impostata, io ne ho presa una a caso. :slight_smile:

a me sembra la sensibilità di +-2g(16384 LSB/g), quella che ho per caso riportato,
accel x,y,z: 232, -432, 15100
diventa
x = 232 /16384 = 0.01G
y = -432 /16384 = -0.02G
z = 15100 /16384 = 0.92G

il che vuol dire che quella sceda è leggermente inclinata lungo X e -Y, per questo non esce 1G dalla Z (anche se la gravità NON è uguale in tutta la terra! c'è un satellite che mappa la Gravità del pianeta, detto GRACE, le variazioni vanno da circa -15 a +15 cm di acqua equivalente, "earth now" è un app che ti mostra vari dati del genere comodi sul mappamondo)

Grazie mille...stamattina avevo provato a sfogliare il datasheet cercando una formula tipo quella che avevi dato ma nada

Gentilissimo!!!

Torno a sfruttare il topic:

Sto cercando in internet filtri per 'pulire' i dati dal rumore. Tipo il Kalman o i complementari.
Trovo però applicazioni per tantissimi sensori analogici e non digitali e soprattutto nessuno o con l'MPU (forse uno). Il dubbio che mi è sorto è (anche se mi sembra improbabile): per caso i valori dell'MPU6050 sono già 'puliti'?

Quindi quello che chiedo è: ha senso cercare di pulire i valori che ottengo? se si che filtro mi consigliate?

mastraa:
con l'MPU (forse uno). Il dubbio che mi è sorto è (anche se mi sembra improbabile): per caso i valori dell'MPU6050 sono già 'puliti'?

L'MPU6050 lo puoi usare in modo raw, in questo caso devi pulire, oppure tramite il DMP interno, del quale si sa poco o nulla, e in questo caso ottieni valori pronti all'uso.
Per Arduino qualcosa di pronto si trova per usare l'MP6050 tramite il DMP.

x iscrizione

Ciao,
ho usato anche io l'MPU6050, dal basso della mia esperienza sul tema.

Ho lasciato stare kalman e ho preferito il complementare.
Qui qualche riflessione kalman vs complementare by alegiaco:
http://robottini.altervista.org/tag/complementary-filter

e qui una delle risorse più interessanti che avevo trovato sull'argomento: