Compact, Precision Six Degrees of Freedom Inertial Sensor ADIS16445 Data Sheet FEATURES GENERAL DESCRIPTION Triaxial digital gyroscope with digital range scaling ±62°/sec, ±125°/sec, ±250°/sec settings Axis-to-axis alignment, <0.05° Triaxial digital accelerometer, ±5 g minimum Autonomous operation and data collection No external configuration commands required 175 ms start-up time Factory calibrated sensitivity, bias, and axial alignment Calibration temperature range: −40°C to +70°C SPI-compatible serial interface Embedded temperature sensor Programmable operation and control Automatic and manual bias correction controls Bartlett window FIR length, number of taps Digital I/O: data ready, alarm indicator, general-purpose Alarms for condition monitoring Enable external sample clock input up to 1.1 kHz Single command self test Single-supply operation: 3.15 V to 3.45 V 2000 g shock survivability Operating temperature range: −40°C to +85°C The ADIS16445 iSensor® device is a complete inertial system that includes a triaxial gyroscope and a triaxial accelerometer. Each sensor in the ADIS16445 combines industry-leading iMEMS® technology with signal conditioning that optimizes dynamic performance. The factory calibration characterizes each sensor for sensitivity, bias, alignment, and linear acceleration (gyroscope bias). As a result, each sensor has its own dynamic compensation formulas that provide accurate sensor measurements. The ADIS16445 provides a simple, cost-effective method for integrating accurate, multiaxis inertial sensing into industrial systems, especially when compared with the complexity and investment associated with discrete designs. All necessary motion testing and calibration are part of the production process at the factory, greatly reducing system integration time. Tight orthogonal alignment simplifies inertial frame alignment in navigation systems. The SPI and register structures provide a simple interface for data collection and configuration control. The ADIS16445 has a compatible pinout for systems that currently use other Analog Devices, Inc., IMU products (ADIS163xx/ ADIS164xx). The ADIS16445 is packaged in a module that is approximately 24.1 mm × 37.7 mm × 10.8 mm and has a standard connector interface. APPLICATIONS Platform stabilization and control Navigation Robotics FUNCTIONAL BLOCK DIAGRAM DIO1 DIO2 DIO3 DIO4 RST I/O ALARMS TRIAXIAL GYRO TRIAXIAL ACCEL CONTROLLLER CALIBRATION AND FILTERS OUTPUT DATA REGISTERS CLOCK ADIS16445 GND CS SCLK SPI USER CONTROL REGISTERS TEMP VDD POWER MANAGEMENT DIN DOUT 11051-001 SELF TEST VDD Figure 1. Rev. A Document Feedback Information furnished by Analog Devices is believed to be accurate and reliable. However, no responsibility is assumed by Analog Devices for its use, nor for any infringements of patents or other rights of third parties that may result from its use. Specifications subject to change without notice. No license is granted by implication or otherwise under any patent or patent rights of Analog Devices. Trademarks and registered trademarks are the property of their respective owners. One Technology Way, P.O. Box 9106, Norwood, MA 02062-9106, U.S.A. Tel: 781.329.4700 ©2012–2013 Analog Devices, Inc. All rights reserved. Technical Support www.analog.com ADIS16445 Data Sheet TABLE OF CONTENTS Features .............................................................................................. 1 Status/Error Flags ....................................................................... 15 Applications ....................................................................................... 1 Memory Management ............................................................... 15 General Description ......................................................................... 1 Input/Output Configuration ......................................................... 16 Functional Block Diagram .............................................................. 1 Data Ready Indicator ................................................................. 16 Revision History ............................................................................... 2 General-Purpose Input/Output................................................ 16 Specifications..................................................................................... 3 Digital Processing Configuration ................................................. 17 Timing Specifications .................................................................. 5 Gyroscopes/Accelerometers ..................................................... 17 Absolute Maximum Ratings ............................................................ 6 Input Clock Configuration ....................................................... 17 ESD Caution .................................................................................. 6 Calibration ....................................................................................... 18 Pin Configuration and Function Descriptions ............................. 7 Gyroscopes .................................................................................. 18 Typical Performance Characteristics ............................................. 8 Accelerometers ........................................................................... 18 User Registers .................................................................................... 9 Flash Updates .............................................................................. 19 User Interface .................................................................................. 10 Restoring Factory Calibration .................................................. 19 Reading Sensor Data .................................................................. 10 Alarms .............................................................................................. 20 Device Configuration ................................................................ 11 Static Alarm Use ......................................................................... 20 Output Data Registers .................................................................... 12 Dynamic Alarm Use .................................................................. 20 Gyroscopes .................................................................................. 12 Alarm Reporting ........................................................................ 20 Accelerometers............................................................................ 12 Applications Information .............................................................. 21 Internal Temperature ................................................................. 13 Power Supply Considerations ................................................... 21 System Functions ............................................................................ 14 ADIS16445/PCBZ ...................................................................... 21 Global Commands ..................................................................... 14 PC-Based Evaluation Tools ....................................................... 21 Product Identification ................................................................ 14 Outline Dimensions ....................................................................... 22 Self-Test Function ....................................................................... 14 Ordering Guide .......................................................................... 22 REVISION HISTORY 3/13—Rev. 0 to Rev. A Changes to Table 1 ............................................................................ 3 Deleted Mounting Approaches Section ....................................... 21 Updated Outline Dimensions ....................................................... 22 10/12—Revision 0: Initial Version Rev. A | Page 2 of 24 Data Sheet ADIS16445 SPECIFICATIONS TA = 25°C, VDD = 3.3 V, angular rate = 0°/sec, dynamic range = ±250°/sec ± 1 g, unless otherwise noted. Table 1. Parameter GYROSCOPES Dynamic Range Initial Sensitivity Repeatability 1 Sensitivity Temperature Coefficient Misalignment Nonlinearity Bias Repeatability1, 2 In-Run Bias Stability Angular Random Walk Bias Temperature Coefficient Linear Acceleration Effect on Bias Bias Supply Sensitivity Output Noise Rate Noise Density −3 dB Bandwidth Sensor Resonant Frequency ACCELEROMETERS Dynamic Range Initial Sensitivity Repeatability1 Sensitivity Temperature Coefficient Misalignment Nonlinearity Bias Repeatability1, 2 In-Run Bias Stability Velocity Random Walk Bias Temperature Coefficient Bias Supply Sensitivity Output Noise Noise Density −3 dB Bandwidth Sensor Resonant Frequency TEMPERATURE Sensitivity LOGIC INPUTS 3 Input High Voltage, VIH Input Low Voltage, VIL Logic 1 Input Current, IIH Logic 0 Input Current, IIL All Pins Except RST RST Pin Input Capacitance, CIN Test Conditions/Comments Min Typ Max ±250 ±250°/sec, see Table 12 ±125°/sec ±62°/sec −40°C ≤ TA ≤ +70°C −40°C ≤ TA ≤ +70°C Axis to axis Axis to frame (package) Best fit straight line −40°C ≤ TA ≤ +70°C, 1 σ 1 σ, SMPL_PRD = 0x0001 1 σ, SMPL_PRD = 0x0001 −40°C ≤ TA ≤ +85°C Any axis, 1 σ (MSC_CTRL[6] = 1) +3.15 V ≤ VDD ≤ +3.45 V ±250°/sec range, no filtering f = 25 Hz, ±250°/sec range, no filtering 0.01 0.005 0.0025 1 ±40 ±0.05 ±0.5 ±0.1 0.5 12 0.56 ±0.005 ±0.015 ±0.2 0.22 0.011 330 17.5 Unit °/sec °/sec/LSB °/sec/LSB °/sec/LSB % ppm/°C Degrees Degrees % of FS °/sec °/hr °/√hr °/sec/°C °/sec/g °/sec/V °/sec rms °/sec/√Hz rms Hz kHz Each axis See Table 16 for data format −40°C ≤ TA ≤ +70°C −40°C ≤ TA ≤ +70°C Axis to axis Axis to frame (package) Best fit straight line −40°C ≤ TA ≤ +70°C, 1 σ 1 σ, SMPL_PRD = 0x0001 1 σ, SMPL_PRD = 0x0001 −40°C ≤ TA ≤ +85°C +3.15 V ≤ VDD ≤ +3.45 V No filtering No filtering ±5 0.2475 See Table 17 ±40 ±0.2 ±0.5 ±0.2 ±8 0.075 0.073 ±0.04 1.5 2.25 0.105 330 5.5 g mg/LSB % ppm/°C Degrees Degrees % of FS mg mg m/sec/√hr mg/°C mg/V mg rms mg/√Hz rms Hz kHz 0.07386 °C/LSB 0.25 0.2525 1 2.0 VIH = 3.3 V VIL = 0 V ±0.2 40 1 10 Rev. A | Page 3 of 24 0.8 ±10 60 V V µA µA mA pF ADIS16445 Parameter DIGITAL OUTPUTS3 Output High Voltage, VOH Output Low Voltage, VOL FLASH MEMORY Data Retention 5 FUNCTIONAL TIMES 6 Power-On Start-Up Time Reset Recovery Time 7 Flash Memory Back-Up Time Flash Memory Test Time Automatic Self-Test Time CONVERSION RATE xGYRO_OUT, xACCL_OUT Clock Accuracy Sync Input Clock 8 POWER SUPPLY Power Supply Current Data Sheet Test Conditions/Comments Min ISOURCE = 1.6 mA ISINK = 1.6 mA Endurance 4 TJ = 85°C Time until new data is available 2.4 Typ 0.4 10,000 20 SMPL_PRD = 0x0001 175 55 55 20 16 SMPL_PRD = 0x0001 819.2 Operating voltage range, VDD VDD = 3.15 V Max 0.8 3.15 3.3 74 Unit V V Cycles Years ms ms ms ms ms ±3 1.1 3.45 SPS % kHz V mA The repeatability specifications represent analytical projections, which are based off of the following drift contributions and conditions: temperature hysteresis (−40°C to +70°C), electronics drift (high-temperature operating life test: 85°C, 500 hours), drift from temperature cycling (JESD22, Method A104-C, Method N, 500 cycles, −40°C to +85°C), rate random walk (10 year projection), and broadband noise. 2 Bias repeatability describes a long-term behavior, over a variety of conditions. Short-term repeatability is related to the in-run bias stability and noise density specifications. 3 The digital I/O signals are driven by an internal 3.3 V supply, and the inputs are 5 V tolerant. 4 Endurance is qualified as per JEDEC Standard 22, Method A117, and measured at −40°C, +25°C, +85°C, and +125°C. 5 The data retention lifetime equivalent is at a junction temperature (TJ) of 85°C as per JEDEC Standard 22, Method A117. Data retention lifetime decreases with junction temperature. 6 These times do not include thermal settling and internal filter response times (330 Hz bandwidth), which may affect overall accuracy. 7 The RST line must be held low for at least 10 μs to assure a proper reset and recovery sequence. 8 The sync input clock functions below the specified minimum value but at reduced performance levels. 1 Rev. A | Page 4 of 24 Data Sheet ADIS16445 TIMING SPECIFICATIONS TA = 25°C, VDD = +3.3 V, unless otherwise noted. Table 2. Parameter fSCLK tSTALL tREADRATE t tDAV tDSU tDHD tSCLKR, tSCLKF tDR, tDF tSFS t1 tSTDR tNV t3 CS 1 2 Min1 0.01 9 40 48.8 Description Serial clock Stall period between data Read rate Chip select to SCLK edge DOUT valid after SCLK edge DIN setup time before SCLK rising edge DIN hold time after SCLK rising edge SCLK rise/fall times, not shown in timing diagrams DOUT rise/fall times, not shown in timing diagrams CS high after SCLK edge Input sync positive pulse width Input sync to data ready valid transition Data invalid time Input sync period Normal Mode Typ Max 2.0 Min1 0.01 N/A2 Burst Read Typ Max 1.0 Unit MHz μs μs ns ns ns ns ns ns ns μs μs μs μs 48.8 100 100 24.4 48.8 24.4 48.8 5 5 12.5 12.5 5 5 5 25 12.5 12.5 5 25 670 210 670 210 910 910 Guaranteed by design and characterization, but not tested in production. When using the burst read mode, the stall period is not applicable. Timing Diagrams CS tCS tSFS 1 2 3 4 5 6 15 16 SCLK tDAV MSB DB14 DB13 tDSU DIN R/W A6 DB12 DB11 A4 A3 DB10 DB2 DB1 LSB tDHD A5 A2 D2 D1 11051-002 DOUT LSB Figure 2. SPI Timing and Sequence tREADRATE tSTALL 11051-003 CS SCLK Figure 3. Stall Time and Data Rate t3 tSTDR t1 DATA READY tNV Figure 4. Input Clock Timing Diagram Rev. A | Page 5 of 24 11051-004 CLOCK ADIS16445 Data Sheet ABSOLUTE MAXIMUM RATINGS Table 3. Parameter Acceleration Any Axis, Unpowered Any Axis, Powered VDD to GND Digital Input Voltage to GND Digital Output Voltage to GND Temperature Operating Range Storage Range Rating 2000 g 2000 g −0.3 V to +3.45 V −0.3 V to +VDD + 0.3 V −0.3 V to +VDD + 0.3 V −40°C to +85°C −65°C to +125°C1, 2 Stresses above those listed under Absolute Maximum Ratings may cause permanent damage to the device. This is a stress rating only; functional operation of the device at these or any other conditions above those indicated in the operational section of this specification is not implied. Exposure to absolute maximum rating conditions for extended periods may affect device reliability. Table 4. Package Characteristics Package Type 20-Lead Module (ML-20-3) Extended exposure to temperatures outside the specified temperature range of −40°C to +105°C can adversely affect the accuracy of the factory calibration. For best accuracy, store the parts within the specified operating range of −40°C to +105°C. 2 Although the device is capable of withstanding short-term exposure to 150°C, long-term exposure threatens internal mechanical integrity. 1 ESD CAUTION Rev. A | Page 6 of 24 θJA (°C/W) 36.5 θJC (°C/W) 16.9 Mass (grams) 15 Data Sheet ADIS16445 PIN CONFIGURATION AND FUNCTION DESCRIPTIONS ADIS16445 GND GND VDD DIO2 DIO1 DIN SCLK DIO3 15 13 11 9 7 5 3 1 20 18 16 14 12 10 8 6 4 2 DNC DNC GND VDD VDD RST CS DOUT DIO4/CLKIN NOTES 1. THIS REPRESENTATION DISPLAYS THE TOP VIEW WHEN THE CONNECTOR IS VISIBLE AND FACING UP. 2. MATING CONNECTOR: SAMTEC CLM-110-02 OR EQUIVALENT. 3. DNC = DO NOT CONNECT. PIN 1 PIN 20 11051-006 DNC 17 11051-005 DNC 19 DNC TOP VIEW (Not to Scale) Figure 5. Pin Configuration Figure 6. Pin Locations Table 5. Pin Function Descriptions Pin No. 1 2 3 4 5 6 7 8 9 10, 11, 12 13, 14, 15 16, 17, 18, 19, 20 1 Mnemonic DIO3 DIO4/CLKIN SCLK DOUT DIN CS DIO1 RST DIO2 VDD GND DNC Type 1 I/O I/O I O I I I/O I I/O S S N/A Description Configurable Digital Input/Output. Configurable Digital Input/Output or Sync Clock Input. SPI Serial Clock. SPI Data Output. Clocks the output on the SCLK falling edge. SPI Data Input. Clocks the input on the SCLK rising edge. SPI Chip Select. Configurable Digital Input/Output. Reset. Configurable Digital Input/Output. Power Supply. Power Ground. Do Not Connect. Do not connect to these pins. S is supply, O is output, I is input, N/A is not applicable. Rev. A | Page 7 of 24 ADIS16445 Data Sheet TYPICAL PERFORMANCE CHARACTERISTICS ROOT ALLAN VARIANCE (mg) 10 100 +σ AVERAGE 10 –σ 1 +σ AVERAGE 0.1 0.1 1 10 100 1k Tau (Seconds) 10k Figure 7. Gyroscope Root Allan Variance 0.01 0.01 0.1 1 10 100 1k Tau (Seconds) Figure 8. Accelerometer Root Allan Variance Rev. A | Page 8 of 24 10k 11051-008 –σ 1 0.01 11051-007 ROOT ALLAN VARIANCE (°/Hour) 1000 Data Sheet ADIS16445 USER REGISTERS Table 6. User Register Memory Map Name FLASH_CNT Reserved XGYRO_OUT YGYRO_OUT ZGYRO_OUT XACCL_OUT YACCL_OUT ZACCL_OUT Reserved TEMP_OUT XGYRO_OFF YGYRO_OFF ZGYRO_OFF XACCL_OFF YACCL_OFF ZACCL_OFF Reserved GPIO_CTRL MSC_CTRL SMPL_PRD SENS_AVG Reserved DIAG_STAT Reserved GLOB_CMD ALM_MAG1 ALM_MAG2 ALM_SMPL1 ALM_SMPL2 ALM_CTRL Reserved LOT_ID1 LOT_ID2 PROD_ID SERIAL_NUM 1 R/W R N/A R R R R R R N/A R R/W R/W R/W R/W R/W R/W N/A R/W R/W R/W R/W N/A R N/A W R/W R/W R/W R/W R/W N/A R R R R Flash Backup Yes N/A No No No No No No N/A No Yes Yes Yes Yes Yes Yes N/A No Yes Yes Yes N/A No N/A N/A Yes Yes Yes Yes Yes N/A Yes Yes Yes Yes Address 1 0x00 0x02 0x04 0x06 0x08 0x0A 0x0C 0x0E 0x10 to 0x16 0x18 0x1A 0x1C 0x1E 0x20 0x22 0x24 0x26 to 0x30 0x32 0x34 0x36 0x38 0x3A 0x3C 0x3A 0x3E 0x40 0x42 0x44 0x46 0x48 0x4A to 0x51 0x52 0x54 0x56 0x58 Default N/A N/A N/A N/A N/A N/A N/A N/A N/A N/A 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 N/A 0x0000 0x0006 0x0001 0x0402 N/A 0x0000 N/A 0x0000 0x0000 0x0000 0x0000 0x0000 0x0000 N/A N/A N/A 0x403D N/A Function Flash memory write count N/A X-axis gyroscope output Y-axis gyroscope output Z-axis gyroscope output X-axis accelerometer output Y-axis accelerometer output Z-axis accelerometer output Reserved Temperature output X-axis gyroscope bias offset factor Y-axis gyroscope bias offset factor Z-axis gyroscope bias offset factor X-axis acceleration bias offset factor Y-axis acceleration bias offset factor Z-axis acceleration bias offset factor Reserved Auxiliary digital input/output control Miscellaneous control Internal sample period (rate) control Dynamic range and digital filter control Reserved System status Reserved System command Alarm 1 amplitude threshold Alarm 2 amplitude threshold Alarm 1 sample size Alarm 2 sample size Alarm control Reserved Lot identification number Lot identification number Product identifier Lot-specific serial number Bit Assignments See Table 26 N/A See Table 9 See Table 10 See Table 11 See Table 13 See Table 14 See Table 15 N/A See Table 17 See Table 30 See Table 31 See Table 32 See Table 33 See Table 34 See Table 35 N/A See Table 27 See Table 24 See Table 28 See Table 29 N/A See Table 25 N/A See Table 19 See Table 36 See Table 37 See Table 38 See Table 39 See Table 40 N/A See Table 20 See Table 21 See Table 22 See Table 23 Each register contains two bytes. The address of the lower byte is displayed. The address of the upper byte is equal to the address of the lower byte plus 1. Rev. A | Page 9 of 24 ADIS16445 Data Sheet USER INTERFACE The ADIS16445 is an autonomous system that requires no user initialization. When it has a valid power supply, it initializes itself and starts sampling, processing, and loading sensor data into the output registers at a sample rate of 819.2 SPS. DIO1 pulses high after each sample cycle concludes. The SPI interface enables simple integration with many embedded processor platforms, as shown in Figure 9 (electrical connection) and Table 7 (pin functions). The ADIS16445 provides two different options for acquiring sensor data: a single register and a burst register. A single register read requires two 16-bit SPI cycles. The first cycle requests the contents of a register using the bit assignments in Figure 12. Bit DC7 to Bit DC0 are don’t cares for a read, and then the output register contents follow on DOUT during the second sequence. Figure 10 includes three single register reads in succession. 12 SS 6 CS 3 SCLK MOSI 5 DIN MISO 4 DOUT IRQ 7 DIO1 14 15 11051-009 13 In this example, the process starts with DIN = 0x0400 to request the contents of XGYRO_OUT, then follows with 0x0600 to request YGYRO_OUT, and 0x0800 to request ZGYRO_OUT. Full duplex operation enables processors to use the same 16-bit SPI cycle to read data from DOUT while requesting the next set of data on DIN. Figure 11 provides an example of the four SPI signals when reading XGYRO_OUT in a repeating pattern. Figure 9. Electrical Connection Diagram Table 7. Generic Master Processor Pin Names and Functions Pin Name SS SCLK MOSI MISO IRQ Function Slave select Serial clock Master output, slave input Master input, slave output Interrupt request DIN 0x0400 DOUT The ADIS16445 SPI interface supports full duplex serial communication (simultaneous transmit and receive) and uses the bit sequence shown in Figure 12. Table 8 provides a list of the most common settings that require attention to initialize the serial port of a processor for the ADIS16445 SPI interface. 0x0600 0x0800 XGYRO_OUT YGYRO_OUT ZGYRO_OUT 11051-010 11 ADIS16445 SCLK For burst read, SCLK rate ≤ 1 MHz. READING SENSOR DATA 10 SYSTEM PROCESSOR SPI MASTER 1 +3.3V Description The ADIS16445 operates as a slave Maximum serial clock rate CPOL = 1 (polarity), CPHA = 1 (phase) Bit sequence Shift register/data length Figure 10. SPI Read Example CS SCLK DIN DIN = 0000 0100 0000 0000 = 0x0400 DOUT DOUT = 1111 10011101 1010 = 0xF9DA = –15.74°/sec LSBs ≥ –62.96°/sec Figure 11. Example SPI Read, Second Sequence, SENS_AVG[15:8] = 0x04 CS DIN DOUT R/W D15 A6 A5 A4 A3 A2 A1 A0 DC7 DC6 DC5 DC4 DC3 DC2 DC1 DC0 D14 D13 D12 D11 D10 D9 D8 D7 D6 D5 D4 D3 D2 D1 D0 NOTES 1. THE DOUT BIT PATTERN REFLECTS THE ENTIRE CONTENTS OF THE REGISTER IDENTIFIED BY [A6:A0] IN THE PREVIOUS 16-BIT DIN SEQUENCE WHEN R/W = 0. 2. IF R/W = 1 DURING THE PREVIOUS SEQUENCE, DOUT IS NOT DEFINED. Figure 12. SPI Communication Bit Sequence Rev. A | Page 10 of 24 R/W D15 A6 A5 D14 D13 11051-012 SCLK 11051-011 VDD I/O LINES ARE COMPATIBLE WITH 3.3V OR 5V LOGIC LEVELS Table 8. Generic Master Processor SPI Settings Processor Setting Master SCLK Rate ≤ 2 MHz1 SPI Mode 3 MSB-First Mode 16-Bit Mode Data Sheet ADIS16445 Burst Read Function DEVICE CONFIGURATION The burst read function enables the user to read all output registers using one command on the DIN line, 0x3E00. When using this mode, one can read all of the data in one continuous stream of bits (no stall time between each register). After the 0x3E00 command, use 12 sequential, 16-bit read commands to complete the sequence (DIN is “don’t care” after 0x3E00). Figure 13 provides the burst read sequence of data on each SPI signal. The sequence starts with writing 0x3E00 to DIN, followed by each output register clocking out on DOUT, in the order in which they appear in Figure 12. The control registers in Table 6 provide users with a variety of configuration options. The SPI provides access to these registers, one byte at a time, using the bit assignments in Figure 12. Each register has 16 bits, where Bits[7:0] represent the lower address, and Bits[15:8] represent the upper address. Figure 15 provides an example of writing 0x04 to Address 0x37 (SMPL_PRD[15:8], using DIN = 0xB704). This example reduces the sample rate by a factor of eight (see Table 28). 1 2 3 SCLK 9 DIN SCLK 11051-015 CS CS DIN = 1011 0111 0000 0100 = 0xB704, WRITES 0x04 TO ADDRESS 0x37. DIAG_STAT XGYRO_OUT TEMP_OUT Figure 13. Burst Read Sequence SPI Read Test Sequence Figure 14 provides a test pattern for testing the SPI communication. In this pattern, write 0x5600 to the DIN line in a repeating pattern and raise chip select for at least 9 μs between each 16-bit sequence. Starting with the second 16-bit sequence, DOUT produces the contents of the PROD_ID register, 0x403D (see Table 22). CS SCLK DIN = 0101 0110 0000 0000 = 0x5600 DOUT DOUT = 0100 0000 0011 1101 = 0x403D = 16,445 Dual Memory Structure Writing configuration data to a control register updates its SRAM contents, which are volatile. After optimizing each relevant control register setting in a system, set GLOB_CMD[3] = 1 (DIN = 0xBE08) to back up these settings in nonvolatile flash memory. The flash backup process requires a valid power supply level for the entire process time, 75 ms. Table 6 provides a user register memory map that includes a flash backup column. A Yes in this column indicates that a register has a mirror location in flash and, when backed up properly, it automatically restores itself during startup or after a reset. Figure 16 provides a diagram of the dual memory structure used to manage operation and store critical user settings. MANUAL FLASH BACKUP 11051-014 DIN Figure 15. Example SPI Write Sequence Figure 14. SPI Test Read Pattern DIN = 0x5600, DOUT = 0x403D NONVOLATILE FLASH MEMORY VOLATILE SRAM (NO SPI ACCESS) SPI ACCESS START-UP RESET Figure 16. SRAM and Flash Memory Diagram Rev. A | Page 11 of 24 11051-016 DOUT GLOB_CMD 11051-013 DIN ADIS16445 Data Sheet OUTPUT DATA REGISTERS Each sensor in the ADIS16445 has a dedicated output register in the user register map (see Table 6). Figure 17 provides arrows, which describe the direction or rotation (gX, gY, gZ) and acceleration (aX, aY, aZ) that produces a positive response in the output data. GYROSCOPES XGYRO_OUT (see Table 9) contains x-axis gyroscope data (gX in Figure 17), YGYRO_OUT (see Table 10) contains y-axis gyroscope data (gY in Figure 17), and ZGYRO_OUT (see Table 11) contains z-axis gyroscope data (gZ in Figure 17). Table 12 illustrates the gyroscope data format with numerical examples. Table 9. XGYRO_OUT (Base Address = 0x04), Read Only Bits [15:0] Description X-axis gyroscope data, twos complement format, 100 LSB/°/sec (SENS_AVG[15:8] = 0x04), 0°/sec = 0x0000 Table 10. YGYRO_OUT (Base Address = 0x06), Read Only Bits [15:0] Description Y-axis gyroscope data, twos complement format, 100 LSB/°/sec (SENS_AVG[15:8] = 0x04), 0°/sec = 0x0000 Table 11. ZGYRO_OUT (Base Address = 0x08), Read Only Bits [15:0] Description Z-axis gyroscope data, twos complement format, 100 LSB/°/sec (SENS_AVG[15:8] = 0x04), 0°/sec = 0x0000 Table 12. Rotation Rate, Twos Complement Format1 Rotation Rate (°/sec) +250 +2 ÷ 100 +1 ÷ 100 0 −1 ÷ 100 −2 ÷ 100 −250 1 Decimal 25,000 +2 +1 0 −1 −2 −25,000 Hex 0x61A8 0x0002 0x0001 0x0000 0xFFFF 0xFFFE 0x9E58 Binary 0110 0001 1010 1000 0000 0000 0000 0010 0000 0000 0000 0001 0000 0000 0000 0000 1111 1111 1111 1111 1111 1111 1111 1110 1001 1110 0101 1000 ACCELEROMETERS XACCL_OUT (see Table 13) contains x-axis accelerometer data (aX in Figure 17), YACCL_OUT (see Table 14) contains y-axis accelerometer data (aY in Figure 17), and ZACCL_OUT (see Table 15) contains z-axis accelerometer data (aZ in Figure 17). Table 16 illustrates the accelerometer data format with numerical examples. Table 13. XACCL_OUT (Base Address = 0x0A), Read Only Bits [15:0] Description X-axis acceleration data, twos complement format, 4000 LSB/g, 0 g = 0x0000 Table 14. YACCL_OUT (Base Address = 0x0C), Read Only Bits [15:0] Description Y-axis acceleration data, twos complement format, 4000 LSB/g, 0 g = 0x0000 Table 15. ZACCL_OUT (Base Address = 0x0E), Read Only Bits [15:0] Description Z-axis acceleration data, twos complement format, 4000 LSB/g, 0 g = 0x0000 Table 16. Acceleration, Twos Complement Format Acceleration (g) +5 +2 ÷ 4000 +1 ÷ 4000 0 −1 ÷ 4000 −2 ÷ 4000 −5 SENS_AVG[15:8] = 0x04, see Table 29. Rev. A | Page 12 of 24 Decimal 20,000 +2 +1 0 −1 −2 −20,000 Hex 0x4E20 0x0002 0x0001 0x0000 0xFFFF 0xFFFE 0xB1E0 Binary 0100 1110 0010 0000 0000 0000 0000 0010 0000 0000 0000 0001 0000 0000 0000 0000 1111 1111 1111 1111 1111 1111 1111 1110 1011 0001 1110 0000 Data Sheet ADIS16445 Z-AXIS aZ gZ X-AXIS Y-AXIS aX aY gX 11051-017 gY Figure 17. Inertial Sensor Direction Reference INTERNAL TEMPERATURE The internal temperature measurement data loads into the TEMP_OUT (see Table 17) register. Table 18 illustrates the temperature data format. Note that this temperature represents an internal temperature reading, which does not precisely represent external conditions. The intended use of TEMP_OUT is to monitor relative changes in temperature. Table 17. TEMP_OUT (Base Address = 0x18), Read Only Bits [15:12] [11:0] Description Not used Twos complement, 0.07386°C/LSB, 31°C = 0x000 Table 18. Temperature, Twos Complement Format Temperature (°C) +105 +85 +31.14771 +31.07386 +31 +30.92614 +30.85229 −40 Rev. A | Page 13 of 24 Decimal +1002 +731 +2 +1 0 −1 −2 −962 Hex 0x3EA 0x2DB 0x002 0x001 0x000 0xFFF 0xFFE 0xC3E Binary 0011 1110 1010 0010 1101 1011 0000 0000 0010 0000 0000 0001 0000 0000 0000 1111 1111 1111 1111 1111 1110 1100 0011 1110 ADIS16445 Data Sheet SYSTEM FUNCTIONS GLOBAL COMMANDS SELF-TEST FUNCTION The GLOB_CMD register in Table 19 provides trigger bits for software reset, flash memory management, and calibration control. Start each of these functions by writing a 1 to the assigned bit in GLOB_CMD. After completing the task, the bit automatically returns to 0. The MSC_CTRL register in Table 24 provides a self-test function for the gyroscopes and accelerometers. This function allows the user to verify the mechanical integrity of each MEMS sensor. When enabled, the self test applies an electrostatic force to each internal sensor element, which causes them to move. The movement in each element simulates its response to actual rotation/ acceleration and generates a predictable electrical response in the sensor outputs. Set MSC_CTRL[10] = 1 (DIN = 0xB504) to activate the internal self-test routine, which compares the response to an expected range of responses and reports a pass/fail response to DIAG_STAT[5]. If this bit is high, review DIAG_STAT[15:10] to identify the failing sensor. For example, set GLOB_CMD[7] = 1 (DIN = 0xBE80) to initiate a software reset. Set GLOB_CMD[3] = 1 (DIN = 0xBE08) to back up the user register contents in nonvolatile flash. This sequence includes loading the control registers with the data in their respective flash memory locations prior to producing new data. Table 19. GLOB_CMD (Base Address = 0x3E), Write Only Bits [15:8] 7 [6:4] 3 2 1 0 Description (Default = 0x0000) Not used Software reset Not used Flash update Not used Factory calibration restore Gyroscope bias correction Table 24. MSC_CTRL (Base Address = 0x34), Read/Write Bits [15:12] 11 10 PRODUCT IDENTIFICATION The PROD_ID register in Table 22 contains the binary equivalent of 16,445. It provides a product-specific variable for systems that need to track this in their system software. The LOT_ID1 and LOT_ID2 registers in Table 20 and Table 21, respectively, combine to provide a unique, 32-bit lot identification code. The SERIAL_NUM register in Table 23 contains a binary number that represents the serial number on the device label. The assigned serial numbers in SERIAL_NUM are lot specific. [9:8] 7 6 [5:3] 2 1 0 Table 20. LOT_ID1 (Base Address = 0x52), Read Only Bits [15:0] Description Lot identification, binary code 1 The bit is automatically reset to 0 after finishing the test. Table 21. LOT_ID2 (Base Address = 0x54), Read Only Bits [15:0] Description Lot identification, binary code Table 22. PROD_ID (Base Address = 0x56), Read Only Bits [15:0] Description (Default = 0x403D) Product identification = 0x403D (16,445) Table 23. SERIAL_NUM (Base Address = 0x58), Read Only Bits [15:12] [11:0] Description (Default = 0x0006) Not used Checksum memory test (cleared upon completion) 1 1 = enabled, 0 = disabled Internal self test (cleared upon completion)1 1 = enabled, 0 = disabled Do not use, always set to 00 Not used Point of percussion, see Figure 21 1 = enabled, 0 = disabled Not used Data ready enable 1 = enabled, 0 = disabled Data ready polarity 1 = active high when data is valid 0 = active low when data is valid Data ready line select 1 = DIO2, 0 = DIO1 Description Reserved Serial number, 1 to 4094 (0xFFE) Rev. A | Page 14 of 24 Data Sheet ADIS16445 STATUS/ERROR FLAGS MEMORY MANAGEMENT The DIAG_STAT register in Table 25 provides error flags for a number of functions. Each flag uses 1 to indicate an error condition and 0 to indicate a normal condition. Reading this register provides access to the status of each flag and resets all of the bits to 0 for monitoring future operation. If the error condition remains, the error flag returns to 1 at the conclusion of the next sample cycle. DIAG_STAT[0] does not require a read of this register to return to 0. If the power supply voltage goes back into range, this flag clears automatically. The SPI communication error flag in DIAG_STAT[3] indicates that the number of SCLKs in a SPI sequence did not equal a multiple of 16 SCLKs. The FLASH_CNT register in Table 26 provides a 16-bit counter that helps track the number of write cycles to the nonvolatile flash memory. The flash updates every time a manual flash update occurs. A manual flash update is initiated by the GLOB_CMD[3] bit and is performed at the completion of the GLOB_CMD[1:0] functions (see Table 19). Table 25. DIAG_STAT (Base Address = 0x3C), Read Only Set MSC_CTRL[11] = 1 (DIN = 0xB508) to perform a checksum test of the internal program memory. This function takes a summation of the internal program memory and compares it with the original summation value for the same locations (from factory configuration). If the sum matches the correct value, DIAG_STAT[6] is equal to 0. If it does not match, DIAG_STAT[6] is equal to 1. Make sure that the power supply is within specification for the entire 20 ms that this function takes to complete. Bits 15 14 13 12 11 10 9 8 7 6 5 4 3 2 [1:0] Description (Default = 0x0000) Z-axis accelerometer self-test failure 1 = fail, 0 = pass Y-axis accelerometer self-test failure 1 = fail, 0 = pass X-axis accelerometer self-test failure 1 = fail, 0 = pass Z-axis gyroscope self-test failure 0 = pass Y-axis gyroscope self-test failure 1 = fail, 0 = pass X-axis gyroscope self-test failure 1 = fail, 0 = pass Alarm 2 status 1 = active, 0 = inactive Alarm 1 status 1 = active, 0 = inactive Not used Flash test, checksum flag 1 = fail, 0 = pass Self-test diagnostic error flag 1 = fail, 0 = pass Sensor overrange 1 = overrange, 0 = normal SPI communication failure 1 = fail, 0 = pass Flash update failure 1 = fail, 0 = pass Not used Table 26. FLASH_CNT (Base Address = 0x00), Read Only Bits [15:0] Description Binary counter Checksum Test Rev. A | Page 15 of 24 ADIS16445 Data Sheet INPUT/OUTPUT CONFIGURATION DATA READY INDICATOR Table 27. GPIO_CTRL (Base Address = 0x32), Read/Write The data ready indicator provides a signal that indicates when the registers are updating, so that system processors can avoid data collision, a condition when internal register updates happen at the same time that an external processor requests it. The data ready signal has valid and invalid states. Using the transition from invalid to valid to trigger an interrupt service routine provides the most time for data acquisition (before the next register update). See Figure 4 and Table 2 for specific timing information. Bits [15:12] 11 10 9 8 [7:4] 3 MSC_CTRL[2:0] (see Table 24) provide control bits for enabling this function, selecting the polarity of the valid state and I/O line assignment (DIO1, DIO2). The factory default setting of MSC_CTRL[2:0] = 110 establishes DIO1 as a data ready output line and assigns the valid state with a logic high (1). Set MSC_CTRL[2:0] = 100 (DIN = 0xB404) to change the polarity of the data ready signal on DIO1 for interrupt inputs that require negative logic inputs for activation. 2 GENERAL-PURPOSE INPUT/OUTPUT DIO1, DIO2, DIO3, and DIO4 are configurable, general-purpose input/output lines that serve multiple purposes. The data ready controls in MSC_CTRL[2:0] have the highest priority for configuring DIO1 and DIO2. The alarm indicator controls in ALM_CTRL[2:0] have the second highest priority for configuring DIO1 and DIO2. The external clock control associated with SMPL_PRD[0] has the highest priority for DIO4 configuration (see Table 28). GPIO_CTRL in Table 27 has the lowest priority for configuring DIO1, DIO2, and DIO4, and has absolute control over DIO3. 1 0 Description (Default = 0x0000) Not used General-Purpose I/O Line 4 (DIO4) data level General-Purpose I/O Line 3 (DIO3) data level General-Purpose I/O Line 2 (DIO2) data level General-Purpose I/O Line 1 (DIO1) data level Not used General-Purpose I/O Line 4 (DIO4) direction control 1 = output, 0 = input General-Purpose I/O Line 3 (DIO3) direction control 1 = output, 0 = input General-Purpose I/O Line 2 (DIO2) direction control 1 = output, 0 = input General-Purpose I/O Line 1 (DIO1) direction control 1 = output, 0 = input Example Input/Output Configuration For example, set GPIO_CTRL[3:0] = 0100 (DIN = 0xB204) to set DIO3 as an output signal pin and DIO1, DIO2, and DIO4 as input signal pins. Set the output on DIO3 to 1 by setting GPIO_CTRL[10] = 1 (DIN = 0xB304). Then, read GPIO_CTRL[7:0] (DIN = 0x3200) and mask off GPIO_CTRL[9:8] and GPIO_CTRL[11] to monitor the digital signal levels on DIO4, DIO2, and DIO1. Rev. A | Page 16 of 24 Data Sheet ADIS16445 DIGITAL PROCESSING CONFIGURATION GYROSCOPES/ACCELEROMETERS 0 Figure 19 provides a diagram that describes all signal processing components for the gyroscopes and accelerometers. The internal sampling system produces new data in the xGYRO_OUT and xACCL_OUT output data registers at a rate of 819.2 SPS. The SMPL_PRD register in Table 28 provides two functional controls that affect sampling and register update rates. SMPL_PRD[12:8] provides a control for reducing the update rate, using an averaging filter with a decimated output. These bits provide a binomial control that divides the data rate by a factor of 2 every time this number increases by 1. For example, set SMPL_PRD[15:8] = 0x04 (DIN = 0xB704) to set the decimation factor to 16. This reduces the update rate to 51.2 SPS and the bandwidth to ~25 Hz. The SMPL_PRD[12:8] setting affects the update rate for the TEMP_OUT register (see Table 17) as well. –20 MAGNITUDE (dB) –40 –80 –100 –140 0.001 Dynamic Range The SENS_AVG[10:8] bits provide three dynamic range settings for the gyroscopes. The lower dynamic range settings (±62.5°/sec and ±125°/sec) limit the minimum filter tap sizes to maintain resolution. For example, set SENS_AVG[10:8] = 010 (DIN = 0xB902) for a measurement range of ±125°/sec. Because this setting can influence the filter settings, program SENS_AVG[10:8] before programming SENS_AVG[2:0] if more filtering is required. SMPL_PRD[0] (see Table 28) provides a control for synchronizing the internal sampling to an external clock source. Set SMPL_PRD[0] = 0 (DIN = 0xB600) and GPIO_CTRL[3] = 0 (DIN = 0xB200) to enable the external clock. See Table 2 and Figure 4 for timing information. Table 29. SENS_AVG (Base Address = 0x38), Read/Write Description (Default = 0x0402) Not used Measurement range (sensitivity) selection 100 = ±250°/sec (default condition) 010 = ±125°/sec, filter taps ≥ 4 (Bits[2:0] ≥ 0x02) 001 = ±62.5°/sec, filter taps ≥ 16 (Bits[2:0] ≥ 0x04) Not used Filter Size Variable B Number of taps in each stage; NB = 2B See Figure 18 for filter response The SENS_AVG register in Table 29 provides user controls for the low-pass filter. This filter contains two cascaded averaging filters that provide a Bartlett window, FIR filter response (see Figure 19). For example, set SENS_AVG[2:0] = 100 (DIN = 0xB804) to set each stage to 16 taps. When used with the default sample rate of 819.2 SPS and zero decimation (SMPL_PRD[15:8] = 0x00), this value reduces the sensor bandwidth to approximately 16 Hz. [7:3] [2:0] BARTLETT WINDOW FIR FILTER 1 NB GYROSCOPES LOW-PASS, TWO-POLE (404Hz, 757Hz) ACCELEROMETERS LOW-PASS, SINGLE-POLE (330Hz) CLOCK 819.2SPS NB x(n) n=1 1 NB NB x(n) n=1 B = SENS_AVG[2:0] NB = 2B NB = NUMBER OF TAPS (PER STAGE) AVERAGE/ DECIMATION FILTER 1 ND ÷ND x(n) n=1 D = SMPL_PRD[12:8] ND = 2D ND = NUMBER OF TAPS EXTERNAL CLOCK ENABLED BY SMPL_PRD[0] = 0 Figure 19. Sampling and Frequency Response Block Diagram Rev. A | Page 17 of 24 ND 11051-019 Bits [15:11] [10:8] Digital Filtering ADC 1 Figure 18. Bartlett Window, FIR Filter Frequency Response (Phase Delay = N Samples) INPUT CLOCK CONFIGURATION LOW-PASS FILTER 330Hz 0.1 FREQUENCY (f/fS) Description (Default = 0x0001) Not used D, decimation rate setting, binomial, see Figure 19 Not used Clock 1 = internal sampling clock, 819.2 SPS 0 = external sampling clock MEMS SENSOR 0.01 11051-018 N=2 N=4 N = 16 N = 64 –120 Table 28. SMPL_PRD (Base Address = 0x36), Read/Write Bits [15:13] [12:8] [7:1] 0 –60 ADIS16445 Data Sheet CALIBRATION The mechanical structure and assembly process of the ADIS16445 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 gyroscope and accelerometer over temperature and generates sensor specific correction formulas. GYROSCOPES The XGYRO_OFF (see Table 30), YGYRO_OFF (see Table 31), and ZGYRO_OFF (see Table 32) registers provide userprogrammable bias adjustment function for the x-, y-, and z-axis gyroscopes, respectively. Figure 20 illustrates that they contain bias correction factors that adjust to the sensor data immediately before it loads into the output register. ADC FACTORY CALIBRATION AND FILTERING xGYRO_OUT xACCL_OUT xGYRO_OFF xACCL_OFF Figure 20. User Calibration, Gyroscopes, and Accelerometers Gyroscope Bias Error Estimation Any system level calibration function must start with an estimate of the bias errors, which typically comes from a sample of gyroscope output data, when the device is not in motion. The sample size of data depends on the accuracy goals. Figure 7 provides a trade-off relationship between averaging time and the expected accuracy of a bias measurement. Vibration, thermal gradients, and power supply instability can influence the accuracy of this process. Table 30. XGYRO_OFF (Base Address = 0x1A), Read/Write Bits [15:0] Description (Default = 0x0000) X-axis, gyroscope offset correction factor, twos complement, 0.0025°/sec/LSB, 0°/sec = 0x0000 Table 31. YGYRO_OFF (Base Address = 0x1C), Read/Write Bits [15:0] Description (Default = 0x0000) Y-axis, gyroscope offset correction factor, twos complement, 0.0025°/sec/LSB, 0°/sec = 0x0000 Table 32. ZGYRO_OFF (Base Address = 0x1E), Read/Write Bits [15:0] GLOB_CMD[0] (see Table 19) loads the xGYRO_OFF registers with the values that are the opposite of the values that are in xGYRO_OUT, at the time of initiation. Use this command, together with the decimation filter (SMPL_PRD[12:8], see Table 28), to automatically average the gyroscope data and improve the accuracy of this function, as follows: 1. 2. 3. 4. Set SENS_AVG[10:8] = 001 (DIN = 0xB901) to optimize the xGYRO_OUT sensitivity to 0.0025 °/sec/LSB. Set SMPL_PRD[12:8] = 0x10 (DIN = 0xB710) to set the decimation rate to 65,536 (216), which provides an averaging time of 80 seconds (65,536 ÷ 819.2 SPS). Wait for 80 seconds while keeping the device motionless. Set GLOB_CMD[0] = 1 (DIN = 0xBE01) and wait for the time it takes to perform the flash memory backup. ACCELEROMETERS 11051-020 MEMS SENSOR Single Command Bias Correction Description (Default = 0x0000) Z-axis, gyroscope offset correction factor, twos complement, 0.0025°/sec/LSB, 0°/sec = 0x0000 Gyroscope Bias Correction Factors When the bias estimate is complete, multiply the estimate by −1 to change its polarity, convert it into digital format for the offset correction registers (see Table 30, Table 31, and Table 32), and write the correction factors to the correction registers. For example, lower the x-axis bias by 10 LSB (0.025°/sec) by setting XGYRO_OFF = 0x1FF6 (DIN = 0x9B1F, 0x9AF6). The XACCL_OFF (see Table 33), YACCL_OFF (see Table 34), and ZACCL_OFF (see Table 35) registers provide user programmable bias adjustment function for the x-, y-, and z-axis accelerometers, respectively. These registers adjust the accelerometer data in the same manner as XGYRO_OFF in Figure 20. Table 33. XACCL_OFF (Base Address = 0x20), Read/Write Bits [15:0] Description (Default = 0x0000) X-axis, accelerometer offset correction factor, twos complement, 0.25 mg/LSB, 0 g = 0x0000 Table 34. YACCL_OFF (Base Address = 0x22), Read/Write Bits [15:14] [13:0] Description (Default = 0x0000) Not used Y-axis, accelerometer offset correction factor, twos complement, 0.25 mg/LSB, 0 g = 0x0000 Table 35. ZACCL_OFF (Base Address = 0x24), Read/Write Bits [15:14] [13:0] Description (Default = 0x0000) Not used Z-axis, accelerometer offset correction factor, twos complement, 0.25 mg/LSB, 0 g = 0x0000 Accelerometer Bias Error Estimation Under static conditions, orient each accelerometer in positions where the response to gravity is predictable. A common approach is to measure the response of each accelerometer when they are oriented in peak response positions, that is, where ±1 g is the ideal measurement position. Next, average the +1 g and −1 g accelerometer measurements together to estimate the residual bias error. Using more points in the rotation can improve the accuracy of the response. Rev. A | Page 18 of 24 Data Sheet ADIS16445 Accelerometer Bias Correction Factors When the bias estimate is complete, multiply the estimate by −1 to change its polarity, convert it to the digital format for the offset correction registers (see Table 33, Table 34 or Table 35), and write the correction factors to the correction registers. For example, lower the x-axis bias by 12 LSB (3 mg) by setting XACCL_OFF = 0xFFF4 (DIN = 0xA1FF, 0xA0F4). FLASH UPDATES Point of Percussion Alignment RESTORING FACTORY CALIBRATION ORIGIN ALIGNMENT REFERENCE POINT SEE MSC_CTRL[6]. Set GLOB_CMD[1] = 1 (DIN = 0xBE02) to execute the factory calibration restore function, which resets the gyroscope and accelerometer offset registers to 0x0000 and all sensor data to 0. Then, it automatically updates the flash memory and restarts sampling and processing data. See Table 19 for information on GLOB_CMD. 11051-021 Set MSC_CTRL[6] = 1 (DIN = 0xB446) 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 21. See Table 24 for more information on MSC_CTRL. When using the user calibration registers to optimize system level accuracy, set GLOB_CMD[3] = 1 (DIN = 0xBE04) to save these settings in nonvolatile flash memory. Be sure to consider the endurance rating of the flash memory when determining how often to update the user correction factors in the flash memory. Figure 21. Point of Percussion Physical Reference Rev. A | Page 19 of 24 ADIS16445 Data Sheet ALARMS Table 40. ALM_CTRL (Base Address = 0x48), Read/Write Alarm 1 and Alarm 2 provide two independent alarms with programmable levels, polarity, and data sources. Bits [15:12] STATIC ALARM USE The static alarms setting compares the data source selection (ALM_CTRL[15:8]) with the values in the ALM_MAGx registers listed in Table 36 and Table 37, using ALM_MAGx[15] to determine the trigger polarity. The data format in these registers matches the format of the data selection in ALM_CTRL[15:8]. See Table 41, Alarm 1, for a static alarm configuration example. Table 36. ALM_MAG1 (Base Address = 0x40), Read/Write Bits [15:0] Description (Default = 0x0000) Threshold setting; matches for format of ALM_CTRL[11:8] output register selection Table 37. ALM_MAG2 (Base Address = 0x42), Read/Write Bits [15:0] Description (Default = 0x0000) Threshold setting; matches for format of ALM_CTRL[15:12] output register selection DYNAMIC ALARM USE Alarm Example The dynamic alarm setting monitors the data selection for a rate-of-change comparison. The rate-of-change comparison is represented by the magnitude in the ALM_MAGx registers over the time represented by the number-of-samples setting in the ALM_SMPLx registers, located in Table 38 and Table 39. See Table 41, Alarm 2, for a dynamic alarm configuration example. Table 38. ALM_SMPL1 (Base Address = 0x44), Read/Write Bits [15:8] [7:0] Description (Default = 0x0000) Not used Binary, number of samples (both 0x00 and 0x01 = 1) Table 39. ALM_SMPL2 (Base Address = 0x46), Read/Write Bits [15:8] [7:0] [11:8] 7 6 5 4 3 2 1 0 Description (Default = 0x0000) Alarm 2 data source selection 0000 = disable 0001 = XGYRO_OUT 0010 = YGYRO_OUT 0011 = ZGYRO_OUT 0100 = XACCL_OUT 0101 = YACCL_OUT 0110 = ZACCL_OUT Alarm 1 data source selection (same as Alarm 2) Alarm 2, dynamic/static (1 = dynamic, 0 = static) Alarm 1, dynamic/static (1 = dynamic, 0 = static) Alarm 2, polarity (1 = greater than ALM_MAG2) Alarm 1, polarity (1 = greater than ALM_MAG1) Data source filtering (1 = filtered, 0 = unfiltered) Alarm indicator (1 = enabled, 0 = disabled) Alarm indicator active polarity (1 = high, 0 = low) Alarm output line select (1 = DIO2, 0 = DIO1) Description (Default = 0x0000) Not used Binary, number of samples (both 0x00 and 0x01 = 1) ALARM REPORTING The DIAG_STAT[9:8] bits provide error flags that indicate an alarm condition. The ALM_CTRL[2:0] bits provide controls for a hardware indicator using DIO1 or DIO2. Table 41 offers an example that configures Alarm 1 to trigger when filtered ZACCL_OUT data drops below 0.7 g, and Alarm 2 to trigger when filtered ZGYRO_OUT data changes by more than 50 °/sec over a 100 ms period, or 500 °/sec2. The filter setting helps reduce false triggers from noise and refines the accuracy of the trigger points. The ALM_SMPL2 setting of 82 samples provides a comparison period that is approximately equal to 100 ms for an internal sample rate of 819.2 SPS. Table 41. Alarm Configuration Example DIN 0xCD36, 0xCCAF 0xC713, 0xC688 0xC50A, 0xC4F0 0xC866 Rev. A | Page 20 of 24 Description ALM_CTRL = 0x36AF Alarm 2: dynamic, Δ-ZGYRO_OUT (Δ-time, ALM_SMPL2) > ALM_MAG2 Alarm 1: static, ZACCL_OUT < ALM_MAG1, filtered data DIO2 output indicator, positive polarity ALM_MAG2 = 0x1388 = 5000 LSB = 50 °/sec ALM_MAG1 = 0x0AF0 = 2800 LSB = +0.7 g ALM_SMPL2[7:0] = 0x52 = 82 samples 82 samples ÷ 819.2 SPS = ~100 ms Data Sheet ADIS16445 APPLICATIONS INFORMATION POWER SUPPLY CONSIDERATIONS Installation The power supply must be within 3.15 V and 3.45 V for normal operation and optimal performance. During start up, the internal power conversion system starts drawing current when VDD reaches 1.6 V. The internal processor begins initializing when VDD is equal to 2.35 V. After the processor starts, VDD must reach 2.7 V within 128 ms. Also, make sure that the power supply drops below 1.6 V to shut the device down. Figure 9 shows a 10 μF capacitor on the power supply. Using this capacitor supports optimal noise performance in the sensors. The following steps provide an example installation process for using these three components: ADIS16445/PCBZ The ADIS16445/PCBZ includes one ADIS16445AMLZ, one interface PCB, and one flexible connector/cable. This particular flexible cable mates the ADIS16445AMLZ to any system that is currently using the ADIS1636x, ADIS16375, ADIS16385, ADIS1640x, or ADIS1648x IMU products, which use a 24-pin interface, rather than the 20-pin interface that the ADIS16445 uses. This combination of components enables quicker installation for prototype evaluation and algorithm development. Figure 22 provides a mechanical design example for using these three components in a system. 15mm TO 45mm 11 2 15.05mm 1 12 11 2 1 10.07mm J2 ADIS16445AMLZ The EVAL-ADIS supports PC-based evaluation of the ADIS16445. Go to www.analog.com/EVAL-ADIS, to download the user guide (UG-287) and software (IMU evaluation). 30.10mm FLEXIBLE CONNECTOR/CABLE PC-BASED EVALUATION TOOLS J1 20.15mm INTERFACE PCB 11051-022 NOTES 1. USE FOUR M2 MACHINE SCREWS TO ATTACH THE ADIS16445. 2. USE FOUR M3 MACHINE SCREWS TO ATTACH THE INTERFACE PCB. Figure 22. Physical Diagram for Mounting the ADIS16445/PCBZ Figure 23 provides the pin assignments for the interface board. RST 1 2 SCLK DNC 1 2 GND CS 3 4 DOUT DNC 3 4 DIO3 DNC 5 6 DIN GND 5 6 DIO4 GND 7 8 GND DNC 7 8 DNC GND 9 10 VDD DNC 9 10 DNC VDD 11 12 VDD DIO2 11 12 DIO1 11051-023 J2 J1 Drill and tap M2 and M3 holes in the system frame, according to the locations in Figure 22. Install the ADIS16445 using M2 machine screws. Use a mounting torque of 25 inch-ounces. Install the interface PCB using M3 machine screws. Connect J1 on the interface flex to the ADIS16445AMLZ connector. Connect J2 on the interface flex to J3 on the interface PCB. Note that J2 (interface flex) has 20 pins and J3 (interface PCB) has 24 pins. Make sure that Pin 1 on J2 (interface flex) connects to Pin 20 on J3 (interface PCB). J3 has a Pin 1 indicator to help guide this connection. Use J1 and J2 on the interface PCB to make the electrical connection with the system supply and embedded processor, using 12-pin, 1 mm ribbon cables. The following parts may be useful in building this type of cable: 3M Part Number 152212-0100-GB (ribbon crimp connector) and 3M Part Number 3625/12 (ribbon cable). The C1/C2 pads on the interface PCB do not have capacitors on them, but these pads can support the suggested power supply capacitor of 10 μF (see Figure 9). 23.75mm 33.40mm 12 Figure 23. J1/J2 Pin Assignments for Interface PCB Rev. A | Page 21 of 24 ADIS16445 Data Sheet OUTLINE DIMENSIONS 24.53 24.15 23.77 2.60 Ø 2.40 2.20 (4 PLCS) 20.150 BSC 2.00 BSC 2.00 BSC 4.70 4.50 4.30 30.10 BSC 33.40 BSC 38.08 37.70 37.32 1.00 BSC 0.66 BSC TOP VIEW 12.50 BSC 19.55 BSC 2.96 2.70 2.44 7.57 BSC 7.89 7.63 7.37 2.30 BSC (2 PLCS) 2.30 BSC (2 PLCS) 1.00 BSC PITCH 2.84 BSC (Pin Height) 10.23 BSC 5.18 BSC (PCB to Connector) END VIEW 02-072-2013-B 11.10 10.80 10.50 Figure 24. 20-Lead Module with Connector Interface [MODULE] (ML-20-3) Dimensions shown in millimeters ORDERING GUIDE Model1 ADIS16445AMLZ ADIS16445/PCBZ 1 Temperature Range −40°C to +85°C Package Description 20-Lead Module with Connector Interface [MODULE] Interface PCB Z = RoHS Compliant Part. Rev. A | Page 22 of 24 Package Option ML-20-3 Data Sheet ADIS16445 NOTES Rev. A | Page 23 of 24 ADIS16445 Data Sheet NOTES ©2012–2013 Analog Devices, Inc. All rights reserved. Trademarks and registered trademarks are the property of their respective owners. D11051-0-3/13(A) Rev. A | Page 24 of 24