ARTIFICIAL SATELLITES, Vol. 49, No. 2 – 2014 DOI: 10.2478/arsa-2014-0007 SIMPLIFIED ORBIT DETERMINATION ALGORITHM FOR LOW EARTH ORBIT SATELLITES USING SPACEBORNE GPS NAVIGATION SENSOR Sandip Tukaram Aghav, Shashikala Achyut Gangal Department of Electronic Science, University of Pune, Pune, India, [email protected] ABSTRACT In this paper, the main work is focused on designing and simplifying the orbit determination algorithm which will be used for Low Earth Orbit (LEO) navigation. The various data processing algorithms, state estimation algorithms and modeling forces were studied in detail, and simplified algorithm is selected to reduce hardware burden and computational cost. This is done by using raw navigation solution provided by GPS Navigation sensor. A fixed step-size Runge-Kutta 4th order numerical integration method is selected for orbit propagation. Both, the least square and Extended Kalman Filter (EKF) orbit estimation algorithms are developed and the results of the same are compared with each other. EKF algorithm converges faster than least square algorithm. EKF algorithm satisfies the criterions of low computation burden which is required for autonomous orbit determination. Simple static force models also feasible to reduce the hardware burden and computational cost. Keywords: GPS Navigation Sensor, atmospheric drag, extended Kalman filter. 1. INTRODUCTION Orbit determination is the process of determining the best estimate of the state of a spacecraft, whose initial state is unknown, from observations influenced by random and systematic errors, using a mathematical model that is not exact. In this work above-mentioned procedure will be referred to as the orbit determination (Taply et al., 2004). There are various techniques available for satellite position measurement at given epoch time. These include one way technique which is based on the transmittal of a signal by a satellite or ground-based transmitter that is received by a separate instrumentation. The transmitted signal propagates along a path and arrives at a point instrumented to receive the transmitted signal. This way one can calculate range and range rate between two points. In two way method it uses both uplink and downlink path to calculate the range and range rate. Satellites Laser Ranging (SLR) technique comes under two way method. However ground based tracking carries extensive cost burden in spacecraft mission. In order to make the satellite orbit control system autonomous and reduce the need for ground intervention there is a need for on-board availability of continuous and accurate knowledge of the satellite Unauthenticated Download Date | 9/17/17 3:14 AM 82 orbit. From this information, position and velocity vector of an orbiting LEO spacecraft is determined as a function of time (Parkinson and Spilker, 1996). The measurement principle in its simplest form is illustrated by Fig. 1 where are the pseudoranges of the respective GPS satellites and is the geocentric distance of LEO. Each GPS satellite sends its own positional information in the form of navigation data. The code measurements of at least four GPS satellite observed at observation time t by the on-board GPS navigation sensor, are used to determine geocentric position vector of the LEO’s centre of mass. An efficient Low Earth Orbit (LEO) precise orbit determination algorithm has presented by (Bock et al., 2002). They used IGS orbits and precise clocks for the GPS satellites and the positions are generated by the combination of code derived positions and phase derived position differences. Fitting an orbit based on a physical model to the positions promises to complement a procedure that meets the requirements regarding precision and processing speed. The positions estimated from code observations and position differences estimated from phase observations may eventually be used as “pseudo-observations” to fit an orbit based on the physical model using a least squares adjustment. A new onboard orbit determination algorithm based on the unscented Kalman filter (UKF) has been successfully developed by (Choi et al., 2010) for application to spaceborne GPS receivers. The perturbations due to 40x40 geopotential, the gravity of the Sun and Moon, atmospheric drag, and solar radiation pressure were employed to develop the precision orbit propagation for onboard processing. The 7(8)th-order Runge–Kutta numerical integration was applied for orbit propagation. The Cowell method was applied for modeling orbit motion. Researcher (Pardal et al., 2009) determined the orbit of an artificial satellite and analyzed its implications, using least squares algorithms through sequential given rotations as the method of estimation, and data of the GPS receivers. In this paper, an algorithm to determine onboard the satellite orbit in real-time using the GPS system and Kalman filtering is developed. It used a simplified and compact model with low computational cost. The extended Kalman filter (EKF) estimates the state vector, composed of the position and velocity components, bias, drift, and drift rate of the GPS receiver clock. An algorithm for real-time and onboard orbit determination applying the Extended Kalman Filter (EKF) method is developed by (Chiaradia et al., 2013). The minimum set of to-be-estimated states to reach the level of accuracy of tens of meters is found to have at least the position, velocity, and user clock offset components. The dynamical model is assessed through several tests, covering force model, numerical integration scheme and step size, and simplified variational equations. The measurement model includes only relevant effects to the order of meters. Based on the same principle a simple but fairly accurate algorithm is developed to determine the LEO satellite’s orbit using raw navigation solution provided by GPS navigation sensor. Figure 1. Concept of Autonomous Orbit determination Unauthenticated Download Date | 9/17/17 3:14 AM 83 2. METHODOLOGY For determining initial orbit, one should know the position of satellite in an orbit w. r. t. the elapsed time, , or conversely, how long it takes to go from one point in an orbit to another. To solve this, Kepler introduced the quantity , called the mean anomaly, which is the fraction of an orbit period that has elapsed since perigee as given in Eq. (1). The mean anomaly equals the true anomaly for a circular orbit. (1) where, is the mean anomaly at time and is the mean motion, or the average angular velocity determined from the semi-major axis of the orbit as given in Eq. (2); Product of gravitational constant and mass of the body (2) Mean anomaly is a function of eccentric anomaly () given in the Eq. (3); where, is orbital eccentricity (3) At any time in its orbit, the magnitude of a spacecraft's position vector, i.e. its distance from the primary body (), latitude of the satellite (ș) and longitude of the satellite () can be calculated from the following Eq. (4); ! " #$%& ' () * +, & () . (4) / ' 0 / + where, + ' & are inclination angle, latitude and true anomaly of the satellite, length refers to a prime meridian specified in the inertial reference frame of the standard epoch J2000.0. From ' of the satellite, position vector components 1 2 3 in Cartesian coordinate system as a function of time ( ) is obtained from Eq. (5) as follows; 1 45 ', 45 2 45 ', (5) 3 Then 1 6 " 2 7 " 3 89 is the position vector of the satellite and the magnitude of is :1 ! " 2 ! " 2 ! ,,,,. The perturbations due to the factor ;! (flattening coefficient of the Earth) is only considered for determining the reference orbit from initial measurements. Longitude of ascending node, argument of Unauthenticated Download Date | 9/17/17 3:14 AM 84 perigee and mean motion are mostly affected. The factor ;! is the flattening coefficient of the Earth and is equal to 0.0010827 (Parkinson and Spilker, 1996). The accuracy of the orbital elements is directly dependent upon the accuracy of velocity vector components. To determine position components as a function of time, the velocity vector components are numerically integrated. In the present paper, the acceleration vectors are numerically integrated with the help of fixed step size 4th order Runge-Kutta method for finding out the velocity vector components (Parkinson and Spilker, 1996). 2.1. Numerical integration of the equation of motion The satellite dynamic model used for the satellite orbit propagation is given in Eq. (6); < = " , > 99 (6) where,,< is the acceleration vector, is the orbital position vector and > 99 is vector of the process noise, which is assumed to be zero for calculation simplicity. The discrete-time measurements which are considered for the present study include position and velocity vector obtained from Oceansat2 GPS navigation sensor. The zonal perturbations ;! , ; and ;? are considered for simulations. The main deviation from central gravitational field is caused by dynamic flattening of the Earth. In the Geodetic Reference System 1980 (GRS80), normal field of the flattening coefficient is represented by term ;! = 0.001082. Similarly higher order flattening coefficients ; and ;? are given as ; = -0.0000025323 and ;? = -0.0000016204 (Parkinson and Spilker, 1996). The acceleration components 1,< 2< and 3< of satellite dynamic model with term ;! are given in Eq. (7) as discussed in (Zarchan, 2005, Vallado and McClain, 2007); 1< =1 BC ! E 3! BC H 3! 3 BC ? H 3! 3? @ " ; A D G H I " ; A D GE J I ; A D GE LF " ME IN ! ? F ! F ! K ! ? 2< =2 BC ! E 3! BC H 3! 3 BC ? H 3! 3? @ " ; A D G H I " ; A D GE J I ; A D GE LF " ME IN ! ? F ! F ! K ! ? 3< =3 BC ! E 3! BC H 3! 3 = BC E @ " ; A D GE H I " ; A D GM J I N " ,; A D , ! ! F ! F ! F " (7) BC ? H 3! 3? =3 ,; A D G H JO " ME I ? K ! ? where, = is the earth gravitational constant, BC is the Earth’s radius, and is the magnitude of position vector. To update the state vector, Eq. (7) is numerically integrated using Runge-Kutta 4th order fixed step size method. Least square differential correction and EKF are used to generate the optimal state estimates of the satellite orbit. Atmospheric drag is the third most dominant force acting on a low Earth orbiting satellite (depending on the altitude in low Earth orbit), after the forces due to central body and oblateness of the Earth. For satellites orbiting at higher altitudes, radiation pressure due to the Sun as well as third body effects becomes Unauthenticated Download Date | 9/17/17 3:14 AM 85 significant and dominant as well. Apart from the undesirable effects of satellite drag, other applications such as aerobraking and space tethers require an accurate model of the atmosphere for high accuracy solutions. The three main areas under which drag is studied are for orbit determination under the influence of drag, satellite lifetime estimation, and to determine the physical properties of the upper atmosphere. When a satellite encounters atmospheric molecules, it experiences a retarding force, the drag force, due to momentum transfer from the latter. This results in a loss of energy of the satellite and thus drag is a nonconservative force. Other non-conservative forces acting on the satellite include the radiation forces due to the Sun, Earth albedo, and Earth infrared. The effect of the drag is to reduce the semimajor axis (due to loss of energy) and the eccentricity (making it less elliptical). Other orbital elements are also affected by drag but the effects are periodic in nature. Drag also results in some coupling effects with the aspherical potential. The need for a rigorous model of the effects of atmospheric perturbations requires knowledge in the fields of molecular chemistry, thermodynamics, aerodynamics, hypersonics, meteorology, electromagnetics, planetary science, and orbital mechanics. Thus, study of astrodynamics in the presence of the atmosphere is very difficult. Nevertheless, accurate determination of atmospheric properties is essential for satellite drag studies (Degnan and Pavlis, 1994). The acceleration experienced by a satellite is given by the following Eq. (8) which relates the acceleration with atmospheric properties, geometrical properties of the satellite, and the relative velocity vector of the satellite. PQRS TU V ! XQC XQC YXQC Y F W (8) The first quantity in the above drag equation TU is the coefficient of drag, a dimensionless quantity which quantifies the resistance of a body. TU , depends on the temperature and composition of the surrounding atmosphere, surface properties of the satellite including its temperature, surface geometry, and orientation. The drag coefficient for a flat plate is about 2.2 and about 2.0 to 2.1 for spheres, in the upper atmosphere (Amaral et al, 2007). TU ,is usually estimated up to three significant digits. is the atmospheric density, which is the hardest to estimate. Several atmospheric models exist which are used to estimate neutral density, whose details will be discussed in future sections. V is the cross sectional area that is normal to the velocity vector. For a satellite whose attitude and geometry are known, determining V may be relatively easy. However, if the attitude of an aspherical satellite is not known, then determining the cross sectional area becomes difficult, especially if the satellite’s attitude is rapidly changing, say a tumbling satellite. W is the mass of the satellite. The mass may be constant or changing during the mission depending on whether the onboard propellants (if any) are being consumed. XQC ,is the velocity vector of the satellite relative to the atmosphere and XQC ,is its magnitude. The quantity TU VZW is called the ballistic coefficient (BC) is another measure of a satellite susceptibility to drag. Higher BC means lower drag is experienced by the satellite. The atmosphere is not stationary in the inertial frame but rotates with the Earth. However, the rotational rate is not the same as that of the Earth at higher altitudes but rather rotates with a profile; so the layer next to the surface has the same rotational speed as that of the Earth, and the ones above gradually decrease in speed. Often, this lag is ignored and the atmosphere layer at the satellite altitude is assumed to rotate at the same rate as the surface of the Earth. Using this approximation, the expression for the relative velocity of the satellite in the inertial frame is given in Eq. (9). XQC [ [1 [2 [3 _ \ 9] ^ . " \] 2,,, \] 1,,, 0 [ [ [ [ (9) Unauthenticated Download Date | 9/17/17 3:14 AM 86 In the above equation, ,is satellite position vector with 1 2 and 3 components, Ȧ 9] ,is the angular velocity vector of the Earth and Ȧ] ,is its magnitude. 2.2. Simplified atmospheric density model Purpose of present research was focused on to select the simplified atmospheric density model which will be suitable for hardware implementation. There are various upper atmospheric models are in use like, CIRA-72, CIRA-86, Jacchia-71, Jacchia-77, MISS-86, MISS-90, and DTM-90. However all are very complicated numerical methods and depends upon daily or monthly Sun flux and geomagnetic data which is not suitable for onboard processing. Due to these reasons the simplified analytical atmospheric density model is selected for present research. The details of the simplified analytical atmospheric density model are given in following paragraphs. If the balanced atmosphere is considered, according to hydrostatics the density distribution is approximately a form of exponential given in Eq. (10)): ȡ ȡ `(abccd (ae Zfg (10) Where ȡ is the atmospheric density of the reference spherical surface at hijjk h , hijjk is the altitude measured from Earth’s surface, h ,is the base altitude, and l is the scale height at base altitude. Table 1 explains the calculated values of ȡ with respect to the altitude measured from earth surface (Yunck et al., 1994). Table 1: (Part one): Nominal density (ȡ ) with respect to the altitude measures from earth surface Altitude measured from Earth Surface (hijjk ) [km] 0-25 25-30 30-40 40-50 50-60 60-70 70-80 80-90 90-100 100-110 110-120 120-130 130-140 140-150 150-180 180-200 200-250 250-300 300-350 350-400 Base Altitude(h ) [km] 0.00 25.00 30.00 40.00 50.00 60.00 70.00 80.00 90.00 100.00 110.00 120.00 130.00 140.00 150.00 180.00 200.00 250.00 300.00 350.00 Nominal density (ȡ ) [kg/m^3] 1.23 3.899*10^-2 1.774*10^-2 3.972*10^-3 1.057*10^-3 3.206*10^-4 8.770*10^-5 1.905*10^-5 3.396*10^-6 5.297*10^-7 9.661*10^-8 2.438*10^-8 8.484*10^-9 3.845*10^-9 2.070*10^-9 5.464*10^-10 2.789*10^-10 7.248*10^-11 2.418*10^-11 9.518*10^-12 Scale Height (H) at base altitude [km] 7.25 6.35 6.68 7.55 8.38 7.71 6.55 5.80 5.38 5.88 7.26 9.47 12.64 16.15 22.52 29.74 37.11 45.55 53.63 53.30 Unauthenticated Download Date | 9/17/17 3:14 AM 87 Table 1: (Part two): Nominal density (ȡ ) with respect to the altitude measures from earth surface Altitude measured from Earth Surface (hijjk ) [km] 400-450 450-500 500-600 600-700 700-800 800-900 900-1000 1000- Base Altitude(h ) [km] 400.00 450.00 500.00 600.00 700.00 800.00 900.00 1000.00 Nominal density (ȡ ) [kg/m^3] 3.725*10^-12 1.585*10^-12 6.967*10^-13 1.454*10^-13 3.614*10^-14 1.170*10^-14 5.245*10^-15 3.019*10^-15 Scale Height (H) at base altitude [km] 58.52 60.83 63.82 71.84 88.67 124.64 181.05 268.00 2.3.Effect of Atmospheric drag With the values mentioned in the Table 1 the atmospheric density (ȡ) is calculated with the help of Eq. (10). These atmospheric density values are then future used to calculate the acceleration vector due to atmospheric drag coefficient using Eq. (8). To see combined effect of the J2 and atmospheric drag, the Eq. (7) is modified to Eq. (11); 1< E BC ! =1 3! @ " ; A D G H IN " [mn1 ! F ! 2< E BC ! =2 3! @ " ; A D G H IN " , [mn2 ! F ! 3< E BC ! =3 3! @ " ; A D GE H IN " , [mn3 ! F ! (11) PQRSno , PQRSnp , and PQRSnq are the 1 2 and 3 components of the acceleration vector generated by atmospheric drag. Equations (11) which represents the equations of motion of satellite with ;! and atmospheric drag are then numerically integrated using Runge-Kutta 4th Order numerical integration method. Code for the same is written in MATLAB. 2.4. Calculation of Orbital Elements from position and velocity vector Numerical integration of equation of motion gives the instantaneous position vector and velocity vector (i.e. state vector) with respect to time. With the help of state vector data, the instantaneous orbital elements are calculated (Grewal et al.,2007). The details of orbital elements calculations are given below; i. Semi-major axis(a) Semi-major axis of an orbit is calculated using Eq. (12) Unauthenticated Download Date | 9/17/17 3:14 AM 88 = F= X! , where and X is a magnitude of position and velocity vector respectively (12) ii. Eccentricity vector () Eccentricity vector, which norm is equal to orbit eccentricity,, is calculated using Eq. (13) = rsX ! t , u X Xv = , where and X is a position and velocity vector respectively, ‘u’ is a symbol of dot product (13) iii. Orbit Inclination (i) Orbit Inclination is calculated using Eq. (14) + 45 () iv. 9 is unit vector and , where 8 x ^ X, is angular momentum. w89 u xy zxz (14) Argument of Perigee (\) Argument of Perigee is calculated using Eq. (15) \ v. 9 u Y9Y , where,,,9 9 ,^,y w zz is node vector and is eccentricity vector, 89 is unit vector (15) Longitude of ascending node (ȍ) Longitude of ascending node is calculated using Eq. (16) ȍ 45() . vi. o 0 Y9Y , where o ,is a x component of node vector. (16) True anomaly (&) True anomaly is calculated using Eq. (17) ! & 45 () [email protected] G INI (17) Unauthenticated Download Date | 9/17/17 3:14 AM 89 With the help of above formulae (Eq. 12 to Eq. 17) the six orbital elements (, , +, ȍ, \ and &) are calculated. A software routine for the same is developed in MATLAB. 2.5. Least square implementation The basic principle of the method of least-squares is that the best estimate of the state is the estimate which minimizes the sum of the squares of the residuals. The satellite dynamic model used is given in Eq. (7). The measurement model used in this process is given in Eq. (18); 9 w| 9 y " & 3 { k=1, 2, 3…. (18) 9 , differentiable Where, 3 , is the vector of measurements, 9| is the state vector of the system,,{ function and & is the measurement noise vector. The residual is defined as given in Eq. (19) 9 | 9 & 3 { (19) The measurement matrix for the same is calculated from Eq. (20), 9999 | 9 { l} ~ 9 | (20) 9Z 9| | l},is the measurement information matrix also known as Jacobian matrix, 9|Z() is the state from k-1 to kth time instant. The state transition matrix (()) is used to propagate covariance matrix is given by Eq. (21), (Grewal et al., 2007, Gomes et al., 2007); () " () Where () . O^ ;^ (21) ^ 0 and ‘T’ denotes the matrix transpose. O^ Where, ;^ is Jacobian coefficient matrix given in Eq. (22). ;^ E=1 ! ( = ( E=21 ( E=31 ( E=12 ( E=2 ! ( = ( E=32 ( E=13 ( E=23 ( E=3 ! ( = ( (22) In least square differential correction approach, the epoch (reference point from which time is measured) state estimate is computed after processing full set of measurements (Xu, 2007). Due to non-linear relation between the epoch state vector and the modeled measurement, multiple iterations are required to compute Unauthenticated Download Date | 9/17/17 3:14 AM 90 epoch state estimate. This increases hardware storage capacity requirements. Due to this fact, the system hardware carries unnecessary computational as well as power budget burden. 2.6. EKF implementation To avoid computational as well as power budget burden, EKF method is selected for orbit estimation due to its recursive in nature (Grewal et al., 2007). It uses sequential process to update the estimates with new measurement. Flow chart for EKF based orbit estimation is shown in Fig.2. To implement EKF some initial assumptions are needed to fulfill the filter’s requirement. To start the EKF process, it requires initial state estimate and initial state error covariance matrix. The initial state vector 9| of the satellite dynamic model is given by Eq. (23); 9| *1,,2,,3,Xo, ,Xp ,Xq -,^) ; (23) 9 includes satellite position and velocity vectors. The state vector | START Acquire a priori state and covariance estimates at set,8 O, i.e initialization 8" , acquire a member of observation vector 3 Propagate state vector to , calculate state transition matrix () Calculate expected measurement { and partial derivatives of { with respect to 9 | Propagate process noise covariance matrix }() Propagate error covariance matrix Pk-1(tk) Calculate gain matrix } Update 9| to become kth state estimate Update error covariance matrix Pk N Last observation? Y State vector propagation to any time of interest END Figure 2. Flow chart for EKF based orbit estimation Unauthenticated Download Date | 9/17/17 3:14 AM 91 A diagonal apriori covariance matrix }() with standard deviations ( ) of 10 m (position), 0.1 m/s (velocity), is assumed. With these assumptions the apriori covariance matrix }() is given by Eq. (24); }() [+m*o! ,,p! ,,q! ,,! ,,! ,,! ,-^ (24) To cope with deficiencies of the employed propagation model, a fixed diagonal process noise matrix }() is considered in the time update of the covariance matrix as given in Eq. (25); }Z}() () }() _ () " }() (25) Representative process noise values used in the present application are (10−3m)2 (position), (10−6 m/s)2 (velocity). The state transition matrix ( () ) shown in Eq. (25) is computed. The actual measurements are collected from GPS Navigation sensor and modeled using Eq. (18). With the help of }Z}() l} and } ,parameters Kalman gain } is calculated using the Eq. (26), } , }Z}() l} `l} }Z}() l} " } g () (26) The Kalman Gain is used as feedback for correcting state estimates, Rk is measurement noise covariance 9 ,,is obtained from Eq. matrix which is,,in general a Gaussian zero-mean noise and the correction vector | (27); 9 } 3 { 9Z() t 9 s| | (27) And new predicted error covariance } is obtained from Eq. (28); } } l} }Z}() } l} " } } } (28) In this approach, EKF processes a single scalar or vector measurement at a time and yields sequential state estimate at the measurement times. 2.7. GPS data processing There are two types of GPS codes which are transmitted by the GPS satellite vehicle. One of them (Pcode) provides precise positioning with an accuracy of approximately few tens of meters. This code can only be used by a receiver with access to the encryption key. This code is only for military users. The second code is available to any commercial user. This code is known as Coarse/Acquisition (C/A) code. This code is discussed here. Each satellite transmits two carrier signals. One is centered at 1575. 42 MHz (known as L1 carrier) uses Phase Shift keying (PSK) to modulate both C/A and P-code onto the carrier. The other signal (known as the L2 carrier) is centered at 1227.60 MHz and uses PSK to modulate P-code onto the carrier. L1 carrier is the signal used by the commercial receivers. It is modulated with 1.023 MHz Pseudo-Random noise (PRN) code which is unique to each satellite. Each GPS satellite transmits the Navigation Message through C/A code. The C/A codes from at least four GPS satellites are required to calculate the user receiver position in Earth Centered Earth Fixed (ECEF) coordinate system (Gomes et al., 2007). Unauthenticated Download Date | 9/17/17 3:14 AM 92 2.7.1. GPS Navigation Solution It is stated earlier that minimum four GPS satellites are must be in view for the receiver to determine to 3-dimentional position (Fig.1). This is because there are four unknowns in the set of four navigation equations. Therefore, to solve for user position and time, we need to solve the following simultaneous equations Eq. (29) (Amaral et al, 2007, Gomes et al., 2007). ) :) 1! " ) 2! " ) 3! " # u ! :! 1! " ! 2! " ! 3! " # u (29) : 1! " 2! " 3! " # u ? :? 1! " ? 2! " ? 3! " # u ) ! ,¡,,? , are the pseudo-ranges to each of the satellites. A pseudo-range is a measurement of the distance between the satellite and the receiver. ¢ ¢ £ ¢ ,for i=1,2,3,4 are the coordinates of the satellites in the Earth Centered Earth Fixed, WGS-84 coordinate reference frame, ,1, 2, 3 are the receiver WGS-84 coordinates, #, ,F¤¥¥J¥F, ^ O¦ (speed of light) m/s, is the receiver clock offset from GPS time (satellite time). By linearizing Eq. (29) , one can get the observation vector (i.e. receiver position 1 2 3) and clock bias . GPS satellite sends data through navigation message in frames to GPS receiver. These data are in spherical coordinates and required to transform into Cartesian coordinates. 2.7.2. GPS satellite navigation message The navigation message includes Almanac data, ephemeris data, timing data, ionospheric delay data and health data of the satellite. The information in the navigation message has basic five frames. Each frame is subdivided into five 300-bit sub-frames and has 10 words of 30 bit. Out of above mentioned frames, the Satellite Ephemeris data, ionospheric data frame and satellite timing data frame are of interest for the present work. A detailed description of all information contained in the navigation message is beyond the scope of this text. The sub-frame of navigation message contains the ephemeris data, which is used to determine the precise satellite position and velocity required by the navigation solution. This ephemeris data is valid over a relatively short period of time (several hours), and applies only to the satellite transmitting it. The components of the ephemeris data are given in (Xu, 2007, Grewal et al., 2007). 2.7.3. Calculation of ECEF coordinates of the GPS satellite from Ephemeris data The ephemeris data including the following elements will be extracted from navigation message and then further used to compute the GPS satellite position in the form of Earth Centered Earth Fixed (ECEF) coordinate frame using following formulas given in Eq. (30) as discussed in (Xu, 2007). Unauthenticated Download Date | 9/17/17 3:14 AM 93 ! Semimajor axis w§y ¨ = Computed mean motion, rad/s Kepler’s equation of eccentric anomaly © 45 () A 45 D 45 True anomaly from cosine 45 () A " 45 © D " 45 © Eccentric anomaly from cosine (30) With the help of above mentioned algorithm the kth GPS satellite position in ECEF coordinate frame is determined using Eq. (31). 1 45 ȍ 2 45 + ȍ ECEF X coordinate 1 45 ȍ "2 45 + 45 ȍ ECEF Y coordinate 2 + ECEF Z coordinate (31) Where 1 2 are the GPS satellite positions in the orbital frame. Eq. (31) converts satellite position from orbital frame to ECEF frame. A software routine for the same is developed in MATLAB. 3. RESULTS AND DISCUSSION In this section the results obtained related to reference trajectory generation, least square orbit determination and EKF orbit determination method are discussed. A. Reference trajectory generation Software to generate reference trajectory is developed in MATLAB. The effect of various zonal perturbations like ;! , ; and ;? were tested. The Keplerian model shown in Eq. (6) is numerically integrated with fixed step size Runge-Kutta 4th order method for the period of T=86,400 sec. Step size t =10 sec is used for orbit integration. As can be seen from Fig. 3, the satellite orbit is confined with its orbital plane i.e. under the influence of central gravitational field. The Eq. (7) is integrated first to get ;! perturbation by neglecting ; and ;? terms. As can be seen from Fig.4 when secular perturbation term ;! is introduced, the satellite orbit gets deviated from the orbit in the central gravitation field. Unauthenticated Download Date | 9/17/17 3:14 AM 94 4000 2000 2000 z[km] 4000 z[km] 0 -2000 0 -2000 -4000 1 0.5 4 x 10 -4000 1 1 0 -0.5 y[Km] 0.5 0.5 0 -1 -1 4 1 0.5 0 4 x 10 -0.5 x 10 0 -0.5 x[Km] y[Km] -0.5 -1 -1 4 x 10 x[Km] Figure: 4. Orbit Integration with ;! Figure: 3. Keplerian Orbit Integration To get the idea of the orbital parameter variation in detail each individual orbital parameter (semimajor axis in km), ,(eccentricity), +,(inclination angle in degree), ȍ(ascending node in degree), \ (argument of perigee in degree) respectively is plotted with respect to time separately. The Fig.5 shows orbital parameters variation with respect to time in Keplerian orbit. As can be seen from Fig. 5, there is no significant change in the orbital parameters except true anomaly (&) (which define the angular position of orbiting body, it is subject to change with time due to the position changes) because there is no other force which causes the change in orbital parameters. The maximum and minimum values of orbital elements obtained in an orbit in different cases are given in Table 2. The variations in the orbital elements due to secular perturbations ;! , ; and ;? are shown in Fig. 6. Satellite dynamic model Eq. (7) are then integrated considering the effects of ;! , ; and ;? for the period T=86,400 sec with fixed step size=10 sec. As shown in Fig. 6d, the regression of the ascending node under the ;! , ; and ;? perturbations is observed. In case of ;! , ; and ;? perturbed orbit, the ascending node and argument of perigee exhibits significant almost linear variation. The motion of the ascending node occurs because of the added attraction of the Earth’s equatorial bulge, which introduces force components towards the equator. The ascending node regresses for direct orbits (00< i < 900) and advances for retrograde orbits (900< i < 1800). From this study it is observed that ;! is the main zonal parameter which affects the state vector more. Other parameters like ; and ;? have a greater impact for long term integration. In the present application the long term integration is not required. Table 2: Variations in orbital elements Orbital Parameters [km] +,[deg.] ª [deg.] \ [deg.] Max. 6828.956 0.009016 28.47401 35.91182 -44.5593 Min. 6828.952 0.009015 28.47401 35.91182 -44.5708 ;! , ; and ;? ;! Keplerian orbit Max. 6828.975 0.009311 28.47404 35.91182 -32.5345 Min. 6824.416 0.00711 28.43975 28.96786 -58.0807 Max. 6871.082 0.064504 28.5831 35.92338 -0.00189 Min. 6818.754 0.007943 28.39334 29.04105 -46.7252 Unauthenticated Download Date | 9/17/17 3:14 AM 95 Figure 5. Orbital parameters variation in Keplerian orbit Figure 6. Orbital parameter variation due to main harmonic ;! , ; and ;? . Unauthenticated Download Date | 9/17/17 3:14 AM 96 a. Atmospheric drag effect The orbit of a satellite is integrated for a 1, 2 and 5 days period to test the effect of drag on the satellite orbital elements. It is observed from Fig. 7, that semimajor axis shows major declination with atmospheric drag effect. For longer time period i.e. for a period of 5 days semimajor axis decline by 500 meter (Fig 7e). This considerable declination in the semimajor axis affects the accuracy of the orbit determination. Semi-major axis Vs Time 6829 6828.5 6828.5 6828 6828 6827.5 6827.5 Semi-major axis(a) in Km Semi-major axis(a) in Km Semi-major axis Vs Time 6829 6827 6826.5 6826 6825.5 6827 6826.5 6826 6825.5 6825 6825 6824.5 6824.5 6824 0 1 2 3 4 5 6 7 8 tsec 6824 9 0 1 2 4 5 6 7 8 tsec x 10 Fig: 7a. ;! + Drag (Period: one day) 9 4 x 10 Fig: 7b. ;! only (Period: one day) Semi-major axis Vs Time Semi-major axis Vs Time 6829 6829 6828.5 6828.5 6828 6828 6827.5 6827.5 Semi-major axis(a) in Km Semi-major axis(a) in Km 3 4 6827 6826.5 6826 6825.5 6825 6827 6826.5 6826 6825.5 6825 6824.5 6824.5 6824 0 2 4 6 8 10 12 14 t sec Fig: 7c. ;! + Drag (Period: two day) 16 18 4 x 10 6824 0 2 4 6 8 10 12 14 tsec 16 18 4 x 10 Fig: 7d. ;! only (Period: two day) Unauthenticated Download Date | 9/17/17 3:14 AM 97 Semi-major axis Vs Time Semi-major axis Vs Time 6829 6829 6828.5 6828 Semi-major axis(a) in Km Semi-major axis(a) in Km 6828 6827 6826 6825 6827.5 6827 6826.5 6826 6825.5 6825 6824 6824.5 6823 0 0.5 1 1.5 2 2.5 3 3.5 tsec 4 4.5 6824 0 0.5 1 1.5 2 2.5 3 3.5 tsec 5 x 10 Fig: 7e. ;! + Drag (Period: five day) 4 4.5 x 10 5 Fig: 7f. ;! only (Period: five day) B. Orbit estimation results: least squares Least squares differential correction algorithm is used to determine the orbit of a spacecraft from simulation of position and velocity measurements generated along the reference trajectory. The subroutine for the same is developed in MATLAB environment. The true spacecraft position and velocity at initial epoch for present simulations with respect to the inertial reference frame of the standard epoch J2000.0 are given by; *E¥ F¤E JLE£, KM¤ F¥J£ ,H¥ E¤¥ EFO- km; X *,H¤¥FHLJJ£,F¤HFHM E£,E¤¥KK¥L¥- km/s. The model equations used in this method are given in Eq. (7) and Eq. (18) to Eq. (22). Measurements are taken at 10-second intervals over a 100-second simulation. The measurement errors are zero-mean Gaussian with a standard deviation of the position measurement error given by ıposition = 10 m, and a standard deviation of the velocity measurements given by ıvelocity = 0.1 m/sec. Table 3. Least square iterations for orbit estimation Nr Initial position components [km] Initial velocity components [km/s] 1 5482 1 1 1 1 1 2 2675.412 -4000.12 -1259.63 3.792749 4.888852 3.014527 3 4508.612 -7915.99 6013.159 4.330451 9.472996 -8.56845 4 2846.889 658.872 10627.15 9.703767 -6.5569 -13.5849 5 3523.785 -905.629 5868.684 7.235599 -0.69701 -4.03073 6 3919.372 -183.179 5974.346 5.880111 -2.54941 -4.24749 7 3913.082 -184.847 5914.523 5.906372 -2.54047 -3.98977 Unauthenticated Download Date | 9/17/17 3:14 AM 98 The estimated values of state vector components shown in Table 3, are in the agreement with the given true position and velocity components at initial epoch, at the level of a few hundred meters to one kilometer (position) and at the level of several tens of meters per second (velocity). In order to assess the performance of the least squares differential correction algorithm, the initial guesses for the position and velocity are given by = [5482 1 1] km, and X = [1 1 1] km/sec. As can be seen from Table 3, the algorithm converges after seven iterations in the present case. C. Orbit estimation: extended Kalman filter The satellite dynamic model is of non-linear form. Due to the non-linear relation of the state vector and the measurements, multiple iterations are required to compute the state estimate. The subroutine for the same in developed in MATLAB environment. The true spacecraft position and velocity at the initial epoch for present simulations are given by; *E¥ F¤E JLE£, KM¤ F¥J£ ,H¥ E¤¥ EFO- km; X *,H¤¥FHLJJ£,F¤HFHM E£,E¤¥KK¥L¥- km/s. Using EKF the reference trajectory is updated with each measurement. In the EKF method, the only analytical computations for the orbital EKF are the evaluations for the partial derivatives of dynamic model and observation model with respect to the state vector 9|. These Jacobian, , and sensitivity matrix H are evaluated at the current estimated state. Due to its sequential in nature it takes less iterations to compute state estimate. Table 4. EKF iterations for orbit estimation Nr 1 2 3 Position (km) 4156.668 3911.886 3911.886 265.6841 -185.258 -185.257 Velocity (km/sec) 6260.527 5913.071 5913.072 -3.227 5.94139 5.941394 -19.4337 -2.54235 -2.54239 -14.3844 -3.97501 -3.97503 Therefore implementation of EKF algorithm is much more straightforward than Least Squares Differential Correction method. It is clearly seen from Table. 4, EKF converges much faster than least square method due to its sequential in nature. 4. CONCLUSIONS In this work, the state vector is propagated using fixed step size orbit integration. Satellite orbit dynamic models with ;! , ; and ;? are integrated. With this experiment, it is observed that orbit integration with ;! ,only is sufficient to use for present application. Effect of atmospheric drag is also studied. Using the proposed simplified model it is concluded that it is feasible for on-board orbit determination application. To start the EKF orbit determination algorithm it is required to set the accurate initial guess. The same guess is determined first by least square algorithm and then it is further used in EKF orbit determination algorithm. Both, the least square and EKF orbit determination algorithms are developed and the results of the same are compared with each other. With our study it is observed that EKF algorithm is much faster than least square algorithm because of its recursive in nature and also shows comparable accuracy with least square method. This property of EKF algorithms makes it suitable for hardware implementation for autonomous orbit determination. Unauthenticated Download Date | 9/17/17 3:14 AM 99 5. Acknowledgement The authors thank the Indian Space Research Organization- University of Pune Space Technology Cell Pune, for the financial support ISAC Bangalore for technical support. The authors also thank Padmashree Pramod Kale for his valuable guidance and support. REFERENCES [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] Amaral J., Kuga H., Souza M., “Real time multisatellite orbit determination for constellation maintenance”, Proceedings of COBEM. NAVSTAR GPS user equipment introduction, US Government, chapter 7, 2007. Bock H., Hugentobler U., Springer T, and Beutlerl G., "Efficient precise orbit determination of LEO satellites using GPS", Advances in Space Research,30(2), pp.295-300, 2002. Chiaradia A., Kuga H, and Prado A., "Onboard and Real-Time Artificial Satellite Orbit Determination Using GPS", Mathematical Problems in Engineering, Hindawi Publishing Corporation, 2013. Choi E., Yoon J., Lee B., Park S., Choi K.,"Onboard orbit determination using GPS observations based on the unscented Kalman filter",Advances in Space Research, 46,pp. 1440–1450, 2010, Degnan, J., and Pavlis, “Laser Ranging to GPS Satellites with Centimeter Accuracy”, E.C.(1994):, GPS World, pp. 62-70, September, 1994. Gomes V., Kuga H., Chiaradia A., “Real-Time orbit determination solution using GPS Navigation Solution”, J. Braz. Soc. Mech. Sci. & Eng., 29(3), pp. 274-278, 2007. Grewal M., Weill L., Andrews A., “Global Positioning System, Inertial Navigation and Integration”, A John Wiley and Sons Inc, Publication, page.no 37, 2007. Pardal P., Kuga H, and deMoraes R., “Implications of the application of recursive least squares algorithms to satellite orbit determination using GPSmeasurements,”WSEAS Transactions on Systems, vol. 8, no. 3, pp. 334–343, 2009. Parkinson B., Spilker J., “Global Positioning System: theory and Applications”, AIAA, Vol.1, Progress in Astronautics and Aeronautica 163, 1996. Taply B., Schutz B. and Born G, “Statistical orbit determination”, Elsevier Academic Press, USA, 2004. Vallado D., McClain W., “Fundamentals of astrodynamics and applications”, 3rd ed., Microcosm press, Ca,2007. Xu G., “GPS Theory, Algorithm and Applications”, 2nd Edition, Springer, 2007. Yunck T., Bertiger W., Wu S., Bar-Sever Y., Christiansen E., Haines B., Lichten S., Muellerschoen R., and Willis P., “First Assessment of GPS-Based Reduced Dynamic Orbit Determination on TOPEX/Poseidon”, Geophys. Res. Let., V.21, pp. 541-544, 1994. Zarchan P., “ Fundamentals of Kalman Filtering: A Practical Approach”, 2nd Edition, by , AIAA, 2005. Received: 2014-01-15, Reviewed: 2014-05-14, by A. Bobojć, Accepted: 2014-05-16. Unauthenticated Download Date | 9/17/17 3:14 AM

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

Download PDF

advertisement