Fundamentals of Inertial Navigation Systems and Aiding
The aim of this book is to provide an advanced introduction to inertial data processing (determination of attitude, velocity and position) along with design architectures and algorithms used to aid the inertial navigation system (INS). The emphasis is on the highend sensors and systems used in aerospace applications (known as 'navigation grade' or 'nav grade').
The subject of inertial navigation systems and how to aid them (reduce their inherent error drift) is complex and multidisciplinary. Mathematics and physics along with electrical, mechanical and software engineering all are involved. This book has been written to serve as an introduction for students and those new to the field. Specialized topics such as rotation matrices, quaternions and relevant stochastic processes are covered in the book. The reader is expected to have a basic understanding of vectors, matrices and matrix multiplication as well as freshmanlevel differential and integral calculus.
The basics of inertial position/velocity/attitude updating are first presented with respect to a conceptually simple inertiallyfixed reference frame before the impact of the spheroidal rotating earth is covered. Similarly, the key concepts of the Kalman filter are first presented in the context of a scalar filter. Important aspects of the prediction error covariance and Kalman gain equations are thus covered in an intuitive sense before the full matrix formulations are described. By the end of the book, a thorough treatment of modern aidedINS architectures is provided.
 Book DOI: 10.1049/SBRA550E
 Chapter DOI: 10.1049/SBRA550E
 ISBN: 9781839534126
 eISBN: 9781839534133
 Page count: 412
 Format: PDF

Front Matter
 + Show details  Hide details

p.
(1)

1 Introduction and overview of inertial navigation systems
 + Show details  Hide details

p.
1
–16
(16)
I want you to give your imagination a little bit of a flight of fancy. Imagine that you have been kidnapped. Your home has been invaded. You have been blindfolded. Your ears have been plugged up. You have been placed into the backseat of a car. The driver of the car then proceeds to drive you somewhere. You sway side to side in the seat as the car goes around the turns. You lunge forward or backward as the car accelerates or brakes. At some point, the car finally stops. Do you know where you are? Does the amount of time that you were being driven around matter?

2 Reference frames and the mathematics of rotations
 + Show details  Hide details

p.
17
–33
(17)
In most instances in inertial navigation, we are going to be concerned with multiple reference frames. For example, the accelerometers may form their measurements with respect to a set of axes that are fixed in the vehicle; but navigation is usually performed with respect to a set of axes that is fixed in the Earth. This is certainly true for applications that are on or near the surface of the Earth.
First of all, we have to understand what these various reference frames are and how they are defined and used within inertial navigation. Once we have defined the various reference frames, then we will need to discuss how to convert between them. As we have discussed previously, Newton's laws are valid in an inertial reference frame and an inertial frame is one that is moving at fixed velocity with respect to the stars. The background stars in our galaxy serve as a reference frame and any frame that is moving at constant velocity (including zero) with respect to the background stars also is an inertial frame. The true inertial frame is the only frame in which Newton's laws are valid.

3 Inertial processing in a fixed reference frame
 + Show details  Hide details

p.
35
–49
(15)
In the last chapter, we established a set of reference frames and studied the mathematics of rotations. We have laid the necessary groundwork for the development of inertial navigation: the method by which we take the accelerometer and gyro measurements to update position, velocity, and attitude.
As described previously, if we have a triad of orthogonal accelerometers and we can keep them in, say, a locally level orientation, one pointed north, one pointed east, one pointed vertically, then the integral of their outputs produces north, east and vertical velocity. If we integrate again, we get: (1) northsouth displacement (latitude), (2) eastwest displacement (longitude), and (3) vertical displacement. Recall there are two different techniques for keeping a triad of accelerometers pointed in reference directions. We can have mechanical isolation of the accelerometer platform from the vehicle itself so that, regardless of the orientation of the vehicle, the accelerometers are always pointed in the reference directions (e.g., north, east, and vertical). That is referred to as a gimbaled system or a platform system. The alternative is to have the accelerometers hard mounted ("fixed") to the vehicle itself. In so doing, the accelerometers will be outputting their values in the body frame and thus we will need to know the orientation of the vehicle so that those accelerometer values can be converted from the body frame to the reference frame of interest (e.g., the navigation frame). That is referred to as a strapdown system. Recall that either direction cosine matrices or quaternions can be used to represent all orientations (as opposed to Euler angles which have singularities).

4 The impact of pseudoforces in the velocity update
 + Show details  Hide details

p.
51
–59
(9)
Previously we have covered the details of inertial navigation in the context of a fixed reference frame. Now we are going to begin addressing the fact that in most applications the vehicle is actually navigating with respect to the spheroidal, rotating earth. We will deal with these two effects (earth curvature and rotation) by taking into account the additional apparent forces that come into play. This will impact our navigation equation (i.e., the expression for the derivative of velocity). In the case of the fixed frame, the expression for the derivative of velocity was very simple. In the context of a rotating reference frame, however, it is a bit more complicated.

5 Earth rate, transport rate, gravity, and the velocity update
 + Show details  Hide details

p.
61
–72
(12)
At the end of the previous chapter, we derived the navigation equation mechanized in the navigation frame. We need to develop algorithms to compute the earth rate, transport rate and effective gravity vectors expressed in the navigation frame.

6 Spatial rate, navigation frame rotation, and position update
 + Show details  Hide details

p.
73
–82
(10)
Previously we derived the bodyframe update of the bodytoinertial DCM (C^{i} _{b} ). This DCM was appropriate for use in a "fixed frame" environment (i.e., an inertial reference frame). For terrestrial, marine and aeronautical applications, however, we need to operate with respect the noninertial earth frame. Our locallevel reference frame, in many applications, is the navigation frame and thus we need to update the bodytonav DCM (C^{n} _{b} ). Since we have already derived the bodyframe update, we need to derive the navframe update.

7 The wander azimuth mechanization
 + Show details  Hide details

p.
83
–91
(9)
We have established the fact that maintaining a locally level reference frame that is northpointing has some significant challenges when we are operating in the vicinity of the poles. We have discussed the fact that if we are on top of the North Pole, for example, no matter which direction we are facing: they are all south. By just barely skimming past the North Pole and trying to keep the nframe northpointing, the rotation rate of the locallevel frame around the vertical axis approaches infinity. This occurs whether the frame is mechanical with a gimbaled system or mathematical with a strapdown system.

8 Navigationgrade inertial sensors
 + Show details  Hide details

p.
93
–107
(15)
Up to this point, we have been treating accelerometers and gyroscopes as ideal instruments and have focused almost exclusively on the "strapdown processing" algorithms also known as the "free inertial mechanization" equations. Having accomplished that goal, we now turn our attention to the actual sensors that are used in real inertial systems. Prior to the proliferation of inertial measurement units (IMUs) based on microelectromechanical systems (MEMS) fabrication techniques, the term "inertial navigation system" (INS) universally referred to inertial systems built with sensors capable of supporting standalone (i.e., unaided) navigation with low drift rates (e.g., a few nautical miles per hour).
However, the aforementioned explosion of lowcost, MEMSbased, IMUs (found, for example, in every consumer drone), has given rise to a far broader use of the phrase "inertial navigation system." A quick web search will reveal authors referring to lowcost units as an INS despite the fact that the units could not possibly be used for standalone positioning for more than a handful of seconds. Very low cost gyroscopes (i.e., priced well under one U.S. dollar in volume production) may have drift rates on the order of several degrees per second and, as we shall see in the next chapter, are completely unsuitable for longduration standalone positioning. At the other end of the spectrum are socalled "navigationgrade" and "strategicgrade" sensors that have extremely low drift rates (i.e., less than 0.01 degree per hour).
This chapter will provide an overview of the principles of operation of the two technologies that have been the mainstay of navigationgrade gyro offerings since the 1980s as well as one of the most popular techniques used in the design of navigationgrade accelerometers. We will then discuss the major sensor errors.

9 Inertial error analysis
 + Show details  Hide details

p.
109
–129
(21)
We have studied inertial sensors and their error characteristics. We have learned how to process the measurements in order to determine position, velocity and attitude. We now turn our attention to performance. For example, how does an accelerometer bias impact the position, velocity and attitude solution? What about a gyro bias? How do we go about analyzing the performance of the overall inertial navigation system? The first step is to introduce the various classes of errors found in inertial navigation. We will learn about the dominant horizontal error mode known as Schuler oscillations and then we will also study the instability of the vertical channel. We will close with some comments about noise.

10 Inertial error simulation
 + Show details  Hide details

p.
131
–151
(21)
In the previous chapter, we analyzed the Schuler error loop in the horizontal channel and derived closed form expressions for position and velocity errors given accelerometer and gyro biases. The closed form expressions are actually firstorder approximations of the real error behavior. In this chapter, we will use simulations to illustrate the crosscoupling phenomena between the northsouth and eastwest channels and will go on to analyze the dominance of certain error sources as a function of mission duration.
A socalled "whole value" simulator generates simulated accel and gyro measurements and processes them using the same algorithms as would be used in an actual INS. In a computer simulation, however, the input errors (e.g., accel/gyros biases) are controlled and known. The analyst can simulate a single error source on a single sensor and evaluate its impact on the entire system.
In all of the simulation results to follow, the INS is modeled as being in a vehicle that is stationary, level, northpointing and is at a latitude of 45 degrees North.

11 Inertial initialization  Part A
 + Show details  Hide details

p.
153
–159
(7)
This final chapter regarding inertial (only) processing addresses the procedures that are actually done first in the operation of an inertial system: initialization of position, velocity, and attitude. Initialization of attitude is sometimes referred to as "leveling and alignment." We had to wait until the end to learn about initialization since it depends on many of the concepts that we have developed up to this point including how we deal with gravity, earth rate, and various coordinate frames. We will introduce the major concepts in this chapter and will focus on socalled "coarse leveling" and "coarse alignment". Closer to the end of the book, we will come back to this topic to address fine leveling and alignment since they depend upon aiding concepts (typically utilizing a Kalman filter) that we will development in subsequent chapters.

12 Introduction to integration and estimation theory
 + Show details  Hide details

p.
161
–173
(13)
It is a reasonable question. Why would we want to go through the time and effort to integrate two different navigation systems? The simple answer is that we integrate multiple systems when no one system by itself will satisfy all the necessary requirements. More generally, we integrate multiple systems in order to construct a supersystem that in some way outperforms any of the individual systems.
We are going to be spending a lot of time developing the framework behind the Kalman filter and ultimately driving toward the goal of developing an architecture that will enable us to integrate multiple navigation systems into a single integrated unit. We will start off by looking at navigation system integration and consider some key issues along with goals and requirements. We will investigate subsystem characteristics and will look at some challenges to integration.
Navigation engineers must be cognizant of the fact that their product is a component within a larger system. This larger system is typically a vehicle (specifically, a land, air, sea, or space vehicle). As I have told many students throughout my years of teaching: an inertial navigation system will not transport me from New York to Chicago. It will tell me where I am. It will tell me how fast I am going. It will tell me the current attitude of my vehicle and how fast it is turning. However, it will not answer the most basic navigation question that all drivers, pilots, and captains must answer in order to get where they want to go: Which way to steer?
The position, velocity, and attitude information determined by the navigation system, in virtually every case, is handed off to another system. Frequently it is either a flight management system or a flight control system or some kind of display for the pilot (or driver or captain...). It is also possible that it may be pointing a sensor or a weapon or providing the position and velocity needed to process synthetic aperture radar images. In any case, the navigation system needs to provide its information in a form and with a quality that satisfies the needs of the downstream user or system.

13 Estimation theory and introduction to the Kalman filter
 + Show details  Hide details

p.
175
–191
(17)
As we will see later, the Kalman filter is a powerful, yet complex, estimation algorithm. Under the right conditions, it provides an optimum way to form predictions as well as the weighting factors. Its ability to estimate dozens of parameters simultaneously will prove to be, as we shall see, highly useful. However, starting an explanation of the full Kalman filter with its usual matrix form is, in the opinion of this author (and teacher), counterproductive. We seek to understand the principles underlying the filter's structure and not get hopelessly lost in the matrix manipulations. To do this, we will start with a simple scalar problem (i.e., estimation of a single parameter). After fully describing the scalar Kalman filter, we will be able to attack the multivariate filter from a position of strength.

14 The multivariate Kalman filter
 + Show details  Hide details

p.
193
–209
(17)
Previously we explored the Kalman filter within the framework of a simple problem. In the bucketful of resistors problem, we were estimating a single static parameter. We pulled one resistor out of the bucket and attempted to estimate its resistance given some successive measurements. Obviously we need to go beyond that for most practical applications. We need to be able to handle cases where the parameter of interest is actually changing over time and we want to be able to form an estimate of its value over time as it is changing. Furthermore, we want to be able to handle cases where we are estimating multiple parameters simultaneously and those parameters are related to each other. It is not a simple matter of five parameters and thus the need for five singleparameter Kalman filters running at the same time. If we are trying to estimate multiple parameters that have some kind of relationship to each other, then we want to be able to exploit those relationships in the course of our estimation and thus we need to expand our Kalman filter accordingly.
We are thus transitioning from univariate parameter estimation to multivariate parameter estimation and from static systems to dynamic systems. Along the way we will explore state variables, state vectors, and state transition matrices. We will learn about the fundamental equations upon which the Kalman filter is based: the socalled "system equation" and the "measurement equation." We will need to learn about covariance matrices and then eventually we will develop the full Kalman recursion. We will then take our bucketful of resistors example and modify it slightly in order to ease into these new topics.
Up to this point, we have only considered the estimation of a single parameter (the univariate case) with a value that did not change over time (a static system). We need to generalize the Kalman filter to be able to handle dynamic multivariate cases. The single parameters are going to become vectors of parameters and the variances are going to become covariance matrices. We will model system dynamics within the filter (the state transition matrix) and will model complex relationships between the states and the measured quantities (the H matrix will no longer be equal to 1).

15 Radionavigation Kalman filtering: case studies in two dimensions
 + Show details  Hide details

p.
211
–229
(19)
So far we have spent a good deal of time estimating scalars and even the radar example involved a vehicle traveling in essentially a straight line. It is time to move into two dimensions and see where that takes us.
We will investigate horizontal positioning and, as an example, will consider the distance measuring equipment (DME) system. DME comprises ground stations (known as transponders) that respond to RF interrogations transmitted from a unit in an aircraft (known as an interrogator). The twoway transmissions enable the airborne unit to determine the distance (range) to the ground station. The measured ranges are an approximation to the horizontal distance from the ground station to the aircraft. Range measurements made to at least two ground stations may be used (along with the known ground station locations) to compute the horizontal position of the aircraft. Since there is no need for receiver clock bias estimation, the use of DME for horizontal positioning provides us with a simpler solution that is possible with GPS and allows us to ease into the topic. Throughout this chapter (and the next), we will consider positioning via radionavigation only.

16 GPSonly Kalman filtering
 + Show details  Hide details

p.
231
–249
(19)
In the previous chapter, we introduced the linearized Kalman filter and the extended Kalman filter in the context of twodimensional radionavigationbased positioning (specifically, multilateration DME). We can now apply these concepts to GNSS. It is useful to study GNSSonly Kalman filtering to understand its performance and limitations. Many GNSS receivers output a position solution produced by a Kalman filter and, within some inertial integration schemes, the system outputs three separate solutions: a GNSSonly solution, an inertialonly solution, and a GNSSinertial integrated solution. Since our purpose here is not to delve into the details that differentiate the various GNSSs, we will focus our development primarily on GPS.

17 Introduction to inertial aiding
 + Show details  Hide details

p.
251
–272
(22)
We will begin our study of inertial aiding within the context of a onedimensional problem. Specifically, we are assuming that we are instrumenting a vehicle that is on a perfectly flat, perfectly straight track. Real examples of this are the rocket sleds operated by the United States military in the desert southwest of the country. The sleds are equipped with rockets that enable the sled to accelerate very quickly to very high speeds and travel a few miles before running into water that causes braking action to slow it down. They test various sensors with these sleds. Although real rocket sleds have some lateral motion (sway and vibration), we are going to consider an idealized simplified sled that only moves in one dimension: on a perfectly flat, perfectly straight track (as you will see, we will also take extensive liberties with the length of the track).
Although the real tracks have sensors on the tracks themselves for highlyprecise position determination, we are going to assume we have an inertial navigation system on the sled itself. Since it is moving in just one dimension, we only need one sensor: an accelerometer. As long as the accelerometer is mounted parallel to the track, velocity is the result of integrating specific force once and distance along the track is obtained from an additional integration. We will then make the scenario a bit more interesting by simulating errors in the accelerometer. Finally, we will simulate an external aiding source and will input its measurements into a Kalman filter that will estimate the inertial errors so that they can be corrected.

18 Inertial aiding in two dimensions
 + Show details  Hide details

p.
273
–288
(16)
In an earlier chapter, we explored how the Kalman filter does an excellent job of taking the radionavigation system geometry into account when forming its estimates but does not do well in handling nonlinear system dynamics. In the previous chapter, we introduced the concept of the complementary filter and applied it to a simple onedimensional aidedinertial navigation problem. Since the filter in the aided case is estimating inertial errors, instead of the total aircraft state, the nonlinearities arising from a dynamic trajectory were not a problem. An aidedinertial architecture is founded on the principle that the inertial navigation system does an excellent job of determining the position, velocity and attitude of the vehicle in the short term and thus the Kalman filter is not needed for that task. The purpose of the aiding is to prevent the inertially determined vehicle state from drifting off over the long term.
In this chapter, we extend the inertial aiding concept to two dimensions. We will use a twodimensional radionavigation system (DMEDME) to aid a simplified inertial navigation system. We will be estimating inertial errors and one way to view this is that the standalone inertial position solution provides the "nominal" trajectory used to linearize the system and measurement equations to make them suitable for the Kalman filter. This implies that the inertial errors may be modeled linearly. In order to introduce some key concepts in this chapter, we will use a very simple inertial error model. In the next chapter, we will develop a significantly more detailed inertial error model but the fact remains that the model must be linear in order to be suitable for the Kalman filter. We will discover in a later chapter that once the inertial error grows sufficiently large the linearity assumption breaks down. We will also discover that the typical solution to this problem is to feedback the estimated errors as corrections to the inertial system thus keeping the inertial errors small.

19 Inertial error modeling
 + Show details  Hide details

p.
289
–300
(12)
At this point, we have established almost all of the necessary background finally to design a Kalman filter to aid the inertial system with GPS. The one remaining item is the determination of the inertial error model. Recall that the GPS/INS complementary Kalman filter estimates the errors in the INS. It does not estimate the total position, velocity and attitude of the vehicle. In order to design the Kalman filter, we need to define the system equation that models how the state variables change over time. The states are the inertial position error, inertial velocity error, inertial attitude error, and some related parameters that we will describe later. So before we can start the Kalman filter design, we need a model that describes how the inertial errors behave.

20 GNSSaided INS: loose coupling
 + Show details  Hide details

p.
301
–319
(19)
Having established a statespace model that describes inertial error propagation, we have at last arrived at the point where a complete aidedinertial Kalman filter can be described. Although we showed in a previous chapter that loose coupling is inferior to tight coupling (i.e., loosely coupled filters cannot deweight aiding measurements under conditions of bad geometry), we will study it nevertheless since the measurement equation has a simpler form than it does in tight coupling and thus it allows us to ease into the complexity of the full aidedinertial filter. In addition, it must be remembered that in some instances, the designer is forced to use loose coupling. This occurs, for example, when the aiding source (e.g., GNSS receiver) that is to be utilized has already been installed on a given platform (e.g., aircraft or land vehicle) but provides only processed data (e.g., position, velocity) on the external interface.

21 GNSSaided INS: tight coupling
 + Show details  Hide details

p.
321
–332
(12)
As we have discussed in previous chapters, tightcoupling utilizes the measurement data from the aiding source (as opposed to loose coupling that utilizes processed data). In the case of a GNSS receiver, pseudorange and deltarange (or possibly carrierphase) measurements are processed by the integration filter rather than position and velocity. This requires information about the individual satellite position and velocity be fed to the filter since it has to form the inertial equivalent of the pseudorange in order to compute an observable corresponding to the difference between the INS and GNSS outputs.

22 Aided INS: observability and feedback
 + Show details  Hide details

p.
333
–346
(14)
We have dedicated a considerable number of pages to the description of the system and the measurement models in the Kalman Filter and, of course, we have applied that to GNSS/INS integration. We have developed the inertial error models and we have developed the GNSS measurement models. Recall the H matrix has a considerable number of zeroes in it and but yet it is the sole representation, within the filter, of the direct relationship between the measurements and the states. So the question is: How does the filter estimate all of the states and, in particular, those states that are not direct functions of the measurements? In a loosely coupled filter, for example, the input measurements consist of observed position differences. How does the filter use those observations to be able to estimate things like attitude error and gyro biases? What's up with that? How does that work?

23 Baroinertial vertical channel
 + Show details  Hide details

p.
347
–361
(15)
As we have shown previously, the vertical channel of the inertial system is unstable. In fact, if you go back to legacy gimbal systems from the 1950s, it was not uncommon for there to be no vertical channel. They did not even have a vertical accelerometer. A gimbal platform was mechanized with two orthogonal accelerometers in the horizontal plane and that was it. It was thought that there was just no point in mechanizing the vertical channel.
Nevertheless, eventually it was realized that there were benefits to having an inertial vertical channel. Specifically, applications with a need for accurate vertical velocity drove this development. In the defense community, weapon delivery is one example where precise vertical velocity is important. There was thus a need to be able to stabilize the inertial vertical channel and the best available aiding sensor, prior to the advent of GNSS, was the barometric altimeter. Even to this day, aiding with a barometric altimeter is still utilized due to the fact that its availability is essentially 100% (limited only by the maintainability of the altimeter itself).
As was the case with satellitebased systems such as GPS, the main idea is that the barometric altimeter ("baro") provides longterm stability. Although the baro will in general exhibit biaslike error in its altitude estimate, that error does not grow as a function of time as do inertial errors. Note that as with the use of the term in inertial sensors, "bias" is understood to be a very low frequency, nonzero mean error component. Its variation is a function of weather changes. There is also some noise in the baro output. Finally, the baro exhibits lag in its output. Specifically, sudden changes in true altitude are not immediately reflected in the baro output. Since the inertial system has excellent dynamic response, proper integration will result in an aided vertical channel with stabilized vertical velocity, high data rate and low data latency.
Before discussing the Kalman filter mechanization, we will consider some legacy fixedgain filters and will examine their strengths and weaknesses.

24 Inertial initialization  Part B
 + Show details  Hide details

p.
363
–366
(4)
In an earlier chapter, we introduced the topic of inertial initialization. We showed how with a stationary vehicle the accelerometer outputs could be processed to determine rough initial estimates of pitch and roll and, having done so, the gyro outputs could be processed to determine a rough estimate of yaw or heading (or wander angle depending on the chosen convention). Although it is common for the entire process to be referred to as "alignment," it is more precisely "leveling" and "alignment." Although enhanced versions of this kind of processing (with fixed gain filters) were used in early strapdown systems (i.e., 1970s), it is more common in modern practice to use a Kalman filter.

25 Conclusion: inertial+
 + Show details  Hide details

p.
367
(1)
I have been in the field of navigation for over 35 years at the time of this writing and along the way it has been my very great privilege to be able to work with some truly outstanding navigation researchers. Two of them had the very same perspective on navigation but worded it slightly different. One lamented the fact that the modern phrase "GPS/INS," or more recently "GNSS/INS," was a misnomer since the purpose of the GNSS is to aid the INS, not the other way around (and thus it should be INS/GPS or INS/GNSS). The second colleague very eloquently stated that the future of navigation is "inertialplus." Plus what? Plus whatever the current aiding source happens to be. In the 1960s, it was flyover fixes. In the 1970s, it was a Doppler navigator or TACAN. Since the early 1990s, it has been GPS/GNSS. With concerns over GNSS vulnerabilities, the future of aiding will likely be a combination of GNSS, signalsofopportunity, vision systems and who knows what else. Nevertheless, the core is, and will be, INS.

Appendix A: Two important stochastic processes
 + Show details  Hide details

p.
369
–377
(9)
The random walk and firstorder GaussMarkov processes are two of the most important stochastic processes used to model inertial sensor errors. They are both used extensively in aidedinertial Kalman filters.

Appendix B: Oneatatime measurement processing
 + Show details  Hide details

p.
379
–381
(3)
"Oneatatime measurement processing" is an alternative formulation to the Kalman filter that performs the updating with scalar processing instead of matrix processing. It eliminates the need for a matrix inverse and was essential for legacy processors that were unable to handle the computational burden. Of course, this is certainly less of a concern today but there is still a plenty of operational software in the field built on this principle. As a result, it is useful to be familiar with it.

Back Matter
 + Show details  Hide details

p.
(1)