# Modelling MEMS accelerometer noise

I am trying to compare two MEMS accelerometers in terms of their noise for ground motion monitoring applications. I would like to take some "clean" data (recorded by good quality instrumentation), add white noise to it so I can bring it to the noise level of the MEMS sensors I'm testing, and then run some tests on these new signals with a heightened noise level.

I was wondering how to estimate the baseline noise level for the two MEMS.

One idea I had was to record data with the two MEMS in a controlled environment with little to no external disturbances, compute the histogram of the recording, and then model some white noise based on the histogram mean and variance.

I was wondering if instead I could use the datasheet noise spectral density information to do something similar?

1. Yes, you can use the datasheet noise density. Model the accelerometer as a source of white noise, and compute its characteristics.
• That works to the extent that you can trust the data sheet.
• That's what I have done in the past, when the accelerometer noise wasn't the main driver of system performance issues, and when I've been in a hurry.
2. Measuring your accelerometers is good, and it'll be good to verify that the histogram reflects a Gaussian.
3. If you really want to know (or if you're really at the limits of system performance and those limits are determined by the sensor), then measure the Allan Variance of as many units as you can get your hands on. This should give you the best possible measurement of the accelerometer performance over time, which will, in turn, inform whatever signal processing you intend to do and whatever system performance promises you make.
• Thanks! If I were to use the datasheet, do I simply multiply the given noise density value (in μg/√(Hz)) by the square root of the filter bandwidth at the MEMS output to obtain the noise standard deviation? I did a quick histogram with data I had already acquired and I do obtain a gaussian histogram, with some spikes here and there which I think are due to the fact those acquisitions weren't perfectly quiet. I'll try to retake the measurements and compare it with the gaussian approximation Commented Nov 27, 2023 at 21:22
• Yes, if you feed white noise through a filter, then the output RMS value will be equal to the square root of the filter's noise bandwidth times the noise spectral density. Note that (A) noise bandwidth is different from a filter's cutoff frequency, and (B) it's pretty well documented out there. Commented Nov 30, 2023 at 21:23

If your main focus is the end result (simulating the behaviour of an IMU, rather than learning to model the INS response from first principles) I'd recommend you cosnider gnss-ins-sim which will simulate INS output given datasheet parameters.

I've used this successfully to take an initial track (generated from Google Maps in my case) and simulate the response of a variety of INS devices being moved along that route from their datasheet parameters.

If you don't work in Python, I expect there are similar tools available in other languages/environments.

• Thanks, I am working in Python for this. I see the tool lets you define accelerometer profiles and generate accelerometer data. My goal here is to modify existing recordings with better quality instrumentation so they have a noise level which is more similar to the mems sensor baseline. I'm not sure the tools lets you do that but I'll try to see if it can help Commented Nov 28, 2023 at 17:32