Saltar al contenido

Significado de “LSB/Unidad” y “Unidad/LSB”

Si te encuentras con alguna parte que no comprendes puedes dejarlo en los comentarios y te ayudaremos rápidamente.

Solución:

Ahora tengo el truco. Hay varias cosas sobre este MEMS que debe saber, pero que no se mencionan en la hoja de datos:

  1. El registro de salida del acelerómetro es de solo 12 bits y no de 16 bits, por lo que debe desplazar el valor a la derecha por 4 y multiplicarlo por 0,001 G. Además, es little-endian.
  2. El registro de salida del magnetómetro es de 16 bits, pero big-endian. Además, el orden del vector es (X|Z|Y) no (X|Y|Z). Para calcular el valor correcto, debe dividir X e Y en 980 gauss⁻¹, mientras que Z es 1100 gauss⁻¹.
  3. El sensor de temperatura funciona, pero no está calibrado. Entonces puede usarlo para medir el cambio de temperatura, pero no las temperaturas absolutas. También son solo 12 bits, pero big-endian y tienes que dividir la salida en 8 C⁻¹.

Con esa información es posible utilizar el LSM303DLHC. ¿Pero quién diablos inventó esto? “Construyamos un nuevo acelerómetro, magnetómetro y termómetro en un solo paquete y arruinemos al usuario mezclando la longitud de la palabra y el endian sin mencionarlo en la hoja de datos”.

LSB/unidad o Unidad/LSB es el factor (llamado sensibilidad) con el que debe multiplicar los datos del sensor sin procesar. Digamos que el Sensor A tiene registros X, Y y Z, los valores que vienen en cada uno de los registros deben dividirse/multiplicarse con el factor LSB/unidad o Unidad/LSB. Esto se debe a que la hoja de datos dice @ la escala completa en particular tendrá tanta sensibilidad (LSB/unidad o Unidad/LSB)

para LSB/Unidad:

x lsb significa – 1 unidad

1 lsb significa – 1/x unidad

value lsb(valor en el registro) = (1/x)*(valor en el registro) – Aplicar aquí el método unitario.

De manera similar, para Unidad/LSB, debe multiplicar la sensibilidad.

Puede construir un acelerómetro, un magnetómetro o un sensor de temperatura o puede ser un giroscopio en un módulo, pero ¿qué pasa si un cliente/usuario solo quiere un sensor?

Rgs, Rp

La hoja de datos definitivamente no está clara con respecto a la interpretación de los registros de aceleración. La solución Genesis Rock asume que es de 12 bits, lo que funciona. (Otra solución es suponer que la ganancia es de 16 mg/LSB en lugar de 1 mg/LSB, pero como los últimos 4 bits de las aceleraciones parecen ser siempre ceros, la solución anterior tiene más sentido).

Pero tanto para la temperatura como para la aceleración, si se tienen en cuenta solo los 12 bits más significativos. Los últimos dos bits también son siempre cero, por lo que la resolución efectiva sería de 10 bits, lo cual es confuso.

Tampoco puedo entender la lectura de la temperatura a menos que haya una compensación desconocida no especificada en la hoja de datos.

Espero que otros puedan confirmar que están obteniendo los mismos resultados.

valoraciones y comentarios

Eres capaz de apoyar nuestro trabajo fijando un comentario y dejando una puntuación te lo agradecemos.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *