DIGS™100 User Guide - Gladiator Technologies

DIGS™100 User Guide - Gladiator Technologies
DIGSTM100
Downhole Inertial Guidance Systems &
AHRS (Attitude Heading Reference System)
Technical User’s Guide
Technical Support - USA
Gladiator Technologies
Attn: Technical Support
8020 Bracken Place SE
Snoqualmie, WA 98065 USA
Tel: 425-396-0829 x222
Fax: 425-396-1129
Email: [email protected]
Web: www.gladiatortechnologies.com
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 1
Rev. 07/20/2016
1 TABLE OF CONTENTS
1
TABLE OF CONTENTS.......................................................................................................... 2
2
TABLE OF FIGURES ............................................................................................................. 5
3
SAFETY AND HANDLING INFORMATION ......................................................................... 9
4
PATENT AND TRADEMARK INFORMATION ..................................................................... 9
5
APPLICABLE EXPORT CONTROLS..................................................................................... 9
6
USER LICENSE ...................................................................................................................... 9
7
STANDARD LIMITED WARRANTY .................................................................................... 10
8
QUALITY MANAGEMENT SYSTEM ................................................................................... 10
9
THEORY OF OPERATION .................................................................................................. 10
10
PRODUCT DESCRIPTION .................................................................................................. 12
10.1
10.2
10.3
10.4
10.5
10.6
10.7
11
DIGS100 AHRS ............................................................................................................ 12
OUTLINE DRAWING AND 3D SOLID MODELS ................................................................. 13
CENTER OF GRAVITY ..................................................................................................... 14
DIGS100 AHRS BLOCK DIAGRAM ............................................................................... 15
DIGS100 AHRS PART NUMBER CONFIGURATIONS ...................................................... 16
DIGS100 AHRS PIN ASSIGNMENTS .............................................................................. 17
DIGS100 AHRS PERFORMANCE SPECIFICATION .......................................................... 17
DIGS100 AHRS MESSAGING PROTOCOL (V70) .............................................................. 18
11.1 SERIAL COMMUNICATION SETTINGS: .............................................................................. 18
11.1.1 AHRS Input Messages ......................................................................................... 18
11.1.2 AHRS Input Message Format ............................................................................. 18
11.2 AHRS INPUT MESSAGE COMMAND SUMMARY ............................................................. 18
11.3 STARTUP COMMANDS .................................................................................................... 19
11.4 OPERATING MODE AND PARAMETER UPDATE COMMANDS ........................................... 19
11.4.1 AHRS Output Messages....................................................................................... 20
11.5 SUMMARY AHRS OUTPUT MESSAGE PACKET FORMAT ................................................ 21
11.5.1 Important Messaging Protocol Notes: ................................................................ 21
11.5.1.1
Note 1 – Checksum .......................................................................................... 21
11.5.1.2
Note 2 – Little-endian Format ......................................................................... 21
11.5.1.3
Note 3 – Total Transport Time per Message Packet....................................... 22
11.5.1.4
Note 4- External Velocity Input Conditions ................................................... 22
11.5.1.5
Note 5 - AHRS Status Byte Format ................................................................. 22
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 2
Rev. 07/20/2016
11.5.1.6
Note 6 – Accel LSB Scaling ............................................................................. 25
11.5.1.7
Note 7 Gyro LSB Scale Factor ........................................................................ 26
11.5.1.8
Note 8 Accel LSB Scale Factor ....................................................................... 26
11.5.2 User Interface Comments .................................................................................... 26
11.5.3 Sample Data Format ............................................................................................ 27
11.6 SYNC INPUT (1 KHZ) ...................................................................................................... 28
11.6.1 Specification: ........................................................................................................ 28
11.6.2 Sync Input (1pps Option) ..................................................................................... 29
11.6.3 Status Bit .............................................................................................................. 29
11.6.4 Timing Diagram ................................................................................................... 29
11.7 BANDWIDTH VS. NOISE .................................................................................................. 30
LandMarkTM VG/AHRS/GPS USER INTERFACE SOFTWARE .......................................... 31
12
12.1
12.2
13
HOST RECEIVING VG, AHRS (OR GPS ADDED) OUTPUT ............................................... 31
HOST SENDING COMMANDS TO VG/ AHRS/ GPS .......................................................... 49
ATP SAMPLE TEST DATA & TEST METHODS ................................................................. 60
13.1 ATP OUTPUTS CHECK ................................................................................................... 60
13.2 HEADING ATP ............................................................................................................... 60
13.3 PITCH AND ROLL ATP ................................................................................................... 61
13.4 GLADIATOR ATP EXPLANATION ................................................................................... 64
13.4.1 Rate Spin Test: ..................................................................................................... 64
13.4.2 Accelerometer Tumble Test: ................................................................................ 65
13.5 ANGLE RANDOM WALK ................................................................................................. 66
13.6 VELOCITY RANDOM WALK............................................................................................ 67
13.7 BIAS IN-RUN .................................................................................................................. 68
13.8 BIAS AND SCALE FACTOR OVER TEMPERATURE ............................................................ 71
13.8.1 Gyro Bias Over Temperature ............................................................................... 72
13.8.2 Gyro Scale Factor Over Temperature ................................................................. 74
13.8.3 Accelerometer Bias Over Temperature ............................................................... 75
13.8.4 Accelerometer Scale Factor Bias Over Temperature ......................................... 77
13.9 BIAS TURN-ON (FROM A COLD START).......................................................................... 79
13.10
BIAS TURN-ON TO TURN-ON (TOTO) REPEATABILITY ............................................. 83
13.11
RANDOM AND SINE VIBRATION ................................................................................. 85
13.11.1 Random Vibration: .............................................................................................. 85
13.11.2 Sine Vibration Test: ............................................................................................. 86
13.11.3 Gyro Sine Vibration Response............................................................................. 86
13.11.4 Accelerometer Sine Vibration Response ............................................................. 87
13.12
POWER SUPPLY SENSITIVITY ..................................................................................... 90
14
DIGS100 AHRS SOFTWARE DEVELOPMENT KIT (SDK)................................................ 91
14.1
INSTALLATION CD-ROM .............................................................................................. 91
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 3
Rev. 07/20/2016
14.2
14.3
14.4
14.5
14.6
14.7
14.8
14.9
14.10
14.11
14.12
14.13
14.14
14.15
15
RS485 TO USB POWER SUPPLY & CONVERTER CABLE ................................................. 92
DIGS100 AHRS MATING CONNECTOR ......................................................................... 93
STOP! READ THIS FIRST ............................................................................................... 94
GLAMR SOFTWARE INSTALLATION .............................................................................. 98
SELF-TEST IN GLAMR ................................................................................................ 102
SETTING THE MODE AND DATA RATE.......................................................................... 103
UNIT DISPLAY OPTIONS ............................................................................................... 106
DATA RECORD FEATURE ............................................................................................. 107
BANDWIDTH FILTERING CAPABILITY ....................................................................... 108
ZEROING OUT THE AIRSPEED ................................................................................... 110
LOADING INITIAL PARAMETERS ............................................................................... 111
WHEEL DIAMETER – IMPORTANT ........................................................................ 113
MOUNTING............................................................................................................... 117
CENTRIFUGAL FORCE ERROR EFFECTS WITH CONSTANT TURNS ............................. 118
TECHNICAL SUPPORT..................................................................................................... 118
15.1
15.2
15.3
16
TECHNICAL DOCUMENTATION AVAILABLE ON WEBSITE ............................................. 118
TROUBLESHOOTING & FURTHER TECHNICAL ASSISTANCE .......................................... 123
AUTHORIZED DISTRIBUTORS AND TECHNICAL SALES REPRESENTATIVES: .................. 123
GLOSSARY OF TERMS...................................................................................................... 124
16.1
16.2
ABBREVIATIONS AND ACRONYMS ............................................................................... 124
DEFINITIONS OF TERMS................................................................................................ 124
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 4
Rev. 07/20/2016
2 TABLE OF FIGURES
Figure 1 DIGS100 AHRS ................................................................................................................ 12
Figure 2 AHRS Outline Drawing .................................................................................................... 13
Figure 3 DIGS100 AHRS Block Diagram ........................................................................................ 15
Figure 4 Gladiator Technologies Part Naming Convention .......................................................... 16
Figure 5 DIGS100 AHRS Part Number Configurations .................................................................. 16
Figure 6 DIGS100 AHRS Pin Assignments and Outputs................................................................. 17
Figure 7 Serial Communication Settings ....................................................................................... 18
Figure 8 Generic Format of Command Packets Sent to AHRS ...................................................... 18
Figure 9 AHRS Input Command Summary ................................................................................... 19
Figure 10 Commands That May Typically be Sent After Device Power-up ................................... 19
Figure 11 AHRS Commands Shown with Example Values ............................................................ 20
Figure 12 AHRS Message Packet Format ...................................................................................... 21
Figure 13 External Air/Wheel Speed Input Conditions .................................................................. 22
Figure 14 Status byte decode when bit 6 is set to 0 ..................................................................... 23
Figure 15 Status byte decode when bit 6 is set to 1(every other message) ................................. 23
Figure 16 Status byte decode when message count set to 0 or 1................................................. 23
Figure 17 Status byte decode when message count set to 247 .................................................... 24
Figure 18 Status byte decode when message count set to 248 through 251 ............................... 24
Figure 19 Status byte decode when message count set to 252 through 255 ............................... 25
Figure 20 Gyro LSB Scale Factor .................................................................................................... 26
Figure 21 Accel LSB Scale Factor ................................................................................................... 26
Figure 22 Screenshot of DIGS100 AHRS Sample Data (.csv format) ............................................. 28
Figure 23: 1k Hz Timing Diagram 921.6k Baud ............................................................................ 29
Figure 24: Bit Values for External Sync Input ................................................................................ 30
Figure 25 Show TX msg to AHRS ................................................................................................... 45
Figure 26 Show RX Message ......................................................................................................... 46
Figure 27 Show RX (raw insert) msg bytes.................................................................................... 47
Figure 28 Show RX (raw inert) msg bytes ..................................................................................... 48
Figure 29 Show TX msg to AHRS ................................................................................................... 58
Figure 30 Show TX msg to AHRS ................................................................................................... 59
Figure 31 GLAMR Screenshot – 100Hz Full Mode ......................................................................... 60
Figure 32 ATP Heading Error ......................................................................................................... 61
Figure 33 Initial Bench Readout .................................................................................................... 62
Figure 34 Self-Test......................................................................................................................... 62
Figure 35 Pitch Up 45°................................................................................................................... 63
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 5
Rev. 07/20/2016
Figure 36 Pitch Down 45° .............................................................................................................. 63
Figure 37 Rate Spin Test................................................................................................................ 64
Figure 38 Accelerometer Tumble Test Data ................................................................................. 65
Figure 39 Angle Random Walk (ARW) .......................................................................................... 66
Figure 40 Velocity Random walk................................................................................................... 67
Figure 41 X Gyro Bias In-Run ......................................................................................................... 68
Figure 42 Y Gyro Bias In-Run ......................................................................................................... 69
Figure 43 Z Gyro Bias In-Run ......................................................................................................... 69
Figure 44 X accelerometer Bias In-Run ......................................................................................... 70
Figure 45 Y Accelerometer Bias In-Run ......................................................................................... 70
Figure 46 Z accelerometer In-Run Bias ......................................................................................... 71
Figure 47 X Gyro Bias Over Temperature...................................................................................... 72
Figure 48 Y Gyro Bias Over Temperature ...................................................................................... 72
Figure 49 Z Gyro Bias Over Temperature ...................................................................................... 73
Figure 50 X Gyro Scale Factor Over Temperature ......................................................................... 74
Figure 51 Y Gyro Scale Factor Over Temperature ......................................................................... 74
Figure 52 Z Gyro Scale Factor Over Temperature ......................................................................... 75
Figure 53 x Accelerometer Bias Over Temperature ...................................................................... 75
Figure 54 Y Accelerometer Bias Over Temperature ...................................................................... 76
Figure 55 Z Accelerometer Bias Over Temperature ...................................................................... 76
Figure 56 X Scale Factor Over Temperature ................................................................................. 77
Figure 57 Y Accelerometer Scale Factor Over Temperature ......................................................... 77
Figure 58 Z Accelerometer Scale Factor Over Temperature ......................................................... 78
Figure 59 X Gyro Bias Turn-On ...................................................................................................... 79
Figure 60 Y Gyro Bias Turn-On ...................................................................................................... 80
Figure 61 Z Gyro Bias Turn-On ...................................................................................................... 80
Figure 62 X Accelerometer Bias Turn-On ...................................................................................... 81
Figure 63 Y Accelerometer Bias Turn-On ...................................................................................... 81
Figure 64 Z Accelerometer Bias Turn-On ...................................................................................... 82
Figure 65 GyroBias Turn-On to Turn-On (TOTO) Repeatability .................................................... 83
Figure 66 Accelerometer Bias Turn-On to Turn-On (TOTO) Repeatability .................................... 84
Figure 67 Random Vibration Test Data ........................................................................................ 85
Figure 68 X Gyro Sine Vibration Response .................................................................................... 86
Figure 69 Y Gyro Sine Vibration Response .................................................................................... 86
Figure 70 Z Gyro Sine Vibration Response .................................................................................... 87
Figure 71 X Accelerometer Sine Vibration Response .................................................................... 88
Figure 72 Y Accelerometer Sine Vibration Response .................................................................... 88
Figure 73 Z Accelerometer Sine Vibration Response .................................................................... 89
Figure 74 Power Supply Sensitivities ............................................................................................. 90
Figure 75 GLAMR CD-ROM ........................................................................................................... 91
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 6
Rev. 07/20/2016
Figure 76 GLAMR Software Icon ................................................................................................... 91
Figure 77 SDK Box, USB Converter & Self-Test.............................................................................. 92
Figure 78 Unit Connector .............................................................................................................. 93
Figure 79 DIGS100 SDK – RS485 to USB Converter Schematic ..................................................... 93
Figure 80 Linx USB Read Me First - Installation Guide .................................................................. 94
Figure 81 Driver Setup Wizard ...................................................................................................... 95
Figure 82 License Agreement Prompt ........................................................................................... 96
Figure 83 Installation Folder Prompt ............................................................................................ 96
Figure 84 Driver Package information Prompt ............................................................................. 97
Figure 85 Driver Installation Status .............................................................................................. 97
Figure 86 SDK Software CD-ROM .................................................................................................. 98
Figure 87 GLAMR Location on the SDK CD-ROM .......................................................................... 98
Figure 88 GLAMR Shortcut Software Icon..................................................................................... 99
Figure 89 GLAMR Message ERROR opening ................................................................................. 99
Figure 90 Message success ......................................................................................................... 100
Figure 91 Confirmed Correct COM Port with Message “success” .............................................. 101
Figure 92 AHRS Data in Full Mode at 100Hz Data Rate ............................................................. 102
Figure 93 Power and Self-Test Momentary Switch ..................................................................... 103
Figure 94 Self-Test Display When Activated ON ......................................................................... 103
Figure 95 Mode Selection / Data Rate ........................................................................................ 104
Figure 96 Mode Selection............................................................................................................ 105
Figure 97 Units of Measure Selection Options ............................................................................ 106
Figure 98 Data Record Options ................................................................................................... 107
Figure 99 Saving Data Record Files ............................................................................................. 108
Figure 100 Select Desired Bandwidth Filter from Drop Down Menu .......................................... 109
Figure 101 Zero Out Airspeed from Load Menu ......................................................................... 110
Figure 102 Zero Out Airspeed ..................................................................................................... 111
Figure 103 Loading AHRS Coefficients ........................................................................................ 111
Figure 104 Definitions for Uploading AHRS Coefficients ............................................................ 112
Figure 105 External Air/Wheel Speed Input Conditions.............................................................. 113
Figure 106 GLAMR AHRS Desktop Icon ....................................................................................... 114
Figure 107 Click View for Attitude Indicator GUI Display ........................................................... 115
Figure 108 Glamr Display Software (Click View on the Toolbar to Activate) ............................. 116
Figure 109 Warning Notice ......................................................................................................... 116
Figure 110 GUI Attitude Indicator Display .................................................................................. 117
Figure 111 Website – Select Product Category ........................................................................... 118
Figure 112 Select Product of Interest .......................................................................................... 119
Figure 113 Documentation Tab & Technical Data Available ...................................................... 120
Figure 114 Technical Support Web Page .................................................................................... 121
Figure 115 Training & Setup Videos Web Page .......................................................................... 121
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 7
Rev. 07/20/2016
Figure 116 Remote Desktop Support Web Page ......................................................................... 122
Figure 117 Web Conferencing Web Page ................................................................................... 122
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 8
Rev. 07/20/2016
3 SAFETY AND HANDLING INFORMATION

ALWAYS USE CAUTION WHEN HANDLING THE DIGS100 UNIT!

SUPPLYING TOO HIGH OF INPUT VOLTAGE, COULD PERMANENTLY DAMAGE THE
UNIT. Input Power is specified at +2.7V to +3.6V Maximum. The unit is
calibrated at 3.3VDC.
The DIGS100 AHRS is a sensitive scientific instrument containing shock and
vibration sensitive inertial and other sensors. Excessive shock and or vibration
can damage these sensors and can adversely affect sensor performance and unit
output.
Avoid exposure to electrostatic discharge (ESD). Observe proper grounding
whenever handling the DIGS100 AHRS.
Properly attach connector and ensure that it has been wired correctly before
applying power to the DIGS100 AHRS.
The X-Axis of the unit must be pointed in the forward direction of motion.




4 PATENT AND TRADEMARK INFORMATION
The DIGS100 AHRS is a newly developed unit containing significant intellectual property and it
is expected to be protected by United States of America (USA) and other foreign patents
pending. LandMarkTM is an official and registered Trademark that identifies Gladiator
Technologies brand name for our digital inertial and integrated GPS systems products.
5 APPLICABLE EXPORT CONTROLS
The DIGS100 AHRS has been self-classified by Gladiator Technologies with pending
Commodity Classification by the U.S. Department of Commerce under the Export
Administration Regulations (EAR), as ECCN7A994 and as such may be exported without a
license using symbol NLR (No License Required) to destinations other than those identified in
country group E of supplement 1 to Part 740 (commonly referred to as the T-5 countries) of the
Export Administration Regulations. Items otherwise eligible for export under NLR may require a
license if the exporter knows or is informed that the items will be used in prohibited chemical,
biological or nuclear weapons or missile activities as defined in Part 774 of the EAR. Copies of
official U.S. Department of Commerce Commodity Classifications are available upon request.
6 USER LICENSE
Gladiator Technologies grants purchasers and/or consignees of Gladiator’s DIGS100 AHRS a no
cost, royalty free license for use of the following software code for use with the DIGS100
AHRS. Companies or persons not meeting the criteria as a purchaser or consignee are strictly
prohibited from use of this code. Users in this category wanting to use the code may contact the
factory for other user license options.
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 9
Rev. 07/20/2016
7 STANDARD LIMITED WARRANTY
Gladiator Technologies offers a standard one year limited warranty with the factory’s option to
either repair or replace any units found to be defective during the warranty period. Opening the
case, mishandling or damaging the unit will void the warranty. Please see Gladiator
Technologies’ Terms & Conditions of sale regarding specific warranty information.
8 QUALITY MANAGEMENT SYSTEM
Gladiator Technologies’ Quality Management System (QMS) is certified to AS9100 Rev. C and
ISO9001:2008. UL-DQS is the company’s registrar and our certification number is
10012334ASH09. Please visit our website at www.gladiatortechnologies.com to view our
current certificates.
9 THEORY OF OPERATION
The DIGS100 AHRS is a digital 9 Degree of Freedom MEMS (Micro Electro-Mechanical
System) AHRS that provides the following output data: roll, pitch and yaw angles, X, Y and Z
angular rates, X, Y and Z linear acceleration and unit temperature. Utilizing Gladiator's
proprietary thermal modeling process, this unit is fully temperature compensated, with
temperature corrected bias and scale factor as well as corrected misalignment and g-sensitivity.
The unit features:
 The RS422/RS485 digital interface provides serial data enabling the user to monitor the
outputs during use. Internal sampling is done at 4 kHz. Over-sampling is done on the
AHRS output rate (20X) when set at 200Hz and then averaged to improve the noise of
the MEMS sensors. The nominal output rate in the DIGS100 AHRS is 100Hz or 200Hz
±5%. A RS422/RS485 to USB converter is available in Gladiator's DIGS100 AHRS
Software Development Kit (SDK) to enable a quick AHRS to PC integration and ease of
use.

Three MEMS gyro signals with active filtering and 20X over sampled with a 16 bit A/D
converter. The gyros are available in standard range of ±490°/sec.

Three MEMS accelerometer signals with analog buffering and 20X over sampled with an
effective 14 bit A/D converter. The accelerometers are available in standard range of
±10g’s.

Three internal temperature sensors outputs are 20X over sampled with an effective 14 bit
converter. These temperature measurements are co-located with each gyro, magnetometer
and accelerometer to enable accurate temperature compensation of the gyro,
magnetometer and accelerometer outputs.

The calibration process measures temperature at a minimum of 5 set points from -40°C to
+85°C and a 9 point correction table is generated that identifies temperature based offsets
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 10
Rev. 07/20/2016
for each of the sensor data sets. Depending upon the variable, up to a 4th order thermal
model is used to create a correction model.

Though a precision orthogonal mounting block is used in the DIGS100 AHRS,
misalignment error correction is also essential in enabling high performance navigation
from a MEMS inertial sensor assembly. The calibration process also corrects and
compensates for internal misalignment errors for all 9 sensors in all three axes.

In addition "g-sensitivity" errors associated with the gyros are also modeled and
calibrated to correct these performance errors associated with acceleration inputs in all
three gyro axes.

All of the calibration data is then loaded into an internal memory EEPROM enabling a
look-up table for thermal modeling correction of the outputs during use.
The DIGS100 AHRS SDK software design enables updates to the AHRS interface. As these
software enhancements and upgrades become available, Gladiator will make these available to
our AHRS customers. For more information see Gladiator’s website at
www.gladiatortechnologies.com.
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 11
Rev. 07/20/2016
10 PRODUCT DESCRIPTION
10.1 DIGS100 AHRS
The DIGS100 AHRS offers Open Loop FOG performance utilizing our own low noise MEMS
gyros and accelerometers This Attitude and Heading Reference System (AHRS) employs a fixed
gain Kalman filter and features accurate Pitch, Roll and Yaw angles as well as very low in-run
bias and excellent bias over temperature. The temperature compensated RS422/RS485 output of
heading, pitch and roll angles, X, Y and Z angular rates, X, Y and Z linear accelerations and
altitude information are in a ruggedized package. Built-in software enables an external velocity
input (user supplied) turning error correction as well as a 1 kHz sync. The signature features are
the low noise MEMS inertial sensors, hard and soft iron calibrated internal triax magnetometer
and barometric pressure sensor providing integrated attitude and heading information.




















NON-ITAR High Performance Commercial MEMS AHRS
Heading (Yaw) Angles 0.5 typical
Pitch & Roll Angles 0.1 typical
Built-in Firmware for Turning Error
Correction (External Velocity Input Required)
Very-Low Gyro Noise 0.005º/sec/√Hz
Low Accel Noise 0.09mg/√Hz
In-Run Gyro Bias 6/hour 1σ
Fully Temperature Compensated Bias and Scale Factor
Over -40°C to +85°C
Compensated Misalignment 1mrad
G-Sensitivity <0.01/sec/g typical
Low Voltage +2.7V to +3.6V (single sided power)
Light Weight < 30 grams
Small Size < 27.4cm3/1.7in3
RS422/RS485 Data Rate 200Hz (4 kHz internal sampling)
Wide Sensor Bandwidth 250 Hz
Bandwidth Filtering Capability
External Sync Input (1 kHz or 1pps)
Shock Resistant 500g’s
MTBF 124,334 Hours
Figure 1 DIGS100 AHRS
This AHRS performance is optimized with Fixed Gain Kalman Filter Aiding and fully
compensated bias, scale factor, misalignment, g-sensitivity, heading, pitch and roll angles and
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 12
Rev. 07/20/2016
altitude information. This is in a ruggedized environmentally sealed package that is EMI resistant
and includes a MILSPEC connector.
The unit is highly durable and can withstand environmental vibration, shock and EMI typically
associated with commercial aircraft requirements. The DIGS100 AHRS is well suited for
commercial flight control, navigation, marine, antenna stabilization and pointing, general
aviation as well as laboratory use.
10.2 Outline Drawing and 3D Solid Models
Please go to the applicable product of interest on our website at www.gladiatortechnologies.com
and a user can download the 3D Solid Model, 2D outline drawing and other product information.
Axes (Top View)
Right Hand Rule
Figure 2 AHRS Outline Drawing
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 13
Rev. 07/20/2016
10.3 Center of Gravity
Some applications need to know the CG or center of gravity of the package which is just the
mass center. The CG is also near the center line of the package at the midpoint along the x-axis
with the following offsets:
 X offset = 0.00 inches (along the x-axis direction towards connector) (0mm)
 Y offset = 0.00 inches (along the y-axis direction) (0 mm) from the centerline
 Z offset = 0.00 inches (along the Z-axis direction) (0 mm) from the centerline
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 14
Rev. 07/20/2016
10.4 DIGS100 AHRS Block Diagram
5.0V
3.3V
Raw Power
Input
Regulators
Digital processor
Scaling Amps
X Gyro
Temp
Y Gyro
Processor
& Memory
Temp
RS422/
RS485
RS485
Port
Port
Z Gyro
Temp
Serial data
Output
A/D
X Accel
Y Accel
Z Accel
X Mag
Y Mag
Z Mag
Pressure
Sensor
SPI
Figure 3 DIGS100 AHRS Block Diagram
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 15
Rev. 07/20/2016
10.5 DIGS100 AHRS Part Number Configurations
DIGS
Product Make
“Downhole Inertial
Guidance”
DIGS100AHRS-490-10-100
100
AHRS
490
10
Product
Model
“100”
Product Type
“AHRS=Attitude
Heading
Reference
System”
Gyro Rate
Range
“490°/sec”
Accelerometer
linear range
“10g’s”
100
Specific Unit
Configuration
“100=LN
series
Configuration”
Figure 4 Gladiator Technologies Part Naming Convention
DIGSTM100 P/N:
DIGS100-490-10-100
Figure 5 DIGS100 AHRS Part Number Configurations
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 16
Rev. 07/20/2016
10.6 DIGS100 AHRS Pin Assignments
The DIGS100 AHRS has a 9 pin connector interface which provides the electrical interface to
the host application. The signal pin-out is as follows:
Figure 6 DIGS100 AHRS Pin Assignments and Outputs
User to provide either analog or external velocity
for Forward Velocity functions to be enabled (pin 4).
Note: If the input pins have long wires with no termination, they can pick up noise in a high EMI
environment and upset the proper operation of the AHRS. Pin 6 is particularly vulnerable to
noise pickup and can cause data drops. For an AHRS, Pin 4 is used for either an analog or digital
pulse velocity input. Pin 8 is self-test and is OK if connected to a logic level signal source
otherwise it should be grounded.
10.7 DIGS100 AHRS Performance Specification
See applicable current revision data sheet available on our website at
www.GladiatorTechnologies.com.
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 17
Rev. 07/20/2016
11 DIGS100 AHRS MESSAGING PROTOCOL (V70)
11.1 Serial communication settings:
Parameter
Value
Bits/second:
115200 or 921600
Data bits:
8
Parity:
E
Stop bits:
2
Figure 7 Serial Communication Settings
11.1.1 AHRS Input Messages
The AHRS device receives input in the form of 8-byte messages. Input messages are only used
to alter AHRS device settings or to initialize a value (such as altitude) at startup. AHRS device
output is inhibited while input messages are being transmitted.
11.1.2 AHRS Input Message Format
Note that most messages have a variable 4-byte parameter value (in little-endian floating point
format or little-endian 4-byte integer format). The tables below shows an example value;
however the user may send what is appropriate, but must also ensure the checksum byte is
updated appropriately.
Description
Number of bytes
Start of message
Command byte 1
Command byte 2
Checksum
Parameter value
1
1
1
1
4
Value
0x2b
depends on command
depends on command
forces sum of 8 bytes to zero
little endian 4-byte value
Figure 8 Generic Format of Command Packets Sent to AHRS
11.2 AHRS Input Message Command Summary
The following table summarizes AHRS input message commands. The single-byte command
values and 4-byte integer parameter values are shown in hexadecimal. The parameter values are
either floating-point or an integer type depending on the command message. All fields are
always transmitted, thus if the field is not applicable, send zero data.
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 18
Rev. 07/20/2016
AHRS command
Command
byte 1
Command
byte 2
Parameter
type
Parameter value
N/A
floatingpoint
floatingpoint
N/A
altitude, meters
integer
integer
Integer
integer
integer
floatingpoint
floatingpoint
floatingpoint
floatingpoint
N/A
1
4
16
5
8
filter value (see
examples)
wheel diameter,
feet
magnetic
deviation, degrees
initial altitude,
meters
N/A
Zero Airspeed
Set Altitude, m
0c
08
N/A
N/A
Set Mag
Deviation, deg
0b
N/A
Set SPEC 200 mode
Set SPEC 100 mode
Set FULL 200 mode
Set FULL 100 mode
Set ASCII mode
Set Filter
Coefficient
Load Wheel
Diameter, ft
Load Mag
Deviation, deg
Load Initial
Altitude, m
Store n updates
to Flash
05
05
05
05
05
05
13
13
13
13
13
02
05
03
05
11
05
12
06
n
mag deviation,
degrees
Figure 9 AHRS Input Command Summary
11.3 Startup Commands
Commands such as these do not require a store to Flash operation. They follow this sequence:
1.
Send unlock byte sequence
2.
Send the desired message (one of the three shown)
AHRS command
Example Tx byte sequence
Unlock byte sequence
d4 (burst repeat 20 times each 1ms for 10ms)
Zero Airspeed
Set Altitude, m
Set Mag Deviation, deg
2b 0c 00 c9 00 00 00 00
2b 08 00 0e 00 00 80 3f
2b 0b 00 11 00 00 80 3f
(value is N/A)
(value is 1.0)
(value is 1.0)
Figure 10 Commands That May Typically be Sent After Device Power-up
11.4 Operating Mode and Parameter Update Commands
Single update commands follow this sequence:
1.
Send unlock byte sequence
2.
Send the parameter to be updated (one of the twenty shown)
3.
Send the store to Flash command
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 19
Rev. 07/20/2016
AHRS command
Example Tx byte sequence
Unlock byte sequence
d4 (burst repeat 20 times each 1ms for 10ms)
Set SPEC 200 mode
Set SPEC 100 mode
Set FULL 200 mode
Set FULL 100 mode
Set ASCII mode
Set Filter 75Hz
Set Filter 50Hz
Set Filter 40Hz
Set Filter 35Hz
Set Filter 30Hz
Set Filter 25Hz
Set Filter 20Hz
Set Filter 10Hz
Set Filter 1Hz
Load Wheel Diameter, ft
Load Mag Deviation, deg
Load Initial Altitude, m
2b
2b
2b
2b
2b
2b
2b
2b
2b
2b
2b
2b
2b
2b
2b
2b
2b
Store 1 update to Flash
2b 06 01 ce 00 00 00 00
05
05
05
05
05
05
05
05
05
05
05
05
05
05
05
05
05
13
13
13
13
13
02
02
02
02
02
02
02
02
02
03
11
12
bc
b9
ad
b8
b5
0f
6f
aa
2c
af
20
6d
58
ab
0e
00
ff
01
04
10
05
08
00
c3
cd
48
c3
e1
48
71
49
00
00
00
00
00
00
00
00
00
f5
cc
e1
f5
7a
e1
3d
9d
00
00
00
00
00
00
00
00
80
68
4c
3a
28
14
fa
8a
00
80
80
80
00
00
00
00
00
3f
3f
3f
3f
3f
3f
3e
3e
3d
3f
3f
3f
(value is 1.00)
(value is 0.91)
(value is 0.80)
(value is 0.73)
(value is 0.66)
(value is 0.58)
(value is 0.49)
(value is 0.27)
(value is 0.0314)
(example value of 1.0)
(example value of 1.0)
(example value of 1.0)
Figure 11 AHRS Commands Shown with Example Values
A further note on the Store to Flash command is that if the user wishes to update multiple
parameters, it is possible to change the command byte 2 field to reflect the number of parameters
updated. For example, if the user updates 5 parameters, the sequence would be:
1.
2.
3.
Send unlock byte sequence
Send the commands to update 5 parameters (10ms spacing between commands)
Send the store 5 updates to Flash command: 2b 06 05 ca 00 00 00 00
11.4.1 AHRS Output Messages
The following table summarizes the output data stream messages from the AHRS device for each
of its various modes. The transmit sequence follows from top to bottom in the table, with the
start of message byte transmitted first and the checksum transmitted last in all cases. For each
mode, only parameters marked with an X are transmitted. At power-up, the AHRS device reads
the operation mode (i.e. Full, Spec, etc.) from its Flash storage and begins to transmit data in that
mode.
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 20
Rev. 07/20/2016
11.5 Summary AHRS Output Message Packet Format
Description
Start of message
Message counter
Gyro – X axis
Gyro – Y axis
Gyro – Z axis
Accel – X axis
Accel – Y axis
Accel – Z axis
Temp – X axis
Mag – X axis
Mag – Y axis
Mag – Z axis
Pressure (not available)
Roll Angle
Pitch Angle
Yaw Angle
Vx AC Dynamic Only
Vy AC Dynamic Only
Vz AC Vertical Only
Altitude
Alternate temperature
Analog air speed
Digital wheel velocity
Status Byte
Checksum
Total size (bytes)
Output Rate
Full
X
Spec
X
#byte
1
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
note 4
note 4
X
X
44
100 or
200Hz
X
1
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
2
1
1
X
X
X
X
X
X
X
X
note 4
note 4
X
X
22
100 or
200Hz
Value
0x23(Full)
0x2B(Norm)
Mod 256 counter
Signed 16-bit int
Signed 16-bit int
Signed 16-bit int
Signed 16-bit int
Signed 16-bit int
Signed 16-bit int
Signed 16-bit int
Signed 16-bit int
Signed 16-bit int
Signed 16-bit int
Unsigned 16-bit int
Signed 16-bit int
Signed 16-bit int
Unsigned 16-bit int
Signed 16-bit int
Signed 16-bit int
Signed 16-bit int
Signed 16-bit int
Signed 16-bit int
Signed 16-bit int
Signed 16-bit int
See note 5.
Two’s complement sum
LSB weight
N/A
N/A
0.01 deg/sec note5-7
0.01 deg/sec note 5-7
0.01 deg/sec note 5-7
See note 5-8
See note 5-8
See note 5-8
0.01 deg C
1 milligauss
1 milligauss
1 milligauss
2.0 PA
0.01 deg
0.01 deg
0.01 deg
meters/sec
meters/sec
meters/sec
1.0 meter
0.05 deg C
0.01 meters/sec
0.01 meters/sec
N/A
See note 1.
Figure 12 AHRS Message Packet Format
11.5.1 Important Messaging Protocol Notes:
11.5.1.1 Note 1 – Checksum
The checksum byte is the two’s complement of the sum of all bytes in the message excluding the
checksum byte. Thus, performing a byte-wide sum of all bytes in the entire message (including
the checksum byte itself) is always equal to zero.
11.5.1.2 Note 2 – Little-endian Format
All 16-bit data are transferred in little-endian format. Thus, the least significant byte is received
first.
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 21
Rev. 07/20/2016
11.5.1.3 Note 3 – Total Transport Time per Message Packet
Total transport time per message packet:
Full: (44 bytes * 12 bits/byte) / 115200 bps = 4.6 ms (921.6k = 0.57 ms)
Norm/Spec: (22 bytes * 12 bits/byte) / 115200 bps = 2.3ms
11.5.1.4 Note 4- External Velocity Input Conditions
In normal (spec) output mode, only the active air speed value will be transmitted. If there is a
wheel counter input to J1-4, then the air speed is the digital wheel velocity; otherwise it is the
analog air speed input. Input to the wheel diameter is decoded as follows:
Case Wheel Diameter Value
Condition
1
+ Diameter in feet
2
Zero Diameter
3
-1 Diameter
Uses logic level pulses of 3.3 to 5V
rising edge per one turn and computes
velocity as π times dia divided by
period measured between pulses
Airspeed 0V to 5V analog input, 1.45
differential pressure sensor from
pitot tube input
Airspeed 0V to 5V analog input,
linear velocity from 0 to 500 knots
Assumes GPS update rate of 4Hz (same as -4
in case 5 below).
4
-2 Diameter
5
-3 Assumes 3Hz Update
-4 Assumes 4Hz Update
-5 Assumes 5Hz Update
-10 Assumes 10Hz Update
-20 Assumes 20Hz Update
-50 Assumes 50Hz Update
-100 Assumes 100Hz Update
Airspeed 0V to 5V analog input,
linear velocity from 0 to 500 knots
Airspeed 0V to 5V analog input,
linear velocity from 0 to 500 knots
Assumes GPS update rate of 3Hz (-3)
up to 100Hz (-100) and all cases in
between (-5 is 5Hz update etc.)
Figure 13 External Air/Wheel Speed Input Conditions
11.5.1.5 Note 5 - AHRS Status Byte Format
The status byte contains 4 error bits and 4 status bits, as shown in the tables below. The status
will alternately transmit accel/gyro range information (i.e. when bit 6 is 1).
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 22
Rev. 07/20/2016
AHRS status byte decode when message counter set to 2 - 246, bit 6 = 0:
Bit Name
Value
0
1
2
3
4
5
6
7
Cal/Test mode indicator
Sync
SCP1000 error
Flash checksum error
Software error
Software timing error
Status byte select
Self-test
1=Test mode, 0=Cal or Norm
1=external sync, 0=internal sync
1=always (ignore)
1=Flash coefficient checksum fail
1=internal software fail
1=software missed real-time
0 (bits 2-5, bit 7 are status)
1=self-test active
Normal byte is 00000110 after the GPS has acquired at least 4 satellites
Figure 14 Status byte decode when bit 6 is set to 0
AHRS status byte decode when message counter set to 2 - 246, bit 6 = 1:
Bit Name
Value
0
1
2
3
4
Gyro Range indicator
Accel range bit 0
Accel range bit 1
Accel range bit 2
Gyro range LSB
5
Gyro range MSB
6
7
Status byte select
Digital board rev 9
0= Norm, 1=Wide
000b=default, 001b=3g,
010b=2g,011b=6g, 100b=10g,
101b=16g, 110=32g, 111b=65g
Norm - 00=default,
10b=150°/s,
Wide - 00=25°/s,
10b=1625°/s,
01b=75°/s,
11b=325°/s
01b=650°/s,
11b=165°/s
1 (bits 2-5, bit 7 are settings)
1=rev9 (or greater), 0=rev 8
The occasional bit 6 byte is 11110000 for a 300°/sec gyro and a 10g accel
Figure 15 Status byte decode when bit 6 is set to 1(every other message)
AHRS status byte decode when message counter set to 0 or 1
Message
Bit 7 Name
Count
0
0
1
1
0
1
0
1
AHRS
AHRS
AHRS
AHRS
SW
SW
SW
SW
major revision number
product code
minor revision number
release level number
Value
(Bits 6:0)
0
0
0
0
to
to
to
to
127
127
127
127
Figure 16 Status byte decode when message count set to 0 or 1
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 23
Rev. 07/20/2016
AHRS status byte decode when message counter set to 247
Message
Count
247
Name
Value
Bandpass filter number
0 = unknown
1-99 = valid
100 = maximum
>100 = TBD
Figure 17 Status byte decode when message count set to 247
AHRS status byte decode when message counter set to 248 through 251.
Message
Count
248
249
250
251
Name
Board
Board
Board
Board
Value
Number
Number
Number
Number
Byte
Byte
Byte
Byte
0
1
2
3
0
0
0
0
to
to
to
to
255
255
255
255
Figure 18 Status byte decode when message count set to 248 through 251
The board number is a 32-bit value that encodes 5 characters in a 6-bit format as follows:
 Bits 0-5 Character 1
 Bits 6-11 Character 2
 Bits 12:17 Character 3
 Bits 18:24 Character 4
 Bits 30:25 Character 5
 Bit 31
Not used, default is 0
The encoding of a character is as follows:
 Value 0 – “space” character
 Value 1 through 10 – “0” character through “9” character
 Value 11 through 36 – “A” character through “Z” character
 Value 37 through 63 – Undefined
AHRS status byte decode when message counter set to 252 through 255.
Message Count Name
8-Bit Value 32-bit Value
252
253
254
255
Serial
Serial
Serial
Serial
Number
Number
Number
Number
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Byte
Byte
Byte
Byte
Page 24
0
1
2
3
0
0
0
0
to
to
to
to
255
255
255
255
Bits
Bits
Bits
Bits
24-31
16-23
8-15
0-7
Rev. 07/20/2016
Figure 19 Status byte decode when message count set to 252 through 255
After appending the 4 transmitted 8 bit words to a 32 bit binary, convert this to decimal.
The 32-bit value stores 6 character values in a modulo 37 (% 37) format as follows:
 Character Value 6 = (32-bit value) / 37 the whole number remainder (% 37)
 Character Value 5 = (32-bit value / 37) % 37
This is the next character to the left of the one you just decoded.
Repeat this again and again till you finish all 6 characters.
 Character Value 4 = (32- bit value / 37 / 37) % 37
 Character Value 3 = (32-bit value / 37 / 37 / 37) % 37
 Character Value 2 = (32-bit value / 37 / 37 / 37 / 37 ) % 37
 Character Value 1 = (32-bit value / 37 / 37 / 37 / 37 / 37) % 37
The encoding of a character value allows for an alphanumeric serial number is as follows:
 Value 0 – “space” character
 Value 1 through 10 – “0” character through “9” character
 Value 11 through 36 – “A” character through “Z” character
Here is an example of the serial number encoding:
Frame Status
32 Bit Number = 0x0CBCE12F = 213705007 (decimal)
252
0x0C
char 6 = 213705007 % 37 = 0
253
0xBC
char 5 = (213705007 / 37) % 37 = 5775811 % 37 = 0
254
0xE1
char 4 = (5775811 / 37) % 37 = 156103 % 37 = 0
255
0x2F
char 3 = (156103 / 37) % 37 = 4219 % 37 = 1
char 2 = (4219 / 37) % 37 = 114 % 37 = 3
char 1 = (114 / 37) % 37 = 3 % 37 = 3
Then, using the encoding, we get SN = “220 ”
11.5.1.6 Note 6 – Accel LSB Scaling
The Accel LSB scaling depends on the g-range of the Accels in the selected AHRS device.
Please note that some accelerometers may have inherent over-range versus the range reflected on
the datasheet. The accelerometer output is limited to ±10g’s.
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 25
Rev. 07/20/2016
11.5.1.7 Note 7 Gyro LSB Scale Factor
The Gyro LSB scale factor depends on the rate-range of the Gyros:
Status Bits
IMU Range Value
LSB Scale Factor
[5:4:0]
000
001
010
Default (no value listed)
25
75
0.01 °/s
0.01 °/s
0.01 °/s
011
492
0.015 °/s
100
101
110
111
150
1625
325
165
0.01
0.05
0.01
0.005
°/s
°/s
°/s
°/s
Figure 20 Gyro LSB Scale Factor
11.5.1.8 Note 8 Accel LSB Scale Factor
The Accel LSB scaling depends on the g-range of the accels in the selected AHRS device:
Accel Bits [3:2:1]
000
001
010
011
Accel Range Value
Default (no
≤
≤
≤
value listed)
3g
2g
6g
LSB Scale Factor
0.0010
0.0001
0.0001
0.0005
g
g
g
g
100
≤ 10g
0.0005 g
101
011
111
≤ 16g
≤ 32g
≤ 65g
0.0005 g
0.0010 g
0.0020 g
Figure 21 Accel LSB Scale Factor
11.5.2 User Interface Comments
The AHRS messaging protocol is quite important and can be somewhat confusing for the
user. Please note that the proper sequence of the output data is:
gyro X, gyro Y, gyro Z, Accel X, Accel Y, Accel Z, AHRS Temp, Mag X, Mag Y, Mag Z,
Pressure, Roll, Pitch, Yaw, Altitude, Pressure Temp, Analog Air Speed/Digital Wheel Speed
Gyro LSB is 0.015 deg/sec for 490deg/sec gyros.
Accel LSB is 0.0005 g for 10g accels.
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 26
Rev. 07/20/2016
LSB of 0.01 degrees for temperature, 0.01 deg for angles. So you divide the data by 66.7 for the
gyros, 100 for temperature and angles and 2,000 for 10g accels to get the corrected data without
using the SDK as the software interface does this correction for the user internally. If you are not
using the SDK then you will need to do this divide function to get corrected data per
Please find below some additional explanation on the protocol info:
1). 0x23 or 0x2B is the start of message depending on Full or Spec mode.
2). 11-bits per byte is the total: (8 data + even parity + 2 stop).
3). GLAMR (Gladiator AHRS Reader) decodes messages like this:
A. Wait until at least 44 bytes are received.
B. Check first byte for valid start of message (0x23 or 0x2B). If not 0x23 or 0x2B,
move one byte ahead and go to step (A), otherwise continue with next step.
C. Perform checksum of 44 bytes (if beginning with 0x23). If checksum is not 0,
move one byte ahead and go to step (A), otherwise continue with next step.
D. Perform checksum of 22 bytes (if beginning with 0x2B). If checksum is not 0,
move one byte ahead and go to step (A), otherwise continue with next step.
E Valid message: extract data fields.
11.5.3 Sample Data Format
Please see below a sample AHRS data format output in Excel. The actual output includes both
the header information and data (see rows with MSGCOUNT) that contain actual output data.
Also included is the multiplier information, averages and units of measure for additional clarity
for the user as described above. The AHRS Software Development Kit also includes the actual
excel file below, so that the user can quickly identify the formulas to use in their system
integration directly from the sample data file.
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 27
Rev. 07/20/2016
Figure 22 Screenshot of DIGS100 AHRS Sample Data (.csv format)
Please note that when the customer uses the GLAMR interface it automatically rescales the data,
so there is no divide by function. This is displayed in the screenshot above as well as the sample
excel file included in the DIGS100 AHRS Software Development Kit (SDK). Note that Glamr
ignores the dynamic X & Y AC only velocities and the Z vertical velocity.
11.6 Sync Input (1 kHz)
The optional input to the AHRS is a sync square wave to pin 6. This allows the data stream to be
synchronized to an external clock. In a GPS/AHRS the GPS generates a 1 kHz square wave and
this is sent to the AHRS when the GPS has acquired at least 4 satellites. However, any external
clock of logic level can be used to synchronize the data.
11.6.1 Specification:
•
•
•
•
Clock- 1 kHz ± 5% square wave (40 - 60 duty cycle not critical)
Data sample starts on the rising edge only
3.3V or 5V logic is acceptable
Input has diode protection for levels below -0.7V or above 5.5V to 10.5V to protect the
CPU but may cause performance problems.
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 28
Rev. 07/20/2016
11.6.2 Sync Input (1pps Option)
By applying a 1 pps logic level input (either +3.3V or +5V is OK), the output serial message
count will be set to zero on the rising edge of the input pulse. The minimum pulse width needs to
be ≥20 µsec. The 1 pps input is applied to pin 6 (Sync In), with respect to Pin 8 (Signal
Ground). The software will automatically detect the 1 pps and switch to the mode using the
internal clock for the data stream with the message count being reset to zero on the rising
edge. This means that the message count will nominally be 0 to 99, but could be up to 3 counts
short or long, depending on the actual speed of the internal clock which could vary up to ±3%
maximum, but is typically 1%. Note that the detection of the 1 pps edge will be transmitted on
the next 100Hz packet of data, so the timing can vary from 1.5 msec to 11.5 msec ±0.05msec
delay for a 100Hz data transmission rate from the start of the data package. For 200Hz output
data rate the delay will vary from 1.5 msec to 6.5 msec ±0.05 msec and the message count will
roll over from 0 to 199 typically.
11.6.3 Status Bit
The AHRS will operate on an internal 1 kHz clock until an external clock is detect. Then the
AHRS will automatically switch over and set status bit 1 true. Note, as the internal and external
clocks are asynchronous, the first transition may occur on any sample of that period. The status
bit will be set true for that period even if there is only one sample. However, the next 1kHz data
package will all be samples on the external clock.
11.6.4 Timing Diagram
Figure 23: 1k Hz Timing Diagram 921.6k Baud
The AHRS will revert to the internal clock if the external clock is removed and data will
continue to be sent.
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 29
Rev. 07/20/2016
Bit Name
Value
0
1
2
3
4
5
6
7
1=Test mode, 0=Cal mode (Factory)
1=external/internal sync change
1=always
1=Flash coefficient checksum fail
1=internal software fail
1=software missed real-time
1=software missed real-time
1=self-test active
Cal/Test mode indicator
Sync transition
SCP1000 error
Flash checksum error
Software error
Output processing error
AD processing error
Self-test
Figure 24: Bit Values for External Sync Input
11.7 Bandwidth vs. Noise
Note that our standard DIGS100 AHRS is optimized for high bandwidth, so the gyros are set at
250Hz. True bandwidth which includes the data sampling effects has the -3dB point is
approximately 125Hz. These are the settings for the standard unit when shipped and the noise
may not be optimized for an end-user’s specific application. The high bandwidth is ideal for
dynamic applications where the high bandwidth would be required to close control loops in flight
control in a UAV for example. However, in a downhole survey application a lower bandwidth
would be possible and we would see an improvement in peak-to-peak noise.
The DIGS100 AHRS Software Development Kit offers the end-user the capability to set
bandwidth filtering in permanent memory that enables the end-user to set lower bandwidth than
100Hz and benefit from the reduced peak-to-peak noise of the sensors in the AHRS.
Bandwidth
Hz
Sensor
50
40
35
30
25
20
10
1
100Hz
200Hz
1
0.957
0.92
0.89
0.848
0.792
0.715
0.467
0.061
1
0.792
0.715
0.667
0.61
0.544
0.47
0.27
0.031
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 30
500Hz
1
0.467
0.395
0.356
0.314
0.27
0.222
0.118
0.0125
1000Hz
1
0.2696
0.2222
0.1974
0.1718
0.14536
0.1181
0.0609
0.00625
Rev. 07/20/2016
12 LandMarkTM VG/AHRS/GPS USER INTERFACE SOFTWARE
Listed below is sample C Code to assist users in interfacing their system with the LandMarkTM
VG/AHRS or GPS-Aided VG and AHRS. Please contact the factory should you need additional
assistance or other custom software to interface the Gladiator Technologies products with your
system.
12.1 Host receiving VG, AHRS (or GPS Added) output
Following is sample code illustrating a method to receive data from a VG, AHRS or GPS-Aided
device. The VG, AHRS or GPS+ may be in Spec, Full or AHRS output mode. In the sample
code below, the desired mode is selected by un-commenting the appropriate mode definition
(e.g. #define FULL_OUTPUT 1).
Also included is source code to decode messages from the VG, VGGPS, GPSA and INSGPS
products. In some products, a CPU receives data streams from both a GPS and a VG or AHRS
device, performs some processing, and combines data from both devices into a single unique
output stream. Un-comment the GPS_AHRS_OUTPUT definition in order to decode the
GPS/AHRS data stream).
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 31
Rev. 07/20/2016
//----------------------------------------------------------------------------//----------------------------------------------------------------------------// Copyright 2007-2014 Gladiator Technologies
//
//
//
//
#include <string.h>
// memcpy, memset, memmove
// Un-comment one of the following based on VG/AHRS output mode
//#define AHRS_OUTPUT
1
//#define SPEC_OUTPUT
1
#define FULL_OUTPUT
1
//#define GPS_AHRS_OUTPUT 1 // GPS/AHRS or VGGPS product only
// Un-comment one of the following based on AHRS accel range
//#define ACCEL_2G
1
//#define ACCEL_10G
1
#define ACCEL_30G
1
typedef
typedef
typedef
typedef
typedef
typedef
char
short
long
unsigned char
unsigned short
unsigned long
Int8;
Int16;
Int32;
Uint8;
Uint16;
Uint32;
typedef struct {
Uint32
numSerBufOverflow;
Uint32
numLostSync;
Uint32
numChecksumMismatch;
Uint32
numMsgCountMismatch;
} stError;
typedef struct {
Uint32
numBuffRepositions;
Uint32
numValidMsgs;
} stStat;
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 32
Rev. 07/20/2016
typedef struct {
Uint8 uSync;
Uint8 uCount;
Int16 iGyrX;
Int16 iGyrY;
Int16 iGyrZ;
Int16 iAccX;
Int16 iAccY;
Int16 iAccZ;
Int16 iTemp;
Uint8 uStatus;
Uint8 uChecksum;
} stAHRSMsg;
//
//
//
//
//
//
//
0.01 deg/sec
0.01 deg/sec
0.01 deg/sec
0.001 g
0.001 g
0.001 g
0.01 deg C
typedef struct {
Uint8 uSync;
Uint8 uCount;
Int16 iRoll;
Int16 iPitch;
Uint16 uYaw;
Int16 iVx;
Int16 iVy;
Int16 iVz;
Int16 iBaroAlt;
Int16 iTemperature;
Int16 iAirSpeed;
Uint8 uStatus;
Uint8 uChecksum;
} stSpecMsg;
//
//
//
//
//
//
//
//
//
0.01 deg
0.01 deg
0.01 deg
1 meter/sec
1 meter/sec
1 meter/sec
1 meter
0.05 deg C
0.01 meter/sec
typedef struct {
Uint8 uSync;
Uint8 uCount;
Int16 iGyrX;
Int16 iGyrY;
Int16 iGyrZ;
Int16 iAccX;
Int16 iAccY;
Int16 iAccZ;
Int16 iTemp;
Int16 iMagX;
Int16 iMagY;
Int16 iMagZ;
Uint16 uPressure;
Int16 iRoll;
Int16 iPitch;
Uint16 uYaw;
Int16 iBaroAlt;
Int16 iTemperature;
Int16 iAirSpeed;
Uint8 uStatus;
Uint8 uChecksum;
} stFullMsg;
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
0.01 deg/sec
0.01 deg/sec
0.01 deg/sec
0.001 g
0.001 g
0.001 g
0.01 deg C
1 milligauss
1 milligauss
1 milligauss
2.0 PA
0.01 deg
0.01 deg
0.01 deg
1 meter
0.05 deg C
0.01 meter/sec
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 33
Rev. 07/20/2016
typedef struct {
Uint8 uSync;
Uint8 uCount;
Int16 iGyrX;
Int16 iGyrY;
Int16 iGyrZ;
Int16 iAccX;
Int16 iAccY;
Int16 iAccZ;
Int16 iTemp;
Int16 iRoll;
Int16 iPitch;
Uint16 uYaw;
Int16 iAirSpeed;
Uint16 vDop;
Uint16 hDop;
Int32 iLatitude;
Int32 iLongitude;
Uint32 uTimeMs;
Uint16 uTimeWeek;
Int16 iBaroAlt;
Int16 iAltitude;
Uint16 uVelocity;
Uint16 uHeading;
Uint8 uNumOfSvs;
Uint8 uAHRSStatus;
Uint8 uStatus;
Uint8 uChecksum;
} stGpsAhrsMsg;
// 0x51
// mod 256
// 0.005 deg/sec, 0.01 deg/sec (AHRS)
// 0.005 deg/sec, 0.01 deg/sec (AHRS)
// 0.005 deg/sec, 0.01 deg/sec (AHRS)
// 0.001 g, 0.0005 g, or 0.0001 g (AHRS)
// 0.001 g, 0.0005 g, or 0.0001 g (AHRS)
// 0.001 g, 0.0005 g, or 0.0001 g (AHRS)
// 0.01 deg C (AHRS)
// 0.01 deg (AHRS)
// 0.01 deg (AHRS)
// 0.01 deg (AHRS)
// 0.01 meter/sec (AHRS)
// 0.01 (GPS)
// 0.01 (GPS)
// 1e-7 degrees (GPS POSLLH Latitude)
// 1e-7 degrees (GPS POSLLH Longitude)
// 1 millisecond (GPS SOL ms since start of week)
// 1 week (GPS SOL week number)
// 1 meter (AHRS)
// 1 meter (GPS POSLLH height above MSL * 1000)
// 0.01 meter/sec (GPS VELNED 2D ground speed * 100)
// 0.01 deg (GPS VELNED 2D heading * 1000)
// # satellite in view (GPS SOL Number of SVs)
// AHRS status byte (AHRS)
// status byte for AHRS_GPS CPU
// checksum byte
#if defined( AHRS_OUTPUT )
#define stMsg
#define MSG_SYNC_BYTE
stAHRSMsg
(0x2a)
#elif defined( SPEC_OUTPUT )
#define stMsg
#define MSG_SYNC_BYTE
stSpecMsg
(0x2b)
#elif defined( FULL_OUTPUT )
#define stMsg
#define MSG_SYNC_BYTE
stFullMsg
(0x23)
#elif defined( GPS_AHRS_OUTPUT )
#define stMsg
#define MSG_SYNC_BYTE
stGpsAhrsMsg
(0x51)
#endif
#define MSG_SIZE_BYTES
(sizeof(stMsg))
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 34
Rev. 07/20/2016
// accel scale factor depends
#if defined( ACCEL_2G )
#define ACCL_TO_G
#elif defined( ACCEL_10G )
#define ACCL_TO_G
#elif defined( ACCEL_30G )
#define ACCL_TO_G
#endif
on device g-range
(0.0001f)
// Accel X,Y,Z
(0.0005f)
// Accel X,Y,Z
(0.0010f)
// Accel X,Y,Z
// scale factors to convert
#define GYRO_TO_DEG_S
#define GYRO_TO_RAD_S
#define ACCL_TO_M_S2
#define TEMP_TO_DEG_C
#define ANGLE_TO_DEG
#define VEL_TO_M_S
#define AIRSPD_TO_M_S
#define ALT_TO_M
#define ALT_TEMP_TO_DEG_C
#define MAG_TO_MILLIGAUSS
#define PRESSURE_TO_PA
AHRS source integer
(0.01f)
(1.745329e-4f)
(9.81f * ACCL_TO_G)
(0.01f)
(0.01f)
(1.0f)
(0.01f)
(1.0f)
(0.05f)
(1.0f)
(2.0f)
// scale factors to convert
#define GPS_DOP_TO_UNITS
#define GPS_LATLONG_DEG
#define GPS_ALT_TO_M
#define GPS_VEL_TO_M_S
#define GPS_HDG_TO_DEG
GPS source integer data to proper units
(0.01f)
// GSP DOP (unitless)
(1.0e-7f)
// GPS Latitude and Longitude
(1.0f)
// GPS MSL Altitude
(0.01f)
// GPS Velocity
(0.01f)
// GPS Heading
#define SERIAL_BUF_SIZE
#define MSG_BUF_SIZE
(1024)
(128)
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 35
data to proper units
// Gyro X,Y,Z
// 0.01 * PI / 180.0
// 9.81 * accel LSB
// from AHRS temp sensor
// Roll,Pitch,Yaw
// Vx,Vy,Vz
// Air speed
// Baro altitude
// from SCP1000
// MagX,MagY,MagZ
// Pressure (Pascal)
Rev. 07/20/2016
// Data
Uint8
stMsg
Uint32
Uint32
Uint32
stError
stStat
Uint8
int
mSerialBuf[ SERIAL_BUF_SIZE ];
mMsgData[ MSG_BUF_SIZE ];
mWid;
mRid;
mMsgId;
mError;
mStat;
mExpMsgCount;
mInSync;
// information that comes back through status byte (see decodeStatusByte() method)
int
int
int
int
mStatusAhrsProductCode;
mStatusAhrsRevisionLevel;
mStatusAhrsRevisionMajor;
mStatusAhrsRevisionMinor;
int
int
int
int
mStatusGpsProductCode;
mStatusGpsRevisionLevel;
mStatusGpsRevisionMajor;
mStatusGpsRevisionMinor;
int
char
char
mStatusFilterNumber;
mStatusBoardNumber[4];
mStatusSerialNumber[4];
int
int
mStatusAccelScale;
mStatusGyroScale;
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 36
//
//
//
//
//
//
//
//
varies with product type
varies with production level
major version
minor version
varies with product type
varies with production level
major version
minor version
// bandpass filter
// packed board number
// packed serial number
Rev. 07/20/2016
void
void
void
void
void
Init( void );
InsertBytes( Uint8* pszBuff, Uint32 numBytes );
decodeStatusByte (Uint8 seqNum,Uint8 status);
decodeMessage( void );
addMessage( stMsg* pMsg );
// Init() : call once at startup
//
void Init( void )
{
memset( (void*)&mSerialBuf[0], 0, sizeof(mSerialBuf) );
memset( (void*)&mMsgData[0], 0, sizeof(mMsgData) );
memset( (void*)&mError, 0, sizeof(mError) );
memset( (void*)&mStat, 0, sizeof(mStat) );
mWid
mRid
mInSync
mExpMsgCount
mMsgId
=
=
=
=
=
0;
0;
0;
0;
0;
mStatusAhrsProductCode =
mStatusAhrsRevisionLevel
mStatusAhrsRevisionMajor
mStatusAhrsRevisionMinor
-1;
= -1;
= -1;
= -1;
mStatusGpsProductCode = -1;
mStatusGpsRevisionLevel = -1;
mStatusGpsAhrsRevisionMajor = -1;
mStatusGpsRevisionMinor = -1;
mStatusFilterNumber = -1;
memset( (void*)&mStatusBoardNumber, 0, sizeof(mStatusBoardNumber) );
memset( (void*)&mStatusSerialNumber, 0, sizeof(mStatusSerialNumber) );
mStatusAccelScale = -1;
mStatusGyroScale = -1;
}
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 37
Rev. 07/20/2016
// InsertBytes() : Call each time serial port has received some number of
//
bytes (perhaps MSG_SIZE_BYTES bytes); however, this
//
function will work properly regardless of what numBytes
//
is set to, it will just loop through decoding all
//
messages to catch up. Local buffering of any partial
//
messages is maintained.
//
//
pszBuff
: ptr to newly received bytes from serial port (read only)
//
numBytes : number of bytes received
//
void InsertBytes( Uint8* pszBuff, Uint32 numBytes )
{
// check to ensure no buffer overflow
if ( ( mWid + numBytes ) <= SERIAL_BUF_SIZE )
{
memcpy( (void*)&mSerialBuf[ mWid ], (const void*)pszBuff, numBytes );
mWid += numBytes;
// check if we have enough bytes for at least one msg
while( ( mWid - mRid ) >= MSG_SIZE_BYTES )
{
decodeMessage();
}
// serial buffer management
if ( mRid == mWid )
{
// if everything in the buffer has been processed, then do a
// quick buff reset
mRid = mWid = 0;
}
else if ( mRid > (SERIAL_BUF_SIZE >> 1) )
{
// re-position if we get more than half way into the serial buffer
mWid = mWid - mRid;
memmove((void*)&mSerialBuf[0],(const void*)&mSerialBuf[mRid],mWid);
mRid = 0;
mStat.numBuffRepositions++;
}
}
else
{
mError.numSerBufOverflow++;
mRid = mWid = 0;
}
} // InsertBytes
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 38
Rev. 07/20/2016
// decodeStatusByte: Called from decodeMessage().
//
Decodes meaning of status byte send with every message
//
to report configuration parameters to host
//
void decodeStatusByte( Uint8 uCount, Uint8 statusByte )
{
if (uCount == 0)
{
if ((statusByte & 0x80) == 0)
mStatusAhrsRevisionMajor = (int) statusByte;
else
mStatusAhrsProductCode = (int) (statusByte & 0x7F);
}
else if (uCount == 1)
{
if ((statusByte & 0x80) == 0)
mStatusAhrsRevisionMinor = (int) statusByte;
else
mStatusAhrsRevisionLevel = (int) (statusByte & 0x7F);
}
else if (uCount == 2)
{
if ((statusByte & 0x80) == 0)
mStatusGpsRevisionMajor = (int) statusByte;
else
mStatusGpsProductCode = (int) (statusByte & 0x7F);
}
else if (uCount == 3)
{
if ((statusByte & 0x80) == 0)
mStatusGpsRevisionMinor = (int) statusByte;
else
mStatusGpsRevisionLevel = (int) (statusByte & 0x7F);
}
else if (uCount == 247)
{
mStatusFilterNumber = statusByte;
}
else if (uCount >= 248 && uCount <= 251)
{
mStatusBoardNumber[uCount - 248] = statusByte;
}
else if (uCount >= 252 && uCount <= 255)
{
mStatusSerialNumber[uCount - 252] = statusByte;
}
else
{
if (statusByte & 0x40) != 0)
// RANGE_SELECT
{
if ((statusByte & 0x01) != 0) // Test mode on
if ((statusByte & 0x02) != 0) // External sync mode on
if ((statusByte & 0x04) != 0) // Pressure sensor failure
if ((statusByte & 0x08) != 0) // Flash configuration failure
if ((statusByte & 0x10) != 0) // Internal software error
if ((statusByte & 0x20) != 0) // realtime processing failure
if ((statusByte & 0x80) != 0) // Self Test mode on
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 39
Rev. 07/20/2016
}
else
{
mStatusAccelScale = (statusByte & 0x0E);
mStatusGyroScale = (statusByte & 0x31);
}
}
} // decodeStatusByte
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 40
Rev. 07/20/2016
// decodeMessage() : Called from InsertBytes().
//
Decodes bytes waiting in the local serial msg buffer
//
and places any properly formed messages in a circular
//
msg buffer.
//
void decodeMessage( void )
{
Uint8
cksum;
Uint32
i;
stMsg*
pMsg;
// check for sync word
if ( mSerialBuf[ mRid ] == MSG_SYNC_BYTE )
{
// now validate the checksum
cksum = 0;
for( i=0; i < MSG_SIZE_BYTES; i++ )
{
cksum += mSerialBuf[ mRid+i ];
}
//
//
//
if
{
the result of summing all bytes in the message should be zero
(i.e. the checksum is set to be the two's complement of the sum
of the prior bytes).
( cksum == 0 )
pMsg = ( stMsg* )&mSerialBuf[ mRid ];
// check the messageCount (should be sequential)
if ( pMsg->uCount != mExpMsgCount )
{
// msg out-of-sequence
if ( mInSync )
{
// note: getting one mismatch at startup is to be expected
mError.numMsgCountMismatch++;
}
mExpMsgCount = pMsg->uCount + 1; // re-sync msg count
}
else
{
// advance expected
mExpMsgCount++;
}
mInSync = 1;
// extract sequence number and status byte and send to decoder
decodeStatusByte(mSerialBuf[ mRid+1 ],
mSerialBuf[ mRid+MSG_SIZE_BYTES-2 ] );
addMessage( pMsg );
// advance beyond the msg
mRid += MSG_SIZE_BYTES;
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 41
Rev. 07/20/2016
mStat.numValidMsgs++;
}
else
{
if ( mInSync )
{
// checksum failed: should sum to 0
mError.numChecksumMismatch++;
}
mInSync = 0;
// checksum didn't match, advance one byte and try again
mRid += 1;
}
}
else
{
if ( mInSync )
{
// went out-of-sync
mError.numLostSync++;
}
mInSync = 0;
// sync word didn't match, advance one byte and try again
mRid += 1;
}
} // decodeMessage
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 42
Rev. 07/20/2016
// addMessage() : Called from decodeMessage.
//
Places any properly formed messages in a circular
//
msg buffer. Users may want to replace this function
//
call with something appropriate to their own
//
application, processing the message as desired.
//
void addMessage( stMsg* pMsg )
{
float gyroScale = GYRO_TO_DEG_S;
// 325 degree range
float accelScale = ACCL_TO_G;
// 3G range
if
if
if
if
(mStatusGyroScale
(mStatusGyroScale
(mStatusGyroScale
(mStatusGyroScale
if
if
if
if
if
if
if
(mStatusAccelScale
(mStatusAccelScale
(mStatusAccelScale
(mStatusAccelScale
(mStatusAccelScale
(mStatusAccelScale
(mStatusAccelScale
==
==
==
==
-1)
0x31)
0x11)
0x21)
==
==
==
==
==
==
==
gyroScale
gyroScale
gyroScale
gyroScale
-1)
0x00)
0x06)
0x08)
0x0A)
0x0C)
0x0E)
= 0.0f; // range not known yet
/= 2.0f; // 165 degree range
*= 2.0f; // 650 degree range
*= 5.0f; // 1625 degree range
accelScale
accelScale
accelScale
accelScale
accelScale
accelScale
accelScale
= 0.0f;
// range not known yet
*= 10.0f; // 10G with 1mg LSB
*= 5.0f;
// 6G with 0.5mg LSB
*= 5.0f;
// 10G with 0.5mg LSB
*= 5.0f;
// 16G with 0.5mg LSB
*= 10.0f; // 32G with 1mg LSB
*= 20.0f; // 65G with 2mg LSB
#if defined( AHRS_OUTPUT ) || defined( FULL_OUTPUT ) ||
printf( "GyrX = %f deg/sec\n", ( float )pMsg->iGyrX *
printf( "GyrY = %f deg/sec\n", ( float )pMsg->iGyrY *
printf( "GyrZ = %f deg/sec\n", ( float )pMsg->iGyrZ *
printf( "AccX = %f g\n",
( float )pMsg->iAccX *
printf( "AccY = %f g\n",
( float )pMsg->iAccY *
printf( "AccZ = %f g\n",
( float )pMsg->iAccZ *
printf( "Temp = %f deg C\n",
( float )pMsg->iTemp *
#endif
#if defined( FULL_OUTPUT )
printf( "MagX = %f milligauss\n",
printf( "MagY = %f milligauss\n",
printf( "MagZ = %f milligauss\n",
printf( "Pressure = %f PA\n",
#endif
(
(
(
(
float
float
float
float
defined( GPS_AHRS_OUTPUT )
gyroScale );
gyroScale);
gyroScale);
accelScale );
accelScale);
accelScale);
TEMP_TO_DEG_C );
)pMsg->iMagX * MAG_TO_MILLIGAUSS
)pMsg->iMagY * MAG_TO_MILLIGAUSS
)pMsg->iMagZ * MAG_TO_MILLIGAUSS
)pMsg->uPressure * PRESSURE_TO_PA
);
);
);
);
#if defined( SPEC_OUTPUT
printf( "Roll
= %f
printf( "Pitch
= %f
printf( "Yaw
= %f
printf( "AirSpeed = %f
printf( "BaroAlt = %f
#endif
) || defined( FULL_OUTPUT ) || defined(
deg\n", (
float )pMsg->iRoll
*
deg\n",
( float )pMsg->iPitch
*
deg\n",
( float )pMsg->uYaw
*
m/sec\n", ( float )pMsg->iAirSpeed
*
meters\n",( float )pMsg->iBaroAlt
*
GPS_AHRS_OUTPUT )
ANGLE_TO_DEG );
ANGLE_TO_DEG );
ANGLE_TO_DEG );
AIRSPD_TO_M_S );
ALT_TO_M );
#if defined( SPEC_OUTPUT
printf( "Vx
= %f
printf( "Vy
= %f
printf( "Vz
= %f
printf( "Temp = %f deg
#endif
) || defined( FULL_OUTPUT )
m/sec\n", ( float )pMsg->iVx
* VEL_TO_M_S );
m/sec\n", ( float )pMsg->iVy
* VEL_TO_M_S );
m/sec\n", ( float )pMsg->iVz
* VEL_TO_M_S );
C\n", ( float )pMsg->iTemperature * ALT_TEMP_TO_DEG_C );
#if defined( GPS_AHRS_OUTPUT )
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 43
Rev. 07/20/2016
printf(
printf(
printf(
printf(
printf(
printf(
printf(
printf(
printf(
printf(
#endif
"vDop
"hDop
"Lat
"Long
"TimeMs
"TimeWeek
"MslAlt
"Vel
"Heading
"Num SVs
=
=
=
=
=
=
=
=
=
=
%f
%f
%f
%f
%u
%u
%f
%f
%f
%u
deg\n",
( float
deg\n",
( float
deg\n",
( float
deg\n",
( float
ms of week\n",
week number\n",
meters\n",( float
m/sec\n", ( float
deg\n",
( float
\n",
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 44
)pMsg->vDop * GPS_DOP_TO_UNITS);
)pMsg->hDop * GPS_DOP_TO_UNITS);
)pMsg->iLatitude * GPS_LATLONG_DEG);
)pMsg->iLongitude * GPS_LATLONG_DEG);
pMsg->uTimeMs );
pMsg->uTimeWeek );
)pMsg->iAltitude * GPS_ALT_TO_M );
)pMsg->uVelocity * GPS_VEL_TO_M_S );
)pMsg->uHeading
* GPS_HDG_TO_DEG );
pMsg->uNumOfSvs );
Rev. 07/20/2016
// copy into circular msg buffer
memcpy( (void*)&mMsgData[ mMsgId ], (const void*)pMsg, MSG_SIZE_BYTES );
mMsgId++;
if ( mMsgId >= MSG_BUF_SIZE )
{
mMsgId = 0;
}
} // addMessage
Using the Glamr software included in the Software Development Kit (SDK), you can use “Show
RX (decoded) msg bytes” to verify you have received the message. You can find the message at
the bottom of the window, as shown below.
Figure 25 Show TX msg to AHRS
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 45
Rev. 07/20/2016
Figure 26 Show RX Message
You can use “Show RX (raw insert) msg bytes” to view the RX raw message. You can find the
message at the bottom of the window, as shown below. To view whole message, you will have to
scroll through the message box.
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 46
Rev. 07/20/2016
Figure 27 Show RX (raw insert) msg bytes
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 47
Rev. 07/20/2016
Figure 28 Show RX (raw inert) msg bytes
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 48
Rev. 07/20/2016
12.2 Host sending commands to VG/ AHRS/ GPS
//----------------------------------------------------------------------------//----------------------------------------------------------------------------// Copyright 2007-2012 Gladiator Technologies
//
//
//
//
#include <string.h>
// memcpy, memset, memmove
typedef
typedef
typedef
typedef
typedef
typedef
char
short
long
unsigned char
unsigned short
unsigned long
Int8;
Int16;
Int32;
Uint8;
Uint16;
Uint32;
typedef union {
float f;
Uint32 u;
} uDat;
// Note that the structure below (stTxMsg) has a checksum as the 4th byte, but
// this sum actually includes not only the 3 byte previous, but the 4 bytes
// following (uData). It is located where it is so that the float value will
// be 4-byte aligned with the structure. The checksum still works the same,
// i.e. when all 8 bytes are summed, the result should be zero.
typedef struct {
Uint8
sync;
Uint8
cmd1;
Uint8
cmd2;
Uint8
cksum;
uDat
dat;
// generally a float value, but in a few cases is a Uint32
} stTxMsg;
#define TX_BYTES_PER_MSG
(sizeof(stTxMsg))
typedef union {
Uint8
u[TX_BYTES_PER_MSG];
stTxMsg m;
} uTxMsg;
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
// byte access
// message field access
Page 49
Rev. 07/20/2016
// These values relate to the cmd2 field in SendAhrsMessage, when the
// cmd1 field is set to TX_BYTE_LOAD_AHRS_COEF.
typedef enum
{
AHRS_COEF_KEY=0,
// Uint32 (constant value, do not overwrite)
AHRS_COEF_REVISION,
// Uint32
AHRS_COEF_FILTER_K,
// float
AHRS_COEF_WHEEL_DIAMETER,
// float
AHRS_COEF_A_AIRSPEED_OFFSET,
// float
AHRS_COEF_BLEND_ROLL_SCALING,
// float
AHRS_COEF_GPS_VEL_K1_N,
// float
AHRS_COEF_BLEND_YAW_SCALING,
// float
AHRS_COEF_ACCEL_THRESHOLD_T,
// float
AHRS_COEF_X_OFFSET_INPUT,
// float
AHRS_COEF_Y_OFFSET_INPUT,
// float
AHRS_COEF_Z_OFFSET_INPUT,
// float
AHRS_COEF_BLEND_ROLL_BIAS,
// float
AHRS_COEF_BLEND_PITCH_BIAS,
// float
AHRS_COEF_BLEND_YAW_BIAS,
// float
AHRS_COEF_BLEND_XVEL_BIAS,
// float
AHRS_COEF_BLEND_YVEL_BIAS,
// float
AHRS_COEF_BLEND_ZVEL_BIAS,
// float
AHRS_COEF_MAG_DEVIATION,
// float
AHRS_COEF_INITIAL_ALTITUDE,
// float
AHRS_COEF_OP_MODE,
// Uint32
AHRS_COEF_GPS_MOMENT_X0,
// float
AHRS_COEF_GPS_MOMENT_Y0,
// float
AHRS_COEF_GPS_MOMENY_Z0,
// float
AHRS_COEF_ANGLE_DELAY_S,
// float
AHRS_COEF_RT_TEMP_MIN,
// float
AHRS_COEF_RT_TEMP_MAX,
// float
AHRS_COEF_RT_CLOCK,
// float
AHRS_COEF_CHECKSUM,
// Uint32 (checksum of above words)
AHRS_COEF_NUM_WORDS
// words
} AHRS_COEF_PARAMS ;
typedef union {
float f[AHRS_COEF_NUM_WORDS];
Uint32 u[AHRS_COEF_NUM_WORDS];
} uAhrsCoefs;
#define TX_BYTE_PAUSE
#define TX_BYTE_SYNC
(0xd4)
(0x2b)
// CMD1
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
(0x01)
(0x02)
(0x03)
(0x04)
(0x05)
(0x06)
(0x07)
(0x08)
(0x09)
(0x0A)
field
TX_BYTE_CAL_OUTPUT
TX_BYTE_SPEC_OUTPUT_200
TX_BYTE_LOAD_COEF
TX_BYTE_COEF_STORE
TX_BYTE_LOAD_AHRS_COEF
TX_BYTE_AHRS_COEF_STORE
TX_BYTE_LOCK_FLASH
TX_BYTE_INITIAL_ALT
TX_BYTE_TEST_OUTPUT
TX_BYTE_SPEC_OUTPUT_100
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 50
Rev. 07/20/2016
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
#define
TX_BYTE_MAG_DEV
(0x0B)
TX_BYTE_ZERO_AIRSPEED
(0x0C)
TX_BYTE_RUN_NOW
(0x0D)
TX_BYTE_SEND_COEF_DATA (0x0E)
TX_BYTE_FULL_OUTPUT
(0x0F)
TX_BYTE_ASCII_OUTPUT
(0x10)
TX_BYTE_SPEC_OUTPUT_10 (0x11)
TX_BYTE_FULL_OUTPUT_10 (0x12)
TX_BYTE_GYRO_CAGE_OFF
(0x13)
TX_BYTE_GYRO_CAGE_XY
(0x14)
TX_BYTE_FULL_CAGE_XYZ
(0x15)
TX_BYTE_SPEC_OUTPUT_500 (0x16)
TX_BYTE_ZERO_RUNTIME
(0x17)
TX_BYTE_SPEC_OUTPUT_1000 (0x18)
TX_BYTE_FULL_OUTPUT_200 (0x19)
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 51
Rev. 07/20/2016
typedef enum {
OPMODE_IDLE=0,
OPMODE_SPEC200=1,
OPMODE_CAL=2,
OPMODE_TEST=3,
OPMODE_SPEC100=4,
OPMODE_FULL=5,
OPMODE_AHRS=6,
OPMODE_AHRS100=7,
OPMODE_ASCII=8,
OPMODE_AHRS10=9,
OPMODE_SPEC10=10,
OPMODE_SPEC500=11,
OPMODE_AHRS500=12,
OPMODE_SPEC1000=13,
OPMODE_AHRS1000=14,
OPMODE_FULL200=15,
OPMODE_ERROR=16,
OPMODE_NUMMODE=17
} tOpMode ;
// DAT field: these values relate to the data field in SendMessage
#define MODE_AHRS_MASK
(0x00010000)
#define MODE_AHRS_921K_BAUD
(0x00020000)
// replace with actual call to write bytes out to serial port
// connected to AHRS device
void _PortWrite( const char* pDat, int iNum )
{
// stub routine...replace
}
// replace with actual call to delay or sleep routine
void _Sleep( int iMilliseconds )
{
// stub routine...replace
}
// pauseAhrsOutput() : Call prior to sending a message to the AHRS device.
//
Since the AHRS uses half-duplex communication, the AHRS device
//
needs shut off its output stream in order to properly receive
//
an incoming command message. When the AHRS receives an pause
//
command, it will stop its output for several seconds. The
//
command is repeated 10 times with a 1 millisecond spacing to
//
ensure it is received while the AHRS is in-between message
//
output.
//
//
//
NOTE: In 500Hz mode, there is no time for the AHRS device to listen.
//
In this case, you have to rely on sending the pauseOutput() at
//
power up before AHRS starts consuming the bus (about 1 second)
//
void pauseOutput()
{
char
cmdBuf[8];
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 52
Rev. 07/20/2016
int
i;
for (i=0; i < sizeof(cmdBuf); i++ )
{
cmdBuf[i] = (char)TX_BYTE_PAUSE;
}
// repeat several times to ensure success
for( i=0; i < 10; i++ )
{
// fill up message buffer on unit
_PortWrite( ( const char* )&cmdBuf[0], sizeof(cmdBuf) );
_PortWrite( ( const char* )&cmdBuf[0], sizeof(cmdBuf) );
_Sleep( 1 );
// 1 millisecond delay
// send additional few bytes to cause overflow and force into listen mode
_PortWrite( ( const char* )&cmdBuf[0], 1 );
_PortWrite( ( const char* )&cmdBuf[0], 1 );
}
// wait for AHRS to capture all of this before processing with future messages
_Sleep( 5 );
} // pauseOutput
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 53
Rev. 07/20/2016
// sendAhrsMessage() : Sends a message/command to the AHRS device. Assigns
//
the fields within a properly formatted message and then computes
//
a checksum and sends the message. Note that the AHRS output is
//
paused prior to sending a message.
//
//
cmd1
: command value to AHRS.
//
cmd2
: second command value (N/A for some messages).
//
fData
: data value to send (N/A for some messages). If the data
//
value intended to be sent is actually a Uint32 value, then
//
it needs to be passed through this as if it were a float,
//
e.g. sendAhrsMessage( c1, c2, *(float*)&uData ).
-//
void sendAhrsMessage( int cmd1, int cmd2, float fData )
{
uTxMsg
msg;
int
i;
Uint8
cksum;
memset( &msg, 0, sizeof(msg) );
pauseAhrsOutput();
msg.m.sync
msg.m.cmd1
msg.m.cmd2
msg.m.dat.f
=
=
=
=
( Uint8 )TX_BYTE_SYNC;
( Uint8 )cmd1;
( Uint8 )cmd2;
fData;
cksum = 0;
for( i=0; i < TX_BYTES_PER_MSG; i++ )
{
cksum += msg.u[i];
}
msg.m.cksum = ~cksum + 1;
_PortWrite( ( const char* )&msg, TX_BYTES_PER_MSG );
} // sendAhrsMessage
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 54
Rev. 07/20/2016
// LoadAllAhrsCoefs() : Send all AHRS coefs and then send store command
//
to commit the values to AHRS Flash memory. This is called
//
only when it is desired to overwrite all the data values
//
with new values.
//
//
pCoefs
: pointer to an array containing values to be loaded to
//
the AHRS device. Note that the first and last values
//
of the data structure (keyword and checksum) are not
//
sent, and therefore are don't cares.
//
void LoadAllAhrsCoefs( uAhrsCoefs* pCoefs )
{
int j;
int numParamsUpdated;
numParamsUpdated = 0;
// don't send first or last word (first word is key, last is checksum)
for( j=1; j < (AHRS_COEF_NUM_WORDS-1); j++ )
{
sendAhrsMessage( TX_BYTE_LOAD_AHRS_COEF, j, pCoefs->f[j] );
_Sleep( 10 ); // delay for 10 milliseconds
numParamsUpdated++;
}
sendAhrsMessage( TX_BYTE_AHRS_COEF_STORE, numParamsUpdated, 0.0f );
_Sleep( 50 );
// delay for 50 milliseconds
// AHRS device should now respond with "Dwnload Success" if the
// coefficient update and store to Flash was successful.
// The new coefficient parameter values will now be used by the AHRS
// device, with the exception of operational mode (which will take
// effect on next power-cycle).
} // LoadAllAhrsCoefs
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 55
Rev. 07/20/2016
//
// LoadFilterK () : Send only updated filter K value and then send
//
the store command.
//
//
fVal
: the new filter K value.
//
void LoadFilterK( float fVal )
{
int numParamsUpdated;
sendAhrsMessage( TX_BYTE_LOAD_AHRS_COEF, AHRS_COEF_FILTER_K, fVal );
_Sleep( 10 );
// delay for 10 milliseconds
numParamsUpdated = 1;
sendAhrsMessage( TX_BYTE_AHRS_COEF_STORE, numParamsUpdated, 0.0f );
_Sleep( 50 );
// delay for 50 milliseconds
// AHRS device should now respond with "Dwnload Success" if the
// coefficient update and store to Flash was successful.
// The new K value will now be used by the AHRS device.
} // LoadFilterK
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 56
Rev. 07/20/2016
// SetMode() : Send new output mode command and then send the
//
the store command. Note that updating the operational
//
mode is different than updating other parameters, as
//
the update is not effected immediately (it will be upon
//
next power-cycle). See notes below for method to
//
enter new modes without power-cycle.
//
//
mode
: the new mode value (see tOpMode), e.g.
//
mode = OPMODE_FULL
//
mode = OPMODE_SPEC100
//
mode = OPMODE_SPEC200
//
void SetMode( Uint32 mode, Uint32 baud )
{
Uint32 uDat;
float fDat;
int
numParamsUpdated;
uDat = mode;
// desired mode
if (baud == 921600) uDat = uDat | MODE_AHRS_921K_BAUD;
fDat = *( float* )&uDat;
// force into float argument
sendAhrsMessage( TX_BYTE_LOAD_AHRS_COEF, AHRS_COEF_OP_MODE, fDat );
_Sleep( 10 );
numParamsUpdated = 1;
sendAhrsMessage( TX_BYTE_AHRS_COEF_STORE, numParamsUpdated, 0.0f );
_Sleep( 50 );
// delay for 50 milliseconds
// AHRS device should now respond with "Dwnload Success" if the
// coefficient update and store to Flash was successful.
// However, the new mode will not take effect until a power-cycle
// of the AHRS device. Alternatively, if it is desired to enter
// the new mode without a power-cycle, then after receiving the
// download complete, follow with a command to enter the new mode
// directly, e.g. one of the following:
//
sendAhrsMessage( TX_BYTE_FULL_OUTPUT,
0, 0.0f );
//
sendAhrsMessage( TX_BYTE_SPEC_OUTPUT_200, 0, 0.0f );
//
sendAhrsMessage( TX_BYTE_SPEC_OUTPUT_100, 0, 0.0f );
} // SetMode
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 57
Rev. 07/20/2016
For example, you can use “Show TX msg to AHRS” to verify you have sent the message. You
can find the message at the bottom of the window, as shown below. To view whole message, you
will have to scroll through the message box.
Figure 29 Show TX msg to AHRS
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 58
Rev. 07/20/2016
Figure 30 Show TX msg to AHRS
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 59
Rev. 07/20/2016
13 ATP SAMPLE TEST DATA & TEST METHODS
Test data in this section references actual data taken from a LandMarkTM50 AHRS (P/N:
LMRK50AHRS-100-06-100 and S/N: 600). This unit contains 100°/sec rate range G150Z gyros
and 6g linear acceleration range A40 accelerometers. Vibration data is from a LMRK50 IMU.
13.1 ATP Outputs Check
The unit is mounted on a precision Temperature Tumble Test at ambient temperature and all
outputs are verified at 100Hz Full Mode with GLAMR software:
Figure 31 GLAMR Screenshot – 100Hz Full Mode
13.2 Heading ATP
The unit is mounted in a special magnetically free test area and with a proprietary test method
both a hard and soft iron magnetic calibration is done. The unit is then rotated slowly around on
a rotary table to verify heading outputs versus calibrated data.
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 60
Rev. 07/20/2016
Figure 32 ATP Heading Error
13.3 Pitch and Roll ATP
Pitch and Roll ATP is done on precision mounting blocks at 45° angles. Self-test is also verified
again during this testing.
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 61
Rev. 07/20/2016
Figure 33 Initial Bench Readout
Figure 34 Self-Test
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 62
Rev. 07/20/2016
Figure 35 Pitch Up 45°
Figure 36 Pitch Down 45°
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 63
Rev. 07/20/2016
13.4 Gladiator ATP Explanation
13.4.1 Rate Spin Test:
Data is captured at 100Hz data rate. The unit is mounted on an orthogonal test fixture and spun at
about ½ of the full scale rate range. Only the rate scale factors and IMU mis-alignments are
measured. The data has been scaled by the test software. The spin rate in the data below was
144°/sec. Each column is the data taken for the axis name at the top of the column during the test
at the left. The final values printed in green fall within the “passing” values for the unit (note
that all passed).
Figure 37 Rate Spin Test
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 64
Rev. 07/20/2016
13.4.2 Accelerometer Tumble Test:
Data is captured at 100Hz data rate. The unit is mounted on an orthogonal test fixture and placed
in ±1g and ± 0gs in this test. During this test the IMU biases are measured as well as the IMU gsensitivity are measured.
Figure 38 Accelerometer Tumble Test Data
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 65
Rev. 07/20/2016
13.5 Angle Random Walk
The unit is mounted on an orthogonal fixture and is turned on with no input. Data is captured at
200Hz data rate. The white noise due to angular rate is measured. ARW is typically expressed in
our datasheets in degrees per second per square root hertz (°/sec/√Hz), which is standard for
most MEMS gyros. However, our performances are now commiserate with higher performing
small open loop FOGs and small RLG’s, so we also denote ARW in degrees per square root hour
[º/√h].
Figure 39 Angle Random Walk (ARW)
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 66
Rev. 07/20/2016
13.6 Velocity Random Walk
The unit is mounted on an orthogonal fixture and is turned on with no input. Data is captured at
200Hz data rate. The velocity error build-up with time, that is due to white noise in acceleration,
is measured. VRW is typically expressed in our datasheets in milli-g per square root hertz
(mg/√Hz), which is standard for most MEMS accelerometers. However, our performances are
now approaching higher performing quartz based servo accelerometers, so we also denote VRW
in meters per second per square root hour [(m/s)/√h].
Figure 40 Velocity Random walk
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 67
Rev. 07/20/2016
13.7 Bias In-Run
The unit is placed on an orthogonal test fixture. Data is captured at 100Hz data rate. Then the
bias of the accelerometers and Gyro s are measured at 1 Hz average. After a 5 minute warm-up
period, the data is taken for 5 minutes at ambient temperature. The test conditions should be
similar to what a user should likely have during initial setup approximately within 5 minutes
after turn-on.
Figure 41 X Gyro Bias In-Run
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 68
Rev. 07/20/2016
Figure 42 Y Gyro Bias In-Run
Figure 43 Z Gyro Bias In-Run
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 69
Rev. 07/20/2016
Figure 44 X accelerometer Bias In-Run
Figure 45 Y Accelerometer Bias In-Run
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 70
Rev. 07/20/2016
Figure 46 Z accelerometer In-Run Bias
13.8 Bias and Scale Factor Over Temperature
Data is captured at 100Hz data rate. The temperature calibration process measures temperature at
a minimum of 5 set points from -40°C to +85°C at a slew rate of approximately 1-2°/minute. A 9
point correction table is generated that identifies temperature based offsets for each of the IMU
data set. Depending upon the variable, up to a 4th order thermal model is used to create a
correction model that is stored in the unit.
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 71
Rev. 07/20/2016
13.8.1 Gyro Bias Over Temperature
Figure 47 X Gyro Bias Over Temperature
Figure 48 Y Gyro Bias Over Temperature
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 72
Rev. 07/20/2016
Figure 49 Z Gyro Bias Over Temperature
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 73
Rev. 07/20/2016
13.8.2 Gyro Scale Factor Over Temperature
Figure 50 X Gyro Scale Factor Over Temperature
Figure 51 Y Gyro Scale Factor Over Temperature
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 74
Rev. 07/20/2016
Figure 52 Z Gyro Scale Factor Over Temperature
13.8.3 Accelerometer Bias Over Temperature
Figure 53 x Accelerometer Bias Over Temperature
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 75
Rev. 07/20/2016
Figure 54 Y Accelerometer Bias Over Temperature
Figure 55 Z Accelerometer Bias Over Temperature
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 76
Rev. 07/20/2016
13.8.4 Accelerometer Scale Factor Bias Over Temperature
Figure 56 X Scale Factor Over Temperature
Figure 57 Y Accelerometer Scale Factor Over Temperature
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 77
Rev. 07/20/2016
Figure 58 Z Accelerometer Scale Factor Over Temperature
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 78
Rev. 07/20/2016
13.9 Bias Turn-On (from a Cold Start)
The DIGS100 is NOT specified for this condition. This data is supplied for customer reference
only. Data is captured at 100Hz data rate for 25 minutes and we chart 1Hz average data for the
first five minutes. Test conditions assume a unit has been powered off for a minimum of at least
five minutes and then data is taken at ambient temperature from initial power-on to determine
sample turn-on transient performance. It should be noted that most of the turn-on transient occurs
during the initial two minutes after power-on and after that it essential performs near the
specified Bias In-Run performance level.
Figure 59 X Gyro Bias Turn-On
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 79
Rev. 07/20/2016
Figure 60 Y Gyro Bias Turn-On
Figure 61 Z Gyro Bias Turn-On
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 80
Rev. 07/20/2016
Figure 62 X Accelerometer Bias Turn-On
Figure 63 Y Accelerometer Bias Turn-On
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 81
Rev. 07/20/2016
Figure 64 Z Accelerometer Bias Turn-On
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 82
Rev. 07/20/2016
13.10 Bias Turn-On to Turn-On (TOTO) Repeatability
The DIGS100 is NOT specified for this condition. This data is supplied for customer reference
only. Data is captured at 200Hz data rate. Test conditions assume a unit has been powered off for
a minimum of at least five minutes and then data is taken from initial power-on and averaged
over two minutes to determine initial offset bias and repeated for five cycles to determine sample
turn-on to turn-on repeatability performance.
Figure 65 GyroBias Turn-On to Turn-On (TOTO) Repeatability
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 83
Rev. 07/20/2016
Figure 66 Accelerometer Bias Turn-On to Turn-On (TOTO) Repeatability
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 84
Rev. 07/20/2016
13.11 Random and Sine Vibration
13.11.1 Random Vibration:
Data is captured at 200Hz data rate on a factory shaker. The unit is subject to random frequencies
with total energy contained in the vibration profile of 5.74gRMS. The delta shift for each gyro
and accelerometer is measured before and after the run. Also measured during vibe is the
Vibration Rectification Coefficients (VRC) of the unit.
Figure 67 Random Vibration Test Data
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 85
Rev. 07/20/2016
13.11.2 Sine Vibration Test:
Data is captured at 200Hz data rate on a factory shaker. The unit is subject to a sine sweep of
various frequencies from 30Hz to 3000Hz and delta shifts are calculated before and after the run.
Also measured during vibe is the Vibration Rectification Coefficients (VRC) of the unit.
13.11.3 Gyro Sine Vibration Response
Figure 68 X Gyro Sine Vibration Response
Figure 69 Y Gyro Sine Vibration Response
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 86
Rev. 07/20/2016
Figure 70 Z Gyro Sine Vibration Response
13.11.4 Accelerometer Sine Vibration Response
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 87
Rev. 07/20/2016
Figure 71 X Accelerometer Sine Vibration Response
Figure 72 Y Accelerometer Sine Vibration Response
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 88
Rev. 07/20/2016
Figure 73 Z Accelerometer Sine Vibration Response
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 89
Rev. 07/20/2016
13.12 Power Supply Sensitivity
Figure 74 Power Supply Sensitivities
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 90
Rev. 07/20/2016
14 DIGS100 AHRS SOFTWARE DEVELOPMENT KIT (SDK)
Gladiator Technologies works with highly qualified distributors worldwide to maximize the
distribution of our quality systems and sensor products. Select your location on our website to
contact the distributor representing your location. www.GladiatorTechnologies.com
If there isn't a local representative listed below for your location, please contact our Headquarter
offices for assistance and someone from our Sales Team will assist you.
The DIGS100 AHRS Software Development Kit (SDK) is an optional product to assist first time
users of the DIGS100 AHRS. This kit provides the user everything they need to facilitate a rapid
setup and test of the unit. The SDK (P/N LMRK50AHRS-DEMO-120) and includes display
software with user defined options including the following components:









Turn-Key Solution for DIGS100 AHRS on User PC
All Cabling, Interface Connectors and Software Included and Ready for Use
Easy Integration of Direct AHRS RS422/RS485 to PC’s USB Port
Includes PC Display Software for AHRS
Data Record Capability
Multiple User Selected Field Options for Programming and Initializing the Unit
User Defined Bandwidth Settings and Data Output Rate on AHRS
Battery-Powered Power Supply (1.5 Hours Typical)
Self-Test Switch
14.1 Installation CD-ROM
If you purchased the SDK then please insert the CD-ROM titled GLAMR– DIGS100 MEMS
AHRS SDK User Software and copy the GLAMR software (see GLAMR Icon depicted below)
to the hard drive on your computer.
Figure 75 GLAMR CD-ROM
Figure 76 GLAMR Software Icon
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 91
Rev. 07/20/2016
14.2 RS485 to USB Power Supply & Converter Cable
Contained in the Software Development Kit (SDK) is a complete RS485 to USB Converter cable
including battery powered power supply and self-test switch (see photo below). The power
supply uses USB power regulated to 3.3V.
An RS485 to USB converter (it requires additional drivers that are included in a CD-ROM) is
also included.
Figure 77 SDK Box, USB Converter & Self-Test
This power supply converter cable and self-test switch enables the user to quickly connect the
DIGS100 AHRS to their PC to ease integration and testing. Connect the Computer Interface
Device to the PC with the USB cable. You do not need to turn on the power switch yet until the
rest of the software is installed.
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 92
Rev. 07/20/2016
Connector to Unit
Figure 78 Unit Connector
14.3 DIGS100 AHRS Mating Connector
The DIGS100 AHRS mating connector and mating pins are contained in a separate package to
enable customer-specific wiring options (please see items 4 and 5 in the table in Section 10). If
you purchased the SDK then you also have an RS485 Converter board and USB connector mate
and mating pins as well. The wiring diagram for the RS485 to USB Converter Schematic is
pictured below.
Figure 79 DIGS100 SDK – RS485 to USB Converter Schematic
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 93
Rev. 07/20/2016
14.4 STOP! Read This First
You must first install the USB drivers from the enclosed
USB Driver CD ROM before using Glamr to read the unit.
Look on the CD ROM under Linx SW and perform the
instructions in “Read Me First - Installation Guide” (see
Figure 21 below, now in PDF format).
Note: This driver is designed for windows programs only.
Figure 80 Linx USB Read Me First - Installation Guide
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 94
Rev. 07/20/2016
Installing the SDM-USB-QS-S Drivers
WIRELESS MADE SIMPLE
Introduction
The Linx SDM-USB-QS-S module requires that device drivers be installed on the host PC before
they can interact. The drivers tell the PC how to talk to the module. These drivers are for
Windows 98, XP, NT, Windows 7, Windows 8, and one set for Linux.
The set for Windows are the direct drivers, which offer a set of program functions that allow a
custom application to directly control the module through the USB port.
The drivers are located on the CD in the VCP Drivers folder
Installing the Direct Drivers
The drivers are included and should be saved onto the hard drive of a PC or onto a flash drive.
Click on the QS_Driver_Installer.msi for the Setup Wizard.
Figure 81 Driver Setup Wizard
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 95
Rev. 07/20/2016
Click I agree
Figure 82 License Agreement Prompt
Click on Next up arrival at the installation folder prompt.
Figure 83 Installation Folder Prompt
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 96
Rev. 07/20/2016
Click on Next at the driver package information prompt.
●
Windows 8
Figure 84 Driver Package information Prompt
Note: Plug in the USB port before you turn the device power on, to avoid Windows loads
as a mouse driver.
Figure 85 Driver Installation Status
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 97
Rev. 07/20/2016
14.5 GLAMR Software Installation
Now install the GLAMR application off of the CD-ROM, right, by navigating in explorer to
the file depicted below.
Figure 86 SDK Software CD-ROM
Open the GLAMR file (see figure below) in the
enclosed CD ROM and copy Glamr to the hard drive.
Figure 87 GLAMR Location on the SDK CD-ROM
Once you have copied the Glamr application then you need to create a shortcut on your desktop
to the application. Right click on the Glamr Software icon on your hard drive file. Select create
shortcut. Drag this shortcut file and drop on your desktop, as shown below.
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 98
Rev. 07/20/2016
Figure 88 GLAMR Shortcut Software Icon
Open the GLAMR software and a window will appear as shown below. Only one copy of
Glamr can be open at a time therefore make sure there is not another copy open on the task bar.
If there are multiple copies of Glamr open, you will see a message at the bottom of the AHRS
Display window as shown.
Figure 89 GLAMR Message ERROR opening
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 99
Rev. 07/20/2016
Reconnect the USB plug to the SDK and select your COM port on the drop down menu. The
“LINX” port should have a checkmark next to it. The bottom of the window should now read
“AHRS serial port (LINX SDM-USB, 115200, E82) success”, as shown below.
The message at the bottom of the AHRS Display window should read the Com Port selected
followed by “success”, as shown below.
Figure 90 Message success
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 100
Rev. 07/20/2016
Figure 91 Confirmed Correct COM Port with Message “success”
With the correct Com Port selected, the message at the bottom of the AHRS Display window
should read the Com Port selected followed by “success”, as shown.
If you do not get this message you will need to go back and repeat the above steps. Note that
only one copy of Glamr can be open at a time so make sure there is not another copy open on the
task bar below. Turn on the power switch on the unit power supply and you should see data
appear in the window as shown below. You should be able to move the AHRS with your hand
and see changes in rate and acceleration for each axis located within the AHRS on the screen.
Note that the screen is a one second average and the data may not change instantaneously. To
see rapid change the record function will capture real time data without the filter effect on the
screen.
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 101
Rev. 07/20/2016
Figure 92 AHRS Data in Full Mode at 100Hz Data Rate
The message shown in the lower left of the box as: “AHRS serial port (LINX SDM-USB,
115200, 8E2) success” indicates that the GLAMR program is reading the port. The next message
“Msg out-of-sequence: exp 0, act 96” indicates that the program saw a skip in the message count.
This case will happen at start-up and can be ignored. The last message “Accel re-scale set to
0.5” indicates that the program detected a 10g range Accel and rescaled the LSB to take into
account a 0.5mg LSB scaling to display and record the units in g’s.
14.6 Self-Test in GLAMR
GLAMR includes a self-test function. The user can initiate the self-test by the momentary
switch, contained within the Switch box that is included in the DIGS100 AHRS SDK.
Press the switch button to activate self-test of the sensors. The GLAMR display will now show
SELF-TEST is activated while also showing the data outputs. You should see a delta change in
the X, Y and Z sensor outputs when you initiate self-test per the data sheet.
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 102
Rev. 07/20/2016
Figure 93 Power and Self-Test Momentary Switch
Self-Test is now
displayed and
active
Figure 94 Self-Test Display When Activated ON
14.7 Setting the Mode and Data Rate
The SDK software also has a data rate adjustment and data set selection. This feature is selected
under Mode as shown. This allows a reduced data set in Spec mode.
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 103
Rev. 07/20/2016
Mode Selection
Spec Mode at 200 Hz– Do Not
Use
Spec Mode at 100 Hz– Do Not
Use
Full Mode at 100 Hz– Available
for Pitch & Roll Angle Outputs on
Vertical Gyro Version of Unit
Full Mode at 200 Hz– Available
for Pitch & Roll Angle Outputs on
Vertical Gyro Version of Unit
Figure 95 Mode Selection / Data Rate
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 104
Rev. 07/20/2016
Figure 96 Mode Selection
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 105
Rev. 07/20/2016
14.8 Unit Display Options
The SDK software also can set the dimensional units of the display. This is selected under Units.
Figure 97 Units of Measure Selection Options
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 106
Rev. 07/20/2016
14.9 Data Record Feature
The SDK software also has a data record feature that captures data outputting from the AHRS
and puts in .CSV format. This enables the user to easily convert these data files to EXCEL or
database format. The user should select with their mouse the Start Recording button to initiate
data record function. When they wish to stop recording simply click the Stop Recording button.
Data Record
Capability
Figure 98 Data Record Options
Select “Start Record” and designate the file name and location before the recording begins. To
begin data record function click on Open:
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 107
Rev. 07/20/2016
Click on Open to
start recording.
Figure 99 Saving Data Record Files
14.10 Bandwidth Filtering Capability
Note that our standard DIGS100 AHRS is optimized for high bandwidth, so the gyros are set at
200Hz. True bandwidth which includes the 100Hz sampling effects has the -3dB point is
approximately 50Hz. These are the settings for the standard unit when shipped and the noise
may not be optimized for an end-user’s specific application. The high bandwidth is ideal for
dynamic applications where the high bandwidth would be required to close control loops in flight
control in a UAV for example. However, in UAV navigation a lower bandwidth would be
possible and we would see an improvement in peak-to-peak noise. Laboratory uses, automotive
monitoring or stabilization applications would likely prefer reduced peak-to-peak noise and
could tolerate reduced bandwidth.
The DIGS100 AHRS Software Development Kit offers the end-user the capability to set
bandwidth filtering in permanent memory that enables the end-user to set lower bandwidth than
50Hz and benefit from the reduced peak-to-peak noise of the sensors in the AHRS.
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 108
Rev. 07/20/2016
Bandwidth
Hz
Sensor
50
40
35
30
25
20
10
1
100Hz
200Hz
1
0.957
0.92
0.89
0.848
0.792
0.715
0.467
0.061
1
0.792
0.715
0.667
0.61
0.544
0.47
0.27
0.031
500Hz
1
0.467
0.395
0.356
0.314
0.27
0.222
0.118
0.0125
1000Hz
1
0.2696
0.2222
0.1974
0.1718
0.14536
0.1181
0.0609
0.00625
Select on desired
Bandwidth
Figure 100 Select Desired Bandwidth Filter from Drop Down Menu
Then select the desired true bandwidth of the gyros with the software filter. The user can select
from 75Hz (standard units are shipped with this setting) or from the other bandwidth options all
the way down to 1Hz. Once this is set and the user takes and confirms data with this new setting
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 109
Rev. 07/20/2016
the DIGS100 AHRS bandwidth filter setting will remain at the setting until the user changes it in
the same manner as detailed above.
14.11 Zeroing Out the Airspeed
Upon receipt of the unit from the factory the user should reset the airspeed by selecting out the
Zero Out Airspeed Icon pictured below.
Select Zero Out
Airspeed
Figure 101 Zero Out Airspeed from Load Menu
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 110
Rev. 07/20/2016
Figure 102 Zero Out Airspeed
14.12 Loading Initial Parameters
The AHRS SDK provides the user with the capability of loading initial parameters. The options
are shown under Load as shown and results in reading the prior coefficients that were loaded into
the AHRS and then can be updated per the table.
Select Load
AHRS Coefs
Figure 103 Loading AHRS Coefficients
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 111
Rev. 07/20/2016
Coef Revision - keep this number
Filter K - Per Table for Selected Bandwidth
Wheel Diameter - Per Table for Velocity Input
Airspeed Offset - Adjusted for zero
Magnetic Deviation - Local Deviation from North
Initial Altitude - Offset of Barometric Pressure
Operational Mode Selected
Angle Delay - keep this number
Blending Filter K - keep this number
GPS Velocity K1 - keep this number
Accel Threshold - keep this number
Vehicle X Offset - Offset from Vehicle CG forward
Vehicle Y Offset - Offset from Vehicle CG right
Vehicle Z Offset - Unit Offset from Vehicle CG up
GPS X Offset - Antenna Offset CG forward
Ignore this setting
GPS Y Offset - Antenna Offset CG right
Ignore this setting
GPS Z Offset - Antenna Offset CG up
Ignore this setting
Minimum Temperature Unit has ever seen
Maximum Temperature Unit has ever seen
Unit Run time in hours
Figure 104 Definitions for Uploading AHRS Coefficients
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 112
Rev. 07/20/2016
14.13 Wheel Diameter – IMPORTANT
The AHRS incorporates an algorithm correction for turning error. The data and display reflects
this turning error correction and will work properly when you port into the unit external velocity
through the spare external data port and it will show your roll angle accurately. When inputting a
value into the wheel diameter the user has several options available depending upon their
application:
If you input Wheel Diameter as a positive number then the unit will determine that you are using
a wheel counter for external velocity input.
If you input Wheel Diameter as a ZERO then the unit will be scaled to use a differential input of
1.45 differential psi via a pitot tube analog voltage input of 0V to 5V = 500Knots.
If you input Wheel Diameter as a negative number then the unit will be scaled as 0 to 5 Volts
scaled to 0 to 500 Knots linear voltage proportional to true air speed.
Case Wheel Diameter Value
Condition
1
+ Diameter in feet
2
Zero Diameter
3
-1 Diameter
4
-2 Diameter
5
-3 Assumes 3Hz Update
-4 Assumes 4Hz Update
-5 Assumes 5Hz Update
-10 Assumes 10Hz Update
-20 Assumes 20Hz Update
-50 Assumes 50Hz Update
-100 Assumes 100Hz Update
Uses logic level pulses of 3.3 to 5V
rising edge per one turn and computes
velocity as π times dia divided by
period measured between pulses
Airspeed 0V to 5V analog input, 1.45
differential pressure sensor from
pitot tube input
Airspeed 0V to 5V analog input,
linear velocity from 0 to 500 knots
Assumes GPS update rate of 4Hz (same
as -4 in case 5 below).
Airspeed 0V to 5V analog input,
linear velocity from 0 to 500 knots
Airspeed 0V to 5V analog input,
linear velocity from 0 to 500 knots
Assumes GPS update rate of 3Hz (-3)
up to 100Hz (-100) and all cases in
between (-5 is 5Hz update etc.)
Figure 105 External Air/Wheel Speed Input Conditions
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 113
Rev. 07/20/2016
GUI Attitude Indicator Display –Laboratory Use Only ** NOT Flight Certified**
The latest versions of the DIGS100 AHRS SDK includes new GUI software including attitude
indicator display, heading, airspeed (if ported into the AHRS) and altitude (the user will need to
set the barometric pressure as indicated in other sections of the User Guide for correct readings).
After downloading the “Glamr_AHRS.exe” or later executable contained in the AHRS SDK.
You will know it has been downloaded correctly when you see the GLAMR Icon pictured here:
Figure 106 GLAMR AHRS Desktop Icon
The User will also need to click SetupGlamrINSGPSA.msi and Demo Read me.txt to install and
use the attitude indicator display feature.
Then open the Glamr application and power up the AHRS. Click on the task bar “View” and
Select Demo and the new attitude display on the DIGS100 AHRS SDK should appear and move
as you move the unit. Should you have any questions or comments please contact us at your
convenience.
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 114
Rev. 07/20/2016
Figure 107 Click View for Attitude Indicator GUI Display
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 115
Rev. 07/20/2016
Figure 108 Glamr Display Software (Click View on the Toolbar to Activate)
Figure 109 Warning Notice
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 116
Rev. 07/20/2016
Figure 110 GUI Attitude Indicator Display
14.14 Mounting
Mounting for the DIGS100 AHRS accommodates both metric and U.S. mounting screws. Mount
the unit to a flat surface with 4ea Number 8 screws (U.S.) or 4ea Number 4 metric stainless steel
screws. Be sure that the surface that you are mounting to is as clean and as level as possible in
order to eliminate potential alignment errors. Avoid mounting near magnetic materials (if using
the AHRS which contains a magnetometer) as this will degrade the heading accuracy (see
sections below for more information).
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 117
Rev. 07/20/2016
14.15 Centrifugal Force Error Effects with Constant Turns
Users should be aware that during constant turns Centrifugal Force can significantly affect Roll
and Pitch accuracy of ALL inertial navigation systems (AHRS and Navigation Systems). It is
important that a forward velocity input be input into these systems to correct for this centrifugal
force error if there is sufficient velocity.
15 TECHNICAL SUPPORT
15.1 Technical Documentation Available on Website
Our website contains detailed product information for each product. Just select Products from the
main navigation bar, select Systems and select your product of interest.
Figure 111 Website – Select Product Category
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 118
Rev. 07/20/2016
Figure 112 Select Product of Interest
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 119
Rev. 07/20/2016
Figure 113 Documentation Tab & Technical Data Available
The Technical support webpage has user training videos; the latest software downloads as well
as Remote Desktop Assistance.
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 120
Rev. 07/20/2016
Figure 114 Technical Support Web Page
Figure 115 Training & Setup Videos Web Page
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 121
Rev. 07/20/2016
Figure 116 Remote Desktop Support Web Page
Figure 117 Web Conferencing Web Page
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 122
Rev. 07/20/2016
15.2 Troubleshooting & Further Technical Assistance
Please contact the factory or your local Gladiator Technologies sales representative's office for
technical assistance.
Technical Support - USA
Gladiator Technologies Inc.
Attn: Technical Support
8020 Bracken Place SE
Snoqualmie, WA 98065 USA
Tel: 425-396-0829 x222
Fax: 425-396-1129
Email: [email protected]
Web: www.gladiatortechnologies.com
15.3 Authorized Distributors and Technical Sales Representatives:
http://www.gladiatortechnologies.com/Intl/Contact.html
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 123
Rev. 07/20/2016
16 GLOSSARY OF TERMS
Gladiator Technologies has attempted to define terms as closely as possible to the IEEE Gyro
and Accelerometer Panel Standards for Inertial Sensor Terminology. Please note that in some
instances our definition of a term may vary and in those instances Gladiator Technologies’
definition supersedes the IEEE definition. For a complete listing of IEEE's standard for inertial
sensor terminology please go to www.ieee.org.
16.1 Abbreviations and Acronyms
6DOF: six degrees-of-freedom
AHRS: Inertial Measurement Unit
CVG: Coriolis Vibratory Gyro
ESD: Electro Static Discharge
IEEE: The Institute of Electrical and Electronics Engineers
MEMS: Micro Electro-Mechanical Systems
NLR: No License Required
16.2 Definitions of Terms
Acceleration-insensitive drift rate (gyro): The component of environmentally sensitive drift
rate not correlated with acceleration.
NOTE—Acceleration-insensitive drift rate includes the effects of temperature, magnetic, and
other external influences.
Acceleration-sensitive drift rate (gyro): The components of systematic drift rate correlated
with the first power of a linear acceleration component, typically expressed in (°/h)/g.
Accelerometer: An inertial sensor that measures linear or angular acceleration. Except where
specifically stated, the term accelerometer refers to linear accelerometer.
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 124
Rev. 07/20/2016
Allan variance: A characterization of the noise and other processes in a time series of data as a
function of averaging time. It is one half the mean value of the square of the difference of
adjacent time averages from a time series as a function of averaging time.
Angular acceleration sensitivity:
(accelerometer): The change of output (divided by the scale factor) of a linear accelerometer that
is produced per unit of angular acceleration input about a specified axis, excluding the response
that is due to linear acceleration.
(gyro): The ratio of drift rate due to angular acceleration about a gyro axis to the angular
acceleration causing it.
NOTE—In single-degree-of-freedom gyros, it is nominally equal to the effective moment of
inertia of the gimbal assembly divided by the angular momentum.
Bias:
(accelerometer): The average over a specified time of accelerometer output measured at
specified operating conditions that have no correlation with input acceleration or rotation. Bias is
expressed in [m/s2, g].
(gyro): The average over a specified time of gyro output measured at specified operating
conditions that have no correlation with input rotation or acceleration. Bias is typically expressed
in degrees per hour (º/h).
NOTE—Control of operating conditions may address sensitivities such as temperature, magnetic
fields, and mechanical and electrical interfaces, as necessary.
Case (gyro, accelerometer): The housing or package that encloses the sensor, provides the
mounting surface, and defines the reference axes.
Composite error (gyro, accelerometer): The maximum deviation of the output data from a
specified output function. Composite error is due to the composite effects of hysteresis,
resolution, nonlinearity, non-repeatability, and other uncertainties in the output data. It is
generally expressed as a percentage of half the output span.
Coriolis acceleration: The acceleration of a particle in a coordinate frame rotating in inertial
space, arising from its velocity with respect to that frame.
Coriolis vibratory gyro (CVG): A gyro based on the coupling of a structural, driven, vibrating
mode into at least one other structural mode (pickoff) via Coriolis acceleration.
NOTE—CVGs may be designed to operate in open-loop, force-rebalance (i.e., closed-loop),
and/or whole-angle modes.
Cross acceleration (accelerometer): The acceleration applied in a plane normal to an
accelerometer input reference axis.
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 125
Rev. 07/20/2016
Cross-axis sensitivity (accelerometer): The proportionality constant that relates a variation of
accelerometer output to cross acceleration. This sensitivity varies with the direction of cross
acceleration and is primarily due to misalignment.
Cross-coupling errors (gyro): The errors in the gyro output resulting from gyro sensitivity to
inputs about axes normal to an input reference axis.
Degree-of-freedom (DOF) (gyro): An allowable mode of angular motion of the spin axis with
respect to the case. The number of degrees-of-freedom is the number of orthogonal axes about
which the spin axis is free to rotate.
Drift rate (gyro): The component of gyro output that is functionally independent of input
rotation. It is expressed as an angular rate
Environmentally sensitive drift rate (gyro): The component of systematic drift rate that
includes acceleration-sensitive, acceleration-squared-sensitive, and acceleration-insensitive drift
rates.
Full-scale input (gyro, accelerometer): The maximum magnitude of the two input limits.
G: The magnitude of the local plumb bob gravity that is used as a reference value of
acceleration.
NOTE 1—g is a convenient reference used in inertial sensor calibration and testing. NOTE 2—
In some applications, the standard value of g = 9.806 65 m/s2 may be specified.
Gyro (gyroscope): An inertial sensor that measures angular rotation with respect to inertial
space about its input axis (es).
NOTE 1—The sensing of such motion could utilize the angular momentum of a spinning rotor,
the Coriolis effect on a vibrating mass, or the Sagnac effect on counter-propagating light beams
in a ring laser or an optical fiber coil.
G sensitivity (gyro): the change in rate bias due to g input from any direction.
Hysteresis error (gyro, accelerometer): The maximum separation due to hysteresis between
upscale-going and down-scale-going indications of the measured variable (during a full-range
traverse, unless otherwise specified) after transients have decayed. It is generally expressed as an
equivalent input.
Inertial sensor: A position, attitude, or motion sensor whose references are completely internal,
except possibly for initialization.
Input angle (gyro): The angular displacement of the case about an input axis.
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 126
Rev. 07/20/2016
Input axis (IA):
(accelerometer): The axis(es) along or about which a linear or angular acceleration input causes
a maximum output.
(gyro): The axis(es) about which a rotation of the case causes a maximum output.
Input-axis misalignment (gyro, accelerometer): The angle between an input axis and its
associated input reference axis when the device is at a null condition.
Input limits (gyro, accelerometer): The extreme values of the input, generally plus or minus,
within which performance is of the specified accuracy.
Input range (gyro, accelerometer): The region between the input limits within which a quantity
is measured, expressed by stating the lower- and upper-range value. For example, a linear
displacement input range of ±1.7g to ±12g.
Input rate (gyro): The angular displacement per unit time of the case about an input axis. For
example, an angular displacement input range of ±150°/sec to ±300°/sec.
Input reference axis (IRA) (gyro, accelerometer): The direction of an axis (nominally parallel
to an input axis) as defined by the case mounting surfaces, or external case markings, or both.
Linear accelerometer: An inertial sensor that measures the component of translational
acceleration minus the component of gravitational acceleration along its input axis(es).
Linearity error (gyro, accelerometer): The deviation of the output from a least-squares linear
fit of the input-output data. It is generally expressed as a percentage of full scale, or percent of
output, or both.
Mechanical freedom (accelerometer): The maximum linear or angular displacement of the
accelerometer’s proof mass, relative to its case.
Natural frequency (gyro, accelerometer): The frequency at which the output lags the input by
90°. It generally applies only to inertial sensors with approximate second-order response.
Non-gravitational acceleration (accelerometer): The component of the acceleration of a body
that is caused by externally applied forces (excluding gravity) divided by the mass.
Nonlinearity (gyro, accelerometer): The systematic deviation from the straight line that defines
the nominal input-output relationship.
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 127
Rev. 07/20/2016
Open-loop mode (Coriolis vibratory gyro): A mode in which the vibration amplitude of the
pickoff is proportional to the rotation rate about the input axis (es).
Operating life (gyro, accelerometer): The accumulated time of operation throughout which a
gyro or accelerometer exhibits specified performance when maintained and calibrated in
accordance with a specified schedule.
Operating temperature (gyro, accelerometer): The temperature at one or more gyro or
accelerometer elements when the device is in the specified operating environment.
Output range (gyro, accelerometer): The product of input range and scale factor.
Output span (gyro, accelerometer): The algebraic difference between the upper and lower
values of the output range.
Pickoff (mechanical gyro, accelerometer): A device that produces an output signal as a
function of the relative linear or angular displacement between two elements.
Plumb bob gravity: The force per unit mass acting on a mass at rest at a point on the earth, not
including any reaction force of the suspension. The plumb bob gravity includes the gravitational
attraction of the earth, the effect of the centripetal acceleration due to the earth rotation, and tidal
effects. The direction of the plumb bob gravity acceleration defines the local vertical down
direction, and its magnitude defines a reference value of acceleration (g).
Power spectral density (PSD): A characterization of the noise and other processes in a time
series of data as a function of frequency. It is the mean squared amplitude per unit frequency of
the time series. It is usually expressed in (º/h)2/Hz for gyroscope rate data or in (m/s2)2/Hz or
g2/Hz for accelerometer acceleration data.
Principal axis of compliance (gyro, accelerometer): An axis along which an applied force
results in a displacement along that axis only.
Proof mass (accelerometer): The effective mass whose inertia transforms an acceleration along,
or about, an input axis into a force or torque. The effective mass takes into consideration rotation
and contributing parts of the suspension.
Quantization (gyro, accelerometer): The analog-to-digital conversion of a gyro or
accelerometer output signal that gives an output that changes in discrete steps, as the input varies
continuously.
Quantization noise (gyro, accelerometer): The random variation in the digitized output signal
due to sampling and quantizing a continuous signal with a finite word length conversion. The
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 128
Rev. 07/20/2016
resulting incremental error sequence is a uniformly distributed random variable over the interval
1/2 least significant bit (LSB).
Random drift rate (gyro): The random time-varying component of drift rate.
Random walk: A zero-mean Gaussian stochastic process with stationary independent
increments and with standard deviation that grows as the square root of time.
Angle random walk (gyro): The angular error buildup with time that is due to white noise in
angular rate. This error is typically expressed in degrees per square root of hour [º/√h].
Velocity random walk (accelerometer): The velocity error build-up with time that is due to
white noise in acceleration. This error is typically expressed in meters per second per square root
of hour [(m/s)/√h].
Rate gyro: A gyro whose output is proportional to its angular velocity with respect to inertial
space.
Ratiometric output: An output method where the representation of the measured output
quantity
(e.g., voltage, current, pulse rate, pulse width) varies in proportion to a reference quantity.
Rectification error (accelerometer): A steady-state error in the output while vibratory
disturbances are acting on an accelerometer.
Repeatability (gyro, accelerometer): The closeness of agreement among repeated
measurements of the same variable under the same operating conditions when changes in
conditions or non-operating periods occur between measurements.
Resolution (gyro, accelerometer): The largest value of the minimum change in input, for inputs
greater than the noise level, that produces a change in output equal to some specified percentage
(at least 50%) of the change in output expected using the nominal scale factor.
Scale factor (gyro, accelerometer): The ratio of a change in output to a change in the input
intended to be measured. Scale factor is generally evaluated as the slope of the straight line that
can be fitted by the method of least squares to input-output data.
Second-order nonlinearity coefficient (accelerometer): The proportionality constant that
relates a variation of the output to the square of the input, applied parallel to the input reference
axis.
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 129
Rev. 07/20/2016
Sensitivity (gyro, accelerometer): The ratio of a change in output to a change in an undesirable
or secondary input. For example: a scale factor temperature sensitivity of a gyro or accelerometer
is the ratio of change in scale factor to a change in temperature.
Stability (gyro, accelerometer): A measure of the ability of a specific mechanism or
performance coefficient to remain invariant when continuously exposed to a fixed operating
condition.
Storage life (gyro, accelerometer): The non-operating time interval under specified conditions,
after which a device will still exhibit a specified operating life and performance.
Strapdown (gyro, accelerometer): Direct-mounting of inertial sensors (without gimbals) to a
vehicle to sense the linear and angular motion of the vehicle.
Third-order nonlinearity coefficient (accelerometer): The proportionality constant that relates
a variation of the output to the cube of the input, applied parallel to the input reference axis.
Threshold (gyro, accelerometer): The largest absolute value of the minimum input that
produces an output equal to at least 50% of the output expected using the nominal scale factor.
Turn-on time (gyro, accelerometer): The time from the initial application of power until a
sensor produces a specified useful output, though not necessarily at the accuracy of full
specification performance.
Warm-up time (gyro, accelerometer): The time from the initial application of power for a
sensor to reach specified performance under specified operating conditions.
Zero offset (restricted to rate gyros): The gyro output when the input rate is zero, generally
expressed as an equivalent input rate. It excludes outputs due to hysteresis and acceleration.
DIGS100 AHRS User’s Guide
Copyright © 2012-16 Gladiator Technologies
Page 130
Rev. 07/20/2016
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertisement