letture acc+gir

Buongiorno..
nello skecth che allego catturo le letture di acc e gir di un mpu6050.
Impostando alla fine del setup
timer = millis();
con l'istruzione nel loop
Serial.print(double(millis()-timer)/1000,4);
sul serial monitor mi stampa prima delle letture il dato temporale (vedi sotto).

Ecco la domanda: ma questo è il tempo di campionamento del sensore??

Testing device connections...
MPU6050 connection successful
0.0030,-0.04,-0.01,1.05,0.73,-1.07,-1.45
0.0130,-0.04,-0.01,1.06,0.69,-1.24,-1.44
0.0240,-0.05,-0.01,1.07,0.68,-1.21,-1.52
0.0350,-0.05,-0.01,1.06,0.72,-1.19,-1.85
0.0460,-0.05,-0.02,1.05,0.82,-1.10,-1.61
0.0570,-0.05,-0.02,1.06,0.67,-1.11,-1.76
0.0680,-0.04,-0.01,1.07,0.73,-1.27,-1.47
....

sketch_letture_v1.ino (1.88 KB)

E' il tempo in secondi dall'accensione di Arduino (diminuito del tempo necessario a effettuare il setup)
La differenza tra un tempo e il successivo è il tempo di esecuzione del ciclo loop. Circa 11 millisecondi.

quindi se volessi stampare i tempi dell'acquisione dei dati come potrei fare?

julio79:
quindi se volessi stampare i tempi dell'acquisione dei dati come potrei fare?

Se intendi data e ora solare ti serve un RTC (real time clock) Hardware (es. DS1307) o Software (es. la libreria swRTC di Leo).

comunque no, questo NON è il tempo di campionamento del sensore.
Il tempo di campionamento lo trovi sul datashett.
Normalmente puoi fare più ricieste al sensore rispetto alla sua velocità di campionamenteo, perchè le velocità di comunicazione sono abbastanza standard e ovvimaente si tende ad esagerarle.
però hai la serial che ti rallenta tutto, se per caso vuoi sapere quanti valori al secondo puoi leggere al massimo (tenendo conto che molti saranno duplicati)

Insomma senza datasheet non si va da nessuna parte :slight_smile: