Navigation Equations in the Earth Centered Earth Fixed Frame Arland B. Thompson Chief Scientist Advanced Technology Associates (www.atacolorado.com) I) Introduction Practical (in terms of computer memory and computational speed requirements), highly accurate navigation schemes are of great importance in various military and commercial applications. Choice of coordinates systems used to integrate the equations of motion, to a large extent, drives the implementation of the navigation scheme. Many applications use an Earth Centered Inertial (ECI) frame of reference such as EME J2000 to integrate the equations of motion. This paper will derive the equations of motion used for navigation in an Earth Centered Earth Fixed (ECEF) reference frame, and demonstrate many advantages for using such a reference frame for navigation. II) Reference Frame Definitions Two reference frames will be discussed in this paper; EME J2000 (Earth Centered Inertial) and ECEF (International Terrestrial Reference System). The ITRF has the center as the center of mass of the earth (including oceans and atmospheres). The x axis is the intersection of the mean equator, and the mean prime meridian. The z axis is the mean spin axis of the earth between 1900 until 1905 (Conventional International Origin - CIO). EME J2000 is the Earth Mean Equator and Equinox of epoch J2000. The transformation between ECEF and EMEJ2000 is complex, and a full discussion is not intended here. The transformation is composed of 4 parts: precession, nutation, Earth rotation, and polar motion. U t NP Eq. 1 Where: P – Precession N – Nutation - Earth rotation - Polar motion III) Derivation of ECEF Navigation Equations The following notation will be used throughout the derivation: C ab - Direction Cosine matrix (DCM) transformation from some general reference frame a to some general reference frame b. C ab - First time derivative of Direction Cosine matrix (DCM) transformation from some general reference frame a to some general reference frame b. b Ca - Second time derivative of Direction Cosine matrix (DCM) transformation from some general reference frame a to some general reference frame b. xa x a xa - Three dimensional vector expressed (parameterized) in some general reference frame a. - First time derivative of three dimensional vector expressed (parameterized) in some general reference frame a. - Second time derivative of three dimensional vector expressed (parameterized) in some general reference frame a. baa - Three dimensional angular rate vector of some general reference frame a relative to some general reference frame b expressed (parameterized) in some general reference frame a. a ba - 3X3 skew symmetric matrix composed of three dimensional angular rate vector of some general reference frame a relative to some general reference frame b expressed (parameterized) in some general reference frame a. a - First Time derivative of 3X3 skew symmetric matrix ba composed of three dimensional angular rate vector of some general reference frame a relative to some general reference frame b expressed (parameterized) in some general reference frame a. Throughout the derivation, a subscript or superscript e will designate the ECEF reference frame. A subscript or superscript i will designate the ECI reference frame. The total accelerations acting on the vehicle in the inertial frame is expressed as follows: ri g i a i (Eq. 2) Where: a i - Acceleration due to thrust and aerodynamics in the inertial frame of reference. g i - Acceleration due to gravity in the inertial frame of reference. Note that the first time derivative of the transformation DCM from i ECEF to inertial ( C e ) is as follows: C ei Cei iee (Eq. 3) The angular rate vector of the ECEF frame relative to the ECI e frame used to populate the elements of ie in Eq. 3 is: 0 iee 0 (Eqs. 4) Where: - Earth rotation rate (approximately 7.292e-5 radians/second) Using the multiplication rule, the second time derivative of the transformation DCM from ECEF to inertial is as follows: i C i e i e C e e ie Ce ie i C i e C i e e C e e ie e ie ie i C i e e e C e e ie ie ie (Eqs. 5) It will be assumed that Earth rotation rate is constant. Therefore: i C i e e (Eq. 6) C e e ie ie The transformation of a position vector from ECEF to ECI is expressed as follows: r i Cei r e (Eq. 7) Taking the derivative with respect to time to get the velocity: ri Cei r e C ei r e (Eq. 8) Taking the second derivative with respect to time to get acceleration: i r e ri Cei re C ei r e C ei r e C e i r e ri Cei re 2C ei r e C e r C r 2C r C r i i e e i e e ie e i e e ie e ie e (Eqs. 9) e Using Eq. 1 and solving for r : r C g a 2C C r C C r r C g C a 2C C r C C T T T re Cei ri 2 Cei Cei iee r e Cei Cei iee iee r e e i T e e i T e i i i T e i i T e i i e e e ie i T e i e i T e e e ie i e i T e e ie e e ie i e e ie e e ie r (Eqs. 10) re g e a e 2 iee r e iee iee r e Note that the last equation in Eqs. 10 is an ordinary second order differential which can be integrated once to get velocity in ECEF, and then once more to get position in ECEF. The last equation in Eqs. 10 can be transformed into a system of two first order ordinary differential equations by introducing velocity as follows: d e r r e dt d e r g e a e 2 iee r e iee iee r e dt (Eqs. 11) IV) Quaternions Quaternions will be used to maintain the direction cosine matrix (attitude) of the vehicle body frame relative to the Earth fixed frame discussed in the next section. Therefore, it is briefly introduced here. There exists a single judiciously chosen axis about which one frame of reference (call it the “I” frame) can be rotated by some angle to bring it into alignment with another frame of reference (call it the “F” frame). This is illustrated by Figure 1. F I I e Figure 1 One way of viewing the quaternion (there are others) is as a coordinate frame transformation (In this case, from the “I” frame to the “F” frame), and is equivalent to a direction cosine matrix. The form of which can be taken directly from the axis of rotation and the angle of rotation about that axis in figure 3. The quaternion is 4 dimensional and is said to have a “vector portion” which is 3 dimensional, and a “scalar” portion. For most engineering applications, the scalar portion seems to be listed last and is the case here. For most academic applications, the scalar seems to be listed first. e[0] * sin 2 e[1] * sin 2 q e[ 2] * sin 2 cos 2 (Eq. 12) Note the form. The vector portion (first three components) is the coordinates of the axis of rotation in the “I” frame (and “F” frame for that matter) multiplied by the sine of half the rotation angle. The reason that it has half the rotation angle is not presented here. The scalar portion is the cosine of half the rotation angle. Also note that a quaternion must be of unit magnitude to be of use in coordinate frame transformation. As a practical example, take the coordinate frame transformation for a rotation angle of /4. The axis of rotation is the z axis. 4 e 0 0 1 0 * sin 8 0 * sin 8 q 1 * sin 8 cos 8 (Eq. 13) (Eq. 14) 0 0 q 0.382683432 0.923879533 (Eq. 15) The above example is generalized in the theory developed by the great 18th century mathematician Leonard Euler that bears his name. e[0] sin 2 e[1] sin 2 q e[ 2] sin 2 cos 2 Euler’s theorem and quaternions: e F I Rotated from t to t+t I Frame at t Euler’s theorem states that a rigid body can be brought from any arbit rary initial orientation to an arbitrary final orientation by a single rotation about a judiciously chosen axis fixed in both the initial and final frames by some angle. Figure 2 When transforming a vector from one coordinate frame parameterization to another, the quaternion can be used directly. This method is not presented here. As previously stated the quaternion is equivalent to a direction cosine matrix and can be converted to it using the appropriate algorithm. q00 = qUnit[0]*qUnit[0] q11 = qUnit[1]*qUnit[1] q22 = qUnit[2]*qUnit[2] q33 = qUnit[3]*qUnit[3] q01 = qUnit[0]*qUnit[1] q02 = qUnit[0]*qUnit[2] q03 = qUnit[0]*qUnit[3] q12 = qUnit[1]*qUnit[2] q13 = qUnit[1]*qUnit[3] q23 = qUnit[2]*qUnit[3] dcm[0][0] = q00 - q11 - q22 + q33 dcm[0][1] = 2.0*(q01 + q23) (Eqs. 16) dcm[0][2] = 2.0*(q02 - q13) dcm[1][0] = 2.0*(q01 - q23) dcm[1][1] = -q00 + q11 - q22 + q33 dcm[1][2] = 2.0*(q12 + q03) dcm[2][0] = 2.0*(q02 + q13) dcm[2][1] = 2.0*(q12 - q03) dcm[2][2] = -q00 - q11 + q22 + q33 Then, the direction cosine matrix is used to perform the vector transformation. V) Mechanization of Navigation Equations in the Earth Fixed Frame Airborne accelerometers measure the difference between inertial kinetic acceleration a , and gravitational acceleration g . The difference is called specific force and is essentially the sum of all contact forces divided by the mass, or f ag (Eq. 17) For an accelerometer in free fall in a vacuum, a = g , therefore f 0. For the accelerometer at rest in a gravitational field, a 0 therefore, f g . Therefore, acceleration due to gravity (mass attraction) must be calculated during flight to navigate properly. Acceleration due to gravity will be addressed in a subsequent section. Specific force is essentially the on-board measurement of the accelerations due to thrust and aerodynamics by three orthogonal (ideally) IMU (Inertial Measurement Unit) axes. This is typically output from the IMU in the form of delta V increments over an IMU measurement cycle ( t ), which can be on the order of milliseconds. V t t b t t t a b (t )dt (Eq. 18) The superscript b in Eq. 16 implies that the integration is carried out in the vehicle body frame. The notation is slightly misused in this instance. The integration is actually carried out in the IMU frame, which can be identical to the body frame. If they are not, they merely differ by an orthogonal transformation for the purposes of transforming the V into vehicle body coordinates. In order to maintain the velocity (and position) of the vehicle relative to an Earth-fixed frame, the V must be transformed from the vehicle body frame (IMU frame) into the Earth-fixed frame. In order to accomplish this, an accurate estimate if the orthogonal transformation from the body frame to the Earth-fixed frame must be maintained by the navigation system. The IMU contains three gyros mounted on three orthogonal (ideally) axes which measure angular rates of the body frame relative to the inertial frame. These are typically output from the IMU in the form of three delta angles about the IMU axes over the IMU measurement cycle. (t t ) b ib t t t wibb (t )dt (Eq. 19) The angular rate of the vehicle body frame relative to the Earth fixed frame can be computed using the following expression: ebe ibb Ceb iee (Eq. 20) Clearly Eq. 20 involves the orthogonal transformation that is to be e maintained. This difficulty can be overcome by realizing that ie is small compared to ib . The average angular rate across the IMU measurement interval can be treated as constant angular rate across the IMU measurement interval. Also, the angular rate of the Earth fixed frame relative to the inertial frame can be regarded as constant over the IMU measurement interval. Using the orthogonal transformation and angular rate of the Earth fixed frame relative to the inertial frame from the previous IMU measurement interval, the delta angles of the body relative to the Earth fixed frame can be computed as follows: b ebb (t ) ebb (t ) Ceb (t t )iee (t t )t (Eq. 21) A second order algorithm to maintain the quaternion that represents the orthogonal transformation between the vehicle body frame and the Earth fixed reference frame is as follows: 1 1 1 qeb (t t ) cos ebb (t ) I sin ebb (t ) qeb t (Eq. 22) b 2 2 ( t ) eb Where: (t ) b eb (t) b eb T b eb (t ) (Eq. 23) I – 4X4 identity matrix - 4X4 skew symmetric matrix composed of the elements of ebb (t ) An alternate method for maintaining the orthogonal transformation from the Earth-fixed frame to the vehicle body frame can be used for vehicles with relatively short and known mission durations. Expendable launch vehicles would fall into this category. The inertial to body transformation can be maintained throughout flight using equations 22 and 23, except that the delta angles ( ib (t ) ), which are the output of the IMU, would be used directly in Equations 22 and 23. Equation 21 is no longer necessary. The transformation from the Earth-fixed frame to the vehicle body frame would be computed as follows: b C t C t Ceb t (Eq. 24) b i e i T This scheme would require that the initial transformation from EMEJ2000 to ECEF at some epoch can be loaded into the navigation and can be maintained in flight once again with equations 22 and 23, e C Understanding that i t must be converted to a quaternion. The delta angles needed, can be computed as follows using Eq. 4 from above: iee (t ) iee * t (Eq. 25) Error in the transformation from ECI to ECEF would build up with time with this scheme because of Precession, Nutation, and polar motion (movement of the ECEF rotation axis with respect to ECI). However a more accurate estimate of ie (t ) can be found by extracting the delta quaternion from two quaternions which represent the exact transformations from ECI to ECEF at time t and some time t t later. The delta quaternion is a quaternion that is multiplied by one quaternion (ECI to ECEF at time t) to yield the second quaternion (ECI to ECEF at e time t t ). On other words the delta quaternion represents the transformation between ECEF at time t and ECEF and time t t . Once the delta quaternion is computed, the axis of rotation and angle about e that axis from the delta quaternion can be used to compute ie (t ) . Cie t qie t Cie t t qei t t qt qie t qei t t * 2.0 * a tan 2 1 q[3] * q[3], q[3] q[0] e[0] 1 q[3] * q[3] q[1] e[1] (Eqs. 26) 1 q[3] * q[3] q[2] e[2] 1 q[3] * q[3] iee (t ) * e e Where qi t is the conjugate of q i t found by negating the vector * portion of e q ie t . The above scheme can be used to achieve arbitrary accuracy by including the required number of exact ECI to ECEF transformations spanning the expected mission time with the required transformations. t between successive exact Realizing that 2ie r ieie r is small and that acceleration due to mass attraction is nearly constant over the IMU measurement cycle leads to the following position and velocity update formulas: e e e e e t 1 1 r e t t r e t re t t g e 2iee re iee iee r e tt Ceb t V b t t 2 2 r t t r t g 2 r r t C t V t e e e e e ie e ie e e ie b e t b Eqs. 27 VI) Acceleration due to Gravity One of the advantages of navigating in the Earth-fixed frame is that high fidelity gravity models are readily expressed in this frame. A brief explanation of one such model is presented here. Gravitational potential in the Earth-fixed frame can be expressed as follows: n n R V r , , 1 Pnm sin Cnm cosm S nm sin m r n2 m0 r Eq. 28 Where: r - Distance from geo center to object - Geocentric latitude of object - Longitude of object R - Equatorial radius magnitude of Earth “n” is referred to as the degree of the model, and “m” is referred to as the order. Pnm are the associated Legendre functions with argument sin , and will be discussed later. Cnm and Snm are the spherical harmonic coefficients. In the above series expansion, when the order equals 0 (m = 0), the coefficients are referred to as zonal harmonics. These describe the variation in the Earth’s gravitational field due to latitude. The largest variation is due to oblateness (J2). It is orders of magnitude larger than the other coefficients (C20 = -1.0826266836e003; C21 = -2.414e-010), and for many applications, it is sufficient to only model J2. When n = m, the coefficients are referred to as sectorial. Sectorial harmonics account for the gravitational field variation in longitude. The coefficients are referred to as tesseral harmonics when m n 0. They divide the Earth sphere into a checkerboard array or tiles (Hence the name, tesseral). Degree and order of the models used in practice depend upon the application. The shuttle uses degree and order 8 for on-board navigation. SEASAT uses degree and order 36 for precise orbit determination. V r V V ag r r r r T T T n V n R 2 1 n 1 Pnm sin Cnm cosm S nm sin m Eqs. 29 r r n 2 m0 r V n R Pnm sin Cnm cosm S nm sin m n2 m0 r n V n R Pnm sin mS nm cosm Cnm sin m r n 2 m 0 r n r x y z , , r r r r xz yz z 2 2 , 2 , 1 2 2 2 r r x y r r r 1 1 y, x,0 2 2 x y As stated earlier, Pnm are the associated Legendre functions. The associated Legendre functions are obtained from the Rodriguez formula. n 1 dn 2 Pn u 2 u 1 2 n! du n m Eqs. 30 2 m/2 d Pnm u 1 u Pn u du m Expressions from the first formula in Eqs. 30 are referred to as Legendre polynomials. Expressions obtained from the second formula are referred to as the associated Legendre functions. The associated Legendre functions should be computed recursively, in order to be efficient. One such method for doing so is as follows (Reference: Satellite Orbits; Montenbruck and Gill): P00 1 Pmm 2m 1 cos( ) Pm 1,m 1 Pm 1,m 2m 1sin( ) Pmm Pnm Eqs. 31 1 2n 1sin( ) Pn1,m n m 1Pn2,m nm For the second equation in Eqs. 31 the index ranges from m = 1 to m = desired degree. For the third equation in Eqs. 31 the index ranges from m = 0 to m = desired degree - 1. For the fourth equation in Eqs. 31 the index ranges from n = 2 to desired degree and m = 0 to n – 2 for each n. The partial derivatives with respect to of the associated Legendre functions must also be computed to support Eqs. 29. They can be computed recursively as follows: P00 0 Pmm 2m 1cos( ) Pm1,m1 (2m 1) sin( ) Pm1,m1 Pm1,m 2m 1sin( ) Pmm 2m 1cos( ) Pmm 1 2n 1sin( ) Pn1,m 2n 1cos( ) Pn1,m n m 1Pn2,m Pnm nm Eqs. 32 The index ranges are the same as above. For a model of small degree and order (say 2X2), the gravitational equations can be written explicitly for computational speed. This may be needed in a real time system. VII) Computation of Heading and Geodetic Latitude, Longitude and Altitude Local North-East-Down (NED) frame of reference is defined as a frame of reference directly below the vehicle at the surface of the Earth reference ellipse. The +X axis (N) points due north (true north), the +Y axis (E) points due east, and the +Z axis (D) points down along the local vertical (line perpendicular to the tangent to the reference ellipse directly below the vehicle). Vehicle heading is most readily computed in this frame of reference. The conversion from ECEF to NED is very straight forward, and can be accomplished using the following equations: cos Z sin 0 sin cos 0 0 0 1 cos 0 sin 2 2 Y 0 1 0 Eqs. 33 2 sin 2 0 cos 2 NED C ECEF Y * Z 2 Where: - Longitude of the vehicle (radians) - Geodetic latitude of the vehicle (radians) NED C ECEF - Transformation direction cosine matrix from ECEF to NED To compute vehicle heading from navigational data: NED vNED CECEF * r e a tan 2vNED [1], vNED [0] Eqs. 34 Where: - Vehicle heading (angle of velocity vector from true north) It should be noted that vNED has little meaning other than the parameterization of the vehicle velocity in the NED frame. Latitude, longitude, and altitude can be computed from navigational data to arbitrary accuracy with the following iterative procedure: Initial computations a tan 2r e [1], r e [0] p r e [0] * r e [0] r e [1] * r e [1] r [ 2] 1.0 * p 1 e * e tan 1 Eqs. 35 e Loop through the following until arbitrary small change in latitude N h RE 2 RE 2 * cos 2 RP 2 * sin 2 p N cos Eqs. 36 e r [ 2 ] 1 1 * tan N p 1 e * e * N h Where: - Longitude of the vehicle (radians) - Geodetic latitude of the vehicle (radians) h – Altitude of the vehicle above the earth reference ellipse RE – Earth equatorial radius RP – Earth polar radius e - Eccentricity of earth ellipse RE 2 RP 2 RE Note that the above converges in a few iterations, and should not present any computational problems for a modern real-time system. Also note that GPS raw data is supplied in the ECEF frame, which makes implementing a blended INS/GPS navigation solution more straight forward in the ECEF frame. VIII) References 1) Introduction to Modern Navigation Systems; Esmat Bekir 2) Inertial Navigation Systems with Geodetic Applications; Christopher Jekeli 3) Satellite Orbits; Oliver Montenbruck and Eberhard Gill 4) Spacecraft Attitude Determination and Control; James R. Wertz 5) Fundamentals of Astrodynamics and Applications; David A. Vallado 6) Strapdown Inertial Navigation Technology; D. H. Titterton and J. L. Weston