Home

TCMXB & TCM MB User Manual r09

image

Contents

1. User Manual TCM High Performance Tilt Compensated Compass Module INT SENSOR CORPORATION Table of Contents 1 COPYRIGHT amp WARRANTY INFORMATION cccccssssceccessssececcsssecsecesssees 1 2 INTRODUCTION siss a reer oini sess ursi neso sri oit swE vs 2 3 SPECIFICATIONS viscssds scssistcsssncuscctatenncnins duacesoveutdascnavicnsadeviciiesdsaiulcsenidsimnceieuns 3 3 1 Characteristics amp Requirements eee ee eee e eee eee eee 3 3 2 Mechanical Drawing s eee eee eee ee eee 6 L E ET 8 4 1 Electrical Cannecfiong aj in 8 4 2 Installation Location eee eee eee eee 9 4 2 1 Operate within the TCM s dynamic range sese ee eee e eee eee 9 4 2 2 Locate away from changing magnetic fields 00 9 4 2 3 Mount in a physically stable location eee ee eee eee eee 9 4 2 4 Location verification testing sese 9 4 3 Mechanical MOUntiNg sasssa minde 10 4 3 1 Pitch and Roll Conventions si an a hj det 10 4 3 2 Mounting Orientation 11 5 USER CALIBRATION sasssa nenen nenen ennenen neee 12 5 1 Magnetic Callas eege eege 13 5 1 1 Full Range Caltbraton 15 5 1 2 2D ARA ska 16 5 1 3 Limited Tilt Range Calbration eeen 17 5 1 4 Hard lron Only Calibration sss see eee eee eee eee 18 5 2 Accelerometer Calbratton E 18 5 2 1 Accelerometer Only Calibration sees eee eee ee eee 19 5 2 2 Mag and Accel Calibration sese eee eee eee 20 6 OPERATION WITH TCM STUDIO adds ss ss sss eee seene nenen 21 6 1 MST AN
2. tell the module to take a saml e SendConm ConmPr ot ocol kGet Data nli me Ticks 100 take a samle every second n6t ep br eak case 3 Ticks is a timer function 1 tick 10msec if Ticks gt mResponseTi me Message No response fromthe module Check connection and try again r n n amp t ep 0 br eak def aul t br eak PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 74 Revision Control Block Revision Description of Change RUS Added Revision Control Block Corrected Section 7 3 3 example to indicate Pitch ID is 24 not 79 R09 Added in section on using Multiple Calibration Coefficient PNI Sensor Corporation TCM User Manual Effective Date Approval Mar 18 2014 A Leuzinger January 21 D McKenzie 2015 DOC 1014688 r09 Page 75
3. The TCM Studio evaluation software communicates with the TCM through the RS232 serial port of a computer The TCM MB requires a user supplied level shifter to make it compatible with the computer s RS232 interface 6 1 Installation TCM Studio is provided as an executable program which can be downloaded from PNI s website It will work with Windows XP Windows Vista Windows 7 and Mac OS X operating systems Check the PNI web page at www pnicorp com for the latest version For Windows computers copy the TCMStudio msi file onto your computer Then open the file and step through the Setup Wizard For Mac computers copy the TCMStudio zip file onto your computer This automatically places the application in the working directory of your computer The Quesa plug in also in the zip file needs to be moved to Library CFMSupport if it is not already there PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 21 6 2 Connection Tab GM Studio Ver o0 File Edit Module TCM Connected r N l Firmware Version s606 l Serial Number 1027297 PCA Version R0412729 Connection Configuration Calibration Test Log Data Graph System Log Computer Serial Port Baud Rate Module Baud Rate 6 2 1 Initial Connection If using the PNI dual connectorized cable ensure the batteries are well charged e Select the serial port the module is plugged into which is generally COM 1 e Se
4. Value Examples get kCoeffCopySet value which is currently used in TCM Command Bytes 0x00 0x06 0x07 0x12 0x19 0x44 TCM Response 0x00 Ox0A 0x08 0x12 0x00 0x00 0x00 Ox CRC1 CRC2 kSetConfig AccelCoeffCopySet PE Command TCM Response frame ID config ID Up Bytes 0x00 Ox0A 0x06 Set 0x13 0x00 0x00 kAccelCoeffCopySet 0x00 0x00 0x94 0x00 0x05 0x13 OxDD 0x06 0x13 0 2 to be copy 0 0x27 OxA7 0x00 Ox0A 0x06 Set 0x13 0x00 0x00 kAccelCoeffCopySet 0x00 0x01 0x84 0x00 0x05 0x13 OxDD to be copy 1 0x06 OxA8 PNI Sensor Corporation TCM User Manual DOC 1014688 r09 Page 59 0x00 Ox0A 0x06 Set 0x13 0x00 0x00 kAccelCoeffCopySet 0x00 0x02 OxB4 0x00 0x05 0x13 OxDD to be copy 2 0x65 OxA9 U U DE U U O a d pie E S Respo D O g ID 0x07 0x13 get 0x00 0x06 0x07 0x00 Ox0A 0x08 0x13 kAccelCoeffCopySet 0x13 0x09 0x65 0x00 0x00 0x00 0x value which is CRC1 CRC2 currently used in TCM Examples Example 1 Save Magnetic Calibration result to Coeff Copy Set 4 0x00 Ox0A 0x06 0x12 0x00 0x00 0x00 0x04 0x7E OxF2 0x00 0x06 0x07 0x12 0x19 0x44 0x00 0x05 0x09 0x6E 0xDC Example 2 Use Magnetic Coeff Copy Set 1 in TCM The assumption is user has saved calibration coeffs to set 1 before 0x00 Ox0A 0x06 0x12 0x00 0x00 0x00 0x01 0x2E 0x57 0x00 0x06 0x07 0x12 0x19 0x44 0x00 0x05 0x09 0x6E 0xDC PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 60 7 5 Code
5. 12 kUserCalAutoSampling 13 Boolean True or False True kBaudRate 14 Ulnt8 0 300 1 600 2 1200 3 1800 4 2400 5 3600 6 4800 7 7200 8 9600 9 14400 10 19200 11 28800 12 38400 13 57600 14 115200 12 kMilOutput 15 Boolean True or False False kHPRDuringCal 16 Boolean True or False True kMagCoeffSet 18 Ulnt32 CET kAccelCoeffSet Note 19 Ulnt32 0 2 1 Refer to Figure 4 2 for additional information on mounting orientations PNI Sensor Corporation TCM User Manual DOC 1014688 r09 Page 44 kDeclination Config ID 1d This sets the declination angle to determine True North heading Positive declination is easterly declination and negative is westerly declination This is not applied unless kTrueNorth is set to TRUE kTrueNorth Config ID 24 Flag to set compass heading output to true north heading by adding the declination angle to the magnetic north heading kBigEndian Config ID 64 Sets the Endianness of packets TRUE is Big Endian FALSE is Little Endian kMountingRef Config ID 104 This sets the reference orientation for the module Please refer to and Figure 4 2 for additional information kUserCalNumPoints Config ID 124 The user must select the number of points to take during a calibration Table 7 5 provides the Minimum Recommended
6. Mode y during Cal Minimum Allowable Recommend Range Full Range 0 3 rms gt t45 12 10 18 2D Calibration lt 2 lt t5 12 10 18 lg Tilt lt 2 over 2x tilt 5 to 45 42 10 18 ange range Restores prior 4 18 Hard Iron Only accuracy gt t3 6 PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 14 Before proceeding with a calibration ensure the TCM is properly installed in the host system as discussed in Section 4 Also the software should be properly configured with respect to the mounting orientation Endianness north reference etc Section 6 4 outlines how to perform a calibration using Studio while Section 7 3 10 provides a step by step example of how to perform a calibration using the PNI protocol 5 1 1 Full Range Calibration A Full Range Calibration is appropriate when the TCM can be tilted 45 or more This method compensates for hard and soft iron effects in three dimensions and allows for the highest accuracy readings The recommended 12 point calibration pattern is a series of 3 circles of evenly spaced points as illustrated in Figure 5 1 and listed in Table 5 2 The pitch used in the second and third circles of the calibration should at least match the maximum and minimum pitch the device is expected to encounter in use Minimum 12 good user calibration points Additional points can be added including upside down if possible Alternate Roll between points odd number points positiv
7. number of sample points as well as the full Allowable Range The Minimum Recommended number of samples normally is sufficient to meet the TCM s heading accuracy specification while less than this may make it difficult to meet specification See Section 5 for additional information Table 7 5 Sample Points Number of Samples Calibration Mode Allowable Minimum Range Recommended Full Range 10 to 32 12 2D Calibration 10 to 32 12 Limited Tilt Range 10 to 32 12 Hard Iron Only 4 to 32 6 Accelerometer Only 12 to 32 18 Accel and Mag 12 to 32 18 kUserCalAutoSampling Config ID 134 This flag is used during user calibration If set to TRUE the module automatically takes calibration sample points once the minimum change requirement is met If set to FALSE the module waits for kTakeUserCalSample to take a sample with the condition that a magnetic field vector component delta is greater than 5 uT from the PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 45 last sample point If the user wants to have maximum control over when the calibration sample point are taken then this flag should be set to FALSE kBaudRate Config ID 144 Baud rate index value A power down power up cycle is required when changing the baud rate kMilOutput Config ID 154 This flag sets the heading pitch and roll output to mils By default kMilOutput is set to FALSE and the heading pitch and roll output ar
8. 4 2 2 Locate away from changing magnetic fields It is not possible to calibrate for changing magnetic anomalies Thus for greatest accuracy keep the TCM away from sources of local magnetic distortion that will change with time such as electrical equipment that will be turned on and off or ferrous bodies that will move Make sure the TCM is not mounted close to cargo or payload areas that may be loaded with large sources of local magnetic fields 4 2 3 Mount in a physically stable location Choose a location that is isolated from excessive shock oscillation and vibration The TCM works best when stationary Any non gravitational acceleration results in a distorted reading of Earth s gravitational vector which affects the heading measurement 4 2 4 Location verification testing Location verification testing should be performed at an early stage of development to understand and accommodate the magnetic distortion contributors in a host system Determine the distance range of field distortion Place the compass in a fixed position then move or energize suspect components while observing the output to determine when they are an influence PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 9 Determine if the magnetic field is within the dynamic range of the compass With the compass mounted rotate and tilt the system in as many positions as possible While doing so monitor the magnetometer outputs observing if the maxim
9. 7 3 14 kGetFIRFiltersResp frame ID 144 This is the response to kGetFIRFilters and it has the same payload definition as kSetFIRFilters 7 3 15 kPowerDown frame ID 154 This frame is used to power down the module which puts the module in Sleep Mode The frame has no payload The command will power down all peripherals including the sensors microprocessor and RS 232 driver However the driver chip has a feature to keep the Rx line enabled The TCM will power up when it receives any signal on the native UART Rx line PNI Sensor Corporation TCM User Manual DOC 1014688 r09 Page 52 7 3 16 kSaveDone frame ID 164 This frame is the response to kSave frame The payload contains a Ulnt16 error code 0 indicates no error indicates an error when attempting to save data to memory Payload Ulnt16 7 3 17 kUserCalSampleCount frame ID 174 This frame is sent from the TCM after taking a calibration sample point The payload contains the sample count with the range of to 32 Payload SampleCount Ulnt32 7 3 18 kCalScore frame ID 184 The calibration score is automatically calculated and sent after taking the final calibration point although it may take gt 1 minute for the score to be calculated The payload is defined below and the payload components are discussed after this Payload MagCalScore AccelCalScore DistEror TiltError TiltRange Float32 Float32 Float32 Float32 Float32 Float32 MagCalS
10. Mechanical Drawing Figure 3 2 TCM XB Pigtailed Cable Drawing Figure 3 3 TCM MB Mechanical Drawing Figure 4 1 Positive amp Negative Roll and Pitch Definition Figure 4 2 Mounting Orientations Figure 5 1 12 Point Full Range Calibration Figure 5 2 Accelerometer Calibration Starting Orientations Figure 7 1 Datagram Structure PNI Sensor Corporation TCM User Manual DO Ln Ln Um E P Ww 14 16 17 17 18 24 36 39 41 44 45 51 59 zl On On 10 11 15 20 36 DOC 1014688 r09 Page iv 1 Copyright amp Warranty Information Copyright PNI Sensor Corporation 2009 All Rights Reserved Reproduction adaptation or translation without prior written permission is prohibited except as allowed under copyright laws Revised March 2014 For most recent version visit our website at www pnicorp com PNI Sensor Corporation 2331 Circadian Way Santa Rosa CA 95407 USA Tel 1 707 566 2260 Fax 1 707 566 2261 Warranty and Limitation of Liability PNI Sensor Corporation PNI manufactures its TCM products Products from parts and components that are new or equivalent to new in performance PNI warrants that each Product to be delivered hereunder if properly used will for one year following the date of shipment unless a different warranty time period for such Product is specified i in PNI s Price List in effect at time of order acceptance or ii on PNI s web site www pnicorp com at time of order a
11. Page 2 3 Specifications 3 1 Characteristics amp Requirements Table 3 1 Performance Characteristics Parameter Value lt S I Se after Full Range lt 0 3 rms lt E I 2 S S after Full Range lt 0 5 rms Heading lt 5 of pitch after 2D calibration lt 2 0 rms ER SE using Imited tit garaned lt 2 0 Ms Resolution 0 1 Repeatability 0 05 rms Range Pitch 90 Roll 180 Pitch 0 2 rms lt 65 of pitch 0 2 rms Attitude Accuracy Roll lt 80 of pitch 0 4 rms lt 86 of pitch 1 0 rms Resolution 0 01 Repeatability 0 05 rms Maximum Operational Dip Angle 85 Calibrated Field Range a 125 uT Magnetometers Resolution 0 05 uT Repeatability 0 1 uT Footnotes 1 Specifications are subject to change Assumes the TCM is motionless and the local magnetic field is clean relative to the user calibration 2 For example if the calibration was performed over 10 of tilt then the TCM would provide lt 2 rms accuracy over 20 of tilt 3 Performance at maximum operational dip angle will be somewhat degraded PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 3 Table 3 2 Absolute Maximum Ratings Parameter Minimum Maximum Units Supply Voltage 0 3 10 VDC Storage Temperature 40 85 C CAUTION Stresses beyond those listed above may cause permanent damage to the device These are stress ratings only Operation of the
12. SendDat a Ul nt 8 frame void dataPtr NULL Unt 32 voi d Set Baud Ul nt 32 baud pr ot ect ed PNI Sensor Corporation TCM User Manual ConmHandl er nHandl er Ser Port meri al Port Ul nt 8 nOut Dat al kBuf f er Si ze m nDat al kBuf f er Si ze Ul nt 16 mExpect edLen Ul nt 32 nOut Len nA dl nLen mi nme nSt ep Ul nt 16 CRO void data Ulnt32 en void Control DOC 1014688 r09 Page 65 7 5 3 CommProtocol cpp File ti ncl ude CommPr ot ocol h import an obj ect that wll provide a 10nBec tick count through a function called Ti cks Hi ncl ude Ti ckGener at or h II Ber Port is an obj ect that controls the physical serial interface It handles sending out the characters and buffers the characters read in until we are ready for them CornmPr ot ocol ConmPr ot ocol CommHandl er handler Ser Port serPort Process ConmPr ot ocol nHandl er handler store the object that wll parse the data when it is fully received mSeri al Port ser Port Init Initialize the serial port and variables that wll control this process voi d ComPr ot ocol Ini t UI nt 32 baud Set Baud baud nA dl nLen 0 no data previ ously received n amp t ep 1 4 goto the first step of our process e Put together the frame to send to the module voi d CommPr ot ocol SendDat a Unt 8 frameType void dataPtr U nt 32 en Ulnt8 data U
13. The Accelerometer Only Calibration pattern discussed in Section 5 2 will work for a Mag and Accel Calibration Optimal performance is obtained when all rotations of the TCM are performed towards magnetic north to achieve the widest possible magnetic field distribution Note that combining calibrations only makes sense if all the host system s magnetic distortions steel structures or batteries for instance are present and fixed relative to the module when calibrating If an Accelerometer Only Calibration is performed the user s system distortions are not relevant which allows the TCM to be removed from the host system in order to perform the Accelerometer Only Calibration PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 20 6 Operation with TCM Studio TCM Studio puts an easy to use graphical user interface GUI onto the binary command language used by the TCM TCM Studio is intended for evaluating demonstrating and calibrating the TCM module The program includes the ability to log and save the outputs from the TCM to a file for off line evaluation Check the PNI website for the latest TCM Studio updates at www pnicorp com Note TCM Studio v3 X and higher is compatible with the TCM XB TCM MB and legacy TCM 6 but not other legacy TCM models The TCM XB also will work with TCM Studio v3 and higher while the TCM MB will work with TCM Studio v4 and higher The version of Studio is identified in the upper left corner of
14. The score should be 0 In the event of an aborted calibration the score will be 179 84 or in the event of an accel only calibration the score will be 99 994 TiltRange For a magnetic calibration this reports the larger of either half the full pitch range or half the full roll range of sample points For example if the device is pitched 10 to 20 and rolled 25 to 15 the TiltRange value would be 20 which represents half the roll range For Full Range Calibration and Hard Iron Only Calibration this should be gt 45 For 2D Calibration ideally this should be 2 For Limited Tilt Range Calibration the value should be as large a possible given the user s constraints In the event of an aborted calibration the score will be 179 8 or in the event of an accel only calibration the score will be 99 994 7 3 19 kSetConfigDone frame ID 194 This frame is the response to kSetConfig frame The frame has no payload 7 3 20 kSetFIRFiltersDone frame ID 204 This frame is the response to kSetFIRFilters The frame has no payload 7 3 21 kStartContinuousMode frame ID 214 If the TCM is configured to operate in Continuous Acquisition Mode as defined by kSetAcqParams then this frame initiates the outputting of data at a relatively fixed data rate where the data rate is established by the SampleDelay parameter The frame has no payload The response is kGetDataResp 7 3 22 kStopContinuousMode frame ID 22 This frame com
15. UART Tx 4 NC Orange UART Rx 5 NC Violet 6 NC Brown 7 UART Tx Yellow 8 UART Rx Blue 9 Vin Red Footnote 1 For the TCM XB pin 1 is indicated on Figure 3 1 while for the TCM MB pin 1 is the pin closest to the corner After making the electrical connections it is a good idea to perform some simple tests to ensure the TCM is working as expected See Section 5 for how to operate the TCM with TCM Studio or Section 7 for how to operate the TCM using the PNI binary protocol PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 8 4 2 Installation Location The TCM s wide dynamic range and sophisticated calibration algorithms allow it to operate in many environments For optimal performance however you should mount the TCM with the following considerations in mind 4 2 1 Operate within the TCM s dynamic range The TCM can be user calibrated to correct for static magnetic fields created by the host system However each axis of the TCM has a calibrated dynamic range of 125 uT If the total field exceeds this value for any axis the TCM may not perform to specification When mounting the TCM consider the effect of any sources of magnetic fields in the host environment that when added to Earth s field may take the TCM out of its dynamic regime For example large masses of ferrous metals such as transformers and vehicle chassis large electric currents permanent magnets such as electric motors and so on
16. X 16 X12 X 5 1 o_o_ oa E Ke I nt 16 CommPr ot ocol CRG void data Ulnt 32 en Giedi em Unt8 dataPtr Unt8 data Ul nt 32 index 0 Ul nt 16 cre 0 whi e l en crc unsigned char crc gt gt 8 crc lt lt 8 crc dat aPtr i ndex 4 crc unsigned char crc amp Oxff gt gt 4 crc crc lt lt 8 lt lt 4 crc crc amp Oxff lt lt 4 lt lt 1 return crc I This is called each time this process gets a turn to execute voi d ComPr ot ocol Cont rol InLen returns the number of bytes in the input buffer of the serial object that are available for us to read Ul nt 32 i nLen nSeri al Port gt I nLen PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 67 sw t ch n amp t ep case 1 wait for length bytes to be received by the serial obj ect if inLen gt 2 Read block will return the number of requested or available bytes that are in the serial objects input buffer read the byte count ner i al Port gt ReadBl ock m nat a 2 ID II III byte count is ALWAYS transnitted in big endian copy byte count to mExpect edLen to native endi aness Expect edLen ninDat a 0 lt lt 8 m nDat al 1 Ticks is a timer function 1 tick 10nsec wait up to 1 2s for the complete frame mExpect edLen to be recei ved mli me Ticks 50 n6t ep goto the next step in the process
17. XB Pigtailed Cable Drawing PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 6 MILL MAX P N 850 10 004 10 001000 MATES WITH MILL MAX P N 851 XX 004 10 001000 OR EQUIVALENT 0 0870 002 0 000 0 05 b 3X 2 21 0 00 The default orientation is for the silk screened arrow to point in the forward direction Figure 3 3 TCM MB Mechanical Drawing PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 7 4 Set Up This section describes how to configure the TCM in your host system To install the TCM into your system follow these steps Make electrical connections to the TCM Evaluate the TCM using TCM Studio or a binary terminal emulation program such as RealTerm or Tera Term to ensure the compass generally works correctly Choose a mounting location Mechanically mount the TCM in the host system Perform a user calibration 4 1 Electrical Connections The TCM XB incorporates a 9 pin Molex connector part number 53780 0970 which mates with Molex part 51146 0900 or equivalent The TCM MB incorporates a 4 pin Mil Max connector part number 850 10 004 10 001000 which mates with Mill Max part 851 XX 004 10 001000 or equivalent The pin out is given below in Table 4 1 Table 4 1 TCM Pin Descriptions TCM XB TCM MB Number 9 Pin Cable Wire 4 Pin Connector Color Connector Pin 1 GND Black GND 2 GND Gray Vin 3 GND Green
18. break case 2 wait for msg complete or timeout if inLen gt mExpectedLen 2 Ul nt 16 crc crcRecei ved calculated and recei ved crcs Read block wl return the number of requested or available bytes that are in the serial obj ects input buffer nSer i al Port gt ReadBI ock m nDat a 21 SS III nExpect edLen 2 in CRC verification don t include the CRC in the recal cul at i on 2 crc CRO m nDat a nExpect edlen 2 CRC is also ALWYS transmtted in big endi an crcRecei ved m nDat al nExpect edLen 2 lt lt 8 mnDatal nExpectedLen 1 if crc crcRecei ved the crc is correct so pass the frame up for processi ng i f mHandl er nHandl er gt Handl eCom m nDat a 21 m nDat a 3 mExpect edLen kPacket MnSi ze el se II erc s don t match so clear everything that is currently in the input buffer since the data is not reliable nSer al Port gt l nQ ear PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 68 go back to looking for the length bytes nBtep 1 el se Ticks is a timer function 1 tick 10nsec if Ticks gt ni mei Corrupted message W did not get the length we were expecting wthin 1 2sec of receiving the length bytes Gear everything in the input buffer since the data is unreliable nSeri al Port gt l nQ ear nBtep 1 Look for the next length bytes III III break def aul
19. button is not selected then the module will need to be recalibrated after a power cycle Note If a calibration is aborted all the score s will read 179 80 and the calibration coefficients will not be changed Clicking the lt Save gt button will not change the calibration coefficients Mag CalScore Represents the over riding indicator of the quality of the magnetometer calibration Acceptable scores will be lt 1 for Full Range Calibration lt 2 for other methods Note that it is possible to get acceptable scores for Dist Error and Tilt Error and still have a rather high Mag CalScore value The most likely reason for this is the TCM is close to a source of local magnetic distortion that is not fixed with respect to the module Dist Error Indicates the quality of the sample point distribution primarily looking for an even yaw distribution Significant clumping or a lack of sample points in a particular section can result in a poor score The score should be lt 1 and close to 0 Tilt Error Indicates the contribution to the Mag CalScore caused by tilt or lack thereof and takes into account the calibration method The score should be lt 1 and close to 0 Tilt Range This reports the larger of either half the full pitch range or half the full roll range of sample points For example if the module is pitched 10 to 20 and rolled 25 to 15 the Tilt Range value would be 20 as derived half the full roll range For Ful
20. compensated for in the host system with a user calibration Examples of such sources include ferrous metals and alloys ex iron nickel steel etc batteries audio speakers current carrying wires and electric motors Compensation is accomplished by mounting the TCM in the host system and performing a user calibration It is expected the sources of magnetic distortion remain fixed relative to the TCM s position within the host system By performing a calibration the TCM identifies the local sources of magnetic distortion and negates their effects from the overall reading to provide an accurate heading As with the magnetic sensor the accelerometer in the TCM is calibrated at PNI s factory But the accelerometer will gradually change over time and the user either will need to periodically perform a user accelerometer calibration or return the unit to PNI for recalibration As a general rule of thumb the accelerometer should be recalibrated every 6 to 12 months Unlike a magnetic calibration the accelerometer may be calibrated outside the host system Accelerometer calibration is more sensitive to noise or hand jitter than magnetic calibration especially for subsequent use at high tilt angles Because of this ideally a stabilized fixture would be used for accelerometer calibration although resting the unit against a stable surface often is sufficient Key Points e Magnetic calibration o Requires incorporating the TCM into the host sy
21. component IDs are kHeading kPitch and kRoll The steps below provide an example of the steps to perform a user calibration e Using the kSetConfig command set kUserCalAutoSampling FALSE allows for more direct control but TRUE may be more convenient e Using the kSetConfig command establish the coefficient set number for the new calibration coefficient by setting the value for kMagCoeffSet value 0 7 and or kAccelCoeffSet value 0 2 e Using the kSetConfig command again set kUserCalNumPoints to the appropriate number of calibration points PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 49 e Initiate a calibration using the kStartCal command Note that this command requires indentifying the type of calibration procedure for example Full Range Calibration or 2D Calibration e Follow the appropriate calibration procedure as discussed in Section 5 If kUserCalAutoSampling was set to FALSE send kTakeUserCalSample when ready to take a calibration point If kUserCalAutoSampling was set to TRUE then look for kUserCalSampCount to confirm when a calibration point has been taken During the calibration process heading pitch and roll information will be output from the TCM and this can be monitored using kGetDataResp e When the final calibration point is taken the device will present the calibration score using kCalScore and save the calibration coefficient set and coefficient values to volatile memory assuming the calibra
22. device at these or other conditions beyond those indicated in the operational sections of the specifications is not implied Parameter Supply Voltage Table 3 3 Electrical Operating Requirements Value TCM XB 3 8 to 9 VDC TCM MB 3 3 to 9 VDC Communication High Level Input 2 4 V minimum Low Level Input 0 6 V maximum RE Output Voltage Swing 5 2 V typ 5 0 V min Tx Output Resistance 300 Q Lines High Level Input 2 0 V minimum Low Level Input 0 8 V maximum oe Output Voltage Swing 0 3 3 V typical Tx Output Resistance 330 Q TCM XB max sample rate 20 mA typical Average 8 Hz sample rate 16 mA typical Current Draw TCM MB max sample rate 17 mA typical 8 Hz sample rate 13 mA typical During application of external 120 mA pk 60 mA avg Peak Current power over 2 ms Draw During logical power up down or 135 mA pk 60 mA avg Sync Trigger over 4 ms Sleep Mode TCM XB 0 3 mA typical Current Draw TCM MB 0 1 mA typical PNI Sensor Corporation TCM User Manual DOC 1014688 r09 Page 4 Table 3 4 I O Characteristics Parameter Value Communication TCM XB RS232 UART Interface TCM MB CMOS TTL UART Communication Protocol PNI Binary Communication Rate 300 to 115200 baud Maximum Sample Rate 30 samples sec Time to Initial Initial power up lt 210 ms Good Data Sleep Mode recovery lt 80 ms Footnotes 1 The maximum
23. nt 32 kUser Cal AutoSanpling 13 type bool ean kBaudRat e 14 Unt8 kM I Out Put 15 type Bool ean kDat aCal 16 type Bool ean kMagCoeff Set 18 18 type U nt 32 kAccel Coef f Set 19 type Unt 32 Mounting Reference Ds kMountedSt andar d 1 1 kMbunt edXUp if 2 kNMbunt ed YUp a 79 kMbunt edSt dPI us90 II 4 kMbunt edSt dPI us180 PS kMbunt edSt dPI us270 6 kMount edZDown 7 kMbunt edXUpPI us90 8 kMbunt edXUpPI us 180 9 kMount edXUpPI us270 10 kMbunt ed YUpPI us90 11 PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 62 kMbunt edYUpPI us 180 kMount ed YUpPI us270 kMount edZDownPI us90 kMount edZDownPI us180 kMount edZDownPI us270 Result kErr None kErr Save 19 Un III III I Ds 0 IDI IDD function to calcul ate CRC 16 t16 CRG void data Ulnt32 en Unt8 dataPtr Unt8 data Ul nt 32 index 0 Update the CRC for transmtted and received data using the CCITT 16bit al gorithm X 16 X 12 X 5 1 Ul nt 16 crc 0 whi e 1 en crc crc crc crc cre unsi gned char crc gt gt 8 crc lt lt 8 dat aPtr i ndex unsi gned char crc A Oxff gt gt 4 crc lt lt 8 lt lt 4 crc amp Oxff lt lt 4 lt lt 1 gt gt gt gt i return crc PNI Sensor Corporation TCM User Manual DOC 1014688 r09 Page 63 7 5 2 CommProtocol h File pragma on
24. sending kSave When the TCM is powered down and back up again it will load the last saved coefficient set 7 3 7 kGetConfig frame ID 74 This frame queries the TCM for the current internal configuration value The payload contains the configuration ID requested Payload Config ID Ulnt8 1 3 8 kGetConfigResp frame ID 84 The response to kGetConfig is given below and contains the configuration ID and value Payload Ulnt8 ID Specific Example If a request to get the set declination angle the payload would look like Payload Declination ID Declination Angle Float32 PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 47 7 3 9 kSave frame ID 94 This frame commands the TCM to save internal configurations and user calibration coefficients to non volatile memory Internal configurations and user calibration coefficients are restored on power up The frame has no payload This is the ONLY command that causes the device to save information to non volatile memory 7 3 10 kStartCal frame ID 10 Before proceeding with this section ensure you are familiar with Section 5 Also note the following e Multiple sets of calibration coefficients can be saved using kMagCoeffSet and kAccelCoeffSet These different coefficient sets can be used for storing coefficients for varying conditions such as when a door is open or closed or when the temperature varies since the magnetic signature of the host system may change o
25. source destination size bytes Move copies the specified nunber of bytes fromthe source pointer to the destination pointer Store the pitch Move Ai dat al pntr amp pitch si zeof pitch increase the pointer to point to the next data element type pntr sizeof pitch br eak case ComPr ot ocol kRol I Move source destination size bytes Move copies the specified nunber of bytes fromthe source pointer to the destination pointer Store the roll Move amp dat a pntr amp roll sizeof roll increase the pointer to point to the next data element type pntr sizeof roll br eak case CommPr ot ocol kTenper at ure Move source destination size bytes Move copies the specified nunber of bytes fromthe source pointer to the destination pointer Store the headi ng Move A dat a pntr amp tenper ature si zeof t enperature increase the pointer to point to the next data element type pntr sizeof temper at ure br eak PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 72 def aul t Message is a function that displays a formatted string simlar to printf Message Unknown type 2xX r n data pntr 1 unknown data type so size is unknown so skip everything return br eak count Qne less element to readin Message is a function that displays a formatted string simlar to printf Message Headin
26. the calibration process If Automatic Sampling is not checked on the Configuration tab it is necessary to click the lt Take Sample gt button to take a calibration sample point This should be repeated until the total number of samples as set on the Configuration tab is taken while changing the orientation of the module between samples as discussed in Section 5 If Automatic Sampling is checked the module will need to be held steady for a short time and then a sample automatically will be taken Once the window indicates the next number the module s orientation should be changed and held steady for the next sample Once the pre set number of samples has been taken as set on the Configuration tab the calibration is complete PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 28 6 4 2 Calibration Results Once a calibration is complete the Calibration Results window will indicate the quality of the calibration This may take a minute or more to populate The primary purpose of these scores is to confirm the calibration was successful as indicated by a low Mag and or Accel CalScore The other scores provide information that may assist in improving the CalScore should it be unacceptably high If either CalScore is too high click the lt Start gt button to begin a new calibration If the calibration is acceptable click the lt Save gt button to save the calibration to the module s flash If the lt Save gt
27. will load the last saved coefficient set and apply its coefficient values For example assume e the kSetConfig frame is sent with kMagCoeffSet 2 e acalibration is performed e the kSave frame is sent e the kSetConfig frame is sent again but with kMagCoeffSet 3 and e acalibration is performed PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 46 After this second calibration the coefficients values from the second calibration are immediately applied even thought kSave has not been sent If the TCM is now powered down and powered back up again kMagCoeffSet 2 would be recalled and its coefficient values would be applied since kMagCoeffSet 3 was not saved and kMagCoeffSet 2 was the last saved calibration set kAccelCoeffSet Config ID 194 This setting provides flexibility to store up to three 3 sets of accelerometer calibration coefficients in the module As with kMagCoeffSet this can be useful for storing coefficients under a variety of conditions such as different temperature settings or if you want to fine tune the coefficient values but not lose the current set The initial default is set 0 To store a new set of coefficients first establish the set number 0 to 2 using kAccelCoeffSet then perform an accelerometer calibration The new coefficient values will be stored in volatile memory in the defined set number and will be implemented immediately Save the coefficient set to non volatile memory by
28. 011 12 22 10 58 31 Data logging stopped The System Log tab shows all communication between TCM Studio and the TCM module since launching TCM Studio Closing TCM Studio will erase the system log Select the lt Export gt button at the bottom right of the screen to save the system log to a text file PNI Sensor Corporation TCM User Manual DOC 1014688 r09 Page 35 7 Operation with PNI Binary Protocol The TCM utilizes a binary communication protocol where the communication parameters should be configured as follows Table 7 1 UART Configuration Parameter Value Number of Data Bits 8 Start Bits 1 Stop Bits 1 Parity none 7 1 Datagram Structure The data structure is shown below ByteCount Packet Frame CRC 16 Ulnt16 1 4092 Ulnt8 Ulnt16 gc e Payload Uints 1 4091 Ulnt8 Figure 7 1 Datagram Structure The ByteCount is the total number of bytes in the packet including the CRC 16 checksum CRC 16 is calculated starting from the ByteCount to the last byte of the Packet Frame The ByteCount and CRC 16 are always transmitted in big Endian Two examples follow Example The complete packet for the kGetModInfo command which has no payload is ByteCount Frame ID Checksum Example Below is a complete sample packet to start a 2D Calibration kStartCal 00 09 00 00 00 14 5C F9 ByteCount Frame ID CalOption CalOption Checksum 2D Calibratio
29. 5971390034516e 2 03 2757326624196e 3 4 04 6708657655334e 2 02 4925036373620e 1 04 6451949792704e 2 05 3097803863757e 3 5 02 4925036373620e 1 07 1024151197772e 2 08 3414139286254e 3 6 01 6637325898141e 1 09 5354386848804e 2 01 2456836057785e 2 7 06 4500864832660e 2 01 1484431942626e 1 01 7646051430536e 2 8 01 9875512449729e 2 01 2567124916369e 1 02 3794805168613e 2 9 01 2567124916369e 1 03 0686505921968e 2 10 01 1484431942626e 1 03 8014333463472e 2 11 09 5354386848804e 2 04 5402682509802e 2 12 07 1024151197772e 2 05 2436112653103e 2 13 04 6451949792704e 2 05 8693165018301e 2 14 02 5971390034516e 2 06 3781858267530e 2 15 01 2710056429342e 2 06 7373451424187e 2 16 07 9724971069144e 3 06 9231186101853e 2 17 06 9231186101853e 2 18 06 7373451424187e 2 19 06 3781858267530e 2 DOC 1014688 r09 Page 51 PNI Sensor Corporation TCM User Manual 20 05 8693165018301e 2 21 05 2436112653103e 2 22 04 5402682509802e 2 23 03 8014333463472e 2 24 03 0686505921968e 2 25 02 3794805168613e 2 26 01 7646051430536e 2 27 01 2456836057785e 2 28 08 3414139286254e 3 29 05 3097803863757e 3 30 03 2757326624196e 3 31 02 0737124095482e 3 32 01 482372595881 8e 3 7 3 13 kGetFIRFilters frame ID 134 This frame queries the FIR filter settings for the sensors Byte I should be set to 3 and Byte 2 should be set to 1 Payload Byte 1 Byte 2 Ulnt8 Ulnt8
30. Examples The following example files CommProtocol h CommProtocol cp TCM h and TCM cp would be used together for proper communication with a TCM module Note The following files are not included in the sample codes and need to be created by the user Processes h amp TickGenerator h The comments in the code explain what is needed to be sent or received from these functions so the user can write this section for the user s platform For example with the TickGenerator h the user needs to write a routing that generates 10 msec ticks 7 5 1 Header File amp CRC 16 Function type decl ar ati ons typedef struct Ul nt 8 Acqui siti onMbde FI ushFil ter Fl oat 32 AcquireDel ay Sampl eDel ay __ attribute packed AcqPar ams struct Fl oat 32 MagCal Score Fl oat32 reservel Fl oat 32 Accel Cal Score Fl oat 32 Dist Error Fl oat 32 TiltError Fl oat 32 Ti It Range attribute packed MagCal Score enum Frame I Ds Commands kGet Mdl nfo 1 kGet Modl nf oResp kSet Dat aConponent s kGet Dat a kGet Dat aResp kSet Conf i g kGet Conf i g kGet Conf i gResp kSave kSt art Cal kSt opCal kSet Filters kGet Filters kGet Fi I t er sResp kPower Down kSaveDone kUser Cal SampCount kCal Score kSet Conf i gDone kSet Fi I t er sDone kSt art Cont i nuousMbde kSt opCont i nuous Mde kPower Up kSet AcqPar ans kGet AcqPar ans kAcqPar ans Done lt k k k k k LO OO l
31. File Edit Module TCM Connected EE N I Firmware Version s606 sees Serial Number 1027297 PCA Version R0412729 Connection Configuration Calibration Test Log Data Graph System Log Time Stamp Event 2011 12 22 10 53 23 Checking preference file 2011 12 22 10 53 23 Preferences file not found using defaults 2011 12 22 10 53 23 Enabled audible feedback 2011 12 22 10 53 23 Disabled high contrast 2011 12 22 10 53 23 Enabled auto scroll 2011 12 22 10 53 23 Enabled 3D Model 2011 12 22 10 53 26 Changed computer serial portto COM1 2011 12 22 10 53 26 Opened serial port COM 2011 12 22 10 53 28 Changed computer baud rate to 38400 2011 12 22 10 53 29 Opened serial port COM1 2011 12 22 10 53 29 Extracted module configuration 2011 12 22 10 53 29 Changed endianess to big endian 2011 12 22 10 53 29 Extracted module information 2011 12 22 10 53 29 Changed taps to 32 2011 12 22 10 53 29 Changed acquisition mode to continuous mode 2011 12 22 10 53 29 Disabled filter flushing 2011 12 22 10 53 29 Changed mounting to Standard 2011 12 22 10 53 29 Changed north reference to magnetic north 2011 12 22 10 53 29 Disabled stability checking 2011 12 22 10 53 29 Enabled automatic sampling 2011 12 22 10 53 29 Changed calibration points to 12 2011 12 22 10 53 29 Changed output to be in Degrees 2011 12 22 10 53 30 Changed HPR during Calibration 2011 12 22 10 56 19 Testing started 2011 12 22 10 58 28 Data logging started 2
32. O GO E GO M k araa D D D D as D D D D D D D D D D D D D D D III nas D D D D D D D D D D D D D D D D Tiana D D D III GO J O Q GOM GO PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 61 kGet AcqPar anms Resp kPower DoneDown kFact or yUser Cal kFact or y User Cal Done kTakeUser Cal Sanpl e kFactorylncl Cal 36 kFact or yl ncl Cal Done kSet SyncMode 46 kSet SyncModeDone kSyncRead 49 Cal Option IDs I III I III III kFul I RangeCal 10 10 type FI oat 32 k2DCal 20 20 type Fl oat 32 KH Qnl yCal 30 30 type Fl oat 32 kLimtedTiltCal 40 40 type FI oat 32 kAccel Cal ml y 100 100 type FI oat 32 kAccel CalwthMag 110 110 type FI oat 32 Param Ds kSet Dat aConponents 3 3 AxislD Ulnt8 Count U nt 8 Value Float64 Data Component Ds kHeadi ng 5 5 type Fl oat 32 kTenper ature 7 7 type Fl oat 32 kDi st orti on 8 type bool ean kAccel X 21 21 type FI oat 32 kAccel Y 22 type Fl oat 32 kAccel Z 23 type Fl oat 32 kPi t ch 24 type Fl oat 32 kPol l 25 type FI oat 32 kMagX 27 27 type Fl oat 32 kMagY 28 type Float32 kMagZ 29 type FI oat 32 Configuration Parameter Ds kDecli nation 1 1 type Fl oat 32 kTr ueNor t h 2 type bool ean kMount i ngRef 10 10 type Ulnt8 kUser Cal St abl eCheck 11 type bool ean kUser Cal NunPoi nt s 12 type U
33. STO ai a a swans eegene 21 6 2 Connection Ta ska i sd at an aan a 22 6 2 1 Ma Na an iias isi eiae ienis 22 6 2 2 Changing Baud Rate 22 6 2 3 Changing MOGs icii 23 6 3 CONTRA 23 6 3 1 Mounting Opttons srssostessssrss ssion ous ionekana eoii i 23 6 3 2 Norte E 24 6 3 3 als ASS enee g RE tunes 24 6 3 4 GJE H eege 25 6 3 5 Enable 3D MOE Lauen 25 6 3 6 ee Taps EE 25 6 3 7 ACQUISITION Settings rss nenna n ka sekan n sista rns Ana AURAR ha 25 6 3 8 HPR During Calibration sees eee ee eee steen a 26 6 3 9 Calibration SES sasssa a a 26 PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page i BOLO aaa kata aaa AR a 27 S a EN dE 27 6 4 Calibration Tabu eegne stees klaner GR 28 6 4 1 Sampl ES ees el ng aie VE 28 6 4 2 Calibration RESUItS s 2 ssese2iecders saka ar raska cvs Seege 29 6 4 3 Current Configuration c cccccccccssssssscececeeecssssssseeeeeeeesesesseaees 30 6 4 4 QPTIONS ER aan 30 6 4 5 Gle i enk 30 6 5 Test Takt saka aa ooh deta deeg 31 6 5 1 Current Reading 31 6 5 2 3D Moderate annalene 31 6 5 3 ACQUISITION Setting AEN EN 6 5 4 SYNEIMO E ss i assa andar bla laga s lsa a aa 32 6 6 Log Data Ta issesk ass ee 33 6 7 Graph Tab EE 34 6 8 System Log Tabitha testers 35 7 OPERATION WITH PNI BINARY PROTOCOL 0 00 00 0 00 sess essa rns 36 7 1 Datagram Structure rarnnnrnnrnnrnnenenennrnnsnnrnnnnenenssnnnevsnnnnenenssnsnnssnnnnenene 36 7 2 P r met r F R LS sins rs agai
34. TakeUserCalSample frame ID Zi 57 7 3 32 kFactoryAccelCoeff frame ID2p4 57 7 3 33 kFactoryAccelCoeffDone frame ID 37 4 ornnrornrnnnnornrrnnnnrrrnnnnn 57 7 3 34 kSetSyncMode frame ID Aa 57 7 3 35 kSetSyncModeResp frame ID 47 J 58 7 3 36 kSyncRead frame ID 49 J 58 7 4 Using Multiple Coefficient Setz 59 7 5 Code Examples irene a ER E Blak REES 61 7 5 1 Header File 8 CRC 16 tunction sss sese 61 7 5 2 CommProtocol h File REENEN 64 7 5 3 CommProtocol cpp File 66 7 5 4 TEM H FE skann 70 7 5 5 TEM EDP BIG s Za c g 71 PNI Sensor Corporation TCM User Manual DOC 1014688 r09 Page iii List of Tables Table 3 1 Performance Characteristics Table 3 2 Absolute Maximum Ratings Table 3 3 Electrical Operating Requirements Table 3 4 I O Characteristics Table 3 5 Environmental Requirements Table 3 6 Mechanical Characteristics Table 4 1 TCM Pin Descriptions Table 5 1 Magnetic Calibration Mode Summary Table 5 2 12 Point Full Range Calibration Pattern Table 5 3 12 Point 2D Calibration Pattern Table 5 4 12 Point Limited Tilt Calibration Pattern Table 5 5 6 Point Hard Iron Only Calibration Pattern Table 6 1 Mounting Orientations Table 7 1 UART Configuration Table 7 2 TCM Command Set Table 7 3 Component Identifiers Table 7 4 Configuration Identifiers Table 7 5 Sample Points Table 7 6 Recommended FIR Filter Tap Values Table 7 7 Multiple Coefficient Command List List of Figures Figure 3 1 TCM XB
35. alled when appropriate Using the prior example generate and use one set of coefficients for when the motor is off and another set for when the motor is on The main objective of a magnetic user calibration is to compensate for hard iron and soft iron distortions to the magnetic field caused by components within the user s host system To that end the TCM needs to be mounted within the host system and the entire host system needs to be moved as a single unit during a user calibration The TCM allows the user to perform a calibration only in a 2D plane or with limited tilt but provides the greatest accuracy if the user can rotate through 360 of heading and at least 45 of tilt The following subsections provide instructions for performing a magnetic calibration of a TCM system Several calibration mode options exist as summarized in Table 5 1 To meet the accuracy specification the number of samples should be the Minimum Recommended value or greater Calibration may be performed using Studio or using the PNI binary protocol and up to 8 sets of magnetic calibration coefficients may be saved The recommended calibration patterns described in the following sub sections provide a good distribution of sample points Also PNI recommends the location of the TCM remain fairly constant while only the orientation is changed Table 5 1 Magnetic Calibration Mode Summary Number of Samples Calibration ENEE Tilt Range
36. ame The minimum delay time is dependent on the baud rate and for a baud rate equal to or slower than 9600 there is no delay For baud rates greater than 9600 the minimum delay is equal to Minimum delay after sending FF in seconds 7E 3 10 baud rate PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 57 Example With a baud rate of 38400 the minimum delay after sending FF is Minimum delay at 38400 baud 7E 4 10 38400 4 4E 4 seconds 440 us Sync Mode generally is intended for applications in which sampling does not occur frequently For applications where Sync Mode sampling will be at a frequency of 1 Hz or higher there is a minimum allowable delay between taking samples This minimum delay between samples approximately inverse to the maximum sample rate varies from 100 msec to 1 06 second and is a function of the number of FIR filter taps as defined by the following formula Minimum Delay between Samples in seconds 0 1 0 03 number of Taps 7 3 35 kSetSyncModeResp frame ID 47 a This frame is the response to kSetSyncMode frame The payload contains the Mode ID requested a Payload gt Mode ID lt Ulnt8 7 3 36 kSyncRead frame ID 49 a If the TCM is configured to operate in Sync Mode as defined by kSetSyncMode then this frame wakes up the module requests a measurement outputs the results then powers down again This frame has no payload The respo
37. ange Calibration when gt 45 of tilt is possible during calibration 2D Calibration when constrained to calibration in a horizontal or near horizontal plane and Limited Tilt Calibration when tilt is constrained to lt 45 but gt 5 of tilt is possible PNI also recognizes conditions may change over time and to maintain superior heading accuracy it may be necessary to recalibrate the compass So the TCM incorporates Hard Iron Only Calibration to easily account for gradual changes in the local magnetic distorting components Plus the accelerometer can be periodically recalibrated in the field to maintain maximum accuracy These advantages make PNI s TCM the choice for applications that require the highest accuracy and performance anywhere in the world under a wide range of conditions Applications for the TCM include e Unmanned vehicles underwater UUV ground UGV amp aerial UAV e Far target locaters and laser range finders e Dead reckoning systems e Systems in which the tilt angles used for calibration are physically constrained With its many applications the TCM incorporates a flexible and adaptable command set Many parameters are user programmable including reporting units a wide range of sampling configurations output damping and more We re sure the TCM will help you to achieve the greatest performance from your system Thank you for selecting the TCM PNI Sensor Corporation DOC 1014688 r09 TCM User Manual
38. basic starting positions for the recommended 18 point calibration pattern Starting with the TCM as shown on the left in Figure 5 2 rotate the device about its z axis such that it sits on each of its 4 edges taking one calibration sample on each edge Then place the TCM flat on the surface and take a calibration sample then flip it over roll it 180 and take another sample Next starting with the TCM as shown on the right take a calibration point with it being vertical 0 Now tilt the TCM back 45 and take another calibration point 45 then tilt the device forward 45 and take another calibration point 45 Repeat this 3 point calibration process for the TCM with it resting on each of its 4 corners Note that it is possible to perform an Accelerometer Calibration with as few as 12 sample points although it generally is more difficult to obtain a good calibration with just 12 sample points Also the maximum number of calibration points is 18 PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 19 Figure 5 2 Accelerometer Calibration Starting Orientations 5 2 2 Mag and Accel Calibration The TCM allows for a simultaneous magnetometer and accelerometer calibration This requires a full coverage calibration pattern physically stable measurements and installation in the user s system so the host system s magnetic signature is present PNI recommends 18 to 32 calibration points for a Mag and Accel Calibration
39. be configured to clear or flush the filters after each measurement Flushing the filter clears all tap values thus purging old data This can be useful if a significant change in heading has occurred since the last reading as the old heading data PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 50 would be in the filter Once the taps are cleared it is necessary to fully repopulate the filter before data is output For example if 32 FIR taps is set 32 new samples must be taken before a reading will be output The length of the delay before outputting data is directly correlated to the number of FIR taps The payload for kSetFIRFilters is given below Payload Ulnt8 Ulnt8 Ulnt8 ID Specific ID Specific ID Specific ID Specific Byte 1 should be set to 3 and Byte 2 should be set to 1 The third payload byte indicates the number of FIR taps to use which can be 0 no filtering 4 8 16 or 32 This is followed by the tap values where 0 to 32 total Values can be in the payload and with each Value being a Float64 with suggested values given in Table 7 6 Table 7 6 Recommended FIR Filter Tap Values 4 Tap Filter 8 Tap Filter 16 Tap Filter 32 Tap Filter 1 04 6708657655334e 2 01 9875512449729e 2 07 9724971069144e 3 01 4823725958818e 3 2 04 5329134234467e 1 06 4500864832660e 2 01 2710056429342e 2 02 0737124095482e 3 3 04 5329134234467e 1 01 6637325898141e 1 02
40. but not completely uncommon A 10 C temperature change will alter the magnetic field by 1 uT in the direction of the hard iron component Around San Francisco with an inclination of 60 this results in up to a couple of degrees of heading change over 10 C Consequently no matter how stable a compass is over temperature it is wise to recalibrate over temperature since the magnetic signature of the host system will change over temperature The TCM helps accommodate this issue by allowing the user to save up to 8 sets of magnetic calibration coefficient sets so different calibration coefficients can be generated and loaded at different temperatures PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 13 Other Considerations The TCM measures the total magnetic field within its vicinity which is a combination of Earth s magnetic field and local magnetic sources and distortions While the TCM s calibration algorithms can compensate for local static magnetic sources it is not possible to compensate for dynamic changes in the magnetic field Consequently it is recommended to keep the TCM away from dynamic magnetic fields If this is not possible then take measurements only when the state of the magnetic field is known For example if an electric motor is nearby take measurements only when the motor is off Alternatively different sets of magnetic calibration coefficients can be generated in advance for various states and then c
41. cate to the module to take a sample once the minimum change and stability requirements are met Calibration Points Select the number of points to take during a calibration The minimum recommended number of points for an initial magnetic calibration is 12 although a Hard Iron Only re Calibration can be performed with only 6 recommended samples The TCM will need to be rotated through at least 180 in the horizontal plane with a minimum of at least positive and I negative Pitch and at least I positive and 1 negative Roll as part of the 12 points Calibration Method Buttons Full Range Calibration recommended calibration method when gt 45 of tilt is possible The minimum recommended number of calibration points is 12 HI Only Calibration serves as a hard iron recalibration to a prior calibration If the hard iron distortion around the module has changed this calibration can bring the module back into specification The minimum recommended number of calibration points is 6 Limited Tilt Range Calibration recommended calibration method when gt 5 of tilt calibration is available but tilt is restricted to lt 45 i e Full Range Calibration is not possible The minimum recommended number of calibration points is 12 2D Calibration Recommended when the available tilt range is limited to lt 5 The minimum recommended number of calibration points is 12 Accel Only Calibration Select this when only an accelerometer ca
42. cceptance be free from defects in material and workmanship and will operate in accordance with PNI s published specifications and documentation for the Product in effect at time of order PNI will make no changes to the specifications or manufacturing processes that affect form fit or function of the Product without written notice to the OEM however PNI may at any time without such notice make minor changes to specifications or manufacturing processes that do not affect the form fit or function of the Product This warranty will be void if the Products serial number or other identification marks have been defaced damaged or removed This warranty does not cover wear and tear due to normal use or damage to the Product as the result of improper usage neglect of care alteration accident or unauthorized repair THE ABOVE WARRANTY IS IN LIEU OF ANY OTHER WARRANTY WHETHER EXPRESS IMPLIED OR STATUTORY INCLUDING BUT NOT LIMITED TO ANY WARRANTY OF MERCHANTABILITY FITNESS FOR ANY PARTICULAR PURPOSE OR ANY WARRANTY OTHERWISE ARISING OUT OF ANY PROPOSAL SPECIFICATION OR SAMPLE PNI NEITHER ASSUMES NOR AUTHORIZES ANY PERSON TO ASSUME FOR IT ANY OTHER LIABILITY If any Product furnished hereunder fails to conform to the above warranty OEM s sole and exclusive remedy and PNI s sole and exclusive liability will be at PNI s option to repair replace or credit OEM s account with an amount equal to the price paid for any such Produc
43. ce Hi ncl ude Syst enfer Port h i ncl ude Processes h 9 CormHandl er is a base class that provides a callback for i ncom ng messages ass ComrHandl er 3 publ i c Call back to be i npl ement ed in derived cl ass virtual void Handl eCom Ul nt 8 frameType void dataPtr NULL Ulnt16 dataLen 0 CommProtocol handles the actual serial conmunication wth the nodul e Process is a base class that provides ComProtocol wth cooperative parallel processing The Control method will be called by a process manager on a continuous basis Ef EE CormPr ot ocol public Process publ i c enum Frane Ds Commands kGet Mod nf o 1 kGet Modl nf oResp II 2 kSet Dat aConponent s 3 kGet Dat a II 4 kGet Dat aResp II 5 Data Component Ds kHeadi ng 5 5 type Fl oat 32 kTenper at ure 7 7 type Fl oat 32 kAccel X 21 21 type Fl oat 32 kAccel Y 22 type Fl oat 32 kAccel Z 23 type Fl oat 32 kPi t ch 24 type Fl oat 32 kRol l 25 type Fl oat 32 kBuf f er Si ze 512 max size of input buffer kPacket M nSi ze 5 mn size of serial packet II II SerPort is a serial communication obj ect abstracting the hardware i mol erent ati on PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 64 ConmPr ot ocol ConmHandl er handler NULL SerPort serPort NULL void Ini t Ul nt 32 baud 38400 void
44. components to be output 4 kGetData Queries the TCM for data 5 kGetDataResp Response to kGetData 6 kSetConfig Sets internal configurations in TCM 7 kGetContig Queries TCM for the current internal configuration 8 kGetConfigResp Response to kGetConfig Saves the current internal configuration and any 9 kSave new user calibration coefficients to non volatile memory 10 kStartCal Commands the TCM to start user calibration 11 kStopCal Commands the TCM to stop user calibration Sets the FIR filter settings for the magnetometer 12 SERR ai amp accelerometer sensors Queries for the FIR filter settings for the GE magnetometer amp accelerometer sensors 14 kGetFIRFiltersResp Contains the FIR filter settings for the magnetometer amp accelerometer sensors 15 kPowerDown Powers down the module 16 kSaveDone Response to kSave PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 39 17 kUserCalSampleCount Sent from the TCM after taking a calibration sample point 18 kCalScore Contains the calibration score 19 kSetConfigDone Response to kSetConfig 20 kSetFIRFiltersDone Response to kSetFIRFilters 21 Eiai TE TEE SE the TCM to output data at a fixed 22 kStopContinuousMode Stops data output when in Continuous Mode 23 kPowerUpDone Confirms the TCM has received a signal to power up 24 kSetAcqParams Sets the sensor acquisition parameters 25 kGetAcqParams Queries for the sensor acquisition paramet
45. core MagCalScore provides an over riding quality indicator of the magnetometer calibration Acceptable scores will be lt 1 for Full Range Calibration lt 2 for other methods Note that it is possible to get acceptable scores for DistError and TiltError and still have a rather high MagCalScore value The most likely reason for this is the TCM is close to a source of local magnetic distortion that is not fixed with respect to the device In the event of an aborted calibration the score will be 179 8d or in the event of an accel only calibration the score will be 99 99d AccelCalScore This score represents the over riding quality of the accelerometer calibration An acceptable score is lt 1 In the event of an aborted calibration the score will be 179 84 or in the event of a mag only calibration the score will be 99 994 PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 53 DistError For a magnetic calibration this score indicates if the distribution of sample points is sufficient with an emphasis on the heading distribution The score should be 0 Significant clumping or a lack of sample points in a particular section can result in a poor score In the event of an aborted calibration the score will be 179 84 or in the event of an accel only calibration the score will be 99 994 TiltError This score indicates if the TCM experienced sufficient tilt during a magnetic calibration taking into account the calibration method
46. cquisition Settings These indicators mimic the pertinent selections made on the Configuration tab PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 31 6 5 4 Sync Mode Sync Mode enables the module to stay in Sleep Mode until the user s system sends a trigger to report data When so triggered the TCM will wake up report data once then return to Sleep Mode One application of this is to lower power consumption Another use of the Sync Mode is to trigger a reading during an interval when local magnetic sources are well understood For instance if a system has considerable magnetic noise due to nearby motors the Synch Mode can be used to take measurements when the motors are turned off Enter Sync Mode On the Test tab above the tabs and 3D model click the Sync Mode check box to enter Sync Mode Sync Mode Output To retrieve the first reading click the lt Sync Read gt button Heading pitch and roll information will be displayed on Current Reading window If the Enable 3D Model Display box is selected on the Configuration tab then the helicopter will follow the movement as well The module will enter Sleep Mode after outputting the heading pitch and roll information To obtain subsequent readings the user should first click on the lt Sync Trigger gt button to wake up the module and then click on the lt Sync Read gt button to get the readings after which the module will return to sleep Exit Sync Mod
47. e Click on the lt Sync Trigger gt button and then uncheck the Sync Mode check box to exit Sync Mode Note that lt Sync Trigger gt sends a OxFF signal as an external interrupt to wake up the module This is not done for the first reading as the module is already awake PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 32 6 6 Log Data Tab Studier File Edit Module TCM Connected gt N I Firmware Version s606 Serial Number 1027297 PCA Version R0412729 Connection Configuration Calibration Test Log Data Graph System Log Ticks is 1 60th of a second Ticks Heading Pitch Roll Temperature Distortion Heading 102 2 Pitch 2a Roll 15 Auto Scroll Clear Go Export TCM Studio can capture measurement data and then export it to a text file To acquire data and export it follow the procedure below e Select the parameters you wish to log in the Data window Use Shift Click and Ctrl Click to select multiple items In the screen shot above Heading Pitch and Roll were selected e Click the lt Go gt button to start logging The lt Go gt button changes to a lt Stop gt button after data logging begins e Click the lt Stop gt button to stop logging data e Click the lt Export gt button to save the data to a file e Click the lt Clear gt button to clear the data from the window Note The data logger use ticks for time refer
48. e TCM will begin sending new data as soon as the previous data set has been sent Note that the inverse of the Sample Delay is greater than the sample rate since the Sample Delay does not include the actual measurement acquisition time The default is 0 Flush Filters Flushing the FIR filter clears all the filter values so it is necessary to fully repopulate the filter before a good reading can be given For example if 32 FIR taps is set then 32 new samples must be taken to provide a good reading It is particularly prudent to flush the filter if the Sample Delay is set to a non zero value as this will purge old data Note that flushing the filters increases the delay until data is output with the length of the delay being directly correlated to the number of FIR taps The default is not to Flush Filters 6 3 8 HPR During Calibration When the lt On gt button is selected heading pitch and roll will be output on the Calibration tab during a calibration 6 3 9 Calibration Settings Automatic Sampling When selected the module will take a sample point once the minimum change and stability requirements have been satisfied If the user wants to have more control over when the point will be taken then Auto Sampling should be deselected Once deselected the lt Take Sample gt button on the Calibration tab will be active Selecting PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 26 the lt Take Sample gt button will indi
49. e in degrees Note that 360 degrees 6400 mils such that I degree 17 778 mils or 1 mil 0 05625 degree kDataCal Config ID 164 This flag sets whether or not heading pitch and roll data are output simultaneously while the TCM is being calibrated The default is TRUE such that heading pitch and roll are output during calibration FALSE disables simultaneous output kMagCoeffSet Config ID 184 This setting provides the flexibility to store up to eight 8 sets of magnetometer calibration coefficients in the module These different coefficient sets can be used for storing coefficients for varying conditions such as when a door is open or closed near the sensor or when the temperature varies since the magnetic signature of the host system may change over temperature Also if the existing coefficients are acceptable but not great and you want to recalibrate you should recalibrate to a different set number so you can retrieve the old set if necessary If you don t do this then you will need to reboot the TCM to retrieve the old set The initial default is set 0 To store a new set of coefficients first establish the set number 0 to 7 using kMagCoeffSet then perform the magnetometer calibration The new coefficient values and coefficient set number will be stored in volatile memory and will be applied immediately Save the coefficient set to non volatile memory by sending kSave When the TCM is powered down and back up again it
50. e roll even negative roll Top Views Side Views 4 Za s A gt Ce NSA e L 5 L 8 Large Positive I A Pitch er mS e Pry NR Le Weg d A H K Wi ZS v S 12 Oo e Large Negative Pitch a 3 At SS eee Figure 5 1 12 Point Full Range Calibration Note While Figure 5 1 shows the location of the device changing this is for illustration purposes and it is best for the location of the device to remain constant while only the orientation is changed PNI Sensor Corporation TCM User Manual DOC 1014688 r09 Page 15 Table 5 2 12 Point Full Range Calibration Pattern 1 Sample Yaw Pitch Roll First Circle 1 0 ESR 30 to 40 2 90 5 30 to 40 3 180 52 30 to 40 4 270 5 30 to 40 Second Circle 5 30 gt 45 30 to 40 6 120 gt 45 30 to 40 7 210 gt 45 30 to 40 8 300 gt 45 30 to 40 Third Circle 9 60 lt 45 30 to 40 10 150 lt 45 30 to 40 11 240 lt 45 30 to 40 12 330 lt 45 30 to 40 Footnote 1 Yaw listings are not absolute heading directions but rather relative heading referenced to the first sample 5 1 2 2D Calibration A 2D Calibration is intended for very low tilt operation lt 5 where calibrating the TCM with greater tilt is not practical This procedure calibrates for hard and soft iron eff
51. ects in only two dimensions and in general is effective for operation and calibration in the tilt range of 5 to 5 The recommended 12 point calibration pattern is a circle of evenly spaced points as given in Table 5 3 PNI Sensor Corporation TCM User Manual DOC 1014688 r09 Page 16 Table 5 3 12 Point 2D Calibration Pattern Footnote Sample Yaw Pitch Roll 1 0 0 0 2 30 max negative max negative 3 60 0 0 4 90 max positive max positive 5 120 0 0 6 150 max negative max negative 7 180 0 0 8 210 max positive max positive 9 240 0 0 10 270 max negative max negative 11 300 0 0 12 330 max positive max positive 1 For best results the tilt experienced during calibration should match that experienced in service For example if the TCM is restrained to a level plane in service then calibration should be in a plane where max positive and max negative are 0 5 1 3 Limited Tilt Range Calibration A Limited Tilt Range Calibration is recommended when 45 of tilt isn t feasible but gt 5 of tilt is possible It provides both hard iron and softiron distortion correction The recommended 12 point calibration pattern given below is a series of 3 circles of evenly spaced points with as much tilt variation as expected during use Table 5 4 12 Point Limited Tilt Calibrat
52. een sent Note that the inverse of the SampleDelay is somewhat greater than the actual sample rate since the SampleDelay does not include actual acquisition time 7 3 25 kGetAcqParams frame ID 254 This frame queries the unit for the acquisition parameters The frame has no payload 7 3 26 kSetAcqParamsDone frame ID 264 This frame is the response to kSetAcqParams frame The frame has no payload 7 3 27 KkGetAcqParamsResp frame ID 274 This frame is the response to kGetAcqParams frame The payload has the same structure as kSetAcqParams 7 3 28 kPowerDownDone frame ID 28 This frame confirms the TCM received a command to power down The frame has no payload 7 3 29 kFactoryMagCoeff frame ID 29 4 For the current designated kMagCoeffSet this frame clears the magnetometer calibration coefficients and loads the original factory generated coefficients The frame has no payload This frame must be followed by the kSave frame to save the change in non volatile memory 7 3 30 kFactoryMagCoeffDone frame ID 30 4 This frame is the response to kFactoryMagCoeff frame The frame has no payload PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 56 7 3 31 kTakeUserCalSample frame ID 314 This frame commands the TCM to take a sample during user calibration The frame has no payload 7 3 32 kFactoryAccelCoeff frame ID 36 4 For the current designated kAccelCoeffSet this frame clears the accelerometer calibratio
53. egrees gt There are 6400 mils in a circle such that 1 degree 17 7778 mils and 1 mil 0 05625 degree 6 3 5 Enable 3D Model TCM Studio s Test tab includes a live action 3 D rendering of a helicopter Some computer systems may not have the graphics capability to render the 3D Model for this reason it may be necessary to turn off this feature 6 3 6 Filter Setting Taps The TCM incorporates a finite impulse response FIR filter to effectively provide a more stable heading reading The number of taps or samples represents the amount of filtering to be performed The user should select either 0 4 8 16 or 32 taps with zero taps representing no filtering Note that selecting a larger number of taps can significantly slow the time for the initial sample reading and if Flush Filters is selected the rate at which data is output The default setting is 32 6 3 7 Acquisition Settings Mode When operating in Continuous Acquisition Mode the TCM continuously outputs data to the host system The rate is set by the Sample Delay When operating in Poll Mode TCM Studio simulates a host system and polls the TCM for a single measurement but TCM Studio makes this request at a fixed rate which is set by the Poll Delay In both cases data is continuously output but in Continuous Mode the TCM controls the data rate while in Poll Mode the TCM Studio program controls the data rate Poll Mode is the default Poll Delay The Poll Delay
54. ence A tick is 1 60 second PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 33 6 7 Graph Tab GM Studio er File Edit Module TCM Connected JE N I Firmware Version s606 Serial Number 1027297 PCA Version R0412729 Connection Configuration Calibration Test Log Data Graph System Log Graph Data O w o User Cal with User Cal MX 27 13 MX Filt MY Filt MX Cal MY Cal 23 10 19 07 15 04 11 01 L LGS C Gear Tam Scroll 26 10 A 1357 21 63 The graph provides a 2 axis X Y plot of the measured field strength If w o User Cal graph data is selected the plot and data provide magnetic field strength measurements after the FIR taps are applied but prior to applying the user calibration coefficients If with User Cal graph data is selected the plot and data provide data after applying the FIR filter and the user calibration coefficients The sample plot shows a 360 rotation in the horizontal plane with both w o User Cal and with User Cal selected The offset between these two plots represents the effect of the calibration coefficients The graph can be used to visually see hard and soft iron effects within the environment measured by the TCM as well as corrected output after a user calibration has been performed PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 34 6 8 System Log Tab GM Studio Ver oio
55. ers 26 kSetAcqParamsDone Response to kSetAcqParams 27 kGetAcqParamsResp Response to kGetAcqParams 28 kPowerDownDone Response to kPowerDown Resets magnetometer calibration coefficients to S preity Meg Cee original factory established values 30 kFactoryMagCoeffDone Response to kFactoryMagCoeff Commands the TCM to take a sample during 31 kTakeUserCalSample user aalibration Resets accelerometer calibration coefficients to Ken original factory established values 37 kFactoryAccelCoeffDone Respond to kFactoryAccelCoeff 46 kSetSyncMode Sets whether the TCM is in normal or Sync Mode 47 kSetSyncModeResp Response to kSetSyncMode 49 kSyncRead Queries the module for data in Sync Mode 7 3 1 kGetModinfo frame ID 14 This frame queries the device s type and firmware revision number The frame has no payload 7 3 2 kGetModinfoResp frame ID 24 The response to kGetModInfo is given below The payload contains the device type identifier followed by the firmware revision number Payload Ulnt32 Ulnt32 Note that the Type and Revision can be decoded from the binary format to character format using the ASCII standard For example the hex string 00 OD 02 54 43 4D 35 31 PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 40 32 30 38 C7 87 can be decoded to read TCM5 1208 Also the TCM XB is referenced as Type TCM6 since the number of Type characters is limited to 4 7 3 3 kSetDataCompo
56. everts back to its factory accelerometer calibration To save this action in non volatile memory click the lt Save gt button It is not necessary to clear the current calibration in order to perform a new calibration PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 30 6 5 Test Tab GM Studio Veri Di0 File Edit Module TCM Connected A r N l Firmware Version s606 04 Serial Number 1027297 Loa PCA Version R0412729 Connection Configuration Calibration Test Log Data Graph System Log Current Reading 3D Model Heading 106 0 Pitch Roll 002 9 001 3 Contrast Acquisition Settings Module is in CONTINUOUS mode F Losse Acquisition delay is 0 000 seconds Sample delay is 0 000 seconds Filters are NOT flushed Module Outputis in Degrees Syne Mode 6 5 1 Current Reading Once the lt Go gt button is selected the module will begin outputting heading pitch and roll information Selecting the lt Stop gt button or changing tabs will halt the output of the module Contrast Selecting this box sets the Current Readings window to have yellow lettering on a black background rather than black lettering on a white background 6 5 2 3D Model The helicopter will follow the movement of the TCM and give a visual representation of the module s orientation assuming the Enable 3D Model Display box is selected on the Configuration tab 6 5 3 A
57. ffects on 3 Axis Compassing at PNI s website http www pnicorp com technology papers Hard lron Effects Hard iron distortions are caused by permanent magnets and magnetized objects in close proximity to the sensors These distortions add or subtract a fixed component to each axis of the magnetic field reading Hard iron distortions usually are unchanging and in a constant location relative to the sensors for all heading orientations Soft lron Effects Magnetically soft materials effectively bend the magnetic field near them These materials have a high magnetic permeability meaning they easily serve as a path for magnetic field lines Unlike hard iron effects soft iron effects do not increase or decrease the total field in the area However the effect of the soft iron distortion changes as the host system s orientation changes Because of this it is more difficult to compensate for soft iron materials Temperature Effects While the hard iron and soft iron distortion of a system may remain quite stable over time normally the distortion signature will change over temperature As a general rule the hard iron component will change 1 per 10 C temperature change Exactly how this affects heading depends on several factors most notably the hard iron component of the system and the inclination or dip angle Consider the example of a host system with a 100 uT hard iron component This is a fairly large hard iron component
58. g Pitch Poll Temperature r n heading pitch roll temperature n amp t ep send next data request br eak def ault Message is a function that displays a formatted string simlar to printf Message Unknown frame 2X recei ved r n Ul nt 16 f rameType br eak Have the ComProtocol build and send the frame to the nodule LI void TCM SendConm Ul nt 8 frameType void dataPtr Ulnt16 dat aLen if mConm nConm gt SendDat a franeType dat abr r dat aLen Ticks is a timer function 1 tick 10nsec nResponseTi me Ticks 300 Expect a response w thin 3 seconds This is called each time this process gets a turn to execute oi d TCM Control Pe lt i Die SE ep case 1 Ul nt 8 pkt kDat aCount 1 the compents we are requesting preceded by the number of components bei ng request ed pkt 0 kDat aCount pkt 1 ConmPr ot ocol kHeadi ng PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 73 pkt 2 ConmProtocol kPitch pkt 3 ConmPr ot ocol kRol I pkt 4 ConmPr ot ocol kTemper at ure SendConm ComrPr ot ocol kSet Dat aConponent s pkt kDat aCount 1 Ticks is a timer function 1 tick 10nsec mli me Ticks 100 Taking a samle in Is n6t ep go to next step of process br eak case 2 Ticks is a timer function 1 tick 10nsec if Ticks gt ni re
59. h and roll outputs The heading range is 0 0 to 359 9 the pitch range is 90 0 to 90 0 and the roll range is to 180 0 to 180 0 kTemperature Component ID 74 This value is provided by the device s internal temperature sensor in degrees Celsius and has an accuracy of 3 C kDistortion Component ID 84 This flag indicates at least one magnetometer axis reading is beyond 125 uT kCalStatus Component ID 94 This flag indicates the user calibration status False means it is not user calibrated and this is the default value kAccelX kAccelY amp kAccelZ Component IDs 214 224 234 These values represent the accelerometer sensor data for the x y and z axis respectively The values are normalized to g Earth s gravitational force kMagX kMagY amp kMagZ Component IDs 274 284 294 These values represent the magnetic sensor data for the x y and z axis respectively The values are given in uT 7 3 4 kGetData frame ID 44 If the TCM is configured to operate in Poll Acquisition Mode as defined by kSetAcqParams then this frame requests a single measurement data set The frame has no payload The response is kGetDataResp 7 3 5 kGetDataResp frame ID 54 The response to kGetData kStartContinuousMode and kSyncRead is kGetDataResp The specific data fields that will be output ID 1 Value ID 1 etc should have been previously established by the kSetDataComponents command frame Payload ID Coun
60. ion Pattern Sample Yaw Pitch Roll First Circle 1 0 0 0 2 90 0 0 3 180 0 0 6 270 0 0 Second Circle 7 45 gt 5 gt 5 8 135 gt 5 gt 5 11 225 gt 5 gt 5 12 315 gt 5 gt 5 Third Circle 13 45 lt 5 lt 5 14 135 lt 5 lt 5 17 225 lt 5 lt 5 18 315 lt 5 lt 5 PNI Sensor Corporation TCM User Manual DOC 1014688 r09 Page 17 Note that a similar and acceptable alternative pattern would be to follow the recommended 12 point Full Range Calibration pattern but substituting the gt 45 of pitch with whatever pitch can be achieved and the 10 to 20 or roll with whatever roll can be achieved up to these limits 5 1 4 Hard lron Only Calibration It is not uncommon for the hard iron magnetic distortions around the TCM to change Some reasons for this include significant temperature change or temperature shock to a system as well as gradual aging of components A Hard Iron Only Calibration allows for quick recalibration of the TCM for hard iron effects and generally is effective for operation and calibration in the tilt range of 3 or more 245 is preferred The recommended 6 point calibration pattern given below is a circle of alternately tilted evenly spaced points with as much tilt as expected during use Table 5 5 6 Point Hard lron Only Calibration Patte
61. is relevant when Poll Mode is selected It represents the time delay in seconds between the completion of TCM Studio receiving one set of sampled data and requesting the next sample set If the delay is set to 0 then TCM Studio requests new data as soon as the previous request is fulfilled Note that the inverse of the Poll Delay is greater than the sample rate since the Poll Delay does not include the actual measurement acquisition time The default is 0 PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 25 Acquire Delay The Acquire Delay sets the time between samples taken by the module in seconds This is an internal setting that is NOT tied to the time with which the module transmits data to TCM Studio or the host system Generally speaking the Acquire Delay is either set to 0 in which case the TCM is constantly sampling or set to equal either the Poll Delay or Sample Delay values The advantage of running with an Acquire Delay of 0 is that the FIR filter can run with a relatively high Tap value to provide stable and timely data The advantage of using a greater Acquire Delay is that power consumption can be reduced assuming the Sample or Poll Delay are no less than the Acquire Delay Sample Delay The Sample Delay is relevant when Continuous Mode is selected It is the time delay in seconds between completion of the TCM sending one set of data and the start of sending the next sample set If the delay is set to 0 then th
62. l Range Calibration and Hard Iron Only Calibration this should be gt 45 For 2D Calibration this ideally should be 2 For Limited Tilt Range Calibration the value should be as large a possible given the user s constraints Accel CalScore Represents the over riding indicator of the quality of the accelerometer calibration Acceptable scores will be lt 1 PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 29 6 4 3 Current Configuration These indicators mimic the pertinent selections made on the Configuration tab 6 44 Options This window indicates how many samples are to be taken and provides real time heading pitch and roll information if HPR During Calibration is set to lt On gt both as defined on the Configuration tab Audible Feedback If selected TCM Studio will give an audible signal once a calibration point has been taken Note that an audible signal also will occur when the lt Start gt button is clicked but no data will be taken 6 4 5 Clear Clear Mag Cal to Factory This button clears the user s calibration of the magnetometers Once selected the module reverts to its factory magnetometer calibration To save this action in nonvolatile memory click the lt Save gt button It is not necessary to clear the current calibration in order to perform a new calibration Clear Accel Cal to Factory This button clears the user s calibration of the accelerometer Once selected the module r
63. l Range Calibration magnetic only 104 OA Recommended calibration method when gt 45 of tilt is possible 2D Calibration magnetic only 204 145 Recommended when the available tilt range is limited to lt 5 Hard lron Only Calibration magnetic only 304 1En Recalibrates the hard iron offset for a prior calibration If the local field hard iron distortion has changed this calibration can bring the module back into specification Limited Tilt Range Calibration magnetic only 404 281 Recommended calibration method when gt 5 of tilt calibration is available but tilt is restricted to lt 45 i e Full Range Calibration is not possible Accelerometer Only Calibration 1004 64n Select this when only accelerometer calibration will be performed Accelerometer and Magnetic Calibration 1104 6E Selected when magnetic and accelerometer calibration will be done simultaneously Below is a complete sample packet to start a 2D Calibration kStartCal 00 09 00 00 00 14 5C F9 ByteCount Frame ID CalOption CalOption Checksum MSBs 2D Calibration Heading pitch and roll information is output via the kGetDataResp frame during the calibration process This feature provides guidance during the calibration regarding calibration sample point coverage During calibration in the kGetDataResp frame the number of data components is set to be 3 and then followed by the data component ID value pairs The sequence of the
64. lect 38400 as the baud rate e Click the lt Connect gt button if the connection is not automatic Once a connection is made the Connected light will turn green and the module s firmware version serial number and PCA version will be displayed in the header section 6 2 2 Changing Baud Rate To change the baud rate e Inthe Module window select the new baud rate for the module e Click the lt Power Down gt button The button will change to read lt Power Up gt e Inthe Computer window select same baud rate for the computer e Click the lt Power Up gt button The button will revert back to lt Power Down gt Note While the TCM can operate at a baud rate of 230400 a PC serial port normally will not operate this fast PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 22 6 2 3 Changing Modules Once a connection has been made TCM Studio will recall the last settings If a different module is used click the lt Connect gt button once the new module is attached This will reestablish a connection assuming the module baud rate is unchanged 6 3 Configuration Tab ELS Studio Ver w0 Module TCM Connected Firmware Version s606 Serial Number 1027297 PCA Version R0412729 Connection Configuration Calibration Test Log Data Graph System Log Mounting Options Filter Settings Calibration Settings T Standard aps 32 V Automatic Sampling North Reference Acquisition Se
65. libration will be performed The minimum recommended number of calibration points is 18 Accel Calibration with Mag The user should select this when magnetometer and accelerometer calibration will be performed simultaneously The minimum recommended number of calibration points is 18 6 3 10 Default Clicking this button restores the TCM Studio program to the factory default settings 6 3 11 Retrieve Clicking on this button causes TCM Studio to read the settings from the module and display them on the screen PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 27 6 4 Calibration Tab Ms Ne File Edit Module TCM Connected Be N l Firmware Version s606 Serial Number 1027297 PCA Version R0412729 Connection Configuration Calibration Test Log Data Graph System Log Samples Calibration Results A Dist Error Tilt Error 1 2 Tilt Range Accel CalScore Take Sample Current Configuration Options Limited Tilt Cal Z Audible Feedback Automatic Sampling Hard Iron Only Cal Number of samples is 12 Accel Only Cal 2D Only Cal Heading Pitch Rall Accel Cal with Mag Full Range Cal 000 0 000 0 000 0 Clear Accel Cal to Factory Clear Maq Cal to Factory Save 6 4 1 Samples Before proceeding refer to Section 5 for the recommended calibration procedure corresponding to the calibration method selected on the Configuration tab Clicking the lt Start gt button begins
66. lity of any such damages including but not limited to loss of use revenue or profit In no event shall PNI s total liability for all claims regarding a Product exceed the price paid for the Product PNI neither assumes nor authorizes any person to assume for it any other liabilities Some states and provinces do not allow limitations on how long an implied warranty lasts or the exclusion or limitation of incidental or consequential damages so the above limitations or exclusions may not apply to you This warranty gives you specific legal rights and you may have other rights that vary by state or province PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 1 2 Introduction Thank you for purchasing PNI Sensor Corporation s TCM XB pn 12810 or TCM MB pn 13095 tilt compensated 3 axis digital compass The TCM is a high performance low power consumption tilt compensated electronic compass module that incorporates PNI s advanced magnetic distortion compensation and calibration scoring algorithms to provide industry leading heading accuracy The TCM combines PNI s patented magneto inductive sensors and measurement circuit technology with a 3 axis MEMS accelerometer for unparalleled cost effectiveness and performance PNI recognizes not all applications allow for significant tilt during calibration so multiple calibration methods are available to ensure optimized performance can be obtained in the real world These include Full R
67. lnt8 dataPtr the data to send Ul nt 32 i ndex 0 our location in the frame we are putting together Ul nt 16 crc the CRC to add to the end of the packet Ul nt 16 count the total length the packet wll be count Ulnt16 l en kPacket M nSi ze exit wthout sending if there is too much data to fit inside our packet if len gt kBufferSi ze kPacketMnSi ze return Store the total len of the packet including the len bytes 2 the frame ID 1 the data len and the crc 2 If no data is sent the mn lenis 5 PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 66 mOut Dat al i ndex nQut Dat al i ndex count gt gt 8 count amp OxFF store the frame ID nOut Dat a i ndex franeType copy the data to be sent whil e l en mQut Dat a i ndex dat a compute and add the crc crc CRO OUL Data index OUL Dat a i ndex crc gt gt 8 nOut Dat al i ndex crc amp OxFF Wite block wll copy and send the data out the serial port ner i al Port gt W i t eBl ock mQut Dat a index Ey Call the functions in serial port necessary to change the baud rate voi d ComrPr ot ocol Set Baud Ul nt 32 baud nSer i al Port gt Set BaudRat ei baud nSer i al Port gt l nG ear clear any data that was already waiting in the buffer date the CRC for transmitted and recei ved data using the CCI TT 16bit al gorithm
68. mands the TCM to stop data output when in Continuous Acquisition Mode The frame has no payload PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 54 7 3 23 kPowerUpDone frame ID 234 This frame confirms the TCM received a command to power up The TCM will power up when it receives any signal on the native UART Rx line The frame has no payload Since the module was previously powered down which drives the RS 232 driver TX line low break signal it is recommended to disregard the first byte 7 3 24 kSetAcqParams frame ID 24 This frame sets the sensor acquisition parameters in the TCM The payload should contain the following Payload AcquisitionMode FlushFilter AquireDelay SampleDelay UInt8 Ulnt8 Float32 Float32 AcquisitionMode This flag sets whether output will be presented in Continuous or Polled Acquisition Mode Continuous Mode is TRUE and is the default Polled Mode should be selected when the host system will poll the TCM for each data set Continuous Mode should be selected if the user will have the TCM output data to the host system at a relatively fixed rate FlushFilter Setting this flag to TRUE results in the FIR filter being flushed cleared after every measurement The default is FALSE Flushing the filter clears all tap values thus purging old data This can be useful if a significant change in heading has occurred since the last reading as the old heading data would be in the filter Once the ta
69. n PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 36 7 2 Parameter Formats Note Floating point based parameters conform to ANSIring IEEE Std 754 1985 Please refer to the Standard for more information PNI also recommends refer to the user s compiler instructions to understand how the compiler implements floating point format 64 Bit Floating Point Float64 The 64 bit float format is given below in big Endian In little Endian the bytes are in reverse order in 4 byte groups eg big Endian ABCD EFGH little Endian DCBA HGFE 63 62 5251 0 S Exponent Mantissa The value v is determined as if and only if 0 lt Exponent lt 2047 then v 1 S 2 Exponent 1023 1 Mantissa 32 Bit Floating Point Float32 Shown below is the 32 bit float format in big Endian In little Endian format the 4 bytes are in reverse order with LSB first 3130 2322 0 S Exponent Mantissa The value v is determined as if and only if 0 lt Exponent lt 255 then v 1 S 2 Exponent 127 1 Mantissa Signed 32 Bit Integer SInt32 SInt32 based parameters are signed 32 bit numbers in 2 s compliment Bit 31 represents the sign of the value where 0 positive and 1 negative 31 2423 1615 87 0 msb Isb Big Endian 7 0 15 8 23 1631 24 Isb msb Little Endian PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 37 Signed 16 Bit I
70. n aaa aaa loves 37 7 3 Commands amp Communication Frames sees eee ee ee eee eee eee eee 39 7 3 1 kGetMod Info frame ID Lal 40 7 3 2 kGetModInfoResp frame ID 24 sss see 40 7 3 3 kSetDataComponents frame ID 324 41 7 3 4 kGetData frame ID A4 42 7 3 5 kGetDataResp frame ID Bule 42 7 3 6 kSetConfig frame ID 6g sse 43 7 3 7 kGetConfig frame D7 I sakna i E 47 7 3 8 kGetConfigResp frame ID SA 47 7 3 9 kSave frame ID Ou 48 7 3 10 kStartCal frame ID Ia 48 7 3 11 kStopCal frame ID Tis 50 7 3 12 kSetFIRFilters frame ID 129 50 7 3 13 kGetFIRFilters frame ID 134 52 7 3 14 kGetFIRFiltersResp frame ID L Al 52 7 3 15 kPowerDown frame ID 154 ccc 52 7 3 16 kSaveDone frame ID lg 53 7 3 17 kUserCalSampleCount frame IDUia 53 7 3 18 kCalScore frame ID Ia 53 7 3 19 kSetConfigDone frame ID 199 ssc tvsscecnndssantsveavasseedoserertvdrvdcnsors 54 7 3 20 kSetFIRFiltersDone frame ID Za 54 7 3 21 kStartContinuousMode frame ID 2ia 54 7 3 22 kStopContinuousMode frame ID22al rare 54 7 3 23 kPowerUpDone frame ID 2934 55 PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page ii 7 3 24 kSetAcqPar ms frame ID 244 sasssa ks 55 7 3 25 kGetAcqParams frame ID 284 56 7 3 26 kSetAcqParamsDone frame ID 264 56 7 3 27 kGetAcqParamsResp frame ID2ia 56 7 3 28 kPowerDownDone frame ID 28 esse s sees eee 56 7 3 29 kFactoryMagCoeff frame ID 29 4 sse 56 7 3 30 kFactoryMagCoeffDone frame ID 204 56 7 3 31 k
71. n coefficients and loads the original factory generated coefficients The frame has no payload This frame must be followed by the kSave frame to save the change in non volatile memory 7 3 33 kFactoryAccelCoeffDone frame ID 37 4 This frame is the response to kFactoryAccelCoeff frame The frame has no payload 7 3 34 kSetSyncMode frame ID 46 4 When the TCM operates in Sync Mode the module will stay in Sleep Mode until the user s system sends a trigger to report data When so triggered the TCM will wake up report data once then return to Sleep Mode One application of this is to reduce power consumption Another use of the Sync Mode is to trigger a reading during an interval when local magnetic sources are well understood For instance if a system has considerable magnetic noise due to nearby motors the Synch Mode can be used to take measurements when the motors are turned off Note When Sync Mode is selected the TCM will acknowledge the change in mode and immediately trigger the Sync Mode and send a data frame This frame allows the module to be placed in Sync Mode The payload contains the Mode ID requested as given below Payload gt Mode ID Normal Mode 0 Mode ID Sync Mode 100 lt Ulnt8 _ If the module is in Sync Mode and the user desires to switch back to Normal Mode an FFh string first must be sent followed by some minimum delay time prior to sending the kSetSyncMode fr
72. nents frame ID 34 This frame defines what data is output when kGetData is sent Table 7 3 summarizes the various data components and more detail follows this table Note that this is not a query for the device s model type and software revision see kGetModInfo The first byte of the payload indicates the number of data components followed by the data component IDs Note that the sequence of the data components defined by kSetDataComponents will match the output sequence of kGetDataResp Payload pom or er Pe Je Ulnt8 Ulnt8 Ulnt8 Ulnt8 Example To query for heading and pitch the payload should contain Payload ID Count Heading ID Pitch ID When querying for data kGetData frame the sequence of the data component output follows the sequence of the data component IDs as set in this frame Table 7 3 Component Identifiers Component Seier Format kHeading 5 Float32 degrees kPitch 24 Float32 degrees kRoll 25 Float32 degrees kTemperature 7 Float32 Celsius True or False kDistortion 8 Boolean Default True or False kCalStatus 9 Boolean Default kAccelX 21 Float32 G kAccelY 22 Float32 G kAccelZ 23 Float32 G kMagX 27 Float32 uT kMagY 28 Float32 uT kMagZ 29 Float32 uT PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 41 Component types are listed below All are read only values kHeading kPitch kRoll Component IDs 5g 244 254 Provides compass heading pitc
73. nse is kGetDataResp with heading pitch and roll automatically set as the data component IDs Prior to sending the kSyncRead frame the user s system must first send an FF string which wakes up the system then wait some minimum delay time before sending the kSyncRead frame The minimum delay time is dependent on the baud rate and for a baud rate equal to or slower than 9600 there is no delay The minimum delay is defined by the same formula given for switching from Sync Mode to Normal Mode in kSetS yncMode PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 58 7 4 Using Multiple Coefficient Sets The ability to store and access multiple calibration coefficients sets the FieldForce TCM apart from our Prime or legacy TCM This section will detail the command list and provide two examples for utilizing this functionality Table 7 7 Multiple Coefficient Command List kSetConfig kCoeffCopySet Value Fare Command TCM Response frame ID config ID UInt32 Bytes 0x06 0x12 0 7 Set kCoeffCopySet to 0x00 0x0A 0x06 0x00 0x05 0x13 OxDD be copy 0 0x12 0x00 0x00 OxA7 0x00 0x00 Ox3E 0x76 Set kCoeffCopySet to 0x00 Ox0A 0x06 0x00 0x05 0x13 OxDD be copy 1 0x12 0x00 0x00 OxA8 0x00 0x01 Ox2E 0x57 Set kCoeffCopySet to 0x00 OxOA 0x06 0x00 0x05 0x13 OxDD be copy 4 0x12 0x00 0x00 OxA9 0x00 0x04 Ox7E OxF2 kGetConfig frame ID kCoeffCopySet config ID 0x12 Accelerometer Calibration Value UInt32
74. nteger SInt16 SInt16 based parameters are signed 16 bit numbers in 2 s compliment Bit 15 represents the sign of the value where 0 positive and 1 negative 15 87 0 7 0 15 8 msb Isb Isb msb Big Endian Little Endian Signed 8 Bit Integer SInt8 UInt8 based parameters are unsigned 8 bit numbers Bit 7 represents the sign of the value where 0 positive and 1 negative 7 0 byte Unsigned 32 Bit Integer Ulnt32 UInt32 based parameters are unsigned 32 bit numbers 31 24 23 1615 87 0 msb Isb Big Endian 7 0 15 8 23 1631 24 Isb msb Little Endian Unsigned 16 Bit Integer Ulnt16 UInt16 based parameters are unsigned 16 bit numbers 15 87 0 7 0 15 8 msb Isb Isb msb Big Endian Little Endian PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 38 Unsigned 8 Bit Integer Ulnt8 UInt8 based parameters are unsigned 8 bit numbers 7 0 byte Boolean Boolean is a 1 byte parameter that MUST have the value 0 FALSE or 1 TRUE 7 0 byte 7 3 Commands amp Communication Frames Table 7 2 below provides the TCM s command set Table 7 2 TCM Command Set Command Description 1 kGetModinfo Queries the device s type and firmware revision 2 kGetModInfoResp Response to kGetModinfo 3 kSetDataComponents Sets the data
75. omPr ot ocol obj ect when a frame is comletel v recei ved void TCM Handl eCom Ul nt 8 franeType void dat abr r Ulnt16 dat aLen Unt8 data Unt8 dataPtr swi t ch f r ame Type case CommPr ot ocol kGet Dat aResp Parse the data response Ul nt8 count dat al 0 The number of data elements returned Ul nt32 pntr 1 Used to retrieve the returned el ements The data el ements we request ed Fl oat 32 heading pitch roll temperature if count kDat aCount Message is a function that displays a C formatted string simlar to printf Message Recei ved data elements instead of the request ed r n Ul nt 16 count Ul nt 16 kDat aCount return PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 71 Loop through and collect the elements whi I e count The elements are received as type ie kHeading data sw t ch dat al pnt r read the type and go to the first byte of the data Only handling the 4 elements we are ooking for case CommPr ot ocol kHeadi ng Move sour ce destination size bytes Move copies the specified number of bytes fromthe source pointer to the destination pointer Store the headi ng Move amp dat al pntr amp headi ng III III si zeof headi ng increase the pointer to point to the next data element type pntr si zeof headi ng br eak case ComPr ot ocol kPitch Nove
76. ps are cleared it is necessary to fully repopulate the filter before data is output For example if 32 FIR taps is set 32 new samples must be taken before a reading will be output The length of the delay before outputting data is directly correlated to the number of FIR taps AcquireDelay When operating in Continuous Acquisition Mode the AcquireDelay sets the time between samples taken by the module in seconds The default is 0 0 seconds which means the module will reacquire data immediately after the last acquisition This is an internal setting that is NOT tied to the time with which the module transmits data to the host system Generally speaking the AcquireDelay is either set to 0 in which case the TCM is constantly sampling or set to equal the SampleDelay value The PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 55 advantage of running with an AcquireDelay of 0 is the FIR filter can run with a relatively high FIR Tap value to provide stable and timely data The advantage of using a greater AcquireDelay is power consumption can be reduced assuming the SampleDelay is no less than the AcquireDelay SampleDelay The SampleDelay is relevant when the Continuous Acquisition Mode is selected It is the time delay in seconds between completion of the TCM sending one set of data and the start of sending the next data set The default is 0 seconds which means the TCM will send new data as soon as the previous data set has b
77. r Up Plus av Z Sensor Down ver e 180 Degrees KR Plus 180 Degrees EL X Sensor Up Plus uy S Z Sensor Up Plus 4 S 270 Degrees A 270 Degrees SE 6 3 2 North Reference Declination also called magnetic variation is the difference between true and magnetic north It is measured in degrees east or west of true north Correcting for declination is accomplished by storing the correct declination angle and then changing the heading reference from magnetic north to true north Declination angles vary throughout the world and change very slowly over time For the greatest possible accuracy go to the National Geophysical Data Center web page below to get the declination angle based on your latitude and longitude http www ngdc noaa gov geomagmodels Declination jsp Magnetic When the lt Magnetic gt button is selected heading will be relative to magnetic north True When the lt True gt button is selected heading will be relative to true north In this case the declination needs to be set in the Declination window 6 3 3 Endianess Select either the lt Big gt or lt Little gt Endian button The default setting is lt Big gt See Sections 7 2 and 7 3 for additional information PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 24 6 3 4 Output The TCM module can output heading pitch and roll in either degrees or mils Click either the lt Degrees gt or lt Mils gt button The default is lt D
78. rn Sample Yaw Pitch Roll 1 0 max negative max negative 2 60 max positive max positive 3 120 max negative max negative 4 180 max positive max positive 5 240 max negative max negative 6 300 max positive max positive Footnote 1 For best results the tilt experienced during calibration should match that experienced in service For example if the TCM will be subject to 45 of pitch and roll when in service then max negative should be 45 and max positive should be 45 5 2 Accelerometer Calibration The TCM uses a MEMS accelerometer to measure the attitude of the compass This data is output as pitch and roll data Additionally the accelerometer data is critical for establishing an accurate heading reading when the TCM is tilted as discussed in the PNI white paper Tilt Induced Heading Error in a 2 Axis Compass which can be found on PNI s web site http www pnicorp com technology papers The TCM algorithms assume the accelerometer only measures the gravitational field If the TCM is accelerating this will result in the TCM calculating an inaccurate gravitational PNI Sensor Corporation TCM User Manual DOC 1014688 r09 Page 18 vector which in turn will result in an inaccurate heading reading For this reason the TCM should be stationary when taking a measurement As previously mentioned PNI calibrates the accelerometer in its factory prior
79. sample rate is dependent on the strength of the magnetic field and typically will be from 25 to 32 samples sec 2 FIR taps set to 0 Table 3 5 Environmental Requirements Parameter Value Operating Temperature 40C to 85C Storage Temperature 40C to 85C Footnote 1 To meet performance specifications across this range recalibration will be necessary as the temperature varies Table 3 6 Mechanical Characteristics Parameter Value Dimensions TCM XB 35 x 43 x 13 mm U X wx h TCM MB 33 x 31 x 13 mm Weight TCM XB 6 8 gm TCM MB 5 3 gm TCM XB 9 pin Molex pn 53780 0970 TCM MB 4 pin MIL MAX pn 850 10 004 10 001000 Connector PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 5 3 2 Mechanical Drawings MILLIMETERS DIMENSIONS ARE INCHES 35 000 1 378 10 303 406 3 00040 025 2X 1184 001 0 051 0 000 002 0 113 000 CLEARANCE FOR 4 40 UNC FASTENER o 2 870 37 000 0 025 1 457 001 MOUNTING BLOCK STAKING 27 023 1 064 3 000 0 025 2X 118 001 29 000 0 025 PIN 1 MOLEX P N 53780 0970 F 1 142 001 7 MATES WITH MOLEX P N 51146 0900 9 800 386 1 588 0625 The default orientation is for the silk screened arrow to point in the forward direction Figure 3 1 TCM XB Mechanical Drawing L 457 6 18 00 0 25 1 76 5 ai Molex PN 51146 0900 EE A ki dimensions in mm inches Figure 3 2 TCM
80. sitive roll is when the right edge of the board is rotated down BS A _ bed NN NORTH HEADING EE e Ne OR DIRECTION OF Er u eee TRAVEL ol SS ek ER Ke E Yo Yi SH gt S Zen e eg e E NEGATIVE 1 NN OH Pe Bel ROLL T N Eer Se AXIS POSITIVE N ere NEGATIVE POSITIVE PITCH AXIS Figure 4 1 Positive amp Negative Roll and Pitch Definition PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 10 4 3 2 Mounting Orientation The TCM can be mounted in various orientations as shown for the TCM XB in Figure 4 2 All reference points are based on the white silk screened arrow on the top side of the board The orientation should be programmed in the TCM using TCM Studio or the kSetConfig command The default orientation is STD 0 Z DOWN 0 HEADING HEADING HEADING Z DOWN 180 HEADING HEADING HEADING HEADING STD 270 X UP 270 gt Y UP 270 Z DOWN 270 Note TCM XB is shown The Z axis sensor and the connector are on the module s top surface regardless of model Figure 4 2 Mounting Orientations PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 11 5 User Calibration The magnetic sensors in the TCM are calibrated at PNI s factory in a magnetically controlled environment However sources of magnetic distortion positioned near the TCM in the user s system will distort Earth s magnetic field and should be
81. stem to compensate for magnetic sourcing and distorting components with the user s system o Allows for 4 different methods of calibration Full Range Calibration provides the highest heading accuracy while 2D and Limited Tilt Calibration support a limited range of motion during calibration Hard Iron Only Calibration updates just the hard iron coefficients with a relatively easy procedure e Accelerometer calibration requires rotating the TCM through a full sphere of coverage but the TCM does not need to be incorporated into the user s system during calibration e Ifthe TCM will experience different states during operation such as operating with a nearby shutter sometimes closed and sometimes open or operating over a broad temperature range then different sets of calibration coefficients can be saved for the various states Up to 8 magnetic calibration coefficient sets and 3 accelerometer calibration coefficient sets can be saved PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 12 5 1 Magnetic Calibration Two fundamental types of magnetic distortion exist hard iron distortion and soft iron distortion A given component can exhibit both hard iron and soft iron distortions These distortions are reviewed in the ensuing paragraphs and are followed by discussions on temperature effects and other considerations For more information on magnetic distortion and calibration see PNI s white paper Local Magnetic Distortion E
82. t break PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 69 7 5 4 TCM h File pragma once i ncl ude Processes h ti ncl ude CommPr ot ocol h id This file contains the obj ect providing conmuni cation to the TCM II it will set up the module and parse packets received Process is a base class that provides TOM with cooperative parallel processing The Control method wll be called by a process manager on a continuous basis N ass TCM public Process public ConmHandl er publ ic TCM Ser Port ser Port T pr ot ect ed ComrPr ot ocol mom Ul nt 32 nSt ep mf me nResponseTi me void Handl eCom Ul nt 8 franeType void dataPtr NULL Ul nt 16 dataLen 0 void SendCom Ul nt 8 frameType void dataPtr NULL Ul nt 16 dat alen 0 void Control PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 70 7 5 5 TCM cpp File i ncl ude TCM h ti ncl ude Ti ckGener at or h const Ulnt8 kDataCount 4 We will be requesting 4 components heading pitch roll and e t enper at ure This obj ect polls the TCM nodule once a second for heading pitch roll and tenperature iy TCM TOM Ser Port ser Port Pr ocess TOM Let the ConmProtocol know this object wll handle any serial data returned by the nodule mConm new CommPr ot ocol this serPort mli me 0 n amp t ep 1 TCM TOM H Called by the C
83. t Value ID 1 Value ID 2 Value ID 3 Ulnt8 Ulnt8 ID Specific Ulni8 ID Specific Ulni8 ID Specific PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 42 Example If heading and pitch are set to be output per the kSetDataComponents command the payload would look like Payload ID Count Heading ID Heading Pitch ID Pitch Output Float32 Float32 7 3 6 kSetConfig frame ID 64 This frame sets internal configurations in the TCM The first byte of the payload is the configuration ID followed by a format specific value These configurations can only be set one at time To save these in non volatile memory the kSave command must be issued Payload Ulnt8 ID Specific Example To configure the declination the payload would look like Payload Declination ID Declination Angle Float32 PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 43 Settings kDeclination Table 7 4 Configuration Identifiers Config ID4 Format Float32 Values Range 180 to 180 Default 0 kTrueNorth Boolean True or False False kBigEndian 1 2 6 Boolean True or False True kMountingRef 10 Ulnt8 1 STD 0 2 X UP 0 SEV UP OS 4 STD 90 5 STD 180 6 STD 270 7 Z DOWN 0 8 X UP 90 9 X UP 180 10 X UP 270 UP 12 Y UP 180 13 Y UP 270 14 Z DOWN 90 15 Z DOWN 180 16 Z DOWN 270 kUserCalNumPoints 12 Ulnt32 4 32
84. t which fails during the applicable warranty period provided that 1 OEM promptly notifies PNI in writing that such Product is defective and furnishes an explanation of the deficiency 11 such Product is returned to PNI s service facility at OEM s risk and expense and 111 PNI is satisfied that claimed deficiencies exist and were not caused by accident misuse neglect alteration repair improper installation or improper testing If a Product is defective transportation charges for the return of the Product to OEM within the United States and Canada will be paid by PNI For all other locations the warranty excludes all costs of shipping customs clearance and other related charges PNI will have a reasonable time to make repairs or to replace the Product or to credit OEM s account PNI warrants any such repaired or replacement Product to be free from defects in material and workmanship on the same terms as the Product originally purchased Except for the breach of warranty remedies set forth herein or for personal injury PNI shall have no liability for any indirect or speculative damages including but not limited to consequential incidental punitive and special damages relating to the use of or inability to use this Product whether arising out of contract negligence tort or under any warranty theory or for infringement of any other party s intellectual property rights irrespective of whether PNI had advance notice of the possibi
85. tion was not aborted e If the calibration was not good either perform another calibration procedure reboot to restore the prior coefficients recall another coefficient set kMagCoeffSet or recall the factory coefficients kFactoryMagCoeff e Ifthe calibration was good and you want to save the calibration coefficients to non volatile memory send the kSave command 7 3 11 kStopCal frame ID 114 This command aborts the calibration process Assuming the minimum number of sample points for the calibration as defined in Table 7 5 is not acquired prior to sending kStopCal the prior calibration results are retained If the acquired number of sample points prior to sending kStopCal is within the allowable range of kUserCalNumPoints then new calibration coefficients and a new score will be generated For instance if kUserCalNumPoints is set to 32 for a Full Range Calibration and kStopCal is sent after taking the 12 sample point then a new set of coefficients will be generated based on the 12 sample points that were taken They will not be saved however unless the kSave command is sent 7 3 12 kSetFIRFilters frame ID 124 The TCM incorporates a finite impulse response FIR filter to provide a more stable heading reading The number of taps or samples represents the amount of filtering to be performed and directly affects the time for the initial sample reading as all the taps must be populated before data is output The TCM can
86. to shipment But over time the bias and offset of the accelerometer will drift For this reason PNI recommends the accelerometer be recalibrated every 6 to 12 months The user may return the TCM to PNI for accelerometer calibration or the user may perform a user accelerometer calibration The remainder of this section covers the user accelerometer calibration 5 2 1 Accelerometer Only Calibration The requirements for a good user accelerometer calibration differ significantly from the requirements for a good magnetic calibration Specifically a good accelerometer calibration involves the TCM experiencing a wide range of pitch and roll values preferably seeing both 180 of pitch and 180 of roll Also it is necessary for the TCM to be very still during an accelerometer calibration If possible PNI recommends using a fixture to hold the device during calibration although resting the TCM on a hard surface normally is sufficient The accelerometer either can be calibrated while mounted in the host system or it may be removed and calibrated outside the system The advantage of performing the calibration while mounted in the host system is the user does not need to remove the TCM from the system which can be burdensome and a simultaneous Mag and Accel Calibration may be appropriate The advantage of performing the calibration outside of the system is it may be much simpler to obtain the desired range of pitch and roll Figure 5 2 shows the two
87. ttings Calibration Points 12 Full Range Calibration OHI Only Calibration Ge Poly O Limited Tilt Range Calibration Acquire Delay 0 000 2D Calibration Sample Delay 0 000 O Accel only Calibration Big O Little O Accel Calibration with Mag Flush Filters Magnetic O True Mode Poll Continuous Endianess Output HPR During Calibration Degrees OMils Eon Oot Enable 3D Model Display Note No settings will be changed in the module until the lt SAVE gt button has been selected 6 3 1 Mounting Options TCM Studio supports 16 mounting orientations as illustrated previously in Figure 4 2 The descriptions in TCM Studio are slightly different from those shown in Figure 4 2 and the relationship between the two sets of descriptions is given below PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 23 Table 6 1 Mounting Orientations TCM Studio Figure 4 2 TCM Studio Figure 4 2 Description Description Description Description Standard STD 0 Y Sensor Up Y Up 0 Standard 90 Y Sensor Up Plus a 5 Degrees Sl 90 Degrees DE Standard 180 Y Sensor Up Plus ap e Degrees EE 180 Degrees PEPE Standard 270 S Y Sensor Up Plus a 7 Degrees SAN 270 Degrees SA X Sensor Up X Up 0 Z Sensor Down Z Down 0 X Sensor Up Plus uy 5 Z Sensor Down SC 2 90 Degrees A M RK Plus 90 Degrees EE X Senso
88. um linear range is exceeded 4 3 Mechanical Mounting The TCM is factory calibrated with respect to its mounting holes It must be aligned within the host system with respect to these mounting holes Ensure any stand offs or screws used to mount the module are non magnetic Refer to Section 3 2 for dimensions hole locations and the reference frame orientation Note Ensure that when attaching the TCM to the host system the mounting method does not introduce stresses on the board as this can affect the performance of the accelerometer and therefore also negatively affect heading accuracy 4 3 1 Pitch and Roll Conventions The TCM uses a MEMS accelerometer to measure the tilt angle of the compass This data is output as pitch and roll data and is also used in conjunction with the magnetometers to provide a tilt compensated heading reading The TCM utilizes Euler angles as the method for determining accurate orientation This method is the same used in aircraft orientation where the outputs are heading also called yaw or azimuth pitch and roll When using Euler angles roll is defined as the angle rotated around an axis through the center of the fuselage while pitch is rotation around an axis through the center of the wings These two rotations are independent of each other since the rotation axes rotate with the plane body As shown in Figure 4 1 for the TCM a positive pitch is when the front edge of the board is rotated upward and a po
89. ver temperature e Immediately after performing a successful calibration the new calibration coefficients will be will be stored in volatile memory and immediately applied Save this coefficient set to non volatile memory by sending kSave If you do not want to use this new coefficient set either reboot the TCM which will restore the prior coefficients switch to a different coefficient set or reload the factory coefficients e On powering up the last saved calibration coefficients will be loaded This frame commands the module to start a user calibration After sending this command the module ensures a PNI established stability condition is met takes the first calibration point and then responds with kUserCalSampCount kUserCalSampCount will continue to be sent after each sample is taken Subsequent samples will be taken when autosampling when the minimum change and stability conditions are met or manually after the kTakeUserCalSample is sent and the stability condition is met See Section 5 for more information on the various calibration procedures Note The payload needs to be 4 bytes If no payload is entered or if less than 4 bytes are entered the unit will default to the previous calibration method lt _ Payload gt Cal Option lt UInt382 PNI Sensor Corporation DOC 1014688 r09 TCM User Manual Page 48 The CalOption values are given below along with basic descriptions of the options Ful

Download Pdf Manuals

image

Related Search

Related Contents

catálogo de acervo da ecoteca ceea smma  2015 Fountain Pump Owners Manual  Manual de utilização  ACM-1000 BUILD-IN SWITCH WITH 6 MEMORY  ダウンロード    User Manual - MAD V1.5 Deep Archive Manager V4.0  Tout pour la reconstitution corono-radiculaire en technique adhésive  取扱説明書 - 日立の家電品  MANUAL DO UTILIZADOR DE REDE  

Copyright © All rights reserved.
Failed to retrieve file