High Precision Tri-Axis Inertial Sensor ADIS16350/ADIS16355 FEATURES FUNCTIONAL BLOCK DIAGRAM AUX_ADC Guidance and control Platform control and stabilization Motion control and analysis Inertial measurement units General navigation Image stabilization Robotics ADIS16350/ADIS16355 TEMPERATURE SENSORS TRI-AXIS MEMS ANGULAR RATE SENSOR SIGNAL CONDITIONING AND CONVERSION CALIBRATION AND DIGITAL PROCESSING CS SCLK SPI PORT DIN OBS APPLICATIONS AUX_DAC DIGITAL CONTROL SELF-TEST DOUT VCC TRI-AXIS MEMS ACCELLERATION SENSOR OLE GND POWER MANAGEMENT ALARMS AUX I/O 06874-001 Tri-axis gyroscope with digital range scaling ±75°/s, ±150°/s, ±300°/s settings 14-bit resolution Tri-axis accelerometer ±10 g measurement range 14-bit resolution 350 Hz bandwidth Factory calibrated sensitivity, bias, and alignment ADIS16350: +25°C ADIS16355: −40°C to +85°C Digitally controlled bias calibration Digitally controlled sample rate Digitally controlled filtering Programmable condition monitoring Auxiliary digital input/output Digitally activated self-test Programmable power management Embedded temperature sensor SPI-compatible serial interface Auxiliary 12-bit ADC input and DAC output Single-supply operation: 4.75 V to 5.25 V 2000 g shock survivability TE RST DIO1 DIO2 Figure 1. GENERAL DESCRIPTION The ADIS16350/ADIS16355 iSensor™ is a complete triple axis gyroscope and triple axis accelerometer inertial sensing system. This sensor combines the Analog Devices, Inc., iMEMS® and mixed signal processing technology to produce a highly integrated solution that provides calibrated, digital inertial sensing. An SPI interface and simple output register structure allow for easy access to data and configuration controls. controller dynamically compensates for all major influences on the MEMS sensors, thus maintaining highly accurate sensor outputs without further testing, circuitry, or user intervention. The SPI port provides access to the following embedded sensors: X-, Y-, and Z-axis angular rates; X-, Y-, and Z-axis linear acceleration; internal temperature; power supply; and auxiliary analog input. The inertial sensors are precision-aligned across axes, and are calibrated for offset and sensitivity. An embedded . This compact module is approximately 23 mm × 23 mm × 23 mm and provides a convenient flex-based connector system. The following programmable features simplify system integration: in-system autobias calibration, digital filtering and sample rate, self-test, power management, condition monitoring, and auxiliary digital input/output. Rev. B 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 www.analog.com Fax: 781.461.3113 ©2007–2009 Analog Devices, Inc. All rights reserved. ADIS16350/ADIS16355 TABLE OF CONTENTS Features .............................................................................................. 1 Control Register Structure ........................................................ 12 Applications ....................................................................................... 1 Auxiliary ADC Function ........................................................... 12 Functional Block Diagram .............................................................. 1 Basic Operation .............................................................................. 13 General Description ......................................................................... 1 Serial Peripheral Interface (SPI) ............................................... 13 Revision History ............................................................................... 2 Data Output Register Access .................................................... 14 Specifications..................................................................................... 3 Programming and Control ............................................................ 15 Timing Specifications .................................................................. 6 Control Register Overview ....................................................... 15 Timing Diagrams.......................................................................... 6 Control Register Structure ........................................................ 15 Absolute Maximum Ratings............................................................ 7 Calibration................................................................................... 16 ESD Caution .................................................................................. 7 Global Commands ..................................................................... 16 Pin Configuration and Function Descriptions ............................. 8 Operational Control................................................................... 17 Typical Performance Characteristics ............................................. 9 Status and Diagnostics ............................................................... 19 Theory of Operation ...................................................................... 12 Applications Information .............................................................. 22 Overview...................................................................................... 12 Installation Guidelines ............................................................... 22 Gyroscope Sensor ....................................................................... 12 Outline Dimensions ....................................................................... 24 Accelerometer Sensor ................................................................ 12 Ordering Guide .......................................................................... 24 OBS OLE Factory Calibration .................................................................... 12 REVISION HISTORY 9/09—Rev. A to Rev. B Changes to Figure 4 and Figure 5 ................................................... 7 Changes to Ordering Guide .......................................................... 24 2/08—Rev. 0 to Rev. A Added ADIS16355 .............................................................. Universal Changes to Features.......................................................................... 1 Changes to General Description .................................................... 1 Changes to Temperature Coefficient Throughout Table 1 and Gyroscope Noise Performance Output Noise............................... 3 Changes to Output Range................................................................ 4 Added Endnote 1 .............................................................................. 5 Changes to Table 3 ............................................................................ 7 Inserted Figure 4 ............................................................................... 8 Deleted Figure 10 .............................................................................. 8 Inserted Figure 9, Figure 10, and Figure 11 .................................. 9 Deleted Figure 12 .............................................................................. 9 Changes to Figure 13 and Figure 14 ............................................. 10 TE Inserted Figure 15 ........................................................................... 10 Deleted Figure 17, Figure 18, Figure 20, and Figure 21............. 10 Changes to Factory Calibration Section ...................................... 12 Changes to Writing to Registers Section ..................................... 13 Replaced Data Output Register Access Section ......................... 14 Deleted Figure 28............................................................................ 15 Changes to Table 9.......................................................................... 15 Changes to Global Commands Section ....................................... 16 Changes to Internal Sample Rate Section ................................... 17 Changes to Auxiliary DAC Section .............................................. 18 Changes to General-Purpose Input/Output Section ................. 18 Changes to Table 37 ....................................................................... 21 Changes to Installation Guidelines Section ................................ 22 Updated Outline Dimensions ....................................................... 24 Changes to Ordering Guide .......................................................... 24 8/07—Revision 0: Initial Version Rev. B | Page 2 of 24 ADIS16350/ADIS16355 SPECIFICATIONS TA = −40°C to +85°C, VCC = 5.0 V, angular rate = 0°/s, dynamic range = 300°/s, ±1 g, unless otherwise noted. Table 1. Parameter GYROSCOPE SENSITIVITY Initial Sensitivity Temperature Coefficient Gyroscope Axis Nonorthogonality Gyroscope Axis Misalignment Nonlinearity GYROSCOPE BIAS In Run Bias Stability Angular Random Walk Temperature Coefficient Conditions Each axis 25°C, dynamic range = ±300°/s 25°C, dynamic range = ±150°/s 25°C, dynamic range = ±75°/s ADIS16350, see Figure 6 ADIS16355, see Figure 9 25°C, difference from 90° ideal 25°C, relative to base-plate and guide pins Best fit straight line Min Typ Max Unit 0.0725 0.07326 0.03663 0.01832 600 40 ±0.05 ±0.5 0.1 0.0740 °/s/LSB °/s/LSB °/s/LSB ppm/°C ppm/°C Degree Degree % of FS 25°C, 1 σ 25°C ADIS16350, see Figure 7 ADIS16355, see Figure 10 Any axis, 1 σ (linear acceleration bias compensation enabled) VCC = 4.75 V to 5.25 V 0.015 4.2 0.1 0.01 0.05 0.25 °/s/V 25°C, ±300°/s range, 2-tap filter setting 25°C, ±150°/s range, 8-tap filter setting 25°C, ±75°/s range, 32-tap filter setting 25°C, f = 25 Hz, ±300°/s, no filtering 0.60 0.35 0.17 0.05 °/s rms °/s rms °/s rms °/s/√Hz rms 350 14 Hz kHz OBS Linear Acceleration Effect Voltage Sensitivity GYROSCOPE NOISE PERFORMANCE Output Noise Rate Noise Density GYROSCOPE FREQUENCY RESPONSE 3 dB Bandwidth Sensor Resonant Frequency GYROSCOPE SELF-TEST STATE Change for Positive Stimulus Change for Negative Stimulus Internal Self-Test Cycle Time ACCELEROMETER SENSITIVITY Dynamic Range Initial Sensitivity Temperature Coefficient Axis Nonorthogonality Axis Misalignment Nonlinearity ACCELEROMETER BIAS In-Run Bias Stability Velocity Random Walk Temperature Coefficient °/s °/√hr °/s/°C °/s/°C °/s/g OLE ±300°/s range setting ±300°/s range setting TE 432 −432 723 −723 25 ±8 2.471 ±10 2.522 100 40 ±0.25 ±0.5 ±0.2 1105 −1105 LSB LSB ms Each axis 25°C ADIS16350, see Figure 8 ADIS16355, see Figure 11 25°C, difference from 90° ideal 25°C, relative to base-plate and guide pins Best fit straight line 25°C, 1 σ 25°C ADIS16350, see Figure 12 ADIS16355, see Figure 15 Rev. B | Page 3 of 24 0.7 2.0 4 0.5 2.572 g mg/LSB ppm/°C ppm/°C Degree Degree % of FS mg m/s/√hr mg/°C mg/°C ADIS16350/ADIS16355 Parameter ACCELEROMETER NOISE PERFORMANCE Output Noise Noise Density ACCELEROMETER FREQUENCY RESPONSE 3 dB Bandwidth Sensor Resonant Frequency ACCELEROMETER SELF-TEST STATE Output Change When Active TEMPERATURE SENSOR Output at 25°C Scale Factor ADC INPUT Resolution Integral Nonlinearity Differential Nonlinearity Offset Error Gain Error Input Range Input Capacitance DAC OUTPUT Resolution Relative Accuracy Differential Nonlinearity Offset Error Gain Error Output Range Output Impedance Output Settling Time LOGIC INPUTS 1 Input High Voltage, VINH Input Low Voltage, VINL Conditions Min 25°C, no filtering 25°C, no filtering 73 OBS Logic 1 Input Current, IINH Logic 0 Input Current, IINL All Except RST RST Input Capacitance, CIN DIGITAL OUTPUTS1 Output High Voltage, VOH Output Low Voltage, VOL SLEEP TIMER Timeout Period 2 FLASH MEMORY Endurance 3 Data Retention 4 CONVERSION RATE Maximum Sample Rate Minimum Sample Rate Typ Max 35 1.85 mg rms mg/√Hz rms 350 10 Hz kHz 146 219 LSB LSB/°C 12 ±2 ±1 ±4 ±2 Bits LSB LSB LSB LSB V pF 2.5 20 OLE 12 ±4 ±1 ±5 ±0.5 For Code 101 to Code 4095 2 10 2.0 For CS signal when used to wake up from sleep mode VIH = 3.3 V VIL = 0 V ISOURCE = 1.6 mA ISINK = 1.6 mA 0.8 0.55 V V V ±0.2 ±10 μA −40 −1 10 −60 μA mA pF 0.5 10,000 20 SMPL_PRD = 0x01 SMPL_PRD = 0xFF Rev. B | Page 4 of 24 Bits LSB LSB mV % V Ω μs TE 2.5 2.4 TJ = 85°C LSB 0 6.88 0 During acquisition 5 kΩ/100 pF to GND Unit 0.4 V V 128 Sec Cycles Years 819.2 0.413 SPS SPS ADIS16350/ADIS16355 Parameter START-UP TIME 5 Initial Power-Up Sleep Mode Recovery POWER SUPPLY Operating Voltage Range, VCC Power Supply Current Conditions Min Typ Max 150 3 4.75 Normal mode at 25°C Fast mode at 25°C Sleep mode at 25°C 5.0 33 57 500 Unit ms ms 5.25 V mA mA μA 1 The digital I/O signals are driven by an internal 3.3 V supply, and the inputs are 5 V tolerant. Guaranteed by design. 3 Endurance is qualified as per JEDEC Standard 22, Method A117 and measured at −40°C, +25°C, +85°C, and +125°C. 3 Retention lifetime equivalent at junction temperature (TJ) 85°C as per JEDEC Standard 22, Method A117. Retention lifetime decreases with junction temperature. 5 Defined as the time from wake-up to the first conversion. This time does not include sensor settling time, which is dependent on the filter settings. 2 OBS OLE TE Rev. B | Page 5 of 24 ADIS16350/ADIS16355 TIMING SPECIFICATIONS TA = 25°C, VCC = 5.0 V, angular rate = 0°/s, unless otherwise noted. Table 2. Parameter fSCLK tCS Description Fast mode, SMPL_PRD ≤ 0x09 (fS ≥ 164 Hz) Normal mode, SMPL_PRD ≥ 0x0A (fS ≤ 149 Hz) Data rate time, fast mode, SMPL_PRD ≤ 0x09 (fS ≥ 164 Hz) Data rate time, normal mode, SMPL_PRD ≥ 0x0A (fS ≤ 149 Hz) Data stall time, fast mode SMPL_PRD ≤ 0x09 (fS ≥ 164 Hz) Data stall time, normal mode SMPL_PRD ≥ 0x0A (fS ≤ 149 Hz) Chip select to clock edge tDAV tDSU tDHD tDF tDR tSFS Data output valid after SCLK falling edge 2 Data input setup time before SCLK rising edge Data input hold time after SCLK rising edge Data output fall time Data output rise time CS high after SCLK edge 3 tDATARATE tDATASTALL 1 OBS Min 1 0.01 10 40 160 9 75 48.8 Typ Max1 2 300 Unit MHz kHz μs μs μs μs ns 100 ns ns ns ns ns ns 24.4 48.8 5 5 12.5 12.5 5 Guaranteed by design, not production tested. The MSB presents an exception to this parameter. The MSB clocks out on the falling edge of CS. The rest of the DOUT bits are clocked after the falling edge of SCLK and are governed by this specification. 3 This parameter may need to be expanded to allow for proper capture of the LSB. After CS goes high, the DOUT line goes into a high impedance state. OLE TIMING DIAGRAMS CS SCLK tDATARATE 06874-002 tDATASTALL Figure 2. SPI Chip Select Timing CS tCS TE tSFS 1 2 3 4 5 6 15 16 SCLK tDAV DOUT MSB DB14 DB13 tDSU DIN W/R DB12 DB11 A4 A3 DB10 DB2 DB1 LSB tDHD A5 A2 D2 D1 Figure 3. SPI Timing, Utilizing SPI Settings Typically Identified as Phase = 1, Polarity = 1 Rev. B | Page 6 of 24 LSB 06874-003 2 ADIS16350/ADIS16355 ABSOLUTE MAXIMUM RATINGS Table 3. Parameter Acceleration Any Axis, Unpowered Any Axis, Powered VCC to GND Digital Input/Output Voltage to GND Analog Inputs to GND Operating Temperature Range Storage Temperature Range Rating 2000 g 2000 g −0.3 V to +6.0 V −0.3 V to +5.3 V −0.3 V to +3.6 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 24-Lead Module θJA 39.8°C/W θJC 14.2°C/W Device Weight 16 grams 1 Extended exposure to temperatures outside the specified temperature range of −40°C to +85°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 +85°C. 2 Although the device is capable of withstanding short-term exposure to 150°C, long-term exposure threatens internal mechanical integrity. ESD CAUTION OBS OLE TE Rev. B | Page 7 of 24 ADIS16350/ADIS16355 PIN CONFIGURATION AND FUNCTION DESCRIPTIONS SCLK DIN DIO1 DIO2 VCC GND GND DNC DNC AUX_ADC DNC 3 5 7 9 11 13 15 17 19 21 23 2 4 6 8 10 12 14 16 18 20 22 24 DNC CS VCC VCC GND DNC DNC AUX_DAC DNC DNC RST DNC 1 DOUT TOP VIEW (Not to Scale) 06874-038 ADIS16350/ADIS16355 NOTES 1. THIS REPRESENTATION DISPLAYS THE TOP VIEW PINOUT FOR THE MATING SOCKET CONNECTOR. 2. THE ACTUAL CONNECTOR PINS ARE NOT VISIBLE FROM THE TOP VIEW. 3. MATING CONNECTOR: SAMTEC CLM-112-02 OR EQUIVALENT. 4. DNC = DO NOT CONNECT. OBS Figure 4. Pin Configuration Z-AXIS aZ OLE Y-AXIS aY gZ TE X-AXIS aX gY gX PIN 23 ORIGIN ALIGNMENT REFERENCE POINT SEE MSC_CTRL[6]. NOTES 1. ACCELERATION (aX, aY, aZ) AND ROTATIONAL (gX, gY, gZ) ARROWS INDICATE THE DIRECTION OF MOTION THAT PRODUCES A POSITIVE OUTPUT. 06874-004 PIN 1 Figure 5. Pin Configuration, Connector Top View Table 5. Pin Function Descriptions Pin No. 1, 2, 16, 17, 18, 19, 22, 23, 24 3 4 5 6 7 8 9 10, 11, 12 13, 14, 15 20 21 1 Mnemonic DNC SCLK DOUT DIN CS DIO1 RST DIO2 VCC GND AUX_DAC AUX_ADC Type 1 N/A I O I I I/O I I/O S S O I S = supply, O = output, I = input. Rev. B | Page 8 of 24 Description Do Not Connect SPI Serial Clock SPI Data Output SPI Data Input SPI Chip Select Digital Input/Output Reset Digital Input/Output Power Supply Power Ground Auxiliary, 12-Bit, DAC Output Auxiliary, 12-Bit, ADC Input ADIS16350/ADIS16355 TYPICAL PERFORMANCE CHARACTERISTICS 5 0.4 4 0.3 3 +1σ 0.2 +1σ 1 0 –1σ –1 –2 µ 0 –0.1 –0.2 –4 –0.3 –35 –20 –5 10 25 40 55 70 85 100 TEMPERATURE (°C) 06874-030 –3 –5 –50 OBS –0.4 –50 –1σ –35 –20 –5 10 25 40 55 70 85 Figure 9. ADIS16355 Gyroscope Sensitivity vs. Temperature 20 1.00 OLE 5 µ 0 –5 0.50 +1σ 0.25 µ 0 –0.25 –1σ –10 –1σ –0.50 –15 –0.75 –20 –5 10 25 40 55 70 85 100 TEMPERATURE (°C) 06874-031 –35 –1.00 –50 –35 –20 –5 10 TE 06874-035 +1σ 0.75 BIAS (°/s) 10 –20 –50 100 TEMPERATURE (°C) Figure 6. ADIS16350 Gyroscope Sensitivity vs. Temperature 15 BIAS (°/s) 0.1 06874-034 µ SENSITIVITY (%) SENSITIVITY (%) 2 25 40 55 70 85 100 TEMPERATURE (°C) Figure 7. ADIS16350 Gyroscope Bias vs. Temperature Figure 10. ADIS16355 Gyroscope Bias vs. Temperature 1.0 1.00 0.8 0.75 0.6 +1σ 0.50 SENSITIVITY (%) µ 0.2 0 –1σ –0.2 0.25 +1σ µ 0 –0.25 –1σ –0.4 –0.50 –0.6 –1.0 –50 –35 –20 –5 10 25 40 55 70 85 100 TEMPERATURE (°C) Figure 8. ADIS16350 Accelerometer Sensitivity vs. Temperature –1.00 –50 06874-036 –0.75 –0.8 06874-032 SENSITIVITY (%) 0.4 –35 –20 –5 10 25 40 55 70 85 100 TEMPERATURE (°C) Figure 11. ADIS16355 Accelerometer Sensitivity vs. Temperature Rev. B | Page 9 of 24 ADIS16350/ADIS16355 400 60 300 40 200 20 BIAS (mg) BIAS (mg) 100 +1σ 0 µ +1σ µ 0 –1σ –100 –20 –200 –1σ –5 10 25 40 55 70 85 100 TEMPERATURE (°C) –60 –50 OBS 0.01 –1σ 10 1 10 100 1000 INTEGRATION TIME (Seconds) Figure 13. Gyroscope Root Allan Variance 25 20 15 10 –0.1 0 0.1 TE 0.2 0.3 0.4 SENSITIVITY ERROR (%) PERCENTAGE OF POPULATION (%) 30 25 20 15 10 5 µ –1σ 100 INTEGRATION TIME (Seconds) 1000 06874-008 ROOT ALLAN VARIANCE (g) +1σ 0.001 10 100 Figure 16. Gyroscope Sensitivity Error, +25°C 0.01 1 85 30 35 0.1 70 35 0 0.1 0.0001 0.01 55 OLE 06874-005 0.1 40 40 5 0.001 0.01 25 45 PERCENTAGE OF POPULATION (%) ROOT ALLAN VARIANCE (°/s) µ –5 Figure 15. ADIS16355 Accelerometer Bias vs. Temperature 1 +1σ –20 TEMPERATURE (°C) Figure 12. ADIS16350 Accelerometer Bias vs. Temperature 0.1 –35 06874-010 –20 0 –0.3 –0.2 –0.1 0 0.1 0.2 BIAS VOLTAGE SENSITIVITY (°/s/V) 0.3 0.4 06874-011 –35 06874-033 –400 –50 06874-037 –40 –300 Figure 17. Gyroscope Bias Voltage Power Supply Sensitivity, +25°C Figure 14. Accelerometer Root Allan Variance Rev. B | Page 10 of 24 ADIS16350/ADIS16355 30 25 20 15 10 5 0 –0.5 –0.4 –0.3 –0.2 –0.1 0 0.1 0.3 0.3 0.4 0.5 SENSITIVITY ERROR (%) 25 20 15 10 5 0 45 46 47 48 49 50 51 52 53 54 55 56 57 58 GYROSCOPE POSITIVE SELF-TEST (°/s) Figure 18. Accelerometer Sensitivity Error Distribution, +25°C 06874-020 PERCENTAGE OF POPULATION (%) 30 06874-013 PERCENTAGE OF POPULATION (%) 35 Figure 21. Gyroscope Positive Self-Test Distribution, +25°C OBS 20 25 14 OLE 12 10 8 6 4 2 0 –0.10 –0.08 –0.06 –0.04 –0.02 0 0.02 0.04 0.06 0.08 0.10 BIAS DRIFT ACCELERATION FACTOR (°/s/g) 15 10 TE 5 0 –57 –56 –55 –54 –53 –52 –51 –50 –49 –48 –47 –46 –45 –44 GYROSCOPE NEGATIVE SELF-TEST (°/s) Figure 19. Gyroscope Bias Sensitivity to Linear Acceleration, +25°C Figure 22. Gyroscope Negative Self-Test Distribution, +25°C 35 0.5 PERCENTAGE OF POPULATION (%) 0.4 0.3 0.2 0.1 0 –0.1 –0.2 –0.3 30 25 20 15 10 5 20:19 19:27 18:35 06874-017 TIME (Hour:Minute) 17:44 16:52 16:00 15:09 14:17 13:25 12:33 11:42 9:58 10:50 9:06 8:15 7:07 6:02 5:10 4:19 3:27 2:35 1:43 0 0.00 –0.5 Figure 20. Long-Term Bias Stability, +25°C 0.30 0.32 0.34 0.36 0.38 0.40 0.42 0.44 0.46 ACCELEROMETER SELF-TEST (g) Figure 23. Accelerometer Self-Test Distribution, +25°C Rev. B | Page 11 of 24 0.48 06874-022 –0.4 0:51 BIAS (°/s) 20 06874-021 PERCENTAGE OF POPULATION (%) 16 06874-014 PERCENTAGE OF POPULATION (%) 18 ADIS16350/ADIS16355 THEORY OF OPERATION OVERVIEW CONTROL REGISTER STRUCTURE The ADIS16350/ADIS16355 integrate three orthogonal axes of gyroscope sensors with three orthogonal axes of accelerometer sensors, creating the basic six degrees of freedom (6DOF) in a single package. The accelerometers are oriented along the axis of rotation for each gyroscope. These six sensing elements are held together by a mechanical structure that provides tight force and motion coupling. Each sensor output signal is sampled using an ADC, and then the digital data is fed into a proprietary digital processing circuit. The digital processing circuit applies the correction tables to each sensor output, manages the input/ output function using a simple register structure and serial interface, and provides many other features that simplify systemlevel designs. The ADIS16350/ADIS16355 provide configuration control to many critical operating parameters by using a dual-memory register structure. The volatile SRAM register locations control operation of the part while the nonvolatile flash memory locations preserve the configuration settings. Updating register contents affects only its SRAM location. Preserving the updates in its corresponding flash memory location requires initiation of the flash update command. This helps reduce the number of write cycles to the flash memory and consequently increases the endurance of the flash memory. During startup and reset-recovery sequences, the flash memory contents are automatically loaded into the SRAM register locations. OBS GYROSCOPE SENSOR The core MEMs angular rate sensor (gyroscope) operates on the principle of a resonator gyroscope. Two polysilicon sensing structures each contain a dither frame, which is electrostatically driven to resonance. This provides the velocity element required to produce a Coriolis force during rotation. At two of the outer extremes of each frame, orthogonal to the dither motion, are movable fingers that are placed between fixed fingers to form a capacitive pickoff structure that senses Coriolis motion. The resulting signal is fed to a series of gain and demodulation stages that produce the electrical rate signal output. The auxiliary ADC is a standard 12-bit ADC that digitizes other system-level analog signals. The output of the ADC can be monitored through the AUX_ADC register, as defined in Table 6. The ADC is a 12-bit successive approximation converter. The output data is presented in straight binary format with the fullscale range extending from 0 V to 2.5 V. OLE The core acceleration sensor is a surface micromachined polysilicon structure built on top of the silicon wafer. Polysilicon springs suspend the structure over the surface of the wafer and provide a resistance against acceleration forces. Deflection of the structure is measured using a differential capacitor that consists of independent fixed plates and central plates attached to the moving mass. Acceleration deflects the beam and unbalances the differential capacitor, resulting in a differential output that is fed to a series of gain and demodulation stages that produce the electrical rate signal output. Figure 24 shows the equivalent circuit of the analog input structure of the ADC. The input capacitor (C1) is typically 4 pF and can be attributed to parasitic package capacitance. The two diodes provide ESD protection for the analog input. Care must be taken to ensure that the analog input signals are never outside the range of −0.3 V to +3.5 V. Signals outside this range causes the diodes to become forward-biased and to start conducting. The diodes can handle 10 mA without causing irreversible damage. The resistor is a lumped component that represents the on resistance of the switches. The value of this resistance is typically 100 Ω. Capacitor C2 represents the ADC sampling capacitor and is typically 16 pF. TE VDD D C1 FACTORY CALIBRATION The ADIS16350 provides a factory calibration that simplifies the process of integrating it into system-level designs. This calibration provides correction for initial sensor bias and sensitivity, power supply variation, axial alignment, and linear acceleration (gyroscopes). An extensive, three-dimensional characterization provides the basis for generating correction tables for each individual sensor. The ADIS16355 provides the same calibration, over temperature. D R1 C2 06874-023 ACCELEROMETER SENSOR AUXILIARY ADC FUNCTION Figure 24. Equivalent Analog Input Circuit Conversion Phase: Switch Open Track Phase: Switch Closed For ac applications, it is recommended that high frequency components from the analog input signal be removed by using a low-pass filter on the analog input pin. In applications where harmonic distortion and signal-to-noise ratios are critical, the analog input must be driven from a low impedance source. Large source impedances significantly affect the ac performance of the ADC. This can necessitate the use of an input buffer amplifier. When no input amplifier is used to drive the analog input, the source impedance should be limited to values lower than 1 kΩ. Rev. B | Page 12 of 24 ADIS16350/ADIS16355 BASIC OPERATION The ADIS16350/ADIS16355 are designed for simple integration into system designs, requiring only a 5 V power supply and a 4-wire, industry-standard serial peripheral interface (SPI). All outputs and user-programmable functions are handled by a simple register structure. Each register is 16 bits in length and has its own unique bit map. The 16 bits in each register consist of an upper byte (D8 to D15) and a lower byte (D0 to D7), each with its own 6-bit address. Writing to Registers SERIAL PERIPHERAL INTERFACE (SPI) Reading from Registers The serial peripheral interface (SPI) port includes four signals: chip select (CS), serial clock (SCLK), data input (DIN), and data output (DOUT). The CS line enables the SPI port and frames each SPI event. When this signal is high, the DOUT line is in a high impedance state and the signals on DIN and SCLK have no impact on operation. A complete data frame contains 16 clock cycles. Because the SPI port operates in full-duplex mode, it supports simultaneous, 16-bit receive (DIN) and transmit (DOUT) functions during the same data frame. This enables the user to configure the next read cycle, while, at the same time, receiving the data associated with the previous configuration. Reading the contents of a register requires a modification to the sequence illustrated in Figure 25. In this case, the first two bits in the DIN sequence are 0, followed by the address of the register. Each register has two addresses (an upper address and a lower address), but either one can be used to access the entire 16 bits of data. The final eight bits of the DIN sequence are irrelevant and can be counted as don’t cares during a read command. During the next data frame, the DOUT sequence contains the 16-bit data of the register, as shown in Figure 26. Although a single read command requires two separate data frames, the full-duplex mode minimizes this overhead, requiring only one extra data frame when continuously sampling. Figure 25 displays a typical data frame for writing a command to a control register. In this case, the first bit of the DIN sequence is a 1, followed by a 0, the 6-bit address of the target register, and the 8-bit data command. Because each write command covers a single byte of data, two data frames are required when writing the entire 16-bit space of a register. Note that 16 SCLK cycles are required for a successful write operation. OBS OLE DATA FRAME CS SCLK DIN W/R A5 A4 A3 A2 A1 A0 REGISTER ADDRESS WRITE = 1 READ = 0 DC7 DC6 DC5 DC4 DC3 DC2 DC1 DATA FOR WRITE COMMANDS DON’T CARE FOR READ COMMANDS TE DC0 06874-024 Refer to Table 2, Figure 2, and Figure 3 for detailed information regarding timing and operation of the SPI port. Figure 25. DIN Bit Sequence CS DATA FRAME DATA FRAME SCLK W/R BIT DOUT ADDRESS DON’T CARE NEXT COMMAND ZERO BASED ON PREVIOUS COMMAND 16-BIT REGISTER CONTENTS Figure 26. SPI Sequence for Read Commands Rev. B | Page 13 of 24 06874-025 DIN ADIS16350/ADIS16355 DATA OUTPUT REGISTER ACCESS Table 6 provides the data configuration for each output data register in the ADIS16350/ADIS16355. Starting with the MSB of the upper byte, each output data register has the following bit sequence: new data (ND) flag, error/alarm (EA) flag, followed by 14 data bits. The data bits are LSB-justified and, in the case of the 12-bit data formats, the remaining two bits (Bit 12 and Bit 13) are not used. The ND flag indicates that unread data resides in the output data registers. This flag clears and returns to 0 during an output register read sequence. It returns to 1 after the next internal sample update cycle completes. The EA flag indicates an error condition. The STATUS register contains all of the error flags and provides the ability to investigate root cause. Table 6. Output Data Register Information Name SUPPLY_OUT XGYRO_OUT YGYRO_OUT ZGYRO_OUT XACCL_OUT YACCL_OUT ZACCL_OUT XTEMP_OUT YTEMP_OUT ZTEMP_OUT AUX_ADC 1 Function Power supply measurement X-axis gyroscope output measurement Y-axis gyroscope output measurement Z-axis gyroscope output measurement X-axis acceleration output measurement Y-axis acceleration output measurement Z-axis acceleration output measurement X-axis gyroscope sensor temperature measurement Y-axis gyroscope sensor temperature measurement Z-axis gyroscope sensor temperature measurement Auxiliary analog input data OBS Data Format Binary Twos complement Twos complement Twos complement Twos complement Twos complement Twos complement Twos complement Twos complement Twos complement Binary OLE 5 V = 2730 LSBs (nominal) Assumes that the scaling is set to 300°/s. 3 Typical condition, 25°C = 0 LSB. 2 Data Length 12 bits 14 bits 14 bits 14 bits 14 bits 14 bits 14 bits 12 bits 12 bits 12 bits 12 bits Addresses 0x03, 0x02 0x05, 0x04 0x07, 0x06 0x09, 0x08 0x0B, 0x0A 0x0D, 0x0C 0x0F, 0x0E 0x11, 0x10 0x13, 0x12 0x15, 0x14 0x17, 0x16 Table 7. Output Coding Example, XGYRO_OUT, YGYRO_OUT, and ZGYRO_OUT 1, 2 ±300°/s Range 80°/s 40°/s 0.07326°/s 0°/s −0.07326°/s −40°/s −80°/s 1 2 Rate of Rotation ±150°/s Range 40°/s 20°/s 0.03663°/s 0°/s −0.03663°/s −20°/s −40°/s ±75°/s Range 20°/s 10°/s 0.018315°/s 0°/s −0.018315°/s −10°/s −20°/s Binary Output 00 0100 0100 0100 00 0010 0010 0010 00 0000 0000 0001 00 0000 0000 0000 11 1111 1111 1111 11 1101 1101 1110 11 1011 1011 1100 Scale Factor (per LSB) 1.8315 mV 1 0.07326°/s 2 0.07326°/s2 0.07326°/s2 2.522 mg 2.522 mg 2.522 mg 0.1453°C 3 0.1453°C3 0.1453°C3 0.6105 mV TE Hexadecimal Output 0x0444 0x0222 0x0001 0x0000 0x3FFF 0x3DDE 0x3BBC Decimal 1092 546 1 0 −1 −546 −1092 The two most significant bits are not included. Zero offset null performance is assumed. Table 8. Output Coding Example, XACCL_OUT, YACCL_OUT, and ZACCL_OUT 1, 2 Acceleration (g) 2.522 1 0.002522 0 −0.002522 −1 −2.522 1 2 Binary Output 00 0011 1110 1000 00 0001 1000 1101 00 0000 0000 0001 00 0000 0000 0000 11 1111 1111 1111 11 1110 0111 0011 11 1100 0001 1000 Hexadecimal Output 0x03E8 0x018D 0x0001 0x0000 0x3FFF 0x3E73 0x3C18 The two most significant bits are not included. Zero offset null performance is assumed. Rev. B | Page 14 of 24 Decimal 1000 397 1 0 −1 −397 −1000 ADIS16350/ADIS16355 PROGRAMMING AND CONTROL CONTROL REGISTER OVERVIEW CONTROL REGISTER STRUCTURE There are many programmable features that are controlled by writing commands to the appropriate control registers using the SPI. The following sections describe these controls and specify each function, along with the corresponding register configuration. The features available for configuration in this register space are: The ADIS16350/ADIS16355 use a temporary, RAM-based memory structure to facilitate the control registers listed in Table 9. The operational configuration is stored in a flash memory structure that automatically loads into the control registers during the start-up sequence. Each nonvolatile register has a corresponding flash memory location for storing the latest configuration contents. The contents of each nonvolatile register must be stored to flash manually. • • • Calibration Global commands Operational control • Sample rate • Power management • Digital filtering • Dynamic range • DAC output • Digital input/output Operational status and diagnostics • Self-test • Status conditions • Alarms Note that the contents of these registers are nonvolatile after they are stored to flash. The flash update command, available in the COMMAND register, provides this function. The ENDURANCE register provides a counter that allows for reliability management against the flash memory write cycle specification. OBS • Table 9. Control Register Mapping Register Name ENDURANCE Type R R Volatility Nonvolatile Volatile XGYRO_OFF YGYRO_OFF ZGYRO_OFF XACCL_OFF YACCL_OFF ZACCL_OFF ALM_MAG1 ALM_MAG2 ALM_SMPL1 ALM_SMPL2 ALM_CTRL AUX_DAC GPIO_CTRL MSC_CTRL SMPL_PRD SENS/AVG SLP_CNT STATUS COMMAND R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R W Nonvolatile Nonvolatile Nonvolatile Nonvolatile Nonvolatile Nonvolatile Nonvolatile Nonvolatile Nonvolatile Nonvolatile Nonvolatile Volatile Volatile Nonvolatile 1 Nonvolatile Nonvolatile Volatile Volatile N/A 1 OLE Addresses 0x00, 0x01 0x02 to 0x17 0x18, 0x19 0x1A, 0x1B 0x1C, 0x1D 0x1E, 0x1F 0x20, 0x21 0x22, 0x23 0x24, 0x25 0x26, 0x27 0x28, 0x29 0x2A, 0x2B 0x2C, 0x2D 0x2E, 0x2F 0x30, 0x31 0x32, 0x33 0x34, 0x35 0x36, 0x37 0x38, 0x39 0x3A, 0x3B 0x3C, 0x3D 0x3E, 0x3F Bytes 2 22 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 Function Flash memory write count Output data Reserved 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 Alarm 1 amplitude threshold Alarm 2 amplitude threshold Alarm 1 sample size Alarm 2 sample size Alarm control Auxiliary DAC data Auxiliary digital input/output control Miscellaneous control Internal sample period (rate) control Dynamic range/digital filter control Sleep mode control System status System command The contents of the lower byte are nonvolatile; the contents of the upper byte are volatile. Rev. B | Page 15 of 24 Reference Tables Table 29 Table 6 TE Table 10, Table 11 Table 10, Table 11 Table 10, Table 11 Table 12, Table 13 Table 12, Table 13 Table 12, Table 13 Table 32, Table 33 Table 32, Table 33 Table 34, Table 35 Table 34, Table 35 Table 36, Table 37 Table 22, Table 23 Table 24, Table 25 Table 27, Table 28 Table 16, Table 17 Table 20, Table 21 Table 18, Table 19 Table 30, Table 31 Table 14, Table 15 ADIS16350/ADIS16355 CALIBRATION Precision Automatic Bias Null Calibration For applications that require point-of-use calibration, the bias correction registers provide bias level control for all six sensors. Table 10, Table 11, Table 12, and Table 13 provide the details required for using these registers to calibrate the output bias for each sensor. Another option for gyroscope calibration, which typically provides better accuracy, is with the single-command, precision autonull. This incorporates the optimal averaging time for generating bias correction factors for all three gyroscope sensors. This command requires approximately 30 seconds to complete. For optimal calibration accuracy, the device should be stable (no motion) for this entire period. Once it has started, a reset command is needed to stop it prematurely, if required. The following sequence starts this calibration option (see Table 15): Table 10. Gyroscope Bias Correction Registers Register XGYRO_OFF YGYRO_OFF ZGYRO_OFF Addresses 0x1A, 0x1B 0x1C, 0x1D 0x1E, 0x1F Common Parameters Default value = 0x0000 Scale = 0.018315°/s per LSB Twos complement, read/write Write 0x10 to Address 0x3E Restoring Factory Calibration Table 11. Gyroscope Bias Correction Register Bits Bits [15:13] [12:0] The factory calibration can be restored by returning the contents of each bias correction register to their default value of zero. This command also flushes all of the data from the digital filter taps. To accomplish this function for all six sensor signal paths (see Table 15), Description Not used Data bits, typical adjustment range = ±75° OBS Table 12. Accelerometer Bias Correction Registers Register XACCL_OFF YACCL_OFF ZACCL_OFF Addresses 0x21, 0x20 0x23, 0x22 0x25, 0x24 Common Parameters Default value = 0x0000 Scale = 2.522 mg per LSB Twos complement, read/write Table 13. Accelerometer Bias Correction Register Bits Bits [15:12] [11:0] Description Not used Data bits, typical adjustment range = ±5.16 g Manual Bias Calibration Linear Acceleration Bias Compensation (Gyroscopes) OLE The following command enables compensation for acceleration influences on gyroscope bias behavior: Set Bit 7 of Address 0x34 to 1 (see Table 28) Linear Acceleration Origin Alignment TE The following command provides origin alignment for the accelerometers to the point of percussion (see Figure 5), using the MSC_CTRL register. Because each offset bias register has read/write access, the bias of each sensor is adjustable. For example, if an output offset of 0.18°/s is observed in the Z-axis gyroscope, the ZGYRO_OFF register provides the calibration factor necessary to improve the accuracy. Using its sensitivity of 0.018315°/s, an adjustment of −10 LSBs is required. The twos complement, hexadecimal code of −10 LSBs is 0x1FF6. To implement this calibration factor, use the following pseudocode: Write 0xF6 to Address 0x1E, then write 0x1F to Address 0x1F This step reduces the 0.18°/s error term to 0.00315°/s. Automatic Bias Null Calibration A single-command, automatic bias calibration measures all three gyroscope output registers, then loads the three bias correction registers with values that return their outputs to zero (null). A single register write command starts this process (see Table 15). Write 0x01 to Address 0x3E Write 0x02 to Address 0x3E Set Bit 6 of Address 0x34 to 1 (see Table 28) GLOBAL COMMANDS Global commands provide single-write initiations for common operations such as calibration, flash update, auxiliary DAC latch, and software reset. Each global command has a unique control bit assigned to it in the COMMAND register and is initiated by writing 1 to its assigned bit. The flash update command writes the contents of each nonvolatile register into flash memory for storage. This process takes approximately 100 ms and requires the power supply voltage to be within specification for the duration of the event. Note that this operation also automatically follows the autonull, precision autonull, and factory reset commands. After waiting the appropriate time for the flash update to complete, verify successful completion by reading the STATUS register (flash update error = 0, if successful). The DAC latch command loads the contents of AUX_DAC into the DAC latches, which control the actual output level. This overcomes the challenge of discontinuous outputs that would otherwise be associated with two separate write cycles for upper and lower bytes. Finally, the software reset command sends the ADIS16350/ADIS16355 digital processor into a restart sequence, effectively accomplishing the same tasks as the RST line. Rev. B | Page 16 of 24 ADIS16350/ADIS16355 Table 14. COMMAND Register Definition Address 0x3F, 0x3E Default N/A Format N/A Access Write only Table 15. COMMAND Bit Descriptions Bits [15:8] [7] [6:5] [4] [3] [2] [1] [0] Description Not used Software reset command Not used Precision autonull command Flash update command Auxiliary DAC data latch Factory calibration restore command Autonull command The sample rate setting also affects the power dissipation. The normal mode power (SMPL_PRD > 0x09) dissipation is approximately 67% less than the fast mode (SMPL_PRD ≤ 0x09) power dissipation. The two different modes of operation offer a system-level trade-off between performance (sample rate, serial transfer rate) and power dissipation. Power Management In addition to offering two different performance modes for power optimization, the SLP_CNT register provides a programmable shutdown period. Writing the appropriate sleep time to the lower byte of the SLP_CNT register shuts the device down for the specified time. The following example illustrates this relationship: Bits [7:0] = 00000110 = 6 codes = 3 seconds OPERATIONAL CONTROL Internal Sample Rate OBS The internal sample rate defines how often data output variables are updated, independent of the rate at which they are read out on the SPI port. The SMPL_PRD register controls the internal sample rate and has two parts: a time base and a multiplier. The sample period can be calculated using the following equation: At the completion of the programmed duration, normal operation resumes. If measurements are required before sleep period completion or if it is necessary to end the indefinite shutdown, the device can be awakened by pulling the CS line down to a 0 state, then returning it to a 1 state. Otherwise, the CS line must be kept in a 1 (high) state to maintain sleep mode. When writing a sleep time to the SLP_CNT register, the time between the 16th SCLK edge and the CS rising edge must be less than 10 μs in fast mode and less than 80 μs in normal mode. OLE TS = TB × (NS + 1) where: TS is the sample period. TB is the time base. NS is the multiplier. Table 18. SLP_CNT Register Definition Address 0x3B, 0x3A 1 The default value is the minimum register setting, 0x01, which corresponds to the maximum sample rate of 819.2 samples per second. The contents of this register are nonvolatile. Table 16. SMPL_PRD Register Definition Address 0x37, 0x36 Default 0x0001 Format N/A Access R/W Description Not used Time base, 0 = 0.61035 ms, 1 = 18.921 ms Multiplier (add 1 before multiplying by the time base) An example calculation of the sample period for the device is If SMPL_PRD = 0x0007, Bits [7:0] = 00000111 Bit 7 = 0, so TB = 0.61035 ms Default 0x0000 TE Format Binary Access R/W Scale is the weight of each LSB in the lower byte of this register. Table 19. SLP_CNT Bit Descriptions Bits [15:8] [7:0] Description Not used Data bits Digital Filtering Table 17. SMPL_PRD Bit Descriptions Bits [15:8] [7] [6:0] Scale1 0.5 sec The signal conditioning circuit of each sensor has an analog bandwidth of approximately 350 Hz. A programmable-length Bartlett Window FIR filter provides opportunity for additional noise reduction on all of the output data registers. The SENS/AVG register controls the number of taps in power-of-two step sizes, from zero to six. Filter setup requires one simple step: write the appropriate M factor to the assigned bits in the SENS/AVG register. The bit assignments are listed in Table 21. The frequency response relationship for this filter is: Bits [6:0] = 0000111 = 7 = NS H B ( f ) = H A2 ( f ) H A ( f ) = TS = TB × (NS + 1) = 0.61035 ms × (7 + 1) = 4.8828 ms fS = 1∕TS = 204.8 SPS The sample rate setting has a direct impact on the SPI data rate capability. For SMPL_PRD settings ≤ 0x09 (fast mode), the SPI SCLK can run at a rate up to 2.0 MHz. For SMPL_PRD settings > 0x09 (normal mode), the SPI SCLK can run at a rate up to 300 kHz. Rev. B | Page 17 of 24 sin(π × N × f × t s ) N × sin(π × f × t s ) ADIS16350/ADIS16355 0 Table 22. AUX_DAC Register Definition Address 0x31, 0x30 –20 Default 0x0000 Format Binary Access R/W –40 MAGNITUDE (dB) Table 23. AUX_DAC Bit Descriptions Bits [15:12] [11:0] –60 –80 Updating the DAC output voltage requires four steps. –100 N=2 N=4 N = 16 N = 64 –140 0.001 1. 0.01 0.1 1 06874-027 –120 FREQUENCY (f/fS) Dynamic Range 4. OBS There are three dynamic range settings: ±75°/s, ±150°/s, and ±300°/s. The lower dynamic range settings (75, 150) limit the minimum filter tap sizes to maintain the resolution as the measurement range decreases. The recommended order for programming the SENS/AVG register is upper byte (sensitivity), followed by lower byte (filtering). The contents of the SENS/AVG register are nonvolatile. Table 20. SENS/AVG Register Definition Default 0x0402 Format N/A Table 21. SENS/AVG Bit Descriptions Bits [15:11] [10:8] Value 100 010 001 [7:3] [2:0] Access R/W 2. 3. Figure 27. Bartlett Window FIR Frequency Response Address 0x39, 0x38 Description Not used Data bits; 0x0000 – 0 V output, 0x0FFF – 2.5 V output Determine the binary number associated with the desired output level. Write the lower eight bits of this binary number to the lower address of the AUX_DAC register. Write the upper eight bits of this binary number to the upper address of the AUX_DAC register. Execute the DAC latch global command by writing 0x04 to Address 0x3E (see Table 15). General-Purpose Input/Output Two general-purpose pins enable digital input/output control using the SPI. The GPIO_CTRL control register establishes the configuration of these pins and handles the SPI-to-pin controls. Each pin provides the flexibility of both input (read) and output (write) operations. OLE For example, writing 0x0202 to this register establishes Line 2 as an output and sets its level as a 1. Writing 0x0000 to this register establishes both lines as inputs, and their status can be read through Bit 8 and Bit 9 of this register. Description Not used Measurement range (sensitivity) selection 300°/s (default condition) 150°/s, filter taps ≥ 4 (Bits [2:0] ≥ 0x02) 75°/s, filter taps ≥ 16 (Bits [2:0] ≥ 0x04) Not used Filter tap setting, number of taps, N = 2M; for example, 011, N = 23 = 8 taps TE The digital input/output lines are also available for data-ready and alarm/error indications. In the event of conflict, the following priority structure governs the digital input/output configuration: 1. 2. 3. MSC_CTRL (Data-ready indicator) ALM_CTRL (Alarm indicator) GPIO_CTRL (General-purpose) Table 24. GPIO_CTRL Register Definition Address 0x33, 0x32 Default 0x0000 Format N/A Auxiliary DAC Table 25. GPIO_CTRL Bit Descriptions The auxiliary DAC provides a 12-bit level adjustment function. The AUX_DAC register controls the operation of this feature. It offers a rail-to-rail buffered output that has a range of 0 V to 2.5 V. The DAC can drive its output to within 5 mV of the ground reference when it is not sinking current. As the output approaches ground, the linearity begins to degrade (100 LSB beginning point). As the sink current increases, the nonlinear range increases. The DAC output latch function, contained in the COMMAND register, provides continuous operation while writing each byte of this register. The contents of this register are volatile, which means that the desired output level must be set after every reset and power cycle event. Bits [15:10] [9] [8] [7:2] [1] [0] Access R/W Description Not used General-purpose input/output Line 2 data level 1 = high, 0 = low General-purpose input/output Line 1 data level 1 = high, 0 = low Not used General-purpose input/output Line 2, data direction control 1 = output, 0 = input General-purpose input/output Line 1, data direction control 1 = output, 0 = input The contents of the GPIO_CTRL register are volatile. Rev. B | Page 18 of 24 ADIS16350/ADIS16355 STATUS AND DIAGNOSTICS Self-Test Table 26 summarizes a number of status and diagnostic operations, along with their corresponding control registers. The MSC_CTRL register also provides a self-test function that verifies the mechanical integrity of the MEMS sensor. There are two different self-test options: internal self-test and external self-test. Table 26. Status and Diagnostic Functions Register MSC_CTRL STATUS ENDURANCE ALM_MAG1 ALM_MAG2 ALM_SMPL1 ALM_SMPL2 ALM_CTRL Function Data-ready input/output indicator; self-test, mechanical check for sensor element Status: Check for predefined error conditions Flash memory endurance Alarms: Configure and check for user-specific conditions The internal test provides a simple, two-step process for checking the MEMS sensor. 1. 2. If a failure is indicated, then Bits [10:15] of the STATUS register indicate which of the six sensors it is associated with. Data-Ready Input/Output Indicator The data-ready function provides an indication of updated output data. The MSC_CTRL register allows the user to configure either of the general-purpose input/output pins (DIO1 or DIO2) as a data-ready indicator signal. OBS Table 27. MSC_CTRL Register Definition Address 0x35, 0x34 Default 0x0000 Format N/A Table 28. MSC_CTRL Bit Descriptions Bits [15:11] [10] [9] [8] [7] [6] [5:3] [2] [1] [0] Start the process by writing 1 to Bit 10 in the MSC_CTRL register. Wait long enough for the response to settle, then check the result by reading Bit 5 of the STATUS register. The entire cycle takes approximately 35 ms, and the output data is not available during this time. The external self-test is a static condition that can be enabled and disabled. In this test, both positive and negative gyroscope MEMS sensor movements are available. For the accelerometers, only positive MEMS sensor movement is available. OLE Access R/W Description Not used Internal self-test enable (clears on completion) 1 = enabled, 0 = disabled Manual self-test, negative stimulus 1 = enabled, 0 = disabled Manual self-test, positive stimulus 1 = enabled, 0 = disabled Linear acceleration bias compensation for gyroscopes 1 = enabled, 0 = disabled Linear accelerometer origin alignment 1 = enabled, 0 = disabled Not used Data-ready enable 1 = enabled, 0 = disabled Data-ready polarity 1 = active high, 0 = active low Data-ready line select 1 = DIO2, 0 = DIO1 After writing to the appropriate control bit, the output registers reflect the changes after a delay that reflects the response time associated with the sensor/signal conditioning circuit. For example, the standard 350 Hz bandwidth reflects an exponential response with a time constant of 0.45 ms. Note that the digital filtering affects this delay as well. The appropriate bit definitions for self-test are listed in Table 27 and Table 28. Flash Memory Endurance TE The ENDURANCE register maintains a running count of writes to the flash memory. It provides up to 32,768 counts. Note that if this count is exceeded, the register wraps around and goes back to zero, before beginning to increment again. Table 29. ENDURANCE Register Definition Address 0x01, 0x00 Rev. B | Page 19 of 24 Default N/A Format Binary Access Read only ADIS16350/ADIS16355 Status Conditions Alarms The STATUS register contains the following error condition flags: alarm conditions, self-test status, overrange, SPI communication failure, control register update failure, and power supply range failure. See Table 30 and Table 31 for the appropriate register access and bit assignment for each flag. Two independent alarms provide programmable condition monitoring. Event detections occur when output register data meets the configured conditions. Configuration options include the following: The bits assigned for checking power supply range and sensor overrange automatically reset to 0 when the error condition no longer exists. The remaining error flag bits in the STATUS register require a read to return them to 0. Note that a STATUS register read clears all of the bits to 0. If any error conditions remain, the bits revert to 1 during the next internal output register update cycle. Table 30. STATUS Register Definition Address 0x3D, 0x3C Default 0x0000 Format N/A Access Read only OBS Table 31. STATUS Bit Descriptions Bits [15] [14] [13] [12] [11] [10] [9] [8] [7:6] [5] [4] [3] [2] [1] [0] Description Z-axis accelerometer self-diagnostic error flag 1 = failure, 0 = passing Y-axis accelerometer self-diagnostic error flag 1 = failure, 0 = passing X-axis accelerometer self-diagnostic error flag 1 = failure, 0 = passing Z-axis gyroscope self-diagnostic error flag 1 = failure, 0 = passing Y-axis gyroscope self-diagnostic error flag 1 = failure, 0 = passing X-axis gyroscope self-diagnostic error flag 1 = failure, 0 = passing Alarm 2 status 1 = active, 0 = inactive Alarm 1 status 1 = active, 0 = inactive Not used Self-test diagnostic error flag 1 = error condition, 0 = normal operation Sensor over range (any of the six) 1 = error condition, 0 = normal operation SPI communications failure 1 = error condition, 0 = normal operation Control register update failed 1 = error condition, 0 = normal operation Power supply in range above 5.25 V 1 = above 5.25 V, 0 = below 5.25 V (normal) Power supply below 4.75 V 1 = below 4.75 V, 0 = above 4.75 V (normal) • • • • • All output data registers are available for monitoring as the source data. The source data can be filtered or unfiltered. Comparisons can be static or dynamic (rate of change). The threshold levels and times are configurable. Comparison can be greater than or less than. The ALM_MAG1 register and the ALM_MAG2 register both establish the threshold level for detecting events. These registers take on the format of the source data and provide a bit for establishing the greater than/less than comparison direction. When making dynamic comparisons, the ALM_SMPL1 register and the ALM_SMPL2 register establish the number of averages taken for the source data as a reference for comparison. In this configuration, each subsequent source data sample is subtracted from the previous one, establishing an instantaneous delta. The ALM_CTRL register controls the source data selection, static/ dynamic selection, filtering selection, and digital input/output usage for the alarms. OLE The rate of change calculation is YC = 1 N DS N DS ∑ y(n + 1) −y(n) n =1 TE The rate of change alarm is determined by comparing YC with MC according to the ALM_MAG1 /ALM_MAG2 settings where: NDS is the number of samples in ALM_SMPL1 and ALM_SMPL2. y(n) is the sampled output data. MC is the magnitude for comparison in ALM_MAG1 and ALM_MAG2. YC is the factor to compare with MC. Rev. B | Page 20 of 24 ADIS16350/ADIS16355 Table 32. ALM_MAG1 and ALM_MAG2 Register Definitions Table 36. ALM_CTRL Register Definition Register ALM_MAG1 ALM_MAG2 Addresses 0x2F, 0x2E Addresses 0x27, 0x26 0x29, 0x28 Default 0x0000 0x0000 Format N/A N/A Access R/W R/W Default 0x0000 Format N/A Access R/W Table 37. ALM_CTRL Bit Designations Table 33. ALM_MAG1 and ALM_MAG2 Bit Descriptions Bits [15] [14] [13:0] Description Comparison polarity: 1 = greater than, 0 = less than Not used Data bits, format matches source data format Bits [15:12] 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 Table 34. ALM_SMPL1 and ALM_SIMPL2 Register Definitions Registers ALM_SMPL1 ALM_SMPL2 Addresses 0x2B, 0x2A 0x2D, 0x2C Default 0x0000 0x0000 Format Binary Binary OBS Access R/W R/W Table 35. ALM_SMPL1 and ALM_SIMPL2 Bit Descriptions Bit [15:8] [7:0] Description Not used Data bits Value [11:8] [7] Description Alarm 2 source selection Disable Power supply output X-axis gyroscope output Y-axis gyroscope output Z-axis gyroscope output X-axis accelerometer output Y-axis accelerometer output Z-axis accelerometer output X-axis gyroscope temperature output Y-axis gyroscope temperature output Z-axis gyroscope temperature output Auxiliary ADC input Alarm 1 source selection (same as Alarm 2) Rate of change (ROC) enable for Alarm 2 1 = rate of change, 0 = static level Rate of change (ROC) enable for Alarm 1 1 = rate of change, 0 = static level Not used Comparison data filter setting 1 = filtered data, 0 = unfiltered data Not used Alarm output enable 1 = enabled, 0 = disabled Alarm output polarity 1 = active high, 0 = active low Alarm output line select 1 = DIO2, 0 = DIO1 OLE [6] [5] [4] [3] [2] [1] [0] Rev. B | Page 21 of 24 TE ADIS16350/ADIS16355 APPLICATIONS INFORMATION INSTALLATION GUIDELINES Electrical Connections Installation requires two steps: mechanical attachment of the body, followed by the electrical connection. This device is designed for postsolder reflow installation. It is not designed to survive the temperatures associated with normal solder reflow processes. The electrical interface is a single connector that is attached to a flexible circuit extension. Mechanical Attachment The open mounting tabs on each side of the body provide enough room for 2 mm (or 2-56) machine screws. Note that 316 stainless steel and aluminum screws are available for use in this attachment. When planning the installation process, the primary trade-off to consider is the attachment strength advantage of stainless steel against the nonmagnetic properties of aluminum for systems that are sensitive to magnetic field disturbances. OBS Figure 28 provides a graphical display of the mechanical attachment, and Figure 29 provides a recommendation for the physical layout of all the holes required for attaching these devices. One option for mating connectors can be found in the Samtec CLM family. In this case, the part number starts with CLM-112-02. The flexible circuit has stress relief points to absorb environmental stresses, such as temperature cycling and vibration. Figure 29 provides the alignment hole locations for designs that employ the suggested connector mate. The dimensions offered in Figure 29 assume that the device and the mating connector are on the same surface. The electrical connection is held by friction only. Proper Removal The flexible circuit interface can tear under excessive force conditions. An example of excessive force is attempting to break the electrical connection by pulling on the body of the device, placing all of the stress on the flexible circuit. The electrical connector must be broken by an appropriate tool, which is designed to apply even pressure to each side of the rigid part of the flex cable. The recommended extraction sequence is to break the mate between the electrical interface, and then to remove the mechanical attachment hardware. OLE TE 1.588mm HOLE AND SLOT FOR ALIGNMENT PINS, 2 EACH 06874-028 DRILL AND TAP HOLE FOR 2mm (2-56) SCREW, 2 EACH Figure 28. Mechanical Attachment Rev. B | Page 22 of 24 ADIS16350/ADIS16355 DRILL AND INSERT 1.5mm PIN 2× (HOLE PLACEMENT INACCURACY MAY REQUIRE USE OF UNDERSIZED PIN). 26.700 BSC DRILL AND TAP FOR M2 SCREW AS REQUIRED 2×. 4 BSC 27.700 BSC 10 HOLE 2×. SEE SAMTEC MOUNTING DRAWING FOR CLM SERIES SOCKET. 8.350 OBS 0.500 BSC 2× 4 BSC 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. OLE 06874-029 16.810 2× Figure 29. Hole Locations TE Rev. B | Page 23 of 24 ADIS16350/ADIS16355 OUTLINE DIMENSIONS 31.900 31.700 31.500 9.464 9.210 8.956 (2×) 2.382 BSC 17.41 17.21 17.01 (2×) 1.588 BSC TOP VIEW 22.964 22.710 22.456 1.588 BSC 14.950 14.550 14.150 PIN 24 10.50 BSC 23.504 23.250 22.996 2.660 2.500 2.340 7.18 BSC 1.00 BSC 0.05 BSC PIN 1 FRONT VIEW 21.410 21.210 21.010 BOTTOM VIEW 5.20 5.00 4.80 (2×) OBS 10.60 BSC 4.20 4.00 3.80 (2×) 2.00 BSC 12.10 BSC OLE SIDE VIEW DETAIL A 4.330 BSC DETAIL A 0.305 BSC (24×) 4.162 BSC 1.00 BSC (22×) 1.65 BSC TE 011108-C 23.454 23.200 22.946 14.00 BSC Figure 30. 24-Lead Module with Connector Interface (ML-24-2) Dimensions shown in millimeters ORDERING GUIDE Model ADIS16350AMLZ 1 ADIS16350/PCBZ1 ADIS16355AMLZ1 ADIS16355/PCBZ1 1 Temperature Range −40°C to +85°C −40°C to +85°C Package Description 24-Lead Module with Connector Interface Interface Board 24-Lead Module with Connector Interface Interface Board Z = RoHS Compliant Part. ©2007–2009 Analog Devices, Inc. All rights reserved. Trademarks and registered trademarks are the property of their respective owners. D06874-0-9/09(B) Rev. B | Page 24 of 24 Package Option ML-24-2 ML-24-2