I have an IMU 6 DOF V2 with ADXRS150 (no bluetooth) connected through RS232 Shifter SMD to my PC. The output is scaled and procesed by a kalman filter, and the resulting roll and pitch is prensented to a glass cockpit (openGC). That works fine.
However, it seems that the IMU stops outputting for 100 milliseconds roughly every 350 milliseconds (verified by an oscilloscope).
The IMU produces about 50 sets of measurements (50 data buffers), then it stops for 100 milliseconds, produces 50 databuffers, stops for 100 milliseconds, etc.
My project is an UAV, where the IMU shall keep its attitude stable. But with measurements gaps of 100 milliseconds, this is not possible.
Has anyone experienced this? Is there a way to make the IMU run continuously?
I have experienced similar behaviour, though I haven’t checked the signal with oscilloscope. My IMU v2 is connected to PC via USB-serial board (FT232) from Sparkfun. I have experimented with IO buffer size, reducing it to get the fastest response, but still I get considerable jitter in the number of data packets received in a time interval, say 1 second.
Perhaps it would make more sense if the data output rate was configurable and tied to a timer. Currently it seems that the PIC is working as hard as it can to measure and push the data out (that would explain the weird output rates in manual). Also, a nice-to-have feature would be separate measurement rate and filtering. These changes would be firmware-only, however the source code does not seem to be available.
Would be fantastic if you succeed. I will take a look at the code, but I have experience with AVRs only.
I am still confused about the sample rates and signal bandwidths on this board. The -3dB bandwidth for accelerometers and gyros is around 300 Hz, and I doubt there is enough analog filtering on the board to confine the higher frequencies (mostly consisting of noise). I suspect some aliasing. I would guess the minimum safe sampling frequency to be 700-1000 Hz. This, however, maxes out the PIC ADC quickly when several channels are needed. I guess you should just play around and see how the sampling influences noise and IMU performance.
BTW, can you share some details about your kalman filter? It is still a bit of black magic to me. I have opened a thread here at viewtopic.php?t=13406
I was trying to use the screamer program you mention because I need to change the baud rate of the IMU but t I can’t compile the code Sparkfun sent me .