Simulando el ruido del acelerómetro

Me gustaría crear una simulación de software de un acelerómetro ( MPU-6000 ). Como parte de esa simulación, necesito modelar el ruido en la señal del acelerómetro. Según la hoja de datos del chip, el ruido es de 400 ug/raíz Hz:

Especificaciones del acelerómetro MPU-6000

En C++, puedo usar boost:random para generar números aleatorios normalmente distribuidos. Sin embargo, la función boost toma un valor sigma como parámetro.

Pregunta: ¿Cómo puedo calcular el valor del parámetro sigma para modelar correctamente el ruido del acelerómetro?

Actualizar:

Si una distribución normal es inapropiada, ¿cómo puedo modelar el ruido en el software?

Respuestas (2)

El sensor especifica su ruido en términos de la señal de entrada (aceleración), por lo que lo primero que debe hacer es convertirlo en ruido de voltaje equivalente, teniendo en cuenta la configuración de ganancia que está utilizando en el sensor y el circuito de interfaz.

La potencia de la señal en una serie de muestras normalmente distribuidas es igual a la varianza, que es el cuadrado de la desviación estándar (sigma, σ). Sin embargo, los números en su simulación representan voltajes (o corrientes), no energía. Por lo tanto, desea establecer σ igual al voltaje de ruido equivalente que calculó anteriormente y luego agregar estos números a su señal de aceleración simulada.

¿Necesita multiplicar por la raíz cuadrada del ancho de banda para calcular su ruido, o es la potencia en ug por raíz de Hz?
Entonces, si tengo 16 384 LSB/g, entonces tengo 6,55 LSB/Hz raíz. Entonces el sigma es la raíz cuadrada de esto: 2.56? ¿Sería eso correcto?
@Rocketmagnet: No, use el número 6.55. Estas muestras representan voltaje, no potencia.
@ScottSeidman: No, el ancho de banda está implícito en la frecuencia de muestreo que se usa en la simulación. Estamos hablando de ruido blanco, por lo que la potencia total del ruido aumenta automáticamente con la frecuencia de muestreo (ancho de banda). Cada muestra de ruido representa una cierta cantidad de energía y, a medida que coloca más de ellos en cada segundo, obtiene más potencia.

Su pregunta actualizada es un poco más compleja que la pregunta original.

Para lo que sigue asumo condiciones de laboratorio ideales.

Para probar la suposición de normalidad de los datos de ruido, debe tomar varias medidas a una frecuencia de muestreo fija con una aceleración fija y usar esos datos para una prueba de normalidad. Hay muchas de estas pruebas, pero las dos en la mayoría de los libros de texto de pregrado son las de Pearson. x 2 -test y el test de Kolmogorov-Smirnoff .

Supongo que probablemente quieras modelar el dispositivo como lineal + ruido. La regresión lineal habitual también necesita una hipótesis adicional: la varianza es estadísticamente constante en diferentes aceleraciones. La falta de esta condición se denomina heteroscedasticidad y existen métodos para tratarla.

Mi conjetura muy aproximada es que este dispositivo no es realmente lineal y cuando haga estas pruebas encontrará que las distribuciones están sesgadas por este hecho.

Hay un pequeño atajo que podrías tomar. Realmente no te importa si realmente modelas las cosas exactamente, te importa más si crees que tu modelo final es lo suficientemente preciso. Esta es un área diferente del modelado estadístico llamada validación . Básicamente, construirá su modelo como lineal + ruido donde se supone que el ruido se distribuye normalmente con los parámetros de la hoja de datos. Luego intenta confirmar que este modelo modela el comportamiento de la vida real de su dispositivo físico.