PID tracking wheels?

Not necessarily. I was thinking that if you were to calibrate each of two inertial sensors at separate times, you could get much more precise results using a Kalman filter or something similar.

I’m not sure that would work how you’re wanting it to. I spent a while last summer doing a research project with the Kalman Filter For Sensor Fusion which is based off of the generic Kalman Filter but specifically for implementation on gyro, accelerometer (not the linear acceleration kind in the VEX Inertial Sensor), and magnetometer IMU’s for drones. A lot of the reason the Kalman Filter is extremely adept at compensating for gyroscope drift and accelerometer/magnetometer noise is because the output from the gyroscope and acc/mag differ in properties quite a bit. The Kalman Filter uses the assumptions of the gyroscope reading being a true value with some random-walk drift and some Gaussian noise along with a different set of statistical assumptions for the accelerometer. Therefore, if what you were meaning is to perform sensor fusion using two of the VEX IMU sensors, I’m not sure the Kalman Filter is the way to go, seeing as the statistical properties of the readings from each sensor would really be the same.

That being said, I also don’t immediately agree with the fact that using 2 sensors will have no improvement on the drift/variance of the sensor readings. In the case of the drift, both sensors will drift with random magnitude in random directions as gyroscopes are known to do, and I’m not sure that much can be done with two sensors carrying similar properties. However, in the case of the noise or variance, the end error depends on how we combine the readings from the individual sensors. Assuming we simply average them, then yes, the variances will also add and the readings will overall be worse. However, if there exists some sort of combination method that could take advantage of the square root of the reading, then, following error analysis equations, the variance would actually decrease. I can’t think of anything right off the bat that would satisfy what you need there, but I also cannot say that it is not possible. It would require some in depth analysis but I think it may be possible.


Yes. I did this, and it works great.