It's Alive! (9/4.2014) | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
The figure above shows a sample of accelerometer data from the ADXL345 breakout board. The values are unscaled and contain biases. In order to use the data, we need to figure out the biases and the scale factors. According the the ADXL345 spec sheet, the nominal scale factor for the device is 1/256 which means the acceleration is output/256, but the value can vary plus of minus 20 counts. You can get a good idea of the scale factor by rotating the device so that you can observe gravity along each axis.
For example,if we point the X axis straight up, the accelerometer measures a value of From the data plotted above, we can extract the maximum and minimum values for each axis and compute the biases and scale factors. My device yielded the following results:
These values are a good starting place, but for a working system, we need to be able to accomodate variations in scale factor and biases over time. That means including these variations in the filter state and tuning them to allow slow changes in the estimate. Let's take a look at the gyro biases. These are easy to determine. All we have to is hold the device stationary and plot the data. Here is an example of a 72 minute static gryo data collection run: Here are the statistics for the static gyro run which includes 29058 samples:
The X axis gyro appears to be twice as noisy as the Y and Z axis gyros. This will have to be taken into account in the design of the inertial navigation filter. We now have enough information to tackle GPS/INS integration. The next step is to collect some GPS and IMU data simultaneously and try combining the two together to get an improved solution. Next time, we shall see what we shall see. Thanks for visiting my web-site -- Cary Semar (9/4/2014) |