Lecturas del acelerómetro, ¿qué está mal?

3

Hice una placa con Analog Devices ADXL345. Luego lo conecté a mi robot e hice evitación de obstáculos con el registro de datos durante aproximadamente 10 s. El robot hizo 4 vueltas. Aquí hay una gráfica de las lecturas del eje z Puse el ADXL345 en +/- 2g. Es de 10 bits. Este dato no se ve bien. ¿Es esto lo que vería por vibración, o es lo que debería ver?

    
pregunta BSEE

1 respuesta

7

Esa es una distribución muy bimodal, no es algo que debas ver desde la vibración. Creo que no estás leyendo los datos correctos del chip o que lo estás interpretando incorrectamente. Esta parte utiliza dos valores de byte para las salidas; parece que puede haber intercambiado el MSB y el LSB.

Editar: de hecho, voy a decir que es casi seguro que cambien el MSB y el LSB. La sensibilidad en la escala 2g es de 256 LSB / g. Esto significa que debería estar viendo una lectura cruda de + o - 256 o menos, suponiendo que el chip está montado con el eje vertical. El LSB será en su mayoría "ruido", mientras que el MSB será en su mayoría cero. Si se intercambian los bytes, el bit de signo se convierte en lo que debería haber sido el bit 7 y se volteará de forma más o menos aleatoria. Si el valor original es 255, el intercambio de bytes da como resultado -256. Si el valor original es 256, el intercambio de bytes resulta en un valor de 1. Si el valor original es 127, el intercambio de bytes resulta en 32,512. Si se está dividiendo por la sensibilidad, debería ver una distribución altamente bimodal con muchos puntos con valores negativos pequeños y muchos puntos con valores positivos grandes.

    
respondido por el alex.forencich

Lea otras preguntas en las etiquetas