We're evaluating the ADIS16465-2B with an STM32 platform. We're able to get burst data in successfully at 2Khz, or all 32 bit for gyro, accelerometers and delta angles at 200Hz.
We've noticed that the nominal frequency of 2000Hz is a bit off, currently at about 2010Hz or so. When sampling at 2Khz, using the burst function, we use the microcontroller to calculate the delta angle for each axis, and the time between samples is calculated by an internal micro timer. The datasheet states that 16 bit is the best resolution available at that frequency.
At 200Hz we're able to read in all 32 bits for gyro, accelerometer and delta angles. If we compare the delta angle from the IMU, which is calculated using this formula:
against the delta that we obtain between each gyro rate sample at ~200Hz using a similar formula as above, there's a difference of about 15% in the result.
Is it more accurate to use a sampling rate of 2Khz at 16 bit (burst) and do the angle calculations in the microcontroller, or using 200Hz at 32 bit and let the IMU do the calculations?
At 200 Hz, is it better to use 32 bit data or 16 bit data? Results on both are slightly different.
Would you recommend using an external clock instead of the internal one to improve accuracy? If so, which mode would be better, 2Khz at 16 bits or 200Hz at 32 bits?