MinIMU V2: Magnetic influence on gyro and accelerometer

I just got my MinIMU-9 V2 installed and working on an Arduino using the code supplied. Did have to tweek the address of the gyro chip to get it to work.

Now that it is integrated I am running various performance tests on it. The first thing I did was to nail the IMU down and run an RC car motor 7 inches away. I knew to expect the magnetometer values to go nuts, but I was not prepared to see lots of noise in the accel and gyro data.

This issue could be one of electrical noise backing up into the sensors, or it might be a magnetic effect. I have yet to stumble on any information that would indicate the gyro and accelerometer are sensitive to a magnetic field.

Does anyone have any experience with this issue?

-Skye Sweeney

Hi, Skye.

Based on your blog post, it sounds like you figured out the reason the gyro and accelerometer were going crazy: they were vibrating. Is that correct?

- Ryan

Perhaps.

The initial test I did had the sensor deck connected to the car directly and certainly was vibrating. The sensor deck was very blurry. The second test I ran had the sensor deck disconnected from the car. It still showed noise on the accelerometer and gyros. What I do not know is if the vibration isolation was enough. I had it suspended within an inch of where it would be relative to the car, but the circuit board clamp I used was on the same concrete floor as the car stand was on.

Electrically, the motor power system and the electronics power are pretty much separated. The only place they come together is via a ground on the Pololu 4 channel RX mux I am using as a ‘kill switch’. I will disconnect this tonight and try the test over again.

It could be it was still mechanically coupled. It could also be electrically coupled or possibly magnetically coupled. I am looking for any experience people may have with magnetics affecting the accelerometer or gyros MEMS sensors.

PS: Good Grief! People actually read my blog?

Edit: After getting home tonight, I reran the test and did a better job isolating the IMU from the motor shake. Looks like the motor has little or no influence on the gyro or accelerometer. I still had a bundle of wires (all the servo wires) running from the receiver in the car to the electronics deck. The noise I was seeing could well have come up the wires. When I get a chance, I will re-do all the wiring to completely isolate the two.

So the question still stands to all you IMU users: Ever notice a magnetic field effecting your accel or gyro sensor?

I am glad you got it working better. There is always going to be some noise, even if the board is completely still. What is the magnitude of your noise? I have not noticed a magnetic field affecting the accelerometer or gyro readings.

- Ryan

I am seeing ± 2d/s noise for a stationary IMU. When the motors are running I am seeing ± 8 d/s. What I can’t tell you is the frequency content. I am prototyping currently on an Arduino (waiting for my ARM processor) and do not have the bandwidth to read sensor data and write it out fast enough to do an FFT.

Talked to my mechanical genius (yet still practical) at work about the issue. His first suggestion was to suspend the IMU in glycerin. After I laughed, he promised to give the problem some thought. The issue is getting the resonant frequency of the IMU down low enough. With little mass, that might be a challenge.

For the gyro, those noise levels sound fairly normal (the datasheet specifies +/-10, +/-15, and +/-75 for the digital zero-rate level depending on the sensitivity setting). I should also mention that on top of noise, the sensors can also have a fixed offset.

-Ryan

Thanks for the reply. I think that vibration isolation is going to be in my future. I have talked to several mechanical engineers that do this sort of thing at work and got a bunch of ideas (including floating the IMU in a jar of glycerin!). The best suggestion is a small cylinders of accordion pleated thin plastic. The plastic acts as a spring and the air inside acts as a shock absorber. Just need to find the company that makes these on the web.