Home

mshep0002

image

Contents

1. Prime User Manual r08 Page 35 kDistortion Component ID 84 Read only flag that indicates that at least one magnetic sensor axis reading 1s beyond 100 uT kCalStatus Component ID 94 Read only flag that indicates field calibration status False Default Not calibrated kPAligned kRAligned 8 kiZAligned Component IDs 214 224 234 User calibrated Earth s gravity vector G component output kPAngle kRAngle Component IDs 244 254 The outputs provide pitch and roll angles The pitch range is 90 0 to 90 0 and the roll range is 180 0 to 180 0 See Figure 4 1 for the pitch and roll conventions kXAligned kYAligned kZAligned Component IDs 274 284 294 Represent the field calibration Earth s magnetic field M vector components 7 34 kGetData frame ID 44 This frame queries the module for data as established in kSetDataComponents The frame has no payload The complete packet for the kGetModInfo command would be 00 05 04 BF71 Where 00 05 is the byte count 04 is the kGetData command and BF 71 is the CRC 16 checksum 7 3 5 kDataResp frame ID 54 This frame is the response to kGetData frame The first byte of the payload indicates the number of data components followed by the component ID value pairs The sequence of the components IDs follows the sequence set in the kSetDataComponents frame
2. Payload Count ID Value ID Value po IB cun Value ocount Ulnt8 Ulnt8 in Ulnt8 ix Ulnt8 i gt Specific Specific Specific Example If the response contains the heading and pitch the payload would look like 2 5 359 9 24 10 5 ID Count Heading ID Heading Pitch ID Pitch Output Output Float32 Float32 PNI Sensor Corporation DOC 1014177 r08 Prime User Manual July 2011 Page 36 7 3 6 kSetConfig frame ID 64 This frame configures the Prime Configuration values must be set one at time Payload gt Config ID Value lt Ulnt8 gt lt LR Specific Example To configure the declination the payload would look like 1 10 0 Declination ID Declination Angle Float32 Table 7 4 Configuration Identifiers Configuration Default Format Units Range Va Float32 180 to 180 0 kTrueNorth Boolean False kBigEndian Boolean True ID 6 1 1 STD 0 2 XUP 0 3 YUP 0 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 11 Y UP 90 12 Y UP 180 kMountingRef 10 Ulnt8 13 Y UP 270 1 14 Z DOWN 90 15 Z DOWN 180 16 Z DOWN 270 17 X DOWN 18 X DOWN 90 19 X DOWN 180 20 X DOWN 270 21 Y DOWN 22 Y DOWN 90 23 Y DOWN 180 24 Y DOWN 270 Prime User Manual r08 Page 37 Settings kDeclination kUserCalStableCheck Boolean True k
3. The button will revert back to Power Down Note While it is possible to select a baud rate of 230400 the serial port will not operate this fast 5 2 3 Changing modules Once a connection has been made StudioPrime will recall the last settings If a different module 1s used click the Connect button once the new module 1s attached This will reestablish a connection assuming the baud rate 18 unchanged Prime User Manual r08 Page 11 5 3 Configuration Tab Studie Yiia al 2 Calibration Data Logger System Log r Mounting Options Filter Settings Calibration Settings Taps 7 Stability Checking v Automatic Sampling North Reference Y Acquisition Settings Calibration Point 18 G Magnetic OTrue Mode OPoll Push eise her Declination Poll Time CO 9 Mag Only Calibration Acquire Time 0 000 Endianess gt Interval Time 0 000 Big O Little E Flush Fitters O Accel and Mag Calibration O Accel Only Calibration v Enable 3D Model Display Note No settings will be changed in the unit until the lt SAVE gt button has been selected 5 3 1 Mounting Options StudioPrime supports 6 mounting orientations as detailed below in Figure 5 1 Note that PNI s binary protocol supports 18 more orientations 24 total as shown in Figure 7 2 Standard X Sensor Up Y Sensor Up Standard 90 Degrees Standard 180 Degrees Standard 270 Degrees 1 N JE Figure
4. Transmit lines with 23k Q load to ground 2 FIR Taps setto 0 Prime User Manual r08 Page 3 Table 3 3 Power Requirements Parameter Value DC Supply Voltage 3 6 5 V unregulated Average Current Draw 10 Hz sample rate 18 mA During external power up 120 mA pk 75 mA over 2 ms Peak Current Draw During logical power 110 mA pk 85 mA over 1 ms up down 60 mA over 2 ms Sleep Mode Current Draw 0 25 mA Footnote 1 Tested at 3 6 V Table 3 4 Environmental Requirements Parameter Operating Temperature 40C to 85C Storage Temperature 40C to 85C Footnote 1 To meet performance specifications recalibration may be necessary as temperature varies Table 3 5 Mechanical Characteristics Parameter Value Dimensions x wx h 3 3 X 3 1 x 1 3 cm see Figure 3 1 Weight o gm Mounting Options Screw mount standoff horizontal or vertical Connector 16 pin ribbon or 9 pin Molex Same functionality use only one PNI Sensor Corporation DOC 1014177 r08 Prime User Manual July 2011 Page 4 3 3 Mechanical Drawing Dimensions are mm inches TOP VIEW 0 08 2 00 Molex Connector Pin 1 underside 1 22 1 06 31 0 27 00 Ribbon Connector Pin 1 0 00 men 0 0975 0 0 05 2 60 3X 02 21 0 00 SIDE VIEW 16 Pin Ribbon Connector mates to Samtech FFSD CLP FLE SFMC amp SFMH j EE r 3 9 Pin Molex Connector mates to Molex P N 51146 0900 N
5. module while pitch is rotation around shorter axis of the module Positive pitch is when the front edge of the board is rotated upward and positive roll is when the right edge of the board is rotated downward These two rotations are independent of each other PNI Sensor Corporation DOC 1014177 r08 Prime User Manual July 2011 Page 8 gt pU s NORTH HEADING OR DIRECTION OF TRAVEL NEGATIVE ROLL AXIS NEGATIVE POSITIVE PITCH POSITIVE AXIS Figure 4 1 Positive amp Negative Roll and Pitch Definition Prime User Manual r08 Page 9 5 Operation with StudioPrime The StudioPrime evaluation software communicates with the Prime through the RS232 serial port of your computer It puts an easy to use graphical user interface GUI onto the binary command language used by the Prime Instead of manually issuing command codes the user can use buttons check boxes and dialog boxes to control the Prime and obtain data It reads the binary responses of the Prime output and formats this into labeled and easy to read data fields StudioPrime also includes the ability to log and save the outputs of the Prime to a file This allows you to begin understanding the capabilities of the Prime while using StudioPrime s friendly interface Anything that can be performed using StudioPrime can also be performed using the RS232 interface and associated protocol 5 1 Installation onto a Windows system StudioPrime is provided as
6. 6 kSetContie frame ID 63 vase 37 LS kGetConne frame Dvs 40 7 3 8 kConfigResp fane DE vasre 41 7 3 9 Kave iframe ID 93 av 41 210 KStarntCalrame IDIO er 41 3811 kStepcalltramelD TI ienien ab 42 43 12 A er ROO n n e e tea UR M kaa LI LI DUC HEUS 42 75313 KGetParam trame DS eee 43 745314 kParamResp frome DAN sicot oo e a eo 44 43 15 KPowerDown frame ID 15 ant t n e a quests cd in A iia 44 13016 KSAVEDONe ane ID 534 vadis uie e ias 44 LOAF KUserCalsarmpCoune Fa M DI NN 44 7315 K serCalScore frame DI EN 45 75319 kKSetConiigDOnNe fane TD 19 avse 45 753 20 kSetParamBDOne frame 1D IN do 46 1321 KStartintervalMede frame ID 2 Le 46 1322 kSt plit valMoOd frame Da 46 413 29 KPowerUptrame ID SN 46 713 24 KSetAcadParams NED LS 46 135 Ker NS NED Svar 47 1326 KACaParams Done frame ID 264 sete iia 47 J 3 27 KAcqrParamsresp frame ID 27 4 oto op das 47 42 28 KPowerDownbDorne frame DR cho s e eee auam Ea iret dia 48 713 29 KR ctoryUsercal frame ID 29 ne kolan asi esed ida 48 3 30 KPactoryUserCalbonedtrame ID 0 Jaa 48 A 3 51 KrakeUsercalSamnple frame ID 3 T4 udo ue ed ds 48 73 52 KFactoryinclealitrame PN Se 48 1333 kFactoryinecicalDone fane DS 7i saaana 48 PNI Sensor Corporation DOC 1014177 r08 Prime User Manual July 2011 Page ii 8 COD 8 1 8 2 8 3 8 4 8 5 Table 3 1 Table 3 2 Table 3 3 Table 3 4 Table 3 5 Table 4 1 Table 6 1 Table 6 2 Table 7 1 Tab
7. ByteCount Packet Frame CRC 16 Ulnt16 1 4092 Ulnt8 Ulnt16 i j Payload Ulnt8 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 see included C function at end of document The ByteCount and CRC 16 are always transmitted in Big Endian PNI Sensor Corporation DOC 1014177 r08 Prime User Manual July 2011 Page 30 7 2 Parameter Formats Note Floating point based parameters conform to ANSI IEEE Std 754 1985 Please refer to the Standard for more information PNI also recommends the user refer to the compiler s instructions to understand how the compiler implements floating point format 64 Bit floating point Float64 Below is the 64 bit float format double precision in Big Endian In Little Endian the bytes are in reverse order in 4 byte groups e g Big Endian ABCD EFGH Little Endian DCBA HGFE 63 62 5251 0 S Exponent Mantissa The value v is determined as shown below if and only if 0 lt Exponent 2047 v 1 S 2 Exponent 1023 1 Mantissa 32 Bit floating point Float32 Shown below is the 32 bit float format single precision in Big Endian In Little Endian format all 4 bytes are in reverse order LSB first 3130 2322 0 The value v 1s determined as shown below 1f and only if 0 lt Exponent
8. Calibration 1004 or 64n e Mag and Accel Calibration 1104 or 6E Prime User Manual r08 Page 41 Below is a complete sample frame for an Accelerometer Only Calibration 00 09 0A 00 00 00 64 5C F9 7 3 41 kStopCal frame ID 114 This command aborts the calibration process The prior calibration results are retained 7 3 12 kSetParam frame ID 124 The Prime incorporates a finite 1mpulse response FIR filter to provide a more stable heading reading The number of taps or samples represents the amount of filtering to be performed 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 1s output Payload Parameter ID Axis ID Count Value Value Value Value count ID ID ID ID Sante d ome e VARIES di Specific Specific Specific Specific Parameter ID should be set to 3 and the Axis ID should be set to 1 The third payload byte indicates the number of taps to use which can be 0 no filtering 4 8 16 or 32 This 1s followed by the tap values 0 to 32 total Values can be in the payload with each Value being a Float64 and suggested values given below in Table 7 6 reading since the filter must be fully populated before the Prime will output a heading reading And if Flush Filters is selected the rate at which the output is updated will be inversely proportional to the num
9. MX kXAligned MY kYAligned GZ kIZAligned Distortion Heading 000 0 Pitch 0000 Roll 000 0 7 Auto Scroll StudioPrime 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 data to log in the Data window Use Shift Ctrl Click and Ctrl Click to select multiple items e Click on the GO button to start logging The Go button changes to a Stop button after data logging begins e Click the STOP button to stop logging e Click the Export button to save the data to a text file e Click the Clear button to clear the data from the window Note The data logger use ticks for time reference A tick is 1 60 second PNI Sensor Corporation DOC 1014177 r08 Prime User Manual July 2011 Page 20 5 7 System Log Tab Studio ria ai AE a 6 Comec J vrN PRD SRT TA Data Logger Time Stam 2009 11 09 14 40 23 2009 11 09 14 40 24 2009 11 09 14 40 24 2009 11 09 14 40 24 2009 11 09 14 40 24 2009 11 09 14 40 24 2009 11 09 14 43 05 2009 11 09 14 43 07 2009 11 09 14 43 07 2009 11 09 14 43 07 2009 11 09 14 43 07 2009 11 09 14 43 07 2009 11 09 14 43 07 2009 11 09 14 43 07 2009 11 09 14 43 07 2009 11 09 14 43 07 2009 11 09 14 43 07 2009 11 09 16 40 39 2009 11 09 15 41 17 2009 11 09 16 41 35 2009 11 09 16 41 38 2009 11 09 16 41 38 2009 11 09 16 41 38 2009 11 09 16 41 46 2009 11 09 16 42 11 2009 11 09 16 42 45
10. Settings Mode Poll mode should be selected when the host system will poll the Prime for data StudioPrime allows the user to simulate this on their PC In this case StudioPrime requests data from the Prime module at a relatively fixed basis Push mode should be selected if the user will have the Prime output data at a relatively fixed rate to the host system In this case the Prime module is pushing data out to StudioPrime at a relatively fixed rate Poll Delay The Poll Delay 1s relevant when Poll Mode is selected and is the time delay in seconds between the completion of StudioPrime receiving one set of sampled data and requesting the next sample set If the time is set to 0 then StudioPrime requests Prime User Manual r08 Page 13 new data as soon as the previous request has been fulfilled Note that the inverse of the Poll Delay is somewhat greater than the sample rate since the Poll Delay does not include actual acquisition time Interval Delay The Interval Delay is relevant when Push Mode is selected and is the time delay in seconds between completion of the Prime module sending one set of sampled data and the start of sending the next sample set If the time is set to O then the Prime will begin sending new data as soon as the previous data set has been sent Note that the inverse of the Interval Delay is somewhat greater than the sample rate since the Interval Delay does not include actual acquisition ti
11. calibrated outside the host system Accelerometer calibration is more sensitive to noise or hand jitter than magnetic sensor calibration especially for subsequent use at high tilt angles Because of this a stabilized fixture is recommended for accelerometer calibration although resting the unit against a stable surface often 1s sufficient Alternatively the Prime can be returned to PNI for recalibration Since change in the accelerometers 1s gradual and relatively small accelerometer calibration 1s optional Key Points e Magnetic calibration requires incorporating the module in the user s system such that the magnetic components of the user s system can be compensated for Full sphere coverage during calibration is ideal but not necessary to obtain a good calibration e Even though heading is only specified to a tilt angle of lt 45 calibrating at 245 of tilt generally will improve accuracy when operating near the specification limit of 45 e Accelerometer calibration requires that the module essentially be rotated through a full sphere of coverage However it does not require that the module be incorporated into the user s system to perform the calibration e Magnetic and accelerometer calibration can be performed simultaneously However it generally is easier to perform them separately since the requirements of each calibration are significantly different Magnetic calibration requires the module be incorporated in the user s sys
12. lt 255 v 1 S 2 Exponent 127 1 Mantissa Signed 32 bit Integer SInt32 SInt32 based parameters are signed 32 bit numbers 2 s compliment Bit 31 represents the sign of the value O positive 1 negative 31 24 23 1615 8 7 0 msb Isb Big Endian 7 0 15 8 23 1631 24 Isb msb Little Endian Prime User Manual r08 Page 31 Signed 16 bit Integer SInt16 SIntl6 based parameters are signed 16 bit numbers 2 s compliment Bit 15 represents the sign of the value O positive 1 negative 15 8 7 0 7 0 15 8 msb Isb Isb msb Big Endian Little Endian Signed 8 bit Integer Slnt8 Ulnt8 based parameters are unsigned 8 bit numbers Bit 7 represents the sign of the value O positive l negative 7 0 Unsigned 32 bit Integer Ulnt32 Ulnt32 based parameters are unsigned 32 bit numbers 31 24 23 1615 8 7 0 msb Isb Big Endian 7 0 15 8 23 1631 24 Isb msb Little Endian Unsigned 16 bit Integer Ulnt16 Ulnt16 based parameters are unsigned 16 bit numbers 15 8 7 0 7 0 15 8 Big Endian Little Endian PNI Sensor Corporation DOC 1014177 r08 Prime User Manual July 2011 Page 32 Frame ID OD INIR NOT RA Go PO M eiO mme OD 14 15 16 17 18 19 20 21 Unsigned 8 bit Integer Ulnt8 UInt8 based parameters are unsigned 8 bit numbers byte l Boolean Boolean is a 1 byte parameter that MUST have the value 0 fa
13. of 285 is desirable for the X and Y vectors The only way to get a Z value greater than 5096 1s to take calibration points with the unit upside down as well as right side up For accelerometer calibration a score of 295906 1s desirable for the X and Y vectors and 29090 for Z vector The value for Mag Score should be lt 0 1 and the value for the Accel Score should be 2 6 3 Declination Declination 1s the angle between true north and magnetic north where a positive value means true north is east of magnetic north As such declination depends on geographic location It also changes very slowly over time The Prime s default 1s to output magnetic heading To output true heading use the kSetConfig command to set the kTrueNorth parameter to TRUE and to store the correct declination angle kDeclination See Section 7 3 6 For the greatest accuracy PNI recommends checking the National Geophysical Data Center website below to get the declination angle based on your latitude and longitude http www ngdc noaa gov geomagmodels Declination jsp Prime User Manual r08 Page 29 7 Operation with PNI Binary Protocol The Prime utilizes a binary protocol that is transmitted over an RS232 interface The configuration parameters should be set as follows Table 7 1 Configuration Parameter Value Number of Data Bits 8 Start Bits 1 otop Bits 1 Parit none 7 1 Datagram Structure The data structure 1s shown below
14. tests 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 Determine if the maximum field is within the linear range of the compass With the compass mounted rotate and tilt the system in as many positions as possible While doing so monitor the magnetic sensor outputs observing if the maximum useable range is exceeded 4 3 Mounting Refer to Figure 3 1 for dimensions mounting holes and reference frame orientation The Prime is pre loaded with calibration coefficients so it nominally indicates north per the arrow on the PCB assuming a standard orientation STD 0 and minimal local magnetic distortions It must be aligned within the host system with respect to the mounting holes Ensure any stand offs or screws used to mount the module are non magnetic The Prime can be mounted in 24 different orientations as called out in Table 7 4 and depicted in Figure 7 2 However StudioPrime only supports 6 mounting configurations as depicted in Figure 5 1 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 Prime using the kSetConfig command and the kMountRef setting as described in Section 7 3 6 4 4 Pitch and Roll Convention As shown in Figure 4 1 roll is defined as the angle rotated around the long axis of the
15. the Prime provides a command set designed with flexibility and adaptability in mind Many parameters are user programmable including reporting units a wide range of sampling configurations output damping and more We believe the Prime will help you achieve great performance from your system PNI Sensor Corporation DOC 1014177 r08 Prime User Manual July 2011 Page 2 3 Specifications 3 1 Performance Specifications Table 3 1 Specifications Parameter Value 360 TEEN Accuracy tilt 45 1 rms 0 1 Hepeatability 0 05 rms Roll 180 Tilt Pitch amp Roll 1 rms Resolution Resolution 0 12 Repeatabilit 0 05 rms Maximum Functional Dip Angle 85 Usable Field Range 100 uT Magnetometer 0 05 uT Repeatability 0 1 uT Footnotes 1 Specifications are subject to change Assumes the Prime is motionless and the local magnetic field is clean relative to the calibration 2 Performance will degrade somewhat as the maximum functional dip angle is approached 3 2 Operating Characteristics Table 3 2 I O Characteristics Parameter Value Communication Interface Binary RS232 Communication Rate 300 to 115 200 baud Maximum Sample Rate 10 samples second Maximum Receive Voltages 30 V 0 6 V maximum Receive High 2 4 V minimum Threshold Voltages 5 0V maximum Transmit High 5 0 V minimum Time to Initial Good Initial power up lt 180 ms Data Sleep mode recovery lt 60 ms Footnotes 1
16. there is sufficient time to re populate the filters The default is FALSE PNI Sensor Corporation DOC 1014177 r08 Prime User Manual July 2011 Page 46 Note If Flush Filters is selected the rate at which the output is updated will be inversely proportional to the number of taps For example if 8 taps and flush filters are selected the output will be updated at 3 5 Hz while it will be updated at 1 Hz if 32 taps is selected SensorAcqTime The SensorAcqTime sets the time between samples taken by the module in seconds The default is 0 0 seconds which means that 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 SensorAcqTime is either set to 0 in which case the TCM is constantly sampling or set to equal the IntervalRespTime value The advantage of running with a SensorAcqTime of 0 is that the module can run with a relatively high FIR filter tap value thus providing stable and timely data But using a greater SensorAcqTime can reduce power consumption IntervalRespTime The IntervalRespTime 1s relevant when Push Mode is selected and is the time delay in seconds between completion of the Prime sending one set of sampled data and the start of sending the next sample set The default 1s 0 0 seconds which means the TCM will begin sending new data as soon as the previous da
17. to 40 30 to 40 8 1 23900 gt 5 30 to 40 Third Circle OT 30 to 40 30 to 40 30 to 40 30 to 40 6 2 2 Accelerometer Calibration Procedure The requirements for a good accelerometer calibration differ from the requirements for a good magnetic sensor calibration For example a level yaw sweep no matter how many points are acquired is effectively only 1 accelerometer calibration point PNI recommends 18 32 calibration points for Accelerometer Only Calibration Figure 6 2 shows the two basic starting positions for Accelerometer Only Calibration Calibration can occur within the user s system or with the module alone It is not necessary to place the Prime on a hard surface as shown but it must be held very still during calibration and holding it against a hard surface 18 a way to help ensure this e Starting with the Prime as shown on the left in Figure 6 2 rotate the module such that it sits on each of its 6 faces Take a calibration point on each face e Starting with the Prime as shown on the right take a calibration point with it being vertical O Tilt the module back 45 and take another calibration point 45 then tilt the module forward 45 and take another calibration point 45 Repeat this 3 point process by holding the module on each of its 4 corners Prime User Manual r08 Page 27 Figure 6 2 Accelerometer Calibration Starting Positions Table 6 2 Accelerometer Calibration P
18. when attempting to save data into non volatile memory Payload gt Error code Ulnt16 Dl 7 3 17 kUserCalSampCount frame ID 174 This frame 1s sent from the module after taking a calibration sample point The payload contains the sample count with the range of 1 to 32 Payload gt Sample count Ulnt32 PNI Sensor Corporation DOC 1014177 r08 Prime User Manual July 2011 Page 44 7 3 18 kUserCalScore frame ID 18d This frame contains the calibration score which 1s presented after completing or aborting a calibration It 1s a series of Float32 values as shown in the payload diagram below lt Payload StdDevErr xCoverage yCoverage zCoverage xyzAccelCoverage accelStdDevErr Float32 Float32 Float32 Float32 Float32 Float32 9 Note If a kStopCal command is sent to abort a calibration values that were to be updated will be set to 1 except for xyzAccelCoverage which will be 101 01 Values for parameters that were not being updated will reflect the last calibration values For example if a Magnet Sensor Only Calibration is aborted then StdDevErr xCoverage yCoverage and zCoverage will all report 1 while the xyzAccelCoverage and accelStdDevErr will report values from the last successful accelerometer calibration StdDevErr Pro
19. 0msec mResponseTime Ticks 300 Expect a response within 3 seconds j This is called each time this process gets a turn to execute cy void Prime Control Switch mStep case 1 the compents we are requesting preceded by the number of VIRE pkclkboroacount LT components being requested pkt 0 kDataCount pkt 1 CommProtocol kHeading pkt 2 CommProtocol kPAngle pkt 3 CommProtocol kRAngle SendComm CommProtocol kSetDataComponents PRE RDatacounte dq Ls Ticks is a timer function 1 tick 10msec mTime Ticks 100 Taking a sample in 1s mStep go to next step of process break case 2 PNI Sensor Corporation DOCH 1014177 r08 Prime User Manual July 2011 Page 62 f Ticks is a timer function 1 tick 10msec if Ticks mTime tell the unit to take a sample SendComm CommProtocol kGetData mTime Ticks 100 take a sample every second mSteprt break case 3 Ticks is a timer function 1 tick 10msec if Ticks mResponseTime Message No response from the unit Check connection and try again r n mStep 0 j break j default break Prime User Manual r08 Page 63
20. 18 samples are recommended for either accelerometer only calibration or simultaneous magnetic sensor and accelerometer calibration Mag Only Calibration Select when only magnetic sensor calibration will be performed Accel Only Calibration Select when only an accelerometer calibration will be performed Accel and Mag Calibration select when magnetic sensor and accelerometer calibrations will be performed simultaneously 5 3 7 Default Clicking this button reverts the StudioPrime program to the factory default settings 5 3 8 Revert This button will have the StudioPrime program read the settings from the unit and display them on the screen 5 3 9 Enable 3D Model StudioPrime 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 and for this reason 1t may be desirable to turn off this feature Prime User Manual r08 Page 15 5 4 Calibration Tab S Sid Prime 177 e Connect Power Down w TRO ARTUR p Samples Calibration Results Mag Score Accel Score Field Std Dev 00 0 uT 00 0 mg X Dist Coverage 00 0 96 00 0 96 1 8 Y Dist Coverage 00 0 96 00 0 96 Z Dist Coverage 00 0 96 00 0 96 Take Sample Save Current User Cal Current Configuration Options O Stability checking Accel and Mag Calibration V Audible Feedback Automatic Sampling 9 AccelOnly Calibration Moe 8 MagOnly Calibration C
21. 2 RxD 13 GND 14 RS232 TxD 15 GND 16 5 VDC PNI Sensor Corporation DOC 1014177 r08 Prime User Manual July 2011 Page 6 The Prime Interface Kit includes the PNI 45 cm 18 custom pigtailed cable see Figure 3 2 One end of the cable mates with the Prime s 9 pin Molex connector while the other end is not connectorized and has 9 wires accessible These wires are intended to mate with the user s system The cable s wires are color coded as indicated in Table 4 1 The Prime Evaluation Kit includes the same PNI pigtailed cable as provided in the Interface Kit plus a 1 8 m 67 custom dual connectorized cable This cable incorporates the Molex 51146 0900 connector on one end that mates to the Prime and a 9 pin sub D connector on the other end to mate with a computer s serial port This cable primarily 1s intended for basic evaluation of the Prime with a computer 4 2 Mechanical Installation The Prime s wide dynamic range and sophisticated calibration algorithms allow it to operate in many environments For optimal performance however you should mount the Prime with the following considerations in mind 4 2 4 Operate within sensors useable regime The Prime can be field calibrated to correct for large static magnetic fields created by the host system However each axis of the Prime has a maximum useable range of 100 uT If the total field exceeds this value for any axis the Prime may not give accurate heading information When mountin
22. 3 22 23 24 25 26 21 28 29 30 31 36 3 Commands the module to stop data output at a fixed interval Sent after wake up from power down mode Sets the sensor acquisition parameters Queries for the sensor acquisition parameters Response to kSetAcqParams Response to kGetAcqParams Response to kPowerDown Clears user magnetic sensor calibration coefficients Response to kFactoryUserCal Commands the unit to take a sample during field calibration Clears user accelerometer calibration coefficients Response to kFactoryInciCal 7 3 1 kGetModinfo frame ID 14 This frame queries the module s type and firmware revision number The frame has no payload The complete packet for the kGetModInfo command would be 0005 01 EFD4 Where 0005 is the byte count 01 is the kGetModInfo command and EFD4 is the CRC 16 checksum 7 3 2 kModinfoResp frame ID 24 This frame is the response to kGetModInfo frame The payload contains the module type identifier followed by the firmware revision number Frame ID Payload 2 Type Revision kUlnt8 Ulnt32 Ulnt32 gt 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 OO OD 02 54 43 4D 35 31 32 30 38 C7 87 can be decoded to read TCMS 1208 Also the TCM XB is referenced as Type TCM6 since the
23. 3 5 3 5 FUNN 13 5 3 6 Calibration Set Nes sisi ii cacas 14 5 3 7 BIET cu 15 5 3 8 EE e o TUI Mt 15 5 3 9 Enable SD MOUE m a kn 15 5 4 NTN 16 5 4 1 EELO E oo UM NP Pr o 16 5 4 2 Calbra YON RE SUN NR OE 17 5 4 3 NNN 17 5 4 4 NNN NNN 18 5 4 5 APA EE ro bek bann dite 18 5 5 Ico koi ty pie ei siv ia ip ee o oo 19 5 5 1 CUI ent REGONE gt 19 5 5 2 PRECISION L TUNE EN EN SN ooN 19 5 5 3 DIE hj 19 5 6 DIN tells 20 5 7 NTN 21 5 8 A A e E EAE NE ER 22 Prime User Manual r08 Page i 6 FIELD CALIBRATION AKG 23 6 1 Masnetic Calibratiorn OE NENNE 24 6 1 1 Hard ron and Soana 24 6 1 2 Magnetic Calibration melon saa 24 6 2 Field Calibration Procedues se 24 6 2 1 Magnetic Calibration Procedure di ods 25 6 2 2 Accelerometer Calibration PFOCE AU Gs save 27 6 2 3 Simultaneous Mag and Accel Calibration cooccccocncnonnnarnnnannonononannnnononannnnronnncnononnnnss 29 6 2 4 See Eee NT n OUI 29 6 3 ENS CHA AT NO A T T LU ETT n Ret aa ot n a on pea aa 29 7 OPERATION WITH PNI BINARY PROTOCOL cin aiii 30 7 1 Data AN SUCIU ee 30 7 2 Parameter 31 7 3 Commands Communication Frames cani inge 33 7 3 1 kGetModlintofratme ID NN 34 7 3 2 kModinfoRespfrarie Da 34 7 3 3 ksetbatacomponenpts frame ID ve 35 7 3 4 kGetData frame DI associe vt E DR A rette de ER ORARE i 36 7 3 5 KkDataResp frame IDO p ia id oai E dx Pup E ER unde adl eaa qu aed wre Una dada er bu 36 7 3
24. 5 1 StudioPrime Mounting Orientations PNI Sensor Corporation DOC 1014177 r08 Prime User Manual July 2011 Page 12 5 3 2 North Reference Magnetic When the Magnetic button 1s selected heading will be relative to magnetic north True When the True button 1s selected heading will be relative to geographic true north In this case the declination needs to be set in the Declination box Refer to Section 6 3 for more information 5 3 3 Endianess Select either the Big or Little Endian button The default is Big See Section 7 2 for more information on appropriate data formats 5 3 4 Filter Setting Taps The Prime incorporates a finite impulse response FIR filter to effectively provide a more stable heading reading The number of taps represents the number of measurement readings to be included in the filter The user should select either 0 4 8 16 or 32 taps with zero taps representing no filtering The default setting is 8 taps The Prime is configured to update the filter with each new measurement reading When a new reading is added to the filter the oldest reading in the filter 1s dropped For example if 8 taps 18 selected the 8 most recent readings will populate the filter Note Selecting a large number of taps will significantly slow the time for the initial heading reading since the filter must be fully populated before the Prime will output a heading reading 5 3 5 Acquisition
25. 586e2 27 pp 1012456836057785e2 28 pp 08 34141392862543 a p 05 3097803863757e 8 0 pp 03275782662419603 B0 p 02 07371240954820 3 Bg 11 101 4823725958818e3 7 3 13 kGetParam frame ID 13 4 This frame queries the FIR filter settings for the sensors Parameter ID should be set to 3 and the Axis ID should be set to I Payload Parameter ID Axis ID Ulnt8 Ulnt8 Prime User Manual r08 Page 43 7 3 14 kParamResp frame ID 14 This frame 1s the response to kGetParam and contains the current FIR filter settings The format and values will be the same as defined by kSetParam Payload Parameter ID Axis ID Count Value Value Value Value count Filter Top ID ID ID Ulnt8 e Ulnt8 ye Ulnt8 Value Specific Specific Specific 7 3 15 kPowerDown frame ID 154 This frame is used to completely power down the module which is referred to as putting the module in Sleep Mode The frame has no payload The module will power down all peripherals including the RS 232 driver but the driver chip has the feature to keep the Rx line enabled Any character sent to the module causes it to exit Sleep Mode It is recommended to send the byte FF 7 3 16 kSaveDone frame ID 164 This frame is the response to kSave frame The payload contains a Ulnt16 error code 0000 indicates no error 0001 indicates an error
26. Endian crcReceived mInData mExpectedLen 2 8 mInData mExpectedLen 1 if crc crcReceived the cre is correct so pass the frame up for processing 1f mHandler mHandler HandleComm mInData 2 amp mInData 3 mExpectedLen kPacketMinSize else res don t match so clear everything FE that 18 currently tn the Input buffer since the data is not reliable mSerialPort InClear go back to looking for the length bytes mStep l else Ticks is a timer function 1 tick 10msec if Ticks gt mTime Corrupted message We did not get the length we were expecting within 1 2sec of receiving the length bytes Clear everything in the input buffer since the data is unreliable mSerialPort InClear Look for the next length bytes mStep 1 break default break Prime User Manual r08 Page 57 8 4 Prime h File pragma once include Processes h incliude CommProtocol n This file contains the object providing communication to the Prime It will set up the unit and parse packets received Process is a base class that provides Prime with cooperative parallel processing The Control method will be called by a process manager on a continuous basis T class Prime public Process public CommHandler publico Prime SerPort serPort Prime t protected CommProtocoli moomm UInt32 mStep mTime mRes
27. NNNNA 44 AN an ra Event Checking preference file Opened serial port COM1 Enabled audible feedback Disabled high contrast Disabled auto scroll Enabled 3D Model Attemping to connect to module Extracted module configuration Changed endianess to big endian Extracted module information Changed taps to 0 Changed acquisition mode to push mode Disabled filter flushing Changed mounting to Standard Enabled stability checking Enabled automatic sampling Changed calibration points to 18 Testing started Testing started Changed taps to 32 Set new module configuration Set configuration Configuration saved to flash memory Testing started Testing stopped Data logging started The System Log tab shows all communication between StudioPrime and the Prime module since StudioPrime was opened Closing StudioPrime 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 Prime User Manual r08 Page 21 5 8 Graph Tab Studio urinis 2 Connect Power Down Connection Configuration Calibration Test Data Logger System Log Graph Graph Data Filered O User Cal MX Fil MY Fit MX Cal MY Cal 2 60 0 82 The graph provides a 2 axis X Y plot of the measured field strength The graph can be used to visually see hard and soft iron effects within the environment measured by the Prime module as well as corrected output aft
28. PNI in writing that such Product is defective and furnishes an explanation of the deficiency ii such Product is returned to PNI s service facility at OEM s risk and expense and iii 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 possibility of any such damages including but not limited to loss of use revenue or profit In no event
29. Ulnt8 gt PNI Sensor Corporation DOC 1014177 r08 Prime User Manual July 2011 Page 40 7 3 8 kConfigResp frame ID 8 This frame 1s the response to kGetConfig frame The payload contains the configuration ID and value Payload Config ID Value Ulnt8 d Specific Example If a request to get the set declination angle the payload would look like 1 10 0 Declination ID Declination Angle Float32 7 3 9 kSave frame ID 94 This frame commands the module to save internal configurations and field calibration to non volatile memory Internal configurations and field calibration is restored on power up The frame has no payload This is the ONLY command that causes the module to save information into non volatile memory 7 3 10 kStartCal frame ID 104 This frame commands the module to start field calibration with the current sensor acquisition parameters internal configurations and FIR filter settings See Section 6 2 for more information on the various calibration procedures Note The payload needs to be 32 bit 4 byte 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 Ulnt32 gt The CalOption values are given below for the 3 different calibration methods e Magnetic Sensor Only Calibration Og or On e Accelerometer Only
30. User Manual CompassPoint Prime 3 Axis Electronic Compass Module r INI SENSOR CORPORATION 1 2 3 4 Table of Contents COPYRIGHT WARRANTY INFORMATION ccscscscccscsccccccccccccccccscscscscscscccscccscscccsssscecs 1 INTRODUCTION c 2 SPECIFICATION cC 3 3 1 Pero mante SPECN NO AA ON Suo aicut oka tapiceria Dix E pt ka a ei et po a on An 3 3 2 PN 3 3 3 Me 5 ETP Le 6 4 1 ej 6 4 2 Men NN 7 4 2 1 Operate within Sensors useable regime rrrurrnrnrrrnnnrrnnnnrrnnnnrnnnnennnnernnnnennnnernnnesennnsvennneneneee 7 4 2 2 Locate away from changing magnetic fields esses 7 4 2 3 Mount ina physically stable located 8 4 2 4 LOCATION VEFITICATION COS UNS EM 8 4 3 MOUNT EE EEE T E E E 8 4 4 Pre ANA Roll CONVENTIO jr 8 OPERATION WITH STUDIOPRIME csccccscscsccccsccccccscscccsccscscscscsscncscscsscscscsssscscscees 10 5 1 Installation onto a Windows system llveetteetteettteeteeetooeeooeesoeooeeeoonoooooeooooooooeoooooooooonoooooonoonon 10 5 2 oin eie TF MO kte eya oye tt a ii omm 10 5 2 1 Tele ON ITS CCl ON y bab l ENTRE 11 5 2 2 Changing baud rate sess nenne sans estne nnns 11 5 2 3 iare Tarife Aagraro UNTERE 11 5 3 NTN 12 5 3 1 Mounting OPTIONS fe ER EO o cree 12 5 3 2 nn a el ti t tf ks tl n ne e ks en ee ba ata 13 5 3 3 E e o o DII A a e E e A E ee 13 5 3 4 TN nn E E O A 1
31. UserCalNumPoints Ulnt32 12 32 12 kUserCalAutoSampling Boolean True 0 300 1 600 2 1200 3 1800 4 2400 5 3600 6 4800 kBaudRate 14 UInt8 7 7200 8 9600 9 14400 10 19200 11 28800 12 38400 13 57600 14 115200 Configuration parameters and settings for kSetConfig kDeclination Config ID 14 This sets the declination angle to determine True North heading Positive declination is easterly declination and negative 1s westerly declination This 1s not applied until 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 Flag to set the Endianness of packets kMountingRef Config ID 10 This sets the reference orientation for the module See Figure 7 2 for the comprehensive schematic of available orientations with labels corresponding to those listed in Table 7 4 PNI Sensor Corporation DOC 1014177 r08 Prime User Manual July 2011 Page 38 Figure 7 2 PNI Protocol Mounting Orientations Prime User Manual r08 Page 39 kUserCalStableCheck Config ID 114 This flag is used during field calibration If set to FALSE a calibration point can be taken if the magnetic field is stable to 23 uT for each axis If set to TRUE a calibration point can be taken if the magnetic field is stable to 5 uT for each ax
32. 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 Product which fails during the applicable warranty period provided that i OEM promptly notifies
33. ame ID 214 This frame commands the module to output data at a fixed time interval otherwise known as Push Mode See kSetAcqParams The frame has no payload 7 3 22 kStopintervalMode frame ID 224 This frame commands the module to stop data output when in Push Mode The frame has no payload 7 3 23 kPowerUp frame ID 234 This frame is sent from the module after waking up from Sleep Mode 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 244 This frame sets the sensor acquisition parameters in the unit The payload should contain the following Payload gt PollingMode FlushFilter SensorAcqTime IntervalRespTime Ulnt8 Ulnt8 Float32 Float32 9 PollingMode This flag sets whether output will be presented in Poll or Push Mode Poll Mode is TRUE and is the default Poll Mode should be selected when the host system will poll the TCM for data Push Mode should be selected if the user will have the TCM output data at a relatively fixed rate to the host system See kStartIntervalMode for starting a Push Mode command FlushFilter Setting this flag to TRUE results in the FIR filters being flushed voided out after each measurement reading This can be useful 1f a single accurate reading 1s desired and
34. an executable program which can be downloaded from PNI s website at www pnicorp com It runs on Windows XP Vista and Windows 7 operating systems To get started download the StudioPrime msi file onto your computer then open the file and step through the Setup Wizard 5 2 Connection Tab Studio rime ah 4 di er a a o 4 A ha h y a 5 6 Connect Power Down Computer Serial Port Baud Rate Module Baud Rate PNI Sensor Corporation Prime User Manual July 2011 COMI 38400 38400 DOC 1014177 r08 Page 10 5 2 1 Initial connection When initially launching StudioPrime e If using the PNI dual connecterized cable ensure the batteries are well charged and the cable is securely attached to the Prime and the PC s serial port e Select the serial port the module is plugged into which is generally COM 1 e Select 38400 as the baud rate e Click the Connect button if the connection is not automatically made Once a connection is made the Connected light will turn green and the module s firmware version and serial number will be displayed in the upper left 5 2 2 Changing baud rate To change the baud rate e Inthe Module box select the new desired baud rate for the module e Click the Power Down button The button will change to read Power Up e Inthe Computer box select same baud rate for the computer e Click on the Power Up button
35. attern Sample Pitch Sides Fourth Comer 10 to 20 10 to 20 10 to 20 PNI Sensor Corporation DOC 1014177 r08 Prime User Manual July 2011 Page 28 6 2 3 Simultaneous Mag and Accel Calibration The Prime allows for a simultaneous magnetic sensor and accelerometer field calibration This requires a good 18 point calibration pattern stable measurements and installation in the user s system The Accelerometer Calibration Pattern discussed in Section 6 2 2 works well for a simultaneous calibration Optimal performance is obtained when all rotations of the cube are performed towards magnetic north to achieve the widest possible magnetic field distribution Note that a Mag and Accel Calibration only makes sense if all the host system s magnetic distortions steel structures or batteries for instance are present and fixed relative to the Prime when calibrating If Accelerometer Only Calibration 1s performed the user s system distortions are not relevant which allows for the Prime to be removed from the system in order to perform the Accelerometer Only Calibration 6 2 4 Calibration Scores Once calibration is complete the Prime provides calibration scores indicating the quality of the calibration These are found in Calibration Results on the Calibration tab in StudioPrime or in the kUserCalScore payload These apply to both magnetic sensor and accelerometer calibration For magnetic sensor calibration a score
36. ber of taps For example if 8 taps and flush filters are selected the output will be updated at 3 5 Hz while it will be updated at 1 Hz if 32 taps is selected DOC 1014177 r08 Page 42 PNI Sensor Corporation Prime User Manual July 2011 Table 7 6 Recommended FIR Filter Tap Values Count 4 Tap Filter 8 Tap Filter 16 Tap Filter 32 Tap Filter 1 07 9724971069144e 3 01 4823725958818e 3 2 01 2710056429342e 2 02 0737124095482e 3 3 02 5971390034516e 2 03 2757326624196e 3 4 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 9875512449729e2 01 2567124916369e 1 02 3794805168613e 2 9 0f 2567124916369e1 03 0686505921968e 2 10 01 1484431942626e 1 03 8014333463472e 2 11 Po 09 5354386848804e2 04 5402682509802e 2 12 07 1024151197772e 2 05 2436112653103e 2 13 04 6451949792704e 2 05 8693165018301e 2 14 Of 02 5971390034516e 2 06 3781858267530e 2 15 01 2710056429342e 2 06 73734514241876 2 16 07 9724971069144e 3 06 9231186101853e 2 m p 06923t186101853e2 m 7 0678734514241876 2 9 pf 06 3781858267530e 2 0 11 105 8698165018801e2 21 pf 052436112658108e2 22 9 045402682509802e2 2 pf 08 80143334634720 2 gm p 08 0686505921968e 2 25 pf 029794805168613e2 26 01 7646051430
37. e CommProtocol h import an object that will provide a 10mSec tick count through J a function called Ticks tinclude TickGenerator h Fy SerPort is an object that controls the physical serial interface It handles sending out the characters and buffers the characters read in until we are ready for them 4 CommProtocol CommProtocol CommHandler handler SerPort serPort Process CommProtocol store the object that will parse the data when it is fully received mHandler handler mSerialPort serPort LOLITAS j Z Initialize the serial port and variables that will control this process Si v id CommProtoool slnzt Ulnt322 baud SetBaud baud mOldInLen 0 no data previously received mStep 1 goto the first step of our process AN Put together the frame to send to the unit 4 void CommProtocol SendData Ulnt9 frameType void dataPtr Ulrt35Z len UInt8 data Uints dataPtr the data to send UInt32 index 0 our location in the frame we are putting together ULIAELO cra the CRC to add to the end of the packet Ulntle count the total length the packet will be count Ulnt16 len kPacketMinSize exit without sending if there is too much data to fit inside our packet PNI Sensor Corporation DOC 1014177 r08 Prime User Manual July 2011 Page 54 if len gt kBufferSize kPacketMinSize return fL Store the total l
38. elements instead of the Su requested r n Ulnt16 count UInt1i6 kDataCount FESTEN j loop through and collect the elements while count The elements are received as type le kHeading data switch data pntr read the type and 1430 to the first byte of the data Only handling the 4 elements we are ah MOORING BO case CommProtocol kHeading Move source destination size bytes Move copies the specified number of bytes from the source pointer to the IT destination pointer Store the heading Move amp data pntr amp heading sizeof heading increase the pointer to point to the next data element type pntr sizeof heading break j case CommProtocol kPAngle Move source destination size bytes Move copies the specified number of bytes from the source pointer to the destination pointer Jd Store the pitehs Move amp data pntr amp pitch sizeof pitch increase the pointer to point to the next data element type pntr sizeof pitch break j case CommProtocol kRAngle DOC 1014177 r08 PNI Sensor Corporation Page 60 Prime User Manual July 2011 Prime User Manual r08 Move source destination size bytes Move copies the specified number of bytes from the source pointer to the destination pointer 4 bore the coll Move amp data pntr amp roll sizeof ro
39. en 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 min len is 5 mOutData index count gt gt 8 mOutData index count OxFF i store the frame 1D mOutData index frameType copy the data to be sent while len mOutData index data compute and add the crc crc CRC mOutData index mOutData index crc gt gt 8 mOutData index crc amp OxFF Write block will copy and send the data out the serial port mSerialPort WriteBlock mOutData index Di Call the functions in serial port necessary to change the baud rate ani void CommProtocol SetBaud UInt32 baud mSerialPort gt SetBaudRate baud clear any data that was already waiting in the buffer mSerialPort gt InClear j Update the CRC for transmitted and received data using the jar CCTIT opa SN ONES UA PE e LT Ulntle CommProtocolssCRC vord data Ulntsz Len UIAt 8 databtr gt UIAtS d t UInt32 index 0 UINT LG Gre 0 while len Cre unsigned char cre gt gt 8 cre lt 8 crc dataPtr index cre unsigned char crc amp Oxff gt gt 4 Cre CrO wes ES ws Cre ces ere ORE EE SK A X 1 Prime User Manual r08 Page 55 return dre Ed This is called each time this process gets a turn to execute Fi void coommbprotocol rContr
40. er a field calibration has been performed The screen shot shown shows the MX and MY readings as the module was held horizontally and rotated through 360 in the horizontal plane then held in vertical orientation and rotated 360 in the vertical plane PNI Sensor Corporation DOC 1014177 r08 Prime User Manual July 2011 Page 22 6 Field Calibration Sources of magnetic distortion that are positioned near the Prime in the user s system will distort Earth s local magnetic field and need to be compensated for before implementing the Prime in the host system Examples of such sources include ferrous metals and alloys ex iron nickel magnetized or non stainless steel etc batteries permanent magnets wires and electric motors Compensation is accomplished by calibrating the Prime s magnetic sensors while mounted in the user s system In the user s system it 1s expected the sources of magnetic distortion will remain fixed relative to the Prime s position When performing a field calibration the Prime identifies the local sources of magnetic distortion and subtracts these effects from the overall reading to provide an accurate compass heading Additionally the Prime s MEMS accelerometers gradually may change over time and it may be desirable to recalibrate the accelerometers from time to time The accelerometer calibration procedure corrects for changes in accelerometer gain and offset Unlike the magnetic sensors the accelerometers may be
41. g the Prime consider the effect of any sources of magnetic fields in the host environment that when added to the earth s field may take the sensors out of their linear regime For example distortions can be caused by large masses of ferrous metals such as transformers and vehicle chassis large electric currents permanent magnets contained within electric motors and so on 4 2 2 Locate away from changing magnetic fields It 1s not possible to calibrate for changing magnetic anomalies Thus for greatest accuracy keep the Prime 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 Prime is not mounted close to cargo or payload areas that may be loaded with large sources of local magnetic fields Prime User Manual r08 Page 7 4 2 3 Mount in a physically stable location Choose a location that is isolated from excessive shock oscillation and vibration The Prime 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 The data logger in StudioPrime see Section 5 6 can be used to perform the following
42. is kUserCalNumPoints Config ID 124 The user must select the number of points to take during a field calibration The number of points must be within Allowable Range Performance may suffer somewhat but still be acceptable for the application if the number of calibration points 1s less than the Minimum Recommended value Table 7 5 Number of Calibration Points Number of Calibration Points Calibration Mode Allowable Minimum Range Recommended Magnetic Sensor Only 10 to 32 12 Accelerometer Only 12 to 32 18 Mag and Accel 12 to 32 18 kUserCalAutoSampling Config ID 134 This flag 1s used during field calibration If set to TRUE the module automatically takes calibration sample points until the kUserCalNumPoints number of calibration points is taken When auto sampling a new calibration point is taken when the kUserCalStableCheck condition is met and the change in the magnetic field from the prior calibration point exceeds 30 uT for at least one axis If set to FALSE the Prime waits for the kTakeUserCalSample frame to take a calibration point kBaudRate Config ID 144 The baud rate index value sets the baud rate A power down power up cycle is required when changing the baud rate 7 3 7 kGetConfig frame ID 74 This frame queries the module for the current internal configuration value The payload contains the configuration ID requested Payload gt Config ID
43. le 7 2 Table 7 3 Table 7 4 Table 7 5 Table 7 6 EXAMPLES E 49 Header File amp CRC 16 FUNCTION air kisak kis on eee Een EVER ie 49 Com Nr 52 COMMEProtoco Orleans 54 AP A A An 58 PRIME CO AN tia o nin o 59 List of Tables SS CICS a 3 O NTG 3 Power ReGUIFGITIe CS ni n 4 Environmental Requirements ses secun ica an eti kont n pk kn rl ae ti pe n kre on vite ami ie ki kose 4 Me 4 ens AMON vr de E 6 Magnetic Calibration PEN en 27 Accelerometer Calibration Pattern src 28 OTNES 30 ENN NN 33 Component Identifiers rrrrrrnrrrnnnrrnnnnrrnnnnrnnnrrnrnerrnnnernrnnennnnnernnnennnnnvnnunennnnssnnnesnnnnsvennnsnnnseeenn 35 Configuration Identifiers coooncccnncncnnnnncnnonnnncnnnnncnnnnacnnnarononocnnnnonnnnrononncnnnncnnonnrrnnananenanonons 37 Number of Calibration PointS rrrnnnrnnannnnnnnrnrnnrrnnnnrnnnnennnnnennunennnnsvnnnsvnnnesnnnnsvnnnnsnnnnsvnnunennnnnene 40 Recommended FIR Filter Tap Values rrarrnnnrrnnnernnrrnnnrnnnnvnnnrnnnnvnnnsrnnnennusvnnnsnnunennusnnnnsnnnsnennene 43 List of Figures Figure 3 1 Prime Mechanical Drawing rrrrnnnnrrnnrnnnnrnnnrrnnnrnnnrrnnnvnnnernnnennnsrnnnennnsnnnevnnnnennesnnnsennesnnnsennnsnnneene 5 Figure 3 2 PNI Pigtailed Cable Drawing rrrarrnnnrrnnnrnnnrrnnnrnnnrrnnnvnnnrrnnnennnsrnnnennnsennesnnnsnnnesnnnnnnnesnnnsnnnsnnnenne 5 Figure 4 1 Positive amp Negative Roll and Pitch Definition ee
44. lear Mag Cal to Factory Clear Accel Cal to Factory 5 4 1 Samples Before proceeding refer to Section 6 2 for the recommended calibration procedure corresponding to the calibration method selected on the Configuration tab Clicking the lt Start gt button begins the calibration process If Automatic Sampling is not checked on the Configuration tab it is necessary to click the Take Sample button to take a calibration sample point This should be repeated until the total number of samples as set on the Configuration tab 1s taken changing the orientation of the module between samples as discussed in Section 6 2 If Automatic Sampling 1s 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 1014177 r08 Prime User Manual July 2011 Page 16 5 4 2 Calibration Results Once calibration 1s complete the Calibration Results window will indicate the quality of the calibration This applies to both magnetic sensor and accelerometer calibration The X Y and Z Dist Coverage values show a percentage of each vector that has been covered during the calibration The only way to get a Z value greater than 50
45. ll increase the pointer to point to the next data element type PAR T SIZEOL LOL break j case CommProtocol kTemperature Move source destination size bytes Move copies the specified number of bytes from the source pointer to the AE destination POTN er f Store the heading Move amp data pntr amp temperature sizeof temperature increase the pointer to point to the next data element type pntr sizeof temperature break default Message is a function that displays a formatted string Similar to printf Message Unknown type 02X r n datalpntr LI unknown data type so size is unknown so skip everything ESTUEN break Gunt One less el ment to read in Message is a function that displays a formatted fl String similar cto Printi Message Heading f Pitch Sf Roll f Temperature f r n heading pitch roll temperature MS tep send next data request Page 61 break default Message is a function that displays a formatted A String similar to printer Message Unknown frame 02X received r n Ulnt16 frameType break ES Have the CommProtocol build and send the frame to the unit Ed void Prime SendComm UInt8 frameType void dataPtr Ulnt16 dataLen if mComm mComm gt SendData frameType dataPtr dataLen fi Tieks Ys a timer functions L trek 1
46. lse or I true byte l 7 3 Commands 8 Communication Frames The Prime s command set is given below and descriptions of each command follow Table 7 2 Command Set Command Description kGetModInfo Queries the modules type and firmware revision number kModInfoResp Response to kGetModInfo kSetDataComponents Sets the data components to be output kGetData Queries the module for data kDataResp Response to kGetData kSetConfig Sets internal configurations in the module kGetConfig Queries the module for the current internal configuration value kConfigResp Response to kGetConfig kSave Commanas the module to save internal and field calibration kStartCal Commands the module to start field calibration kStopCal Commands the module to stop field calibration Sets the FIR filter settings for the magnetic sensor amp accelerometer sensors Queries for the FIR filter settings for the magnetic sensor amp accelerometer sensors Contains the FIR filter settings for the magnetic sensor amp accelerometer sensors kPowerDown Used to completely power down the module kSaveDone Response to kSave kUserCalSampCount Sent from the module after taking a calibration sample point kUserCalScore Contains the calibration score kSetConfigDone Response to kSetConfig kSetParamDone Response to kSetParam kStartintervalMode Commands the module to output data at a fixed interval kSetParam kGetParam kParamResp Prime User Manual r08 Page 3
47. m Jf 12 kGetParam 13 kParamResp 14 kPowerDown l 15 kSaveDone 16 kUserCalSampCount 2 A kUserCalScore LJ X8 kSetConfigDone 19 kSetParamDone 20 kStartIntervalMode pr Prime User Manual r08 Page 49 kStopIntervalMode o kPowerUp ES 23 kSetAcqParams fo 24 kGetAcqParams HE 225 kAcqParamsDone Ju 26 kAcqParamsResp f GU kPowerDoneDown A 28 kFactoryUserCal FE 29 kFactoryUserCalDone II 30 kTakeUserCalSample Af SI kkactorylnclGal El 36 kFactoryInclCalDone AJE Si Param IDS kFIRConfig 1 3 AxisID Ulnt8 Count Ulnt8 Value Float64 Data Component IDs kHeading 5 5 type Float32 kDistortlon 8 8 type boolean kPAligned 21 21 type Float32 kRAligned 22 type Float32 kIZAligned 23 type Float32 kPAngle JJ 24 type Float32 kRAngle 25 type Float32 kXAligned 27 127 Espe Elost32 kYAligned 28 type Float32 kZAligned 29 type Float32 Configuration Parameter IDs kDeclination 1 1 type Float32 kTrueNorth 2 type boolean kMountingRef 10 10 type UInt8 kUserCalStableCheck 11 type boolean kUserCalNumPoints 12 type UInt32 kUserCalAutoSampling 13 type boolean kBaudRate 14 UInt8 Mounting Reference IDs kMountedStandard l X kMountedXUp P NP kMountedYUp fie 3 kMountedStdPlus90 EA kMountedStdPlus180 79 S kMountedStdPlus270 6 Result IDs kErrNone 0 ESA O kErrSave z
48. me 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 StudioPrime or the host system Generally speaking the Acquire Delay is either set to 0 in which case the Prime is constantly sampling or set to equal either the Poll Delay or Interval Delay values The advantage of running with an Acquire Delay of 0 1s 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 Interval or Poll Delay are no less than the Acquire Delay Flush Filters Selecting this box results in the FIR filters being flushed voided out after each measurement reading This can be useful if a single accurate reading is desired and there is sufficient time to re populate the filters The default is not to flush the filters Note f Flush Filters is selected the rate at which the output is updated will be inversely proportional to the number of taps For example if 8 taps and flush filters are selected the output will be updated at 3 5 Hz while it will be updated at 1 Hz if 32 taps is selected 5 3 0 Calibration Settings The Prime supports both magnetic sensor and accelerometer calibration These calibrations can be performed independently or simultaneously The relevant StudioPrime inp
49. nded for magnetic sensor calibration Additional sample points with the module flipped upside down are also desirable if possible Move the module to the following positions noting that these are not absolute heading directs but rather relative headings referenced to your initial heading sample i e yaw IS relative to the starting orientation and does not need to be North Note Once a calibration procedure is started with auto sampling enabled pausing between desired calibration points can cause unintentional points to be taken Prime User Manual r08 Page 25 Top Views Side Views ER ie lt 1 s Little w SEL Pitch Jub oo 3 Minimum 12 good user calibration points Additional points can be added including upside down if possible 442 T ue sf d p NE bas En an gt T N ANS M E n 1 Large Positive Pitch 12 m Na 9 X x Large Negative 411 Pitch we X XA 0 7 a lt N M N Mi Y PA Alternate Roll between points odd number points positive roll even negative roll Figure 6 1 Magnetic Calibration Pattern PNI Sensor Corporation DOC 1014177 r08 Prime User Manual July 2011 Page 26 Table 6 1 Magnetic Calibration Pattern Sample Yaw Pitch Roll First Circle x5 30 to 40 909 45 30 to 40 IS SOS ES 30 to40 W 15 30 to 40 Second Circle 5 308 gt 45 30 to 40 6 120 445 30
50. number of Type characters 1s limited to 4 PNI Sensor Corporation DOC 1014177 r08 Prime User Manual July 2011 Page 34 7 3 9 kSetDataComponents frame ID 34 This frame sets the data components in the module s data output This is not a query for the module s data see kGetData The first byte of the payload indicates the number of data components followed by the data component IDs Payload Count ID ID ID ID count Ulnt8 PI Ulnt8 gt Ulnt8 Ulnt8 PIE Ulnt8 gt gt Example To query the heading and pitch the payload should contain Payload gt 3 2 5 24 Frame ID 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 Component ID Format Units Range Float32 0 0 to 359 9 False Default kHeading kDistortion Boolean True or False o distortion False Default KCalStatus 9 Boolean True or False Faar CP kPAligned Float32 1 0 to 1 0 kRAligned Float32 1 0 to 1 0 kIZAligned Float32 1 0 to 1 0 kPAngle Float32 90 0 to 90 0 kRAngle Float32 degrees e k KXAligned Float32 KYAligned Float32 KZAligned Float32 Component types for kSetDataComponents kDataResp frames kHeading Component ID 54 Compass heading output in degrees
51. olid InLen returns the number of bytes in the input buffer of the serial object that are available for us to read UInt32 inlen Switch mStep case 1 mSerialPort gt InLen wait for length bytes to be received by the serial object if inLen gt 2 break case 2 Read block will return the number of requested or available bytes that are in the serial objects input buffer read the byte count mSerialPort gt ReadBlock mInData 2 byte count is ALWAYS transmitted in big Endian copy byte count to mExpectedLen to native Endianess mExpectedLen mInData 0 lt lt 8 mInData 1 Ia THORS 15 cer TUC lons LER 4 d0msec wait up to 1 2s for the complete frame mExpectedLen to be received mTime Ticks 50 mStep go to next step in the process e ES Want for msg complete or Timeout if inLen gt mExpectedLen 2 PNI Sensor Corporation Prime User Manual July 2011 f calculated and received cres Ulnt16 crc crcReceived Read block will return the number of requested or available bytes that are in the serial objects input buffer DOC 1014177 r08 Page 56 mSerialPort ReadBlock amp mlInData 2 mExpectedLen 2 in CRC verification don t include the CRC in the recalculation 2 crc CRC mInData mExpectedLen 2 CRC is also ALWAYS transmitted in big
52. on For more information see PNI s website for the white paper Local Magnetic Distortion Effects on 3 Axis Compassing 6 1 2 Magnetic Calibration Limitations The Prime measures the total magnetic field within its vicinity and this is a combination of Earth s magnetic field and local magnetic sources The Prime can compensate for local static magnetic sources However a magnetic source which 1s not static such as a motor which turns on off can create errors and it is not possible to compensate for such a dynamic nature In such cases moving the Prime away from dynamic magnetic fields is recommended or taking measurements only when the state of the magnetic field 1s known ex only take measurements when a nearby motor is turned off 6 2 Field Calibration Procedures The following sub sections provide instructions for obtaining calibration points when performing either magnetic sensor or accelerometer field calibrations Before proceeding with a calibration the Prime should be properly installed in the host system as discussed in Section 4 and the software should be properly configured with respect to the mounting orientation Endianness magnetic vs true north etc PNI Sensor Corporation DOC 1014177 r08 Prime User Manual July 2011 Page 24 The calibration procedures can be executed using StudioPrime or the Prime s binary protocol Sections 5 3 and 5 4 outline how to configure and perform a calibration in StudioPrime The
53. onjunction with either of the two buttons detailed above PNI Sensor Corporation DOC 1014177 r08 Prime User Manual July 2011 Page 18 5 5 Test Tab Studio Prime s Connect Power Down Connection Configuration Calibration Test Data Logger System Log Graph Current Reading 3D Model Heading 227 6 Pitch Roll 003 5 008 6 O Contrast Acquisition Settings Module is in PUSH mode Poll time is 0 seconds Acquisition time is 0 000 seconds Interval time is 0 000 seconds Filters are NOT flushed 5 5 1 Current Reading Once the GO button is selected the unit will begin outputting heading pitch and roll information The lt GO gt button then turns to a lt Stop gt button Selecting the lt Stop gt button or changing tabs will halt the output 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 5 5 2 Acquisition Settings These indicators mimic the pertinent selections made on the Configuration tab 5 5 3 3D Model The helicopter will follow the movement of the attached module and give a visual representation of the module s orientation assuming the Enable 3D Model Display box 1s selected on the Configuration tab Prime User Manual r08 Page 19 5 6 Data Logger Tab Studio vrina Al File Edit 6 Connect Heading Pitch kPAngle Roll KRAngle
54. ote The default orientation for the Prime is for the silk screened arrow to point in the forward direction Figure 3 1 Prime Mechanical Drawing n 1800 t 25 mp DA P N 12415 3n0 t 20 Figure 3 2 PNI Pigtailed Cable Drawing Prime User Manual r08 Page 5 4 Set Up This section describes how to configure the Prime in your host system To install the Prime into your system follow these steps Make electrical connections to the Prime Evaluate the Prime using the included StudioPrime program or terminal emulation software such as Tera Term or RealTerm to ensure the compass generally works correctly Choose a mounting location in the host system Mechanically mount the Prime in the host system Perform a field calibration 4 1 Electrical Connections The Prime incorporates both a 16 pin ribbon connector topside of PCB and a 9 pin Molex connector bottom side of PCB for connecting the unit to the user s system The user should decide which connector they want to use and only use this connector The Prime will not function properly if commands are sent on both connectors The pin out for both connectors is given below in Table 4 1 Pin 1 for both connectors is indicated in Figure 3 1 Table 4 1 Prime Pin Descriptions 16 pin Ribbon 9 pin Molex PNI Cable Pin Connector Connector Wire Color 1 Black 2 Gra 3 Green 4 Orange 5 Violet 6 Brown 7 Yellow 3 Blue 9 Red 10 NC 11 GND 12 RS23
55. ponseTime void HandleComm UInt8 frameType void dataPtr NULL Ulntl6 dataLen 0 void SendComm UInt8 frameType void dataPtr NULL UInti6 dataLen 0 void Comnmtrol ti s PNI Sensor Corporation DOC 1014177 r08 Prime User Manual July 2011 Page 58 8 5 Prime cp File include Prime h includ TickGenerator h const Ulnt8 kDataCount 4 We will be requesting 4 components Heading pitch roll temperature El This object polls the Prime unit once a second for heading pitch roll and temperature T Prime Prime SerPort serPort Process Prime Let the CommProtocol know this object will handle any serial data returned by the unit mComm new CommProtocol this serPort mTime 0 mStep 1 j Prime Prime d Called by the CommProtocol object when a frame is completely received b void Prime HandleComm UInt8 frameType void dataPtr Ulnt16 dataLen Ulnts data Ulnte dataPtr switch frameType case CommProtocol kDataResp Parse the data response UInt8 count data 0 The number of data elements returned UInt22 pate I Used to retrieve the returned elements The data elements we requested Float32 heading pitch roll temperature if count kDataCount Prime User Manual r08 Page 59 Message is a function that displays a C formatted string similar to printf Message Received u data
56. r CommProtocol handles actual serial communication with the unit Process is a base class that provides CommProtocol with cooperative parallel processing called by a process manager on a continuous basis class CommProtocol public Process public enum Frame IDs Commands kGetModInfo 1 kModInfoResp kSetDataComponents kGetData kDataResp Data Component IDs kHeading 5 kPAligned kRAligned kIZAligned kPAngle PNI Sensor Corporation Prime User Manual July 2011 l 2L me CO Bi 5 type Ploatoz 2 22 23 24 LVDpe Lype type type Float32 Float32 Float32 Float32 The Control method will be DOC 1014177 r08 Page 52 kRAngle 25 type Float32 enum maximum size of our input buffer kBufferSize 512 minimum size of a serial packet kPacketMinSize 5 bi SerPort is a serial communication object abstracting the hardware implementation CommProtocol CommHandler handler NULL SerPort serPort NUT void Init UInt32 baud 38400 void SendData UInt8 frame void dataPtr NULL UInt32 len x void SetBaud UInt32 baud protected CommHandler mHandler SerPort mSerialPort UInt8 mOutData kBufferSize mlInData kBufferSize Ulnt16 mExpectedLen UInt32 mOutLen mOldInLen mTime mStep Ulntlo CRO vord data UInt5Z len vold Control Prime User Manual r08 Page 53 8 3 CommProtocol cp File includ
57. s Si k function to calculate CRC 16 Ulntlo CRO void data Ulat32 len UIAt 8 databtr UL inte adata UInt3s2 andes gt 0 PNI Sensor Corporation Prime User Manual July 2011 DOC 1014177 r08 Page 50 Update the CRC for transmitted and received data using fl RE CCITT 16bit algorithm C16 x12 AD Vince sro 105 while len Cre unsigned Charh era gt x o Cre F DO ere databrtr index t gt crc unsigned char crc amp Oxff gt gt 4 CEG EFE ES CO lt lt ds GEO Se cupo xv OPE lt lt 2 ww e return core Prime User Manual r08 Page 51 8 2 CommProtocol h File Note This file contains objects used to handle the serial communication with the unit Unfortunately these files are not available as the program was written on a non PC computer The comments in the code should explain what is expected to be sent or received from these functions so that you can write this section for your specific platform For example with the TickGenerator h you would need to write a routing that generates 10msec ticks pragma once tinclude SystemSerPort h Tinelude Processes n CommHandler is a base class that provides a callback for incoming messages fi class CommHandler PUBLIC Call back to be implemented in derived class virtual void HandleComm UInt8 frameType NULL Ulnt16 dataLen 0 f void dataPt
58. se 9 Figure 5 1 StudioPrime Mounting Orientations esses enne menn nennen 12 Figure 6 1 Magnetic Calibration PENG 26 Figure 6 2 Accelerometer Calibration Starting Positions ooccoocnooonnnnononanonanononononannoncnnnannoncnnnncnononnnnos 28 FET DE 30 Figure 7 2 PNI Protocol Mounting OrientatiONS ereerevseereosevsoooueooooosooueouoosooneosoorousoonuosoososoueoononsonnoononne 39 Prime User Manual r08 Page iii 1 Copyright 8 Warranty Information O 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 July 2011 For most recent version visit our website at www pnicorp com PNI Sensor Corporation 133 Aviation Blvd Suite 101 Santa Rosa CA 95403 USA Tel 707 566 2260 Fax 707 566 2261 Warranty and Limitation of Liability PNI Sensor Corporation PNI manufactures its Prime 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 acceptance be free from defects in material and workmanship and will operate in
59. serCalAutoSampling 1s set to FALSE Note that the kUserCalStableCheck condition must be met for the sample to be taken The frame has no payload 7 3 32 kFactorylnclCal frame ID 364 This frame clears the user accelerometer calibration coefficients The frame has no payload This frame must be followed by the kSave frame to change in non volatile memory 7 3 33 kFactorylncICalDone frame ID 374 This frame is the response to kFactoryInclCal frame The frame has no payload PNI Sensor Corporation DOC 1014177 r08 Prime User Manual July 2011 Page 48 8 Code Examples The following example files CommProtocol h CommProtocol cp Prime h and Prime cp would be used together for proper communication with a Prime module NOTE The user also needs to create the following SystemSerPort h Processes h TickGenerator h 8 1 Header File amp CRC 16 Function type declarations typedef struct UInt8 pollingMode flushFilter Float32 sensorAcqTime intervalRespTime attribute packed AcqgParams typedef struct Float32 Stdbevkrr Float32 xCoverage Float32 yCoverage Float32 zCoverage Float32 xyzAccelCoverage Float32 accelStdDevErr dobribucte packed Calocore enum Frame IDs Commands kGetModInfo 1 IX A kModInfoResp If 2 kSetDataComponents 72 kGetData 4 kDataResp AES kSetConfig 6 kGetConfig 7 kConfigResp 8 kSave 9 kotart Cal 10 kStopCal AP 11 kSetPara
60. 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 Prime User Manual r08 Page 1 2 Introduction Thank you for purchasing PNI s CompassPoint M Prime 3 axis electronic compassing module Incorporating 3 axis magnetic field sensing and 3 axis tilt sensing the Prime provides accurate and precise tilt compensated heading measurements at up to 45 of tilt The Prime utilizes PNI s advanced magnetic distortion correction algorithms to provide accurate heading information when incorporated into a user s system even when the compass 1s being tilted With its small size the Prime is capable of fitting into today s size sensitive systems These advantages make PNI Sensor Corporation s Prime the choice for applications that require a low price with unmatched performance The Prime s advantages make it suitable for a variety of applications including e Sonobuoys e Seismic monitoring systems e Acoustic Doppler current profilers ADCPs e Robotic systems With its many potential applications
61. steps below provide an example sequence of commands to perform a calibration using the PNI binary protocol Refer to Section 7 for information on how to implement the binary protocol commands e Using the kSetParam command set the number of filter taps 8 is typical e Using the kSetConfig command set kUserCalAutoSampling FALSE allows for more control over the process while TRUE may simplify the procedure e Using the kSetConfig command again set kUserCalNumpPoints to the appropriate number of calibration points The recommended number of calibration points is at least 12 for Magnetic Sensor Only Calibration and at least 18 for Accel Only Calibration or Mag and Accel Calibration e Initiate a calibration using the kStartCal command Note that this command requires indentifying the type of calibration procedure 1 e Magnetic Sensor Only etc e Follow the appropriate calibration procedure discussed in Sections 6 2 1 to 6 2 3 If kUserCalAutoSampling is FALSE then send a kTakeUserCalSample command when ready to take a calibration point If kUserCalAutoSampling is TRUE then look for kUserCalSampCount to confirm when a calibration point has been taken e When the final calibration point is taken the module will present the calibration score using kUserCalScore e If the calibration is acceptable see Section 6 2 4 save the calibration coefficients using kSave 6 2 1 X Magnetic Calibration Procedure The following procedure is recomme
62. t User Cal gt button to save the calibration If this button 1s not selected then the unit will need to be recalibrated after it is turned off Note The values in uT or mg refer to the quality of the calibration and NOT the accuracy of the heading It is possible to have a good calibration but poor heading accuracy if the local magnetic field changes after calibration 5 4 3 Current Configuration These indicators mimic the pertinent selections made on the Configuration tab Prime User Manual r08 Page 17 5 4 4 Options Audible Feedback If selected StudioPrime gives an audible signal when a calibration point 1s taken Note that an audible signal also will occur when the Start button is clicked but no data will be taken 5 4 5 Clear Clear Mag Cal to Factory This button clears the user s calibration of the magnetic sensors Once selected the module reverts to its factory default values To save this action in non volatile memory click the lt Save Cfg 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 accelerometers Once selected the module reverts to its factory default values To save this action in non volatile memory click the lt Save Cfg gt button It is not necessary to clear the current calibration in order to perform a new calibration Save Cfg This button is only used in c
63. ta set has been sent Note that the inverse of the IntervalRespTime is somewhat greater than the sample rate since the IntervalRespTime does not include actual acquisition time Also if IntervalRespTime is less than SensorAcqTime then repeated data will be sent which normally is undesirable 7 3 25 kGetAcqParams frame ID 254 This frame queries the Prime for its acquisition parameters The frame has no payload 7 3 26 kAcqParamsDone frame ID 264 This frame 1s the response to kSetAcqParams frame The frame has no payload 7 3 27 kAcqParamsResp frame ID 274 This frame is the response to kGetAcqParams frame The payload should be the same as for the kSetAcqParams frame Prime User Manual r08 Page 47 7 3 28 kPowerDownDone frame ID 284 This frame is the response to kPowerDown frame This indicates that the Prime successfully received the kPowerDone frame and 1s in the process of powering down The frame has no payload 7 3 29 kFactoryUserCal frame ID 294 This frame clears the magnetic sensor field calibration coefficients and returns to the factory loaded coefficients The frame has no payload This frame must be followed by the kSave frame to change in non volatile memory 7 3 30 kFactoryUserCalDone frame ID 304 This frame 1s the response to kFactoryUserCal frame The frame has no payload 7 3 31 kTakeUserCalSample frame ID 314 This frame commands the unit to take a sample during field calibration assuming kU
64. tem while accelerometer calibration requires full sphere coverage e Pay attention to the calibration scores See Section 7 3 18 for the score meanings Prime User Manual r08 Page 23 6 1 Magnetic Calibration Overview The main objective of a magnetic field calibration is to compensate for distortions to the magnetic field caused by the host system To that end the Prime needs to be mounted within the host system and the entire system must be moved as a single unit during calibration 6 1 1 Hard lron and Soft lron Effects Hard iron distortions are caused by permanent magnets and magnetized steel or iron objects within close proximity to the sensors This type of distortion remains constant and in a fixed location relative to the sensors for all heading orientations Hard iron distortions add a constant magnitude field component along each axis of sensor output Soft iron distortions are the result of interactions between the Earth s magnetic field and any magnetically soft material within close proximity to the sensors In technical terms soft materials have a high permeability The permeability of a given material is a measure of how well it serves as a path for magnetic lines of force relative to air which has an assigned permeability of one Unlike hard iron distortion soft iron distortion changes as the host system s orientation changes making it more difficult to compensate The Prime features both hard and soft iron correcti
65. uts for these calibrations are discussed below See Section 6 2 for information on how to perform a calibration Stability Checking By default when calibrating the module a measurement must be stable for 3 consecutive readings prior to saving the sample for use in the calibration This is why the module must be held steady between points during the field calibration This stability helps to ensure a proper heading and allow for higher accuracy but it also PNI Sensor Corporation DOC 1014177 r08 Prime User Manual July 2011 Page 14 takes more time If this checkbox 1s deselected then the module will NOT wait for a stable reading and will immediately take a reading once the minimum change between points threshold has been met Automatic Sampling When this checkbox is selected the module automatically takes a calibration point once the minimum change between points requirement and the stability check requirement if selected have been satisfied If the user wants direct control over when a calibration point 1s taken then Automatic Sampling should be deselected In this case the Take Sample button on the Calibration tab will be active Clicking the Take Sample button indicates to the module to take a sample once the minimum requirements are met Calibration Points The user can select the number of points to take during a calibration A minimum of 12 sample points are needed for a successful magnetic sensor calibration while
66. vides the magnetic field calibration s standard deviation error and represents the overall quality of the calibration Smaller numbers are better and a reasonable target value 0 1 However acceptable performance can be obtained with somewhat higher scores The possible obtainable score will be a function of the host system the specific Prime module and the execution of the calibration procedure xCoverage yCoverage amp zCoverage Provides the percentage of the X Y or Z magnetic sensor axis covered by the sampling Note that the only way to get a zCoverage value greater than 50 1s to take some points with the module upside down xyzAccelCoverage Provides the percentage of the accelerometer axes covered by the sampling formatted as XXYY ZZ XX is the X axis coverage Y Y is the Y axis coverage and ZZ is the Z axis coverage For example xyzAccelCoverage 8590 67 means accelerometer X coverage is 85 Y coverage is 90 and Z coverage is 67 accelStdDevErr Similar to StdDevErr except this is for accelerometer calibration A reasonable target accelStdDevErr value is 2 but acceptable compass performance can be obtained with somewhat higher scores 7 3 19 kSetConfigDone frame ID 194 This frame is the response to kSetConfig frame The frame has no payload Prime User Manual r08 Page 45 7 3 20 kSetParamDone frame ID 20 This frame 1s the response to kSetParam frame The frame has no payload 7 3 24 kStartintervalMode fr
67. would be to take some points with the module upside down The Field Std Dev values for Mag Score and Accel Score indicate the overall quality of the calibration The target value for the Field Std Dev Mag Score is 0 1 and the Accel Score value should be 2 where a lower score is better Note that acceptable compass performance can be obtained with somewhat higher scores and the obtainable score will be a function of the host system the specific Prime module and the execution of the calibration procedure See Section 6 2 for additional information If a Mag Only Calibration is performed the Mag Score will reflect the new magnetic sensor calibration while the Accel Score will be grayed out and represent the last saved Accel Score values Similarly if an Accel Only Calibration is performed the Accel Score will reflect the new accelerometer calibration and the Mag Score will be grayed out and reflect the last saved Mag Score values If the lt Stop gt button is clicked during a calibration process prior to taking the minimum required samples this will abort the calibration The lt Start gt button turns into the lt Stop gt button once the calibration process is started The scores associated with the calibration method that was aborted will be 1 while scores unassociated with the aborted calibration method will be grayed out and represent their last saved values If the calibration is acceptable click the lt Save Curren

Download Pdf Manuals

image

Related Search

mshep0002

Related Contents

RK 3566 RK 3567 Bedienungsanleitung/Garantie  光電式・定温式住宅用火災警報器の比較検証  3D Tools for SMART Notebook 11 user`s guide  caution - Automotive Garage Equipment    取扱説明書 PDF  Sony Network WALKMAN NW-E405 G  Comment réaliser une douche à l`italienne ?  USER`S MANUAL for 405 Strider  CARTA DE NOTICIAS - Central Mexicana de Servicios Generales  

Copyright © All rights reserved.
Failed to retrieve file