Inertial Sensor odd behavior

We have been using the inertial sensor for a couple of years now with great success so this isn’t about coding, sensor placement, or calibration. While repetitively testing our autonomous skills coding, for a couple of hours, the inertial sensor stop putting out valid data. When viewing the sensor data from the Brain console it shows very erratic values, such as the heading which we use. It will start out a say 0, turn the robot 90 degrees and it might show a value of 8 or 128.

We have 2 internal sensors available. When we swap the sensors everything works fine. Then the next testing session, after a couple of hours, that sensor goes whacky. We put the first one back in and everything is fine.

We don’t think any of this will affect us in competition, except if we have to practice or test a lot and we can easily swap sensors. We have also tried cooling the sensor when the problem shows up and that does not fix it. At least not immediately. Again, if the sensor sits for some period of time, say overnight, then it works again.

Has anyone else seen this behavior? I can find nothing like it so far on the forums or by googling it. Thanks for any information.

We have not had this issue.
Since both work fine at the start, then go funky, I would suggest trying out the inertial sensor on another robot, and run with that to see if the sensors go funny on that bot. If it doesn’t. it might be a problem on your robot’s side. However if it goes strange on the new robot, it might be a hardware issue with the inertial sensor

That is a very interesting problem. There could be many things that affect performance of the gyro and accelerometer sensors inside the IMU.

It could be external vibration from other parts of the robot that could be mechanically isolated or it could be an external noise source in your practice area that you could also isolate from.

It could be some sort of electrical interference or voltage spikes coming from either external source or a motor driver on the robot that is about to go bad.

However, it is very confusing that when you swap them out the newly inserted IMU starts to work immediately and the old one restarts to work the next day.

First, I would start suspecting your wire and ports where IMU connects to, which may be resulting in intermittent connection and erroneous data transmission. It is easy to check both wire and ports and connect with a new wire to a different port just in case. Would the error still show up right away if you disconnect all motor wires and disconnect and reconnect IMU wire only?

Then, I would look for any large electrical or noisy piece of equipment close to your practice area like an AC unit with large motor or a table grinder with a brushes that are about to go bad and throw a lot of sparks. Was IMU going crazy event coinciding with those motors running?

Also, I would get a thermometer with humidity meter and start logging both of those parameters every hour or so to see if this could be a possible environmental trigger for IMU failure event.

Finally, you could mechanically isolate your IMUs from any potential vibrations and wrap them in some sort of foam and foil to make sure there is no acoustic noise or EMI coming from external sources.

Thanks for the feedback. We just finished our first competition without any incident so that was a relief. We did move the sensor to a more centralized location in the X,Y axis, which is more physically secure, less possible shaking. That may have helped.

There are some improvements to be made to our competition robot so we are putting together a new robot for autonomous skills programming. We’ll see if a different robot changes things. We’ll also change wires and ports on the competition robot and see if that changes things.

Again, thanks.