AN-1041: iSensor® IMU Quick Start Guide and Bias Optimization Tips (Rev. 0)

AN-1041
APPLICATION NOTE
One Technology Way • P.O. Box 9106 • Norwood, MA 02062-9106, U.S.A. • Tel: 781.329.4700 • Fax: 781.461.3113 • www.analog.com
iSensor® IMU Quick Start Guide and Bias Optimization Tips
by Mark Looney
INTRODUCTION
The iSensor IMU products include ADIS1636x and ADIS1640x.
These multi-axis, inertial sensing systems provide a basic
building block for many different motion analysis and control
applications (for example, navigation and platform stabilization).
DRILL AND INSERT
1.5mm PIN 2×
(HOLE PLACEMENT
INACCURACY MAY
REQUIRE USE OF
UNDERSIZED PIN).
PHYSICAL MOUNTING AND HANDLING
DRILL AND TAP FOR
M2 SCREW
AS REQUIRED
2×.
4
BSC
The iSensor IMU package has two basic parts for handling and
installation into a system: an aluminum baseplate and a flexible
connector (see Figure 1). The aluminum baseplate provides four
mounting tabs, which accommodate a number of attachment
approaches. Figure 2 and Figure 3 offer a simple method, which
uses two M2 or 2-56 machine screws to secure the baseplate to
the system printed circuit board. It also provides an option for
using the precision alignment holes to tighten initial sensor
alignment, with respect to the system’s inertial reference frame
in the yaw axis. Note that the dimensions in Figure 3 assume
that the baseplate attaches to the same surface that has the
electrical mating connector.
26.700
BSC
27.700
BSC
10
8.350
HOLE 2×.
SEE SAMTEC
MOUNTING DRAWING
FOR CLM SERIES SOCKET.
0.500 BSC
2×
16.810
2×
THE LOCATION OF THE MATING CONNECTOR
RELATIVE TO THE ALIGNMENT PINS MAY
BE PLACED ±0.75mm FROM THIS DIMENSION
AS DESIRED. PLACING THIS FURTHER OUT
WILL HAVE LESS BEND/STRESS RELIEF IN THE FLEX.
08403-003
4
BSC
Figure 3. Suggested Mounting Hole Locations
08403-001
Applications that anticipate high shock and vibration may
require more elaborate attachment systems to eliminate
mechanical resonance, but the two-screw approach provides a
simple starting point to begin data collection in parallel with
mechanical system design. Figure 4 provides the pad layout
pattern used for the mating connector (Samtec CLM-112-02LM-D-A) on the ADISUSBZ evaluation system.
Figure 1. IMU Package Style
1.588mm
HOLE AND SLOT
FOR ALIGNMENT
PINS, 2 EACH
0.4334 [11.0]
0.019685
[0.5000]
(TYP)
0.054 [1.37]
08403-002
0.0394 [1.00]
0.022±
DIA (TYP)
NONPLATED
0.022 DIA THRU HOLE (TYP)
NONPLATED THRU HOLE
THRU HOLE 2×
0.1800
[4.57]
0.0394 [1.00]
Figure 4. Suggested Layout and Mechanical Design for Mating Connector
Rev. 0 | Page 1 of 4
08403-004
DRILL AND TAP
HOLE FOR
2mm (2-56)
SCREW, 2 EACH
Figure 2. Two-Screw Mounting Approach, with Alignment Pins
0.0240 [0.610]
AN-1041
Application Note
IMU INSTALLATION AND REMOVAL
SPI INTERFACE
IMU installation follows a two-step sequence:
Table 2 provides a list of typical configuration settings that
master processors require for SPI communication with iSensor
IMUs. These settings are normally in control registers. For
example, the SPI_BAUD, SPI_CTL, and SPI_FLG registers serve
this purpose in the ADSP-BF533 processor family.
1.
2.
Secure the baseplate using machine screws.
Press the connector into its mate.
For removal, gently pry the connector from its mate, using a
small slot screwdriver. Then, remove the screws and lift the part
up. Never attempt to unplug the connector by pulling on the
plastic case or baseplate. While very reliable in normal
operation, the flexible connector can break when subjected to
unreasonable handling. When broken, there are no repair
options for the flexible connector.
ELECTRICAL HOOK-UP
When power is applied, the iSensor products start up and begin
producing data, independent of user inputs. Figure 5 provides a
hook-up diagram, which accommodates power, ground, four
serial signals, and a data-ready signal. The data-ready signal
typically drives an interrupt service routine in the master
processor, which ensures data coherency while optimizing
processor resources.
I/O LINES ARE COMPATIBLE WITH
3.3V OR 5V LOGIC LEVELS
10
11
12
ADIS1636x/
ADIS1640x
SS
6
CS
SCLK
3
SCLK
MOSI
5
DIN
MISO
4
DOUT
IRQ
7
DIO1
SPI SLAVE
14
15
08430-005
13
Processor Setting
Master
SCLK Rate ≤ 2 MHz
SPI Mode 3
MSB-First Mode
16-Bit Mode
Data communication requires firmware-level register management. Placing a command on DIN involves writing to the transmit
buffer register (SPI_TDBR in the ADSP-BF533). Acquiring
output data from DOUT involves reading the receive buffer
register (SPI_RDBR in the ADSP-BF533).
OPTIMIZING BIAS ACCURACY AND STABILITY
1.
2.
Figure 5. Electrical Hook-Up Diagram
Table 1. Generic Master Processor Pin Names and Functions
Pin Name
SS
IRQ
MOSI
MISO
SCLK
Function
Slave select
Interrupt request
Master output, slave input
Master input, slave output
Serial clock
Description
The iSensor IMUs operate as slaves.
Normal mode, SMPL_PRD[7:0] ≤ 0x09.
CPOL = 1 (polarity), CHPA = 1 (phase).
Bit sequence.
Shift register/data length.
All of the iSensor IMUs include a factory calibration that provides
substantial improvements in bias accuracy over most MEMS
gyroscopes. Some environmental conditions (such as temperature cycling and installation) can cause minor shifts in gyroscope
output bias. A single-point adjustment can address these shifts
and restore the entire calibration, including the temperature
correction that comes with some parts. This involves measuring
the zero-rotation gyroscope output and writing the opposite
value into its offset register. There are three basic options for
executing the single-point adjustment in the gyroscopes: autonull,
precision autonull, and manual calibration. The following
conditions/settings help assure optimum accuracy during this
process:
5V
VDD
SYSTEM
PROCESSOR
SPI MASTER
Table 2. Generic Master Processor SPI Settings
3.
Rev. 0 | Page 2 of 4
Sample rate = 819.2 SPS (SMPL_PRD[7:0] = 0x01)
Thermal stability
Reading the temperature output registers can help
determine when this happens.
Zero rotation (including vibration)
Take a small sample of data and make sure that the output
noise is in agreement with the data sheet. For example,
with no filtering, the ADIS1636x and ADIS1640x should
have less than 1°/sec rms of noise on their gyroscopes.
Application Note
AN-1041
Averaging multiple samples of each gyroscope helps address the
uncertainty associated with gyroscope noise. The Allan variance
curve provides a relationship between averaging time and bias
accuracy.
Manual calibration offers the advantage of optimizing the bias
accuracy for applications that can accommodate the extended
averaging times. In reviewing the Allan variance curve (see
Figure 6), a 100 second average time yields the best accuracy
for a given population of parts. Use the following steps to
achieve the best manual calibration results:
1.
2.
+1σ
0.01
MEAN
3.
4.
5.
6.
–1σ
0.001
0.1
1
10
100
1k
10k
Tau (sec)
08403-006
ROOT ALLAN VARIANCE (°/sec)
0.1
Manual Calibration
Figure 6. ADIS1636x/ADIS1640x Allan Variance Curve
Autonull Function
The autonull function automatically reads each gyroscope
output register and writes the opposite value into the appropriate user offset register. Use the following steps to obtain the best
results from this option:
1.
2.
3.
4.
SMPL_PRD[7:0] = 0x01 (DIN = 0xB601)
SENS_AVG[7:0] = 0x06 (DIN = 0xB806)
Allow 200 ms for the internal filter taps to fill up.
GLOB_CMD[0] = 1 (DIN = 0xBE01)
When using this sequence, the equivalent averaging time is
approximately 0.15 seconds. According to Figure 6, this
produces a bias accuracy of approximately 0.08°/sec.
7.
8.
SMPL_PRD[7:0] = 0x01 (DIN = 0xB601)
Wait 1 min to 2 min for initial thermal settling. This may
be application-dependent and require warm-up periods up
to 10 min to 15 min.
Verify by reading the TEMP_OUT registers.
Read 82,000 samples at 819.2 SPS (~100 seconds)
Calculate the average of these values.
Convert this estimate into an offset correction factor.
For the internal user-offset registers:
a. Multiply the estimate by 80.
b. Round it to the nearest integer.
c. Convert the number to a 14-bit, twos complement
format.
Write it to the appropriate user-offset register.
GLOB_CMD[3] = 1 (DIN = 0xBE04), if using the internal
user-offset correction registers.
The user-offset registers offer a resolution step size of 0.0125°/sec,
which is sufficient for a large majority of applications. For those
who have the opportunity to perform the correction in their
processor, users can achieve incremental performance gains and
increase the number of parts that perform to the 0.006°/sec bias
accuracy shown in Figure 6. In this case, use a 16-bit register that
adds to the IMU gyroscope outputs and change the multiplication factor in Step 6a from 80 to 320.
Sample Rate Decimation
Precision Autonull Function
The precision autonull function offers better accuracy than
the autonull function by taking a 30 second average of each
gyroscope output, then calculating the appropriate correction
factors and automatically loading them into the user-offset
register. During the 30 second measurement period, the IMU
automatically sets its sample rate and filters for optimal data
collection. For the ADIS1636x and ADIS1640x families, the
bias correction accuracy can approach 0.008°/sec (see Figure 6,
30 second average time). Execute this function by setting GLB_
CMD[4] = 1 (DIN = 0xBE10).
The internal sample rate of 819.2 SPS is essential to preserving
the best bias stability performance in these products. For applications that value lower sample rates, use the internal Bartlett
window filters to limit the bandwidth and decimate the data
available in the gyroscope and accelerometer output registers.
One method is to use the data-ready output to drive a counter,
which divides the system-level sample rate by integer levels.
While each system may require specific tuning, use the number
of taps per stage in the Bartlett window filter as the maximum
division factor in each setup. For example, if SENS_AVG[2:0] =
100, which translates to 16 taps per stage, users can divide the
sample rate by any integer number between 2 and 16 and still
preserve optimum bias stability performance.
Rev. 0 | Page 3 of 4
AN-1041
Application Note
NOTES
©2009 Analog Devices, Inc. All rights reserved. Trademarks and
registered trademarks are the property of their respective owners.
AN08403-0-8/09(0)
Rev. 0 | Page 4 of 4