Powerful Sensing Solutions for a Better Life CHS Series USER MANUAL Document Part Number: 7430-0105-03 Rev B MEMSIC, Inc., 1759 McCarthy Blvd, Milpitas, CA 95035 Tel: 408-964-9700, Fax: 408-854-7702 email: [email protected], website: www.memsic.com WARNING This product has been developed by MEMSIC exclusively for commercial applications. It has not been tested for, and MEMSIC makes no representation or warranty as to conformance with, any military specifications or that the product is appropriate for any military application or end-use. Additionally, any use of this product for nuclear, chemical, biological weapons, or weapons research, or for any use in missiles, rockets, and/or UAV's of 300km or greater range, or any other activity prohibited by the Export Administration Regulations, is expressly prohibited without the written consent of MEMSIC and without obtaining appropriate US export license(s) when required by US law. Diversion contrary to U.S. law is prohibited. ©2010 MEMSIC, Inc. All rights reserved. Information in this document is subject to change without notice. MEMSIC and SoftSensor are registered trademarks and DMU is a trademark of MEMSIC, Inc. Other product and trade names are trademarks or registered trademarks of their respective holders. CHS Series User’s Manual Table of Contents 1 Introduction .......................................................................................................................................................... 1 1.1 1.2 2 Electrical and Mechanical Interface................................................................................................................... 2 2.1 2.2 2.3 3 Sensor Based Coordinate System ..................................................................................................................................12 Definition of Orientation Angles ...................................................................................................................................12 Definitions .....................................................................................................................................................................12 Calculation of Roll and Magnetic Roll ..........................................................................................................................13 Calculation of Inclination ..............................................................................................................................................13 Magnetic Heading (Azimuth, Yaw)...............................................................................................................................13 Appendix A. Mechanical Specifications ........................................................................................................... 15 6.1 6.2 6.3 7 Initial Setup of the System...............................................................................................................................................6 Operation of the System...................................................................................................................................................6 Binary Mode Operation ...................................................................................................................................................8 Descriptions of the System Internal Constants ................................................................................................................9 Common Command Examples ........................................................................................................................................9 Verifying Proper Operation of the System.....................................................................................................................10 Description of the CHS Series Sensor Orientation Angles ............................................................................. 12 5.1 5.2 5.3 5.4 5.5 5.6 6 MagView Software ..........................................................................................................................................................4 Connections .....................................................................................................................................................................4 Setup MagView ...............................................................................................................................................................4 Take Measurements .........................................................................................................................................................4 System Startup and Checkout............................................................................................................................. 6 4.1 4.2 4.3 4.4 4.5 4.6 5 Electrical Interface...........................................................................................................................................................2 Mechanical Features ........................................................................................................................................................2 Communication Interface.................................................................................................................................................2 Quick Start............................................................................................................................................................ 4 3.1 3.2 3.3 3.4 4 Description of the System................................................................................................................................................1 Package Contents.............................................................................................................................................................1 CHS110TB Outline Drawing.........................................................................................................................................15 CHS100TB Outline Drawing.........................................................................................................................................16 CHS090TB Outline Drawing.........................................................................................................................................17 Appendix B. CHS Command and Output Interface ....................................................................................... 18 7.1 CHS Series Heading Sensor Command Set ...................................................................................................................18 8 Appendix C. CHS110TB-001 Specifications .................................................................................................... 22 9 Appendix D. CHS110TB-002 Specifications .................................................................................................... 23 10 Appendix E. CHS100TB-002 Specifications .................................................................................................... 24 11 Appendix F. CHS090TB-001 Specifications .................................................................................................... 25 12 Appendix G. Warranty and Support Information.......................................................................................... 26 12.1 12.2 Customer Service...........................................................................................................................................................26 Contact Directory...........................................................................................................................................................26 Doc.# 7430-0105-03 Rev. B Page iii CHS Series User’s Manual 12.3 12.4 Page iv Return Procedure .......................................................................................................................................................... 26 Warranty ....................................................................................................................................................................... 27 Doc.# 7430-0105-03 Rev. B CHS Series User’s Manual About this Manual The following annotations have been used to provide additional information. ; NOTE Note provides additional information about the topic. EXAMPLE Examples are given throughout the manual to help the reader understand the terminology. IMPORTANT This symbol defines items that have significant meaning to the user WARNING The user should pay particular attention to this symbol. It means there is a chance that physical harm could happen to either the person or the equipment. The following paragraph heading formatting is used in this manual: 1 Heading 1 1.1 Heading 2 1.1.1 Heading 3 Normal Doc.# 7430-0105-03 Rev. B Page v CHS Series User’s Manual 1 Introduction 1.1 Description of the System The MEMSIC CHS Series Towed Array Heading Sensor is a solid-state strap down heading sensor designed for accurate measurement of magnetic heading in towed array and static array applications. The CHS Series of products measure heading in all orientations, and is offered in a sealed housing that is pressure rated to 2500 psi. The CHS Series Towed Array Heading Sensor system contains both a 3-axis fluxgate magnetometer and a 3-axis accelerometer. The combination of these two sensor systems enables the roll, pitch and azimuth angles of the CHS Sensor reference frame with respect to the local gravity and magnetic field vectors to be determined. Roll and pitch angles are determined from the accelerometer subsystem which measures the orientation of the system with respect to the gravity vector. After roll and pitch are known, the magnetometer subsystem is used to determine the azimuth angle of the system. The knowledge of the roll and pitch angles enable determination of the horizontal components of the earth's local magnetic field; this information defines the azimuth angle. The CHS Series system also contains a microprocessor and 7-channel 16-bit analog to digital converter. Six channels are assigned to the magnetometer and accelerometer outputs. One channel provides temperature data from an internal thermometer. The functions performed by the system microprocessor and A to D subsystem are: 1) Conversion of the sensor analog outputs to digital form; 2) Calibration of the sensor scale, offset and alignment factors for a temperature variation and 3) Implementation of serial communications between the system and an external computer. The CHS Series sensor communicates with the outside world over serial bi-directional interface. An ASCII character command language has been created to facilitate communication with the CHS Series Sensor. For instance, if the ASCII characters for 0, S and D are sent in sequence, the CHS Sensor interprets this as a "send data" command and responds by sending over the serial interface an ASCII string representing the value of all magnetometer, accelerometer and temperature outputs. The leading zero in this sequence denotes the system serial number. The CHS Series sensor can also be configured to send angle data (roll, pitch and azimuth) instead of the accelerometer and magnetometer sensor data. An auto send data mode is included in the software. When this mode is active, data is repeatedly sent after power is applied to the system at a rate of two transmissions per second in angular output mode and three times per second in magnetometer/accelerometer output mode. The CHS Series system accelerometers are calibrated by placing the system in a precision rotation fixture and systematically changing the system orientation in the earth's gravitational field. The CHS Series system magnetometers are calibrated by placing the system in a precision 3-axis Helmholtz coil system, which enables the application of known magnetic fields to the system. Both the rotation fixture and Helmholtz coil have alignment pins and reference surfaces, which mate to the CHS Series sensor reference surface. System calibration can be performed at a base temperature (usually 25°C) or over a temperature range (for example –5oC to 40°C). When the system is calibrated over a temperature range, data is read from the system at temperature intervals between the minimum and maximum temperature specification. For calibration over the interval of -5oC to 40°C, data is usually read at 25°C temperature intervals between -5°C and 40°C. The data taken at each temperature includes scale, offset and sensor alignment data. The recorded data is then used to create a look up table for scale offset and alignment corrections. This table is then downloaded into the CHS Series sensor internal EEPROM memory where it can be accessed by the system internal microprocessor. Corrections to the read sensor data can then be made by the internal microprocessor system before data is transmitted. 1.2 Package Contents In addition to your CHS Sensor product you should have: • 1 CD with MagView Software MagView will allow you to immediately view the outputs of the Sensor on a PC running Microsoft® Windows™. • 1 User’s Manual This contains helpful hints on programming, installation, valuable digital interface information including data packet formats and conversion factors. Doc.# 7430-0105-03 Rev. B Page 1 CHS Series User’s Manual 2 Electrical and Mechanical Interface 2.1 Electrical Interface The electrical interface to the CHS Series system is shown in Table 1. Four flying leads (26 gauge Teflon insulated) are used to make connection to the system. The input power is applied to Red wire. The supply voltage is +5 VDC for standard version and the input voltage can range from +7 to +12V for custom version. Data communication is established using the serial-in and serial-out lines and the system processor or external computer. The serial in and serial out lines operate at RS232 levels and are normally set to operate at 9600 baud with one stop bit and no parity. The user however can change the baud rate by setting bits in the system EEPROM. (See Section 4.5.5) Table 1. Electrical Interface for CHS Series Sensor1 Wire Color Red Black Orange Yellow Function Input Power Ground2 RS232 serial in RS232 serial out Notes: 1. The Pin out shown is for standard model only. For custom models, refer to appendices. 2. The black ground wire is used as the digital ground for the serial interface as well as the power ground. 2.2 Mechanical Features 2.2.1 Mechanical Mounting of CHS110TB An outline drawing of the CHS110TB system is shown in Appendix A. The system dimensions are 1.1" diameter x 5.25" (2.75 cm x 13.13 cm). The system is normally mounted by using four 2-56 x 0.250 long screws to secure the CHS110TB reference surface to a flat mating surface. Two 0.062" diameter x 0.125" long pins protruding from the external mating surface can be used to orient the CHS110TB on the external mounting surface. The orientation of the X, Y and Z-axes is shown in Section 6.1. The output polarity sense of the axes is such that a field pointing in the direction of the arrows will produce a positive output voltage. For example, if the X magnetometer is oriented so the x-axis arrow points north, then the x-axis output voltage will be positive. If the x-axis accelerometer arrow is pointed down, the x-axis accelerometer output will be positive. 2.2.2 Mechanical Mounting of CHS100TB An outline drawing of the CHS100TB Heading Sensor illustrating the X, Y and Z orientation is shown in Section 6.2. The system is secured by two 2-56 screws (brass recommended) at each end, and the two adjacent pins at each end correctly align the Y and Z-axis of the system. The X-axis is aligned by the sensor’s cylindrical axis. The output polarity sense of the axes is such that a field pointing in the direction of the arrows will produce a positive output voltage. 2.2.3 Mechanical Mounting of CHS090TB An outline drawing of the CHS090TB Heading Sensor illustrating the X, Y and Z orientation is shown in Section 6.3. The system is secured by two 2-56 screws (brass recommended) at each end, and the two adjacent pins at each end correctly align the Y and Z-axis of the system. The X-axis is aligned by the sensor’s cylindrical axis. The output polarity sense of the axes is such that a field pointing in the direction of the arrows will produce a positive output voltage. 2.3 Communication Interface Two communication protocols are available: 1. ASCII and 2. BINARY The ASCII protocol is based upon sending ASCII characters to the CHS Series Sensor to obtain data. The CHS Sensor responds by sending out an ASCII data stream complete with carriage returns and line feeds so that it can be easily displayed on a computer terminal. The binary protocol is used for high speed computer to computer interchange. In this case, one byte is sent to request data (e.g. ASCII 128). The CHS Sensor then responds with a data packet containing the desired data plus header and checksum. The currently supported binary commands and their definitions follow in Table 2: Page 2 Doc.# 7430-0105-03 Rev. B CHS Series User’s Manual Table 2. Binary Commands for CHS Series Sensor Command 128 129 131 132 Command Definition send sensor data in binary format send sensor data in IEEE 32 bit format send angle data in binary format send angle data in IEEE 32 bit format The CHS Sensor response to these commands is of the following form: <number of data bytes> <MX> <AX> <MY> <AY> <MZ> <AZ> <MT> <AT> <0> <data check sum><end> Refer to the Section 7.1 (Heading Sensor Command Set) for a more detailed discussion of the data format for binary transmissions. Doc.# 7430-0105-03 Rev. B Page 3 CHS Series User’s Manual 3 Quick Start 3.1 MagView Software The purpose of the Sensor interface program is to provide a graphical output interface to the CHS Series Sensor and allow the user to configure and operate the sensor. The MagView interface program allows the sensor to be monitored in every mode that the sensor can be programmed. The sensor can be programmed to allow for ASCII or BINARY transfer mode and corrected or non-corrected data. Log files of sensor data can be created. A scrolling graph of the digital data and graphical indicators of the angular data are displayed to the operator. Minimum and maximum values are maintained for the magnetometer and the accelerometers. 3.1.1 MagView Computer Requirements The following are the minimum capabilities that your computer should have in order to run MagView successfully: • CPU: Pentium Class • RAM: 32MB minimum, 64MB recommended • Operating System: Windows 98, NT4, 2000, XP 3.1.2 Install MagView To install MagView software on to your computer: 1. Insert the CD “Support Tools” in the CD-ROM drive. 2. Find the MagView folder and copy it over to your desktop and the software ready to use. If you have any problems or questions, you may contact MEMSIC directly. 3.2 Connections The CHS Series Sensors come with flying leads. The description of different wire is provided in Table 1. 1. Connect the Serial signal wires and ground to the serial port of your computer appropriately (refer to Table 3). 2. The black and red wires supply power to the Sensor. Match red to (+) power and black to (-) ground. See the specifications for your unit for input voltage. WARNING Do not reverse the power leads! Applying the wrong power to the Sensor can damage the unit; MEMSIC is not responsible for resulting damage to the unit. 3.3 Setup MagView With the Sensor connected to your PC serial port and powered, open the MagView software. 1. From the MagView main display, click on “Configure” button and select the correct COM port, Baud Rate (default is 9600) and Sensor model (for CHS Series chose 544). 2. You can log data to a file by entering a data file name. 3. You can also administer various Sensor Settings and Special Settings via this Configure screen and save settings. 4. The main screen provides the graphical visualization of various sensor parameters that can be checked from “Graph” menu. 5. The “Monitor” window allows the user to view the data being sent from the sensor and allows the operator to send commands to the sensor. 3.4 Take Measurements Once you have configured MagView to work with your sensor, pick what kind of measurement you wish to see. “AutoData” will show you the output you choose as a strip-chart type graph of value vs. time. “DataOnce” issues the command to send the data Page 4 Doc.# 7430-0105-03 Rev. B CHS Series User’s Manual one time. “Monitor” window allows the user to view the data being sent from the sensor and allows the operator to send commands to the sensor. Doc.# 7430-0105-03 Rev. B Page 5 CHS Series User’s Manual 4 System Startup and Checkout 4.1 Initial Setup of the System In order to operate the CHS Series Sensor, power must be applied to it and an interface with an external computer must be set up. Powering will depend upon whether the unit is using a +5V supply or the internal regulators and powers from +7VDC to +12VDC (for custom models only). To ensure system accuracy, the +5V powered system must be within ± 0.05V of +5V. Connect the correct power lead to the selected supply voltage. (See Table 1) After powering, the system should consume about 71 mA of input current. In order to set up a computer interface with the system, select the output protocol of the CHS Sensor. This can be RS232 or RS422. Refer to appendices for your specific model. About 1 second after power up, the CHS Sensor will send out a sign on message. This can be observed with an oscilloscope as a series of transitions from -5V to +5V (RS232). Since PC's use RS232 protocol, they can be directly connected to a CHS Sensor employing this protocol. PC's use either a 25 pin or a 9 pin D connector to implement their serial ports. This connector is always a bulkhead male connector on the PC chassis. The serial in, serial out and ground connections for these connectors are provided in Table 3. Table 3. RS-232 COM Port Connections Function Serial out Serial in Ground 25 pin 9 pin 2 3 7 3 2 5 Connect the CHS Sensor serial output line to the computer in line and the CHS Sensor serial input line to the computer serial out line. To communicate with the CHS Sensor, a terminal program will have to be run on the PC. The Windows HyperTerminal program will suffice for this. Other suitable terminal programs are ProComm and ASCII Pro. These programs turn the computer into a dumb terminal. In this mode, whatever you type on the keyboard goes out the selected serial port (e.g. COM1) and whatever comes in the serial port is displayed on the computer display. If you use HyperTerminal, you must select the proper COM port (e.g. COM1, COM2, etc.) and set the baud rate to be 9600 with one stop bit and no parity. Set the port up for direct connect and turn off any handshaking. The easiest method of determining if a working communications link with the CHS Sensor has been established is to observe the PC display when the CHS Sensor is powered up. The CHS Sensor transmits a power up sign on message, which should appear in readable form on the PC display. The appearance of an unreadable message at power up may indicate incorrect protocol (i.e. TTL instead of RS232) or an incorrect baud rate. 4.2 Operation of the System After establishing communication with the CHS Sensor, data can be obtained from the system by sending (typing) the command 0SD<CR> (0 Send Data). The 0 in this sequence is the default serial number of the unit. After sending this command, the CHS Sensor will respond with an output that appears as follows: MX: 0.5432 MY: 0.1234 MZ: 1.0145 t: 45.0 AX: 0.9456 AY: 0.4510 AZ: 0.0112 The numbers following the MX, MY and MZ headers represent the sensor magnetometer output in Gauss. The numbers following the AX, AY and AZ headers represent the accelerometer output in gees. The temperature (°C) follows the t header. Page 6 Doc.# 7430-0105-03 Rev. B CHS Series User’s Manual The above outputs represent data sent when the CHS Sensor is in sensor mode. If angular data is required, the system mode will need to be changed. In general, the CHS Sensor operating characteristics are controlled by the values of internal byte constants. These constants are stored in the system EEROM and can be changed by a two-step process. The two-step process is used for security reasons to ensure that these constants are not inadvertently changed. To change the CHS Sensor to angle mode, byte 02 must be changed from 02 (sensor mode) to 03 (angle mode). To accomplish this, type: 0L<CR> The unit will respond with the message: enabled! Next, type the sequence: 0WC02b03<CR> (0 Write Constant 02 byte 03) The unit will respond by sending the message: done Now request data by sending the sequence: 0SD<CR> The response will look something like this: MX: 180.0 MY: 90.3 MZ: 185.6 t: 24.3 AX: .6451 AY: .4056 AZ: 1.0001 The numbers following MX, MY and MZ represent the system roll, inclination and azimuth. The numbers following the AX, AY and AZ represent the system magnetic roll angle, total magnetic field and total gravitational field. The total field numbers are of interest because they are the same for all orientations of the sensor since AX 2 + AY 2 + AZ 2 = 1 g MX 2 + MY 2 + MZ 2 = 1Gauss The degree to which these field magnitudes are constant for different orientations is a measure of the accuracy of the sensor. The actual magnetic field amplitude reported will vary somewhat depending on location. This value ranges from 0.4 to 0.6 Gauss over the earth’s surface. It is also possible to configure the system mode to output raw A to D counts. This can be accomplished by setting byte 02=0. In order to observe the value of any internal system constant send the commands 0SC02b <CR> 0SC*b <CR> The first command results in the value of byte constant 02 being transmitted. The second command evokes a response containing the values of all byte constants. The CHS Sensor can transmit data in two formats: 1) text and 2) binary. Text transmissions are formatted to display correctly when the CHS Sensor is connected to a PC running a terminal emulator program (e.g. PC PLUS, HyperTerminal, etc.). Binary transmissions are faster than text transmissions and are more suited to interfacing the CHS Sensor to a microprocessor system. In command mode, binary transmissions are initialed by sending a single byte to the CHS Sensor, e.g. ASCII 128 or ASCII 129. The CHS Sensor has an autosend mode, which enables data to automatically be sent repeatedly upon power up. Byte 01 must be set equal to 5A for autosend mode to be active. The format of the data sent in autosend mode is determined by the value of byte 08. For repetitive text transmissions, set byte 08=10. For repetitive binary transmissions, set byte 08=11. Doc.# 7430-0105-03 Rev. B Page 7 CHS Series User’s Manual 4.3 Binary Mode Operation In command mode, binary transmissions are initialed by sending a single byte to the CHS Sensor, e.g. ASCII 128 or ASCII 129. Consider the following data transmissions from a CHS Sensor, in Binary mode: SOT MX AX MY AY MZ AZ TEMP ANA1 ST CS EOT 10 00EE 0AB4 F646 FC1C 0E0E 255D 087E 7D01 80 A2 7FFF The binary data packets will always start with a header byte 0x10 and end with two bytes 0x7FFF. The data is always sent most significant byte (MSB) first, then least significant byte (LSB). Angle, sensor and temperature data is sent as 16-bit signed integers. The binary data packet is a much more efficient method of sending data. In addition, binary data is often much easier to parse than ASCII data. Table 4 shows the definition of the binary data packet for sensor mode and angle mode. Table 4. CHS Sensor Binary Data Packet Byte 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 Sensor mode SOT (0x10) MX (MSB) MX (LSB) MY (MSB) MY (LSB) MZ (MSB) MZ (LSB) AX (MSB) AX (LSB) AY (MSB) AY (LSB) AZ (MSB) AZ (LSB) Temperature (MSB) Temperature (LSB) ANA1 (MSB) ANA1 (LSB) ST Checksum EOT MSB = 0x7F EOT LSB = 0xFF Angle Mode SOT (0x10) Roll Angle (MSB) Roll Angle (LSB) Pitch Angle (MSB) Pitch Angle (LSB) Azimuth (MSB) Azimuth (LSB) Magnetic Roll (MSB) Magnetic Roll (LSB) Total Mag. Field (MSB) Total Mag. Field (LSB) Total Accel (MSB) Total Accel (LSB) Temperature MSB Temperature (LSB) ANA1 (MSB) ANA1 (LSB) ST Checksum EOT MSB = 0x7F EOT LSB = 0xFF Magnetometer and accelerometer sensor values can be decoded by first converting to decimal and then dividing by 10,000. For instance, in the above transmission: MX = 0E0E = 3598/10,000 = 0.3598 Gauss MY = F646 = -2490/10,000 = -0.2490 Gauss AX = 0AB4 = 2740/10,000 = 0.2740 g Angles are decoded by converting to a decimal value and then dividing by 100. If the above data packet was data sent in angle mode, you would have: Page 8 Doc.# 7430-0105-03 Rev. B CHS Series User’s Manual MX = 0E0E = 3598/100 = 35.98° Roll MY = F646 = -2490/100 = -24.90° Inclination AX = 0AB4 = 2740/100 = 27.40° Magnetic Roll Total magnetic field and total acceleration are decoded using the same conversion as the normal sensor values (divide by 10,000.) Temperature is decoded by converting to decimal and dividing by 100 TEMP = 087E = 2174/100 = 21.74°C The ANA1 (transmission voltage) and ST (Status) bytes are not typically used in the CHS Sensor. The value of these bytes will have no meaning. The CS byte is a checksum. The checksum is calculated by summing all of the bytes in the transmission before the CS byte excluding the SOT and status (ST) characters. For the above transmission the checksum is calculated as follows: CS = 00+EE+0A+B4+F6+46+FC+1C+0E+0E+25+5D+08+7E+7D+01 = 05A2 The checksum is the lower byte of the sum, or A2. 4.4 Descriptions of the System Internal Constants The CHS Sensor employs two types of internal constants: 1) byte and 2) floating. There are approximately 40 byte constants, which are used to configure the operating characteristics of the CHS Sensor. The most important of these constants and their functions are provided in Table 5. Detailed descriptions of all the internal byte constants can be found in the Appendix B of this manual. Table 5. Byte Functions for CHS Series Sensor Byte 00 01 02 08 09 10 Function enables echoing when non zero enables autosend when = 5A enables sensor A/D count output when =0, sensor output when =02 and angle output when =03 Sets power on mode (e.g., =10 enables autosend in ASCII mode on power on) Baud rate lock ( =5A if any baud rate other than 9600 is to be used) Sets baud rate EXAMPLE 4.5 Common Command Examples All commands should start with the character “0” (zero) and end with a <CR> (carriage return) You need to send the command “0L” before each command to change a byte constant. Refer to the Appendix B for a detailed description of the 544 command set. 4.5.1 Get a data packet To receive a single data packet, use the “send data” command. 0SD<CR> The CHS Sensor will respond with a single data packet. 4.5.2 Read the byte constants The configuration of the CHS Sensor is controlled by the values of its internal byte constants. To read out the current values of the byte constants, use one of the following commands. The CHS Sensor will respond with the current value in hex. To read a single, specific constant, use the following: Doc.# 7430-0105-03 Rev. B Page 9 CHS Series User’s Manual 0SC<number>B<CR>, where <number> refers to the address of the constant you want to read. The number should be typed in the format “00” - “99”. To read all constants, use the following: 0SC*B<CR> 4.5.3 Make the CHS Echo You may want the CHS Sensor to echo the characters sent to it, so that you can verify your communication. To do this, you need to set the value of the byte constant 00 to be non-zero. 0L<CR> 0WC00B01<CR> 4.5.4 Change Data Output Mode The CHS Sensor can be configured to output in raw ADC counts, sensor values, or angles. The following example shows how to change the sensor configuration to use angle mode. See Table 5 for a description of other possible values. 0L<CR> 0WC02B03<CR> 4.5.5 Changing the Baud Rate The communications baud rate can be changed by using the following sequence: 1. Set byte constant 10 according to Table 6. More values can be found in Appendix B 2. Set byte constant 09 to 0x5A 3. Cycle power to the CHS Sensor to activate the new baud. Table 6. Baud rate changing commands for CHS Series Sensor Constant 10 value 35 33 32 31 Baud rate 300 1200 2400 4800 The following commands illustrate setting the baud rate to 2400. 0L<CR> 0WC10B32<CR> 0L<CR> 0WC09B5A<CR> ; NOTE When byte constant 09 is set to any value other than 0x5A, the system baud rate is 9600. 4.5.6 Request Binary Data To request a binary data packet, the user sends a single byte command. However, the total command must still start with the address “0” and <CR> end. To request a binary data packet in sensor mode, send the following command: 0<128><CR>, where <128> is the single byte 0x80. To request a binary data packet in angle mode, send the following command: 0<131><CR>, where <131> is the single byte 0x83. See Section 4.3 for a description of how to decode the binary data packets. 4.6 Verifying Proper Operation of the System Proper operation of the CHS Sensor can be verified when the system is in either angle mode (byte 02=03) or sensor mode (byte 02=02). Page 10 Doc.# 7430-0105-03 Rev. B CHS Series User’s Manual In angle mode, proper operation is verified by placing the CHS Sensor in known orientations and comparing the CHS Sensor measured data with the known orientation data. To check roll and inclination outputs, place the CHS Sensor on a known flat surface with the z axis pointed down. A flat surface can be set up and verified by using a bubble level. Request data from the CHS Sensor and verify that the roll and inclination outputs are as follows: roll inclination 0° ± 0.5° 90° ±0.5° Next, roll the CHS Sensor about the x-axis in increments of 90° and verify that for each position the roll angle increments in succession to 90°, 180° and 270° while the inclination angle remains 90° ± 0.5°. To verify inclination at 0° and 90°, position the CHS Sensor so that the x-axis is pointed down (0° inclination) and up (180°). Because the CHS Sensor leads exit the bottom of the unit when the x-axis is up, it may be awkward to verify this orientation without additional support blocks. To verify azimuth accuracy, a good compass and an area free from magnetic materials must be located. Usually areas inside buildings contain some magnetic material (e.g. metal desks, rebar in concrete floors, etc.). In this case, verifying azimuth accuracy to 1° is difficult. Use a compass to orient the CHS Sensor approximately horizontal and East (inclination 90°, azimuth 90°). Carefully align the CHS Sensor along x-axis so that it is pointed East and verify that the azimuth reading is 90° ±1.0°. Use the same procedure to verify azimuth accuracy for 180°, 270° and 0° readings. In sensor mode (byte 02=02) the CHS Sensor accelerometer sensors should read +1.00g and -1.00g when pointed down and up respectively. Therefore when lying flat on a horizontal surface with the z axis pointed down, the x and y accelerometers should read 0±0.01g and the Z accelerometer should read 1.00 ±0.01g. The CHS Sensor magnetometers are calibrated to read directly in Gauss. Proper operation of these sensors is difficult to verify without elaborate calibration equipment. However, verification of operation can be accomplished by pointing each magnetometer sensor into and out of the earth’s magnetic field. For these orientations, the magnetometer should read about +0.5G and -0.5G. In the Northern hemisphere, the direction of the earth’s magnetic field is North with an inclination of about 60°. For instance, if the system x-axis is pointed to magnetic North and inclined about 60° into the earth, (30° from vertical) the x magnetometer output should read +0.5 G. Doc.# 7430-0105-03 Rev. B Page 11 CHS Series User’s Manual 5 Description of the CHS Series Sensor Orientation Angles This application note describes how to calculate the roll, pitch and azimuth angles for the CHS Series orientation sensor from accelerometer and magnetometer output data. 5.1 Sensor Based Coordinate System The coordinate system of the CHS Sensor system is defined in Figure 1. The accelerometer and magnetometer coordinate systems are both aligned with the physical package coordinate systems shown. For the magnetometer sensors, a positive output voltage will result if the sensor is pointed north. For the accelerometers, a positive voltage will result if the sensors are pointed down. 5.2 Definition of Orientation Angles The orientation angles are defined in Figure 1. Azimuth or yaw is defined as the angle measured from magnetic north (clockwise from above) to the projection of the x-axis on the horizontal plane. Figure 1. CHS Series Sensor Coordinate System and Orientation Angles Inclination is the angle that the x-axis makes with the down direction and is 0° when the x-axis is down and 90° when the x-axis is horizontal. Roll or gravity tool face is defined as the angle of counterclockwise rotation about the x-axis (looking in the positive x-axis direction) required to zero the y axis accelerometer output and position the z axis accelerometer so that its output polarity is positive. Magnetic roll is defined as the angle of counterclockwise rotation about the x-axis (looking in the positive x-axis direction) required to zero the y-axis magnetometer output and position the z-axis magnetometer so that its output polarity is negative. Magnetic roll is useful in defining the CHS Sensor orientation when inclination is near vertical. In this situation, gy and gz are near zero and roll and azimuth calculations become less accurate. 5.3 Definitions The following sections describe equations for determining the CHS Sensor orientation angles. These equations make use of the following definitions: accelerometer x axis output gx accelerometer y axis output gy Page 12 Doc.# 7430-0105-03 Rev. B CHS Series User’s Manual gz Hx Hy Hz accelerometer z axis output magnetometer x axis output magnetometer y axis output magnetometer z axis output 5.4 Calculation of Roll and Magnetic Roll The roll angle, θ, is determined by using the following equations (0 ≤ θ ≤ 2π): gz cos θ = 2 gy + gz2 gy sin θ = tan θ = g y2 + gz2 gy gz Roll is 0° when gy = 0 and gz > 0. Roll is 2π radians when gy = 0 and gz < 0. When the x-axis is near vertical (pitch < 5°), the quantities gy and gz become very small and the above expressions yield a less accurate value of θ. In this situation, magnetic roll is often used to determine the angular orientation of the CHS Sensor about the longitudinal (X) axis. Magnetic roll, θm, is given by the following 0 ≤ θm ≤ 2π): −H y sin θ m = H y2 + H z2 −H z cos θ m = tan θ m = H y2 + H z2 Hy Hz 5.5 Calculation of Inclination Inclination, ε, is determined from the following equations (0 ≤ ε ≤ π): cos ε = sin ε = tan ε = where, g = gx g gy2 + gz2 g g y2 + gz2 gx gx2 + g y2 + gz2 Inclination is 0 when the CHS Sensor x-axis is pointed down and π/2 radians when horizontal. 5.6 Magnetic Heading (Azimuth, Yaw) We first give expressions for the magnetic field in a horizontal reference defined by x1, y1, z1 where x1 is aligned with the projection of the CHS Sensor x-axis in the horizontal plane and z1 is down. Doc.# 7430-0105-03 Rev. B Page 13 CHS Series User’s Manual H x1 = H y1 = H z1 = ( ) Hx gy2 + gz2 − H ygygx − Hzgxgz g g y2 + gz2 H ygz − Hzgy g y2 + gz2 Hxgx + H ygy + Hzgz g Magnetic heading, ø, is then given by (0 ≤ ø ≤ 2π) H x1 cos φ = H x1 2 + H y1 2 sin φ = tan φ = − H y1 H x1 2 + H y1 2 − H y1 H x1 = ( (H z g y − H y g z )g 2 ) Hx gy + gz2 − H ygxg y − H z gxgz Magnetic heading is 0 when the CHS Sensor x-axis points North and π/2 radians when it points East. Page 14 Doc.# 7430-0105-03 Rev. B CHS Series User’s Manual 6 6.1 Appendix A. Mechanical Specifications CHS110TB Outline Drawing (Dimensions are in inches) Doc.# 7430-0105-03 Rev. B Page 15 CHS Series User’s Manual 6.2 CHS100TB Outline Drawing (Dimensions are in inches) Page 16 Doc.# 7430-0105-03 Rev. B CHS Series User’s Manual 6.3 CHS090TB Outline Drawing (Dimensions are in inches) Doc.# 7430-0105-03 Rev. B Page 17 CHS Series User’s Manual 7 7.1 Appendix B. CHS Command and Output Interface CHS Series Heading Sensor Command Set Addressed Command is: <Address><Command><CR> An Address is <0-9 | A-Z> CR is a Carriage Return Axis is <X - Z | T> Constant Number is <00 - 99> Constant Value is <[-]<number>[<number>]> Constant String is <A-Z | 0-9><Constant String> A number is <<0-9>[number]> A command consists of one of the following: Send All Data : SD All Data is sent MX: ±#.##### AX:±#.#####<CR><LF> as requested, MY: ±#.##### AY:±#.#####<CR><LF> raw, vectors or MZ: ±#.##### AZ:±#.#####<CR><LF> angles as set by MT: ±###.####<CR><LF> byte constant 2 AT: ±###.####<CR><LF><EOT> Send Ana1 Input : SA ANA: #.#####<CR><LF><EOT> Read Float Constant : SC<Constant Number>F ±########±E##<CR><LF><EOT> Read All Float Constants : SC*F Read Byte Constant: 00: ±########±E##<CR><LF> 01: ±########±E##<CR><LF> ... ##: ±########±E##<CR><LF><EOT> SC<Constant Number>B ##<CR><LF><EOT> (In Hex) Read All Byte Constants: SC*B 00: ##<CR><LF> (In Hex) 01: ##<CR><LF><EOT> ... ##: ##<CR><LF><EOT> Read int Constant : SC<Constant Number>I #####<CR><LF><EOT> Read all int Constants : SC*I Reset A/D : 00: #####<CR><LF> 01: #####<CR><LF><EOT> ... ##: ##<CR><LF><EOT> RA Done<CR><LF><EOT> Test ROM Checksum(*) : TC if low level writes are enabled, the output is: STORED HHHH<CR><LF><EOT> If low level writes are not enabled and the Checksum of the ROM is the same as the one stored: HHHH<CR><LF><EOT> else the output is: ERR HHHH<CR><LF><EOT> Test EEROM Checksum(*) : TE if low level writes are enabled, the output is: STORED HHHH<CR><LF><EOT> If low level writes are not enabled and the Page 18 Doc.# 7430-0105-03 Rev. B CHS Series User’s Manual Checksum of the ROM is the same as the one stored: HHHH<CR><LF><EOT> else the output is: ERR HHHH<CR><LF><EOT> Test RAM: TR Either an OK or an error OK<CR><LF><EOT> The Error Addr. is in Hex ERR AT: HHHH<CR><LF><EOT> Test EEROM Read/Write*: TW (This takes up to 10 Seconds) Either an OK or an error OK<CR><LF><EOT> The Error Addr. is in Hex ERR AT: HHHH<CR><LF><EOT> Test Serial Port: TS Always Echoes OK<CR><LF><EOT> Return Software Version: TV Ver: #.###<CR><LF><EOT> Enable Low Level Writes: L Enabled!<CR><LF><EOT> Write Float To Constant*: WC<Constant Number>F<Value> Done<CR><LF><EOT> Write Byte To Constant*: WC<Constant Number>B<number> Done<CR><LF><EOT> Write Int To Constant*: WC<Constant Number>B<number> Done<CR><LF><EOT> * All Commands marked with an * require the Enable Low Level Writes command to be executed as the previous command for successful execution. All Commands Marked with a (*) execute differently when Enable Low Level Writes was executed as the previous command. ----- Binary Commands ----<128> Send All Data as Vectors in a Binary Format. <129> Send All Data as Vectors in a IEEE Float Format. <131> Send All Data as Angles in a Binary Format <132> Send All Data as Angles in a IEEE Float Format <128> and <131> Sends All Data in an encoded Binary Format in the current format as selected by Byte constant #2. If the correction mode is 0, 1 or 2 the data is returned as: <<<<Sent First <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<Sent Last<<<< If The Command is 128: <NUMDATABYTES><MX><AX><MY><AY><MZ><AZ><MT><AT><0><DATACHKSUM><END> size 8b 16b 16b 16b 16b 16b 16b 16b 16b 8b 8b 16b in bits If The Command is 131: <NUM DATA BYTES><Roll><MRoll><Pitch><Mag><Head><Grav><MT><AT><0><DATA CHK SUM><END> size 8b 16b 16b 16b 16b 16b 16b 16b 16b 8b 8b 16b in bits <END> = 0x7FFF (is unique in the data stream) <NUM DATA BYTES> = 16 <0> = a constant 0 (to allow END to be unique) <DATA CHECK SUM> = The lower 8 bits of the sum of all the bytes in the data area. <Roll> = The Roll data encoded as below. <Pitch> = The Pitch data encoded as below. <Head> = The Heading data encoded as below. <MRoll> = The Magnetic Roll data encoded as below. <Mag> = The Total Magnetic Field data encoded as below. <Grav> = The Total Gravitational Field data encoded as below. <MX>,<MY>,<MZ> = The Magnetometer data encoded as below. Doc.# 7430-0105-03 Rev. B Page 19 CHS Series User’s Manual <AX>,<AY>,<AZ> <MT>,<AT> = The Accelerometer data encoded as below. = The Temp data encoded as below. All data is sent most significant byte first. If the correction mode is 0, the Magnetometer and Accelerometer data is in a two byte signed integer format in counts. If the correction mode is 1 or 2, the Magnetometer and Accelerometer data is in a two byte signed integer format encoded as the float value times 10000. (1.2345 = 12345) If the correction mode is 3 the data is angles and is represented in a two byte signed integer format encoded as the float value times 10. (123.45 = 1234) The Temp data is in a two byte signed integer format encoded as the float value times 100. (123.45 = 12345) <129>and <132> Sends All Data in IEEE Floating point format in the current format as selected by Byte constant #2. If the correction mode is 0, 1 or 2 the data is returned as: <<<<Sent First<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<Sent Last<<<< If The Command is 129: <NUM DATA BYTES><MX><AX><MY><AY><MZ><AZ><MT><AT><0><DATA CHECK SUM> size 8b 32b 32b 32b 32b 32b 32b 32b 32b 8b 8b in bits If The Command is 132: <NUM DATA BYTES><Roll><MRoll><Pitch><Mag><Head><Grav><MT><AT><0><DATA CHECKSUM> size 8b 32b 32b 32b 32b 32b 32b 32b 32b 8b 8b in bits <END> = 0x7FFF (is unique in the data stream) <NUM DATA BYTES> = 16 <0> = a constant 0 (to allow END to be unique) <DATA CHECK SUM> = The lower 8 bits of the sum of all the bytes in the data area. <Roll> = The Roll data. <Pitch> = The Pitch data. <Head> = The Heading data. <MRoll> = The Magnetic Roll data. <Mag> = The Total Magnetic Field data. <Grav> = The Total Gravitational Field data. <MX>,<MY>,<MZ> = The Magnetometer data. <AX>,<AY>,<AZ> = The Accelerometer data. <MT>,<AT> = The Temp data. All data is sent most significant byte first. ----- Byte Constant Numbers and Their Meanings ----00 - Command Echo Flag. 0 is no command echo; anything else, echo commands 01 - Autostart Flag. If 0x5A executes the selected autostart option on power-up. 02 - Correction Level 0- Raw / 2- Vectors / 3- Angles In Angles mode, Roll is labeled MX, Pitch is labeled MY, Heading is Labeled MZ, Magnetic. Roll is labeled AX, Total Magnetic Field is labeled AY, Total Grav. Field is labeled AZ. 03 - Months since 1/90 when device was calibrated 04 - Version of the Calibration Software used 05 - Power on self test flag. If zero, a self test will be done on power up. 06 - Enable extended error messages 07 - This Sensor's Address Number 0-36 => 0-9,A-Z Page 20 Doc.# 7430-0105-03 Rev. B CHS Series User’s Manual 08 - Auto Start Mode, on powerup start accepting commands then: 0x00: Send all data in text mode once. 0x01: Send all data In Binary mode once. 0x02: Send all data In IEEE mode once. 0x10: Send all data in text mode a loop until AutoStart is not 0x5A. 0x11: Send all data In Bin. mode in a loop until AutoStart is not 0x5A. 0x12: Send All Data In IEEE mode in a loop until AutoStart is not 0x5A. 09 - User power on baud rate lock (if not 0x5A sensor will use 9600 Baud). 10 - User power on baud rate. --Use With Caution— Baud 75 150 300 600 #10 37 36 35 34 Baud 1200 2400 4800 9600 #10 33 32 31 30 11 - Not Used 12 - Lowest Calibration Temp. in counts. LSB 13 - Lowest Calibration Temp. in counts. MSB 14 - Distance in counts between Calibration Points LSB 15 - Distance in counts between Calibration Points MSB 16 - Number of Temp. Points in the SEEROM. 17 - The Table Magnetometer Offset Scale Value. (Offset = TableOffset / 2^<Byte#18>) 18 - The Table Accelerometer Offset Scale Value. (Offset = TableOffset / 2^<Byte#19>) 19 - The Table Mag Scale Scale Value. (Scale = TableScale / 2^<Byte#20>) 20 - The Table Acc Scale Scale Value. (Scale = TableScale / 2^<Byte#21>) 21 - The Table Mag Ortho Scale Value. (Ortho = TableOrtho/2^<Byte#22>) 22 - The Table Acc Ortho Scale Value. (Ortho = TableOrtho/ 2^<Byte#23>) 23 – Not Used 24 - Product I.D. String char #1 25 - Product I.D. String char #2 26 - Product I.D. String char #3 27 - Product I.D. String char #4 28 - Product I.D. String char #5 29 - Product I.D. String char #6 30 - Product I.D. String char #7 31 - Product I.D. String char #8 32 - Product I.D. String char #9 33 - Product I.D. String char #10 34 - Constant 0 35 - RTS Delay is the time in ~2 millisecond units that the RTS line is high before data is sent. Any value but 0 will slow the data rate by the same amount. Doc.# 7430-0105-03 Rev. B Page 21 CHS Series User’s Manual 8 Appendix C. CHS110TB-001 Specifications The CHS110TB-001 is a custom variant of standard model. The CHS110TB-001 uses a bi-directional serial communication interface that is factory configured for RS232 voltage levels. Data transfer is configured for automatic transmission of ASCII angle packet. However, data transmission can be user configured for polled data request and binary data strings. The main differences are: • The supply voltage is +7 to +12VDC • The default baud rate is 1200 baud • Default power-up mode is Angle and autobaud • The unit has 2m long flying leads All the other commands are same as the standard CHS110TB model. Page 22 Doc.# 7430-0105-03 Rev. B CHS Series User’s Manual 9 Appendix D. CHS110TB-002 Specifications The CHS110TB-002 is a custom variant of standard model. The CHS110TB-002 uses a bi-directional serial communication interface that is factory configured for RS232 voltage levels. Data transfer is configured for automatic transmission of ASCII angle packet. However, data transmission can be user configured for polled data request and binary data strings. The main differences are: • The supply voltage is +5VDC • The default baud rate is 4800 baud • Default power-up mode is Angle and autobaud • The unit has 2m long flying leads All the other commands are same as the standard CHS110TB model. Doc.# 7430-0105-03 Rev. B Page 23 CHS Series User’s Manual 10 Appendix E. CHS100TB-002 Specifications The CHS100TB-002 is a custom variant of the standard model. The CHS100TB-002 uses a bi-directional serial communication interface that is factory configured for RS232 voltage levels. Data transfer is configured for automatic transmission of ASCII angle packet. However, data transmission can be user configured for polled data request and binary data strings. The main differences are: • The supply voltage is +5VDC • The default baud rate is 9600 baud • Default power-up mode is Angle and autobaud • The unit has 12ft long cable with airborne connector All the other commands are same as the standard CHS100TB model. Page 24 Doc.# 7430-0105-03 Rev. B CHS Series User’s Manual 11 Appendix F. CHS090TB-001 Specifications The CHS090TB-001 uses a bi-directional serial communication interface that is factory configured for RS422/RS485 voltage levels. Data transfer is configured for automatic transmission of binary azimuth data only. However, data transmission can be user configured for polled data request and ASCII character data strings. The main differences are: • The supply voltage is +7 to +15 VDC • The default baud rate is 9600 baud • Default power-up mode is Azimuth, binary and autobaud • The unit has 3ft long flying leads • RS422/RS485 output levels with Pinout as shown below: Table 7. Electrical Interface for CHS090TB-001 Wire Color Red Black Orange Yellow Green Blue Function Input Power Ground RS422 TX+ RS422 TXRS422 RX+ RS422 RX- The CHS090TB-001 response to the command 134 is as follows: <5A><Azimuth MSB><Azimuth LSB><Cksum> where Cksum = Azimuth MSB + Azimuth LSB Doc.# 7430-0105-03 Rev. B Page 25 CHS Series User’s Manual 12 Appendix G. Warranty and Support Information 12.1 Customer Service As a MEMSIC customer you have access to product support services, which include: • Single-point return service • Web-based support service • Same day troubleshooting assistance • Worldwide MEMSIC representation • Onsite and factory training available • Preventative maintenance and repair programs • Installation assistance available 12.2 Contact Directory United States: Phone: Fax: Email: Non-U.S.: refer to website 1-408-964-9700 (8 AM to 5 PM PST) 1-408-854-7702 (24 hours) [email protected] www.memsic.com 12.3 Return Procedure 12.3.1 Authorization Before returning any equipment, please contact MEMSIC to obtain a Returned Material Authorization number (RMA). Be ready to provide the following information when requesting a RMA: • Name • Address • Telephone, Fax, Email • Equipment Model Number • Equipment Serial Number • Installation Date • Failure Date • Fault Description Page 26 Doc.# 7430-0105-03 Rev. B CHS Series User’s Manual 12.3.2 Identification and Protection If the equipment is to be shipped to MEMSIC for service or repair, please attach a tag TO THE EQUIPMENT, as well as the shipping container(s), identifying the owner. Also indicate the service or repair required, the problems encountered, and other information considered valuable to the service facility such as the list of information provided to request the RMA number. Place the equipment in the original shipping container(s), making sure there is adequate packing around all sides of the equipment. If the original shipping containers were discarded, use heavy boxes with adequate padding and protection. 12.3.3 Sealing the Container Seal the shipping container(s) with heavy tape or metal bands strong enough to handle the weight of the equipment and the container. 12.3.4 Marking Please write the words, “FRAGILE, DELICATE INSTRUMENT” in several places on the outside of the shipping container(s). In all correspondence, please refer to the equipment by the model number, the serial number, and the RMA number. 12.3.5 Return Shipping Address Use the following address for all returned products: MEMSIC, Inc. 1759 McCarthy Blvd. Milpitas, CA 95035 Attn: RMA Number (XXXXXX) 12.4 Warranty The MEMSIC product warranty is one year from date of shipment. Doc.# 7430-0105-03 Rev. B Page 27 1759 McCarthy Blvd. Milpitas, CA 95035 Phone: 408.964.9700 Fax: 408.854.7702 Website: Hwww.memsic.com Email: [email protected]