User Manual RM3000-f & RM2000-f Geomagnetic Sensor Suite
Table of Contents 1 2 3 COPYRIGHT & WARRANTY INFORMATION ............................................................ 4 INTRODUCTION .......................................................................................................... 5 SPECIFICATIONS ....................................................................................................... 6 3.1 GEOMAGNETIC SENSOR SUITE CHARACTERISTICS .............................. 6 3.2 SEN-XY-F AND SEN-Z-F CHARACTERISTICS ............................
List of Figures Figure 3-1: Sensitivity vs. Maximum Sample Rate.– Standard Mode ...................................... 9 Figure 3-2: Gain vs. Cycle Counts – Standard & Legacy Modes ........................................... 10 Figure 3-3: Single-Axis Sample Rate vs. Cycle Counts – Standard & Legacy Modes .......... 10 Figure 3-4: Gain vs. Cycle Counts – Standard Mode ............................................................. 11 Figure 3-5: Single-Axis Sample Rate vs. Cycle Counts – Standard Mode .......
1 Copyright & Warranty Information © Copyright PNI Sensor Corporation 2011 All Rights Reserved. Reproduction, adaptation, or translation without prior written permission is prohibited, except as allowed under copyright laws. Revised September 2013: for the most recent version visit our website at www.pnicorp.com PNI Sensor Corporation 2331 Circadian Way Santa Rosa, CA 95407, USA Tel: (707) 566-2260 Fax: (707) 566-2261 Warranty and Limitation of Liability.
2 Introduction Thank you for purchasing PNI Sensor Corporation’s RM2000-f or RM3000-f Geomagnetic Sensor Suite (pn 90042-f and pn 90043-f, respectively). The RM2000-f is comprised of two Sen-XY-f geomagnetic sensors and a 3D MagIC ASIC MLF controller, and this forms the basis for a 2-axis (horizontal) digital compass. The RM3000-f is the same as the RM2000-f but adds a Sen-Z-f geomagnetic sensor, such that compassing measurements are not constricted to the horizontal plane.
3 Specifications 3.1 Geomagnetic Sensor Suite Characteristics Table 3-1: Geomagnetic Sensor Suite Performance1 Parameter Min Field Measurement Range Gain @ 200 Cycle Counts 2 -800 3 Sensitivity @ 200 Cycle Counts Noise @ 200 Cycle Counts Typical Max Units +800 T @ 2.8 V 55 counts/ T @ 3.3 V 45 counts/ T 22 nT/LSB 30 nT 3 3 Linearity - Best Fit over 200 T 0.6 Max. Sample Rate per Axis @ 200 Cycle 4 Counts 475 Hz @ 2.8 V 0.20 mA @ 3.3 V 0.
3.2 Sen-XY-f and Sen-Z-f Characteristics Table 3-2: Sen-XY-f and Sen-Z-f Absolute Maximum Ratings Parameter Minimum Maximum Units Input Pin Current @ 25 C 50 mA Voltage Across Coil 2.0 VDC +85 C Storage Temperature -40 CAUTION: Stresses beyond those listed above may cause permanent damage to the device. These are stress ratings only. Assuming operation with the 3D MagIC per the guidelines in this manual, these maximum ratings will not be violated.
3.3 3D MagIC Characteristics Table 3-4: 3D MagIC Absolute Maximum Ratings Parameter Minimum Maximum Units Analog/Digital DC Supply Voltage (AVDD & DVDD) -0.3 +3.7 VDC Input Pin Voltage -0.3 AVDD or DVDD VDC Input Pin Current @ 25C -10.0 +10.0 mA Storage Temperature -40° +125° C CAUTION: Stresses beyond those listed above may cause permanent damage to the device. These are stress ratings only.
3.4 Typical Sensor Suite Operating Performance Figure 3-1 plots typical gain-determined sensitivity as a function of the single axis sample rate. The plot starts at 300 Hz since the usable sensitivity is limited by best-case system noise of ~15 nT. The plot stops at 2400 Hz because this represents a cycle count of ~30, and operating at cycle counts lower than this introduces significant quantization error. (The number of cycle counts is determined by the user, as explained in Sections 5.1 and 6.2.
000 Standard Mode Legacy Mode (default config.) Gain (counts/µT) 1000 100 10 1 0.1 10 100 1000 10000 Cycle Counts Figure 3-2: Gain vs. Cycle Counts – Standard & Legacy Modes Maximum Single-Axis Sample Rate (Hz) (Sensitivity = 1/Gain, to the system’s noise limit) 10000 Standard Mode Legacy Mode (default config.) 1000 100 10 1 10 100 1000 10000 Cycle Counts Figure 3-3: Single-Axis Sample Rate vs.
60 Gain (counts/µT) 50 40 30 20 10 0 0 25 50 75 100 125 150 175 200 225 250 Cycle Counts Figure 3-4: Gain vs. Cycle Counts – Standard Mode (Sensitivity = 1/Gain, to the system’s noise limit) Maximum Single-Axis Sample Rate (Hz) 3000 2700 2400 2100 1800 1500 1200 900 600 300 0 0 25 50 75 100 125 150 175 200 225 250 Cycle Counts Figure 3-5: Single-Axis Sample Rate vs.
Current Consumption @ 35 Hz Single-Axis Sample Rate (uA) 300 250 200 150 100 50 0 0 25 50 75 100 125 150 175 200 225 250 Cycle Counts Figure 3-6: Current Consumption vs.
3.5 Dimensions, Packaging, and Pad & Mask Layout 3.5.
Dimensions in mm Full reel is 5000 pcs. Smaller quantities on cut tape. Tape & reel meets ANSI/EIA standard EIA-418-B Figure 3-8: Sen-XY-f Tape and Reel Dimensions Note: PNI recommends a 5 mil stencil. The solder paste area is much smaller than the pad to reduce sensor tilt and misalignment. The above layout allows for rework: for minimal footprint, contact PNI.
3.5.
Dimensions in mm Full reel is 1200 pcs. Smaller quantities on cut tape. Tape & reel meets ANSI/EIA standard EIA-418-B Figure 3-11: Sen-Z-f Tape and Reel Dimensions Note: PNI recommends a 5 mil stencil. The solder paste area is much smaller than the pad to reduce sensor tilt and misalignment. The above layout allows for rework: for minimal footprint, contact PNI.
3.5.3 3D MagIC Figure 3-13: 3D MagIC MLF Mechanical Drawing Dimensions: mm Full reel is 5000 pcs. Smaller quantities on cut-tape.
3.6 Soldering Figure 3-15 and Table 3-6 provide the recommended solder reflow profile and processing parameters for RM3000-f components. After soldering PNI components to a board, it is possible to wave solder the opposite side of the PCB. IMPORTANT: PNI sensors require the use of halide-free solder pastes and processes for reflow and cleaning. Please contact PNI if you would like recommendations.
Table 3-6: Recommended Solder Processing Parameters1 Parameter Symbol Value Preheat Temperature, Minimum TSmin 150°C Preheat Temperature, Maximum TSmax 200°C 60 – 180 seconds Preheat Time (TSmin to TSmax) Solder Melt Temperature TL Ramp-Up Rate (TSmax to TL) Peak Temperature >218°C 3°C/second maximum TP Time from 25°C to Peak (TP) <260°C 6 minutes maximum Time above TL tL 60 – 120 seconds Soak Time (within 5°C of TP) tP 10 – 20 seconds Rampdown Rate 4°C/second maximum Footnote: 1.
4 Geomagnetic Sensor Suite Overview & Set-Up 4.1 Overview Figure 4-1 provides a basic schematic for implementing the RM3000-f Sensor Suite in Standard Mode. The 3D MagIC is at the center of the schematic, as it ties the user’s host controller, on the left, to the three geomagnetic sensors, on the right. To implement the RM2000-f, simply do not connect the Sen-Z-f sensor. The 3D MagIC also can operate only one sensor if desired. Unused sensor connections should remain floating.
a comparator internal to the 3D MagIC. The sensor’s inductance varies with respect to the magnetic field. As such, the frequency of oscillation of the circuit varies with the strength of the total magnetic field parallel to the sensor. To make a measurement, one side of the sensor is grounded while the other side is alternately driven with positive and negative current through the oscillator.
4.2 Layout 4.2.1 Sensor Orientation Figure 4-3 indicates how the three geomagnetic sensors in a RM3000-f Suite should be oriented for a system referenced as north-east-down (NED). The arrow represents the direction of travel or pointing. Positioning of the sensors is not critical, other than ensuring they are not positioned close to a magnetic component, such as a speaker.
only when the field is in a known state. For instance, if a motor will be running part of the time, take readings only when the motor is in a known state (e.g. off). If you are uncertain about the effect a specific component may have on the system, the RM3000-f Evaluation Board can be used to help ascertain this. Place the RM3000-f Evaluation Board on a firm surface and gradually bring the component in question close to the board, then note when the magnetic field starts to change.
Table 4-1: 3D MagIC Pin Assignments Pin Name Description 1 MOSI SPI interface – Master Output, Slave Input Serial Data 2 NC 3 SSN SPI interface – Active low to select port 4 AVDD Supply voltage for analog section of ASIC 5 AVSS Ground pin for analog section of ASIC 6 ZDRVP Z sensor drive output 7 ZINP Z sensor measurement input 8 ZINN Z sensor measurement input 9 ZDRVN Z sensor drive output 10 YDRVP Y sensor drive output 11 YINP 12 MODE 13 YINN 14 YDRVN Y sensor drive
MODE The MODE pin establishes whether communication with the 3D MagIC will comply with Standard Mode protocol (see Section 5) or Legacy Mode protocol (see Section 6). The MODE pin should be grounded (connected to DVSS) to operate in Standard Mode, and set HIGH (connected to DVDD) to operate in Legacy Mode. SCLK (SPI Serial Clock Input) SCLK is a SPI input used to synchronize the data sent in and out through the MISO and MOSI pins.
DRDY (Data Ready) DRDY is used to ensure data is read from the 3D MagIC only when it is available. After initiating a sensor measurement, DRDY will go HIGH when the measurement is complete. This signals the host that data is ready to be read. The DRDY pin should be set LOW prior to initiating a measurement. This is done automatically in Standard Mode and by toggling the CLEAR pin in Legacy Mode.
REXT (External Timing Resistor) REXT ties to the external timing resistor for the high-speed clock. The recommended value for the resistor and associated clock speed are defined in Table 3-1. Sensor Drive and Measurement Pins The various sensor drive and measurement pins should be connected to the sensors. For a north-east-down (NED) reference frame, the connections should be as defined in Figure 4-3. 4.
Table 4-2: SPI Timing Specifications Symbol Description Min Time from SSN to CLEAR 10 ns tCMIN CLEAR duration 100 ns tSSDV Time from SSN to Command Byte on MOSI 1 us tDBSH Time to setup data before active edge 50 ns tDASH Time to setup data after active edge 50 ns tSHZD Time from SSN to data tri-state time tSC Max 100 Units ns 4.
5 3D MagIC Operation – Standard Mode Note: This section discusses how to operate the 3D MagIC in Standard Mode. For a description of operation in Legacy Mode, see Section 6. Legacy Mode is intended for customers who previously used PNI’s 11096 ASIC. The 3D MagIC operates in Standard Mode when pin #12 is held LOW. The basic functions to be performed when operating the 3D MagIC are: Setting the values in the Cycle Count Registers, and Taking sensor measurements.
200-300 cycle counts. Lowering the cycle count value reduces acquisition time, which increases maximum achievable sample rate or, with a fixed sample rate, decreases power consumption. See Figure 3-4, Figure 3-5, and Figure 3-6 to estimate the appropriate cycle count value for your application.
Start with SSN set HIGH, then set SSN to LOW.
5.2.2 SAM Command Byte The SAM Command Byte is defined as follows: Bit # 7 6 5 4 3 2 Value 0 0 0 0 0 0 1 0 AS1 AS0 Table 5-2: SAM Axis Select Bits Axis Measured AS1 AS0 No axis measured 0 0 X axis 0 1 Y axis 1 0 Z axis 1 1 5.2.3 Making a Single-Axis Measurement The steps to make an interrupt-driven single X-axis sensor measurement are given below.
5.3 Multi-Axis Measurement (MAM) Operation An initial 2-byte command initiates a sensor measurement for up to 3 sensors. After measurements are made and DRDY goes HIGH, another 1-byte command initiates reading of the measured values on the MISO line. See the Appendix for code examples. 5.3.1 MAM SPI Activity Sequence The SPI timing sequence is given below for MAM operation. SPI timing is discussed in Section 4.4. The Return Byte is 0x9A. If the Return Byte is 0x9B, then the 3D MagIC is in Legacy Mode.
5.3.3 MAM Axes Select Byte The MAM Axes Select Byte establishes which axes are to be measured and initiates a multi-axis measurement. It is defined as follows: Bit # 7 6 5 Value 0 0 0 4 3 AAX1 AAX0 2 1 0 0 0 1 Table 5-3: MAM Axes Select Bits Axes to be Measured AAX1 AAX0 Axes Select Byte X, Y, and Z 0 0 0x01 X and Y 0 1 0x09 X only 1 0 0x11 No axis measured 1 1 0x19 5.3.
Send 0xC9 on the MOSI pin. This is the MAM Command Byte to read from the MSB of the X-axis measurement results register. The register data is clocked out on the MISO pin, and once the X-axis MSB is clocked out the next register will clock out, and so forth. Each sensor reading consists of 3 bytes of data, clocked out MSB first. X-axis data is presented first, then y-axis data, then z-axis data. The first nine (9) bytes represent a complete 3-axis measurement.
6 3D MagIC Operation – Legacy Mode Note: This section discusses how to operate the 3D MagIC in Legacy Mode. For a description of operation in Standard Mode, see Section 5. Legacy Mode is intended for customers who previously used PNI’s 11096 ASIC. The 3D MagIC will operate in Legacy Mode when pin #12 is held HIGH. The intent of Legacy Mode is to enable the user to easily substitute PNI’s 3D MagIC for PNI’s legacy 11096 ASIC (p/n 12576).
6.1.1 Legacy Operation SPI Activity Sequence The SPI activity sequence is given below for Legacy operation. SPI timing is discussed in Section 4.4. The Return Byte is 0x9B. If the Return Byte is 0x9A, then the 3D MagIC is in Standard Mode. Two (2) data bytes will be clocked out for a Legacy measurement. The Command Byte is discussed below. Figure 6-1: SPI Activity Sequence Diagram for Legacy Operation 6.1.
Table 6-1: Legacy Period Select Bits Period Select Value Cycle Counts PS2 PS1 PS0 0 32 0 0 0 1 64 0 0 1 2 128 0 1 0 3 256 0 1 1 4 512 1 0 0 5 1024 1 0 1 6 2048 1 1 0 7 4096 1 1 1 AS0-AS1: Axis Select Determines the sensor to be measured. Table 6-2: Legacy Axis Select Bits Axis Measured AS1 AS0 No axis measured 0 0 X axis 0 1 Y axis 1 0 Z axis 1 1 6.1.3 Making a Legacy Measurement The steps to make a sensor measurement are given below.
The SSN input may be returned HIGH at this point to free up host communication with another device if desired. This will not affect the measurement process. A measurement is taken, which consists of forward biasing the sensor and making a period count; then reverse biasing the sensor and counting again; and then taking the difference between the two directions and presenting this value.
6.2.1 Clock Divide Command Byte The Command Byte to initiate reading or writing to the Clock Divide Register is defined as follows: Bit # 7 6 5 4 3 2 1 0 Value 1 R/W 0 0 0 0 0 0 R/W: Read/Write When HIGH signifies a Read operation from the Clock Divide Register. When LOW signifies a Write operation to the Clock Divide Register. 6.2.
6.2.3 Command Sequence for Setting Clock Divide Value A sample command sequence is given below which sets the Clock Divide Value to “1”. Set SSN to LOW. Send 0x80 (this is the Command Byte to write to the Clock Divide Register) Send 0 (this sets the Clock Divide Value to “1”) Set SSN to HIGH 6.2.4 Changes to the Period Select Value Since the high-speed clock is running faster, the time resolution of the measurement is increased.
Appendix – Standard Mode Sample Code /******************** (C) COPYRIGHT 2013 PNI Sensor Corp ***************** * File Name: ThreeD_magIC.
/************************************************************************* * Function Name : spi_1_go_0_phase_0_pol * Description : changes phase and polarity of the SPI bus to 0/0 * Input : None * Output : None * Return : None *************************************************************************/ void spi_1_go_0_phase_0_pol(void) { //Set SPI Clock Phase and Polarity to 0/0 } /************************************************************************* * Function Name : spi_1_go_1_phase_1_pol * Description
/************************************************************************* * Function Name : mag_sample * Description : Sample the magnetic sensors and get measurement in "count" * Input : None * Output : None * Return : None *************************************************************************/ void mag_sample(void) { unsigned char axis; // // change the phase and polarity to be 0/0 // spi_1_go_0_phase_0_pol(); SPI_tom_CS_LOW(); usec_delay(1); //Send 0xC9 on MOSI pin to initiate reading the measurement
/************************************************************************* * Function Name : ThreeD_magic_init * Description : initializes the 3D MagIC.
/************************************************************************* * Function Name : DataReady() * Description : Check DRDY pin, return true if high, otherwise false.