Preliminary Technical Data
Rev. PrA | Page 16 of 20
The mechanical structure and assembly process of the ADIS16385
provide excellent position and alignment stability for each sensor,
even after subjected to temperature cycles, shock, vibration, and
other environmental conditions. The factory calibration includes a
dynamic characterization of each sensor’s behavior over temperature
and generates sensor-specific correction formulas. The bias
correction registers in Table 30 provide users with the ability to
address bias shifts that can result from mechanical stress. Figure 19
illustrates the summing function of each sensor’s offset correction
Table 30. Registers for User Calibration
Gyroscope bias, x-axis
Gyroscope bias, y-axis
Gyroscope bias, z-axis
Accelerometer bias, x-axis
Accelerometer bias, y-axis
Accelerometer bias, z-axis
Figure 19. User Calibration, XGYRO_OFF Example
There are two options for optimizing gyroscope bias accuracy
prior to system deployment: automatic bias correction (ABC)
and manual bias correction (MBC).
Automatic Bias Correction (ABC)
Set GLOB_CMD = 1 (DIN = 0xBE01) to start the ABC
function, which uses the following internal sequence to
calibrate each gyroscope for bias error:
Set the output range to ±75°/sec and wait for a complete
output data cycle to complete (the SMPL_PRD[12:8] bits
set this time).
Read the output register of the gyroscope.
Multiply the measurement by −1 to change its polarity.
Write the final value into the offset register.
The Allan Variance curves in Figure 7, Figure 9, and Figure 8
provide a trade-off between bias accuracy and averaging time.
SMPL_PRD[12:8] provide a user control for averaging time
when using the ABC function. Use this setting, in combination
with GLOB_CMD, to create the automatic bias correction
Set SMPL_PRD[15:8] = 0x10 (DIN = 0xB710) to set the decimation
rate to 65,536 (216), which provides an averaging time of 64 seconds
(65536 ÷ 1024 SPS) for this function. Then, set GLOB_CMD = 1
(DIN = 0xBE01) and keep the platform stable for at least 65 seconds
while the gyroscope bias data accumulates. After this completes,
the ADIS16385 automatically updates the flash memory. The
SPI is inactive and does not respond to user inputs while the
ABC is processing. The only way to interrupt it is to remove
power or initiate a hardware reset using the RST pin. When
using SMPL_PRD[12:8] = 0x10, the 1-σ accuracy for this
correction is approximately 0.008°/sec for the X-axis and Y-axis
gyroscopes and 0.003°/sec for the Z-axis gyroscope. See Table 15
for more information on GLOB_CMD.
Manual Bias Correction
The manual bias correction (MBC) function requires the user to
collect the desired number of samples, calculate the averages to
develop bias estimates for each gyroscope channel, and then write
them into the bias offset registers, located in Table 31 for the gyro-
scopes. For example, set XGYRO_OFF = 0x1FF6 (DIN = 0x9B1F,
0x9AF6) to adjust the XGYRO_OUT offset by −0.03125°/sec
(−10 LSBs). Table 32 provides a manual adjustment function for
the accelerometer channels as well.
Table 31. XGYRO_OFF, YGYRO_OFF, and ZGYRO_OFF
Description (Default = 0x0000)
Twos complement, 0.003125°/sec per LSB. Typical
adjustment range = ±102°/sec.
Table 32. XACCL_OFF, YACCL_OFF, and ZACCL_OFF
Description (Default = 0x0000)
Data bits. Twos complement, 0.25 mg/LSB. Typical
adjustment range = ±8.192 g.
Restoring Factory Calibration
Set GLOB_CMD = 1 (DIN = 0xBE02) to execute the factory
calibration restore function. This is a single-command function,
which resets each user calibration register to 0x0000 and all sensor
data to zero. Then, it automatically updates the flash memory
within 50 ms. See Table 15 for more information on GLOB_CMD.
Set MSC_CTRL = 1 (DIN = 0xB486) to enable this feature
and maintain the factory-default settings for DIO1. This feature
performs a point-of-percussion translation to the point identified
in Figure 6. See Table 21 for more information on MSC_CTRL.