Patent Publication Number: US-2015070213-A1

Title: Location determination in multi-system gnns environment using conversion of data into a unified format

Description:
BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The present invention relates to satellite navigation receivers. 
     2. Description of the Prior Art 
     Mobile phones, tablets, digital cameras, and many other electronic devices now come routinely equipped with GNSS (Global Navigation Satellite System) receivers that provide position fixes for their users. GNSS refers generically to satellite based navigation systems. GNSS may comprise several systems that are currently operational or in development. The United States&#39; Global Positioning System (GPS) is the oldest system and currently the main system. Most of the existing GNSS receivers only support GPS system and are simply called GPS receiver. Russia&#39;s Glonass system is the only alternative navigational system in operation with global coverage and of comparable precision. Europe is building its own GALILEO system and so are few other countries, including Japan (QZSS), India (Galan), and China (Beidou). 
     In the GPS system, thirty-two satellites circling the earth at an altitude of 20,200 km with a 55 degree inclination and a period of 11 hours and 58 minutes. They are spaced in orbit such that a minimum of six satellites are in view at any one time to a user. 
     Glonass satellites are located in a middle circular orbit at 19,100 km altitude with a 65 degree inclination and a period of 11 hours and 15 minutes. By 2010, Glonass had achieved 100% coverage of Russia&#39;s territory and in October 2011, the full orbital constellation of 24 satellites was achieved, enabling full global coverage. Glonass&#39; orbit (higher inclination angle than GPS by about 10 degrees) makes it especially suited for usage in high latitudes (north or south), where getting a GPS signal can be problematic. The constellation operates in three orbital planes, with eight evenly spaced satellites on each. A fully operational constellation with global coverage consists of 24 satellites, while 18 satellites are necessary for covering the territory of Russia. 
     Each GNSS satellite transmits an accurate time and position signal. GNSS receivers measure the time delay for the signal to reach it, and the apparent receiver-satellite distance is calculated from that. Measurements like this from at least four satellites allow a GNSS receiver to calculate its three-dimensional position, velocity, and system time. 
     The solution to the receiver position depends on knowing where each of the relevant satellites is in three-dimensional space. The respective positions are reported as parameters belonging to a set of equations that are quite different between GPS and Glonass systems. In conventional GPS systems, the GPS ephemeris includes all the items in Table I. An orbital model that includes most or all of the parameters of Table I is referred to herein as a GPS or GPS-like orbital model. Glonass ephemeris data includes satellite&#39;s position and velocity data in Cartesian XYZ PZ-90 coordinate system. In conventional Glonass systems, the Glonass ephemeris includes all the items in Table II. 
     
       
         
           
               
             
               
                 TABLE I 
               
             
            
               
                   
               
               
                 GPS Ephemeris Message 
               
            
           
           
               
               
               
            
               
                   
                 Name 
                 Symbol 
               
               
                   
                   
               
               
                   
                 Reference time of ephemeris 
                 toe 
               
               
                   
                 Square root of semi major axis 
                 {square root over (a)} 
               
               
                   
                 Eccentricity 
                 e 
               
               
                   
                 Inclination angle (at time toe) 
                 i0 
               
               
                   
                 Longitude of ascending node 
                 Ω 0   
               
               
                   
                 Argument of perigee (at time toe) 
                 w 
               
               
                   
                 Mean anomaly (at time toe) 
                 M0 
               
               
                   
                 Rate of change of inclination angle 
                 di/dt 
               
               
                   
                 Rate of change of Longitude of ascending node 
                 {dot over (Ω)} 
               
               
                   
                 Mean motion correction 
                 Δn 
               
               
                   
                 Amplitude of cosine correction to argument of 
                 Cuc 
               
               
                   
                 latitude 
                   
               
               
                   
                 Amplitude of sine correction to argument of 
                 Cus 
               
               
                   
                 latitude 
                   
               
               
                   
                 Amplitude of cosine correction to orbital radius 
                 Crc 
               
               
                   
                 Amplitude of sine correction to orbital radius 
                 Crs 
               
               
                   
                 Amplitude of cosine correction to inclination 
                 Cic 
               
               
                   
                 angle 
                   
               
               
                   
                 Amplitude of sine correction to inclination angle 
                 Cis 
               
               
                   
                   
               
            
           
         
       
     
     
       
         
           
               
             
               
                 TABLE II 
               
             
            
               
                   
               
               
                 GlonassNative Orbital Model Data Message 
               
               
                 (Analogous to Ephemeris) 
               
            
           
           
               
               
               
            
               
                   
                 Name 
                 Symbol 
               
               
                   
                   
               
            
           
           
               
               
               
            
               
                   
                 Reference time of ephemeris in UTC time 
                 toe 
               
               
                   
                 coordinate 
                   
               
               
                   
                 Position along X axis in kilometers 
                 Px 
               
               
                   
                 Position along Y axis in kilometers 
                 Py 
               
               
                   
                 Position along Z axis in kilometers 
                 Pz 
               
               
                   
                 Velocity along X axis in kilometers per second 
                 Vx 
               
               
                   
                 Velocity along Y axis in kilometers per second 
                 Vy 
               
               
                   
                 Velocity along Z axis in kilometers per second 
                 Vz 
               
               
                   
                 Acceleration along X axis in kilometers per 
                 Ax 
               
               
                   
                 second squared 
                   
               
               
                   
                 Acceleration along Y axis in kilometers per 
                 Ay 
               
               
                   
                 second squared 
                   
               
               
                   
                 Acceleration along Z axis in kilometers per 
                 Az 
               
               
                   
                 second squared 
                   
               
               
                   
                 Clock bias in seconds 
                 b 
               
               
                   
                 Health information 
                 H 
               
               
                   
                   
               
            
           
         
       
     
     The PZ-90 coordinate system is similar to the WGS-84 (World Geodetic System) coordinate system, which is used by GPS, Galileo and some other GNSS systems. As of Sep. 17, 2007 the PZ-90 datum had been updated to differ from WGS-84 by less than 40 cm (16 in) in any given direction. 
     During the period of validity of the ephemeris message, it is possible to compute the near exact position and velocity of a satellite and its clock (time) offset at any one instant in its flight using the complete satellite ephemeris message information downloaded to the navigation receiver. The computed positions of the GPS satellites are very sensitive to small variations of most of these parameters, so it is necessary to fully communicate them during each ephemeris download. 
     It takes a GNSS navigation receiver a minimum of 12.5 minutes of continuous operation for GPS and 2.5 minutes of continuous operation for Glonass to be able to collect the complete almanac and ephemeris data describing all the orbiting satellites and their trajectories. The signal strength at the receivers must also be good in order to be able to demodulate the navigation data sub-carriers. A lack of time and/or a lack of strong signal can frustrate a user trying to get a quick first position fix. 
     Currently, Glonass satellites broadcast a new ephemeris every thirty minutes, and the time-of-ephemeris is fifteen minutes in the future at the cutover to the new model. The Glonass ephemeris model is valid only for +/−15 minutes around its reference time, according to the Glonass ICD. During the validity time interval of the ephemeris model, position accuracy of the model is better than a few meters. However, this error grows significantly over time, if the model is used beyond the validity time interval. 
     To calculate a Glonass satellite&#39;s position and velocity information at a time ‘t’, using a Glonass ephemeris model, orbit of the satellite has to be integrated from reference time ‘t0’ of the model up to ‘t’ with a force model that is not described in the broadcast ephemeris format of Table II but is described in the publicized Glonass Interface Control Document (ICD). On the contrary, a GPS ephemeris model&#39;s calculation can be computed at anytime independently, or as a snapshot calculation, without the need to integrate from the reference time to the desired time. 
     The GPS system is the system of use in nearly all existing satellite based positioning receivers. Other systems, including Glonass, are gradually (as they become available for public use) being added into the receivers, in order to improve reliability and positioning accuracy. In general, having access and using signals from more satellites results in better position and velocity accuracy. 
     SUMMARY OF THE INVENTION 
     Accurate long term satellite models for satellites include satellites of different navigation systems, for example GPS satellites and Glonass satellites. An accurate long-term orbital model is derived for a non-GPS satellite that broadcasts native orbital model data specified as valid within a first time period. Initial position and velocity data are determined from the native orbital model data, and orbit integration based on a force model is performed to determine an orbital arc in an earth-centered-earth-fixed frame over a second time period longer than the first time period. Initial estimates of GPS or GPS-like orbit parameters are determined for the non-GPS satellite, and the orbital arc and the initial estimates of the GPS or GPS-like orbit parameters are input to an orbit parameter solver that determines GPS or GPS-like parameters that fit the orbital arc. The orbit parameter solver is used to determine final orbital model parameters in GPS or GPS-like format for the non-GPS satellite. More particularly, forced-based estimates of GPS orbit parameters are estimated based on the initial estimates. 
     Converting a Glonass satellite ephemeris navigation model into a Unified GPS ephemeris format in many instances improves time to first fix of GNSS receiver and improves tracking sensitivity in weak signal environments as a single observation of the broadcast ephemeris can be used much longer than the time available with the native model. Efficiency is achieved by representing all satellite models in a unified format, preferably the GPS ephemeris format. 
     Embodiments of the present invention include an electronic device including a GNSS receiver able to collect Glonass ephemeris information from orbiting Glonass satellites and to use that information to build up modified Glonass ephemeris model in the unified format that will be valid and useful for several orders of magnitude longer than the original validity time period of Glonass ephemeris model. Advantages include reducing time to first fix, extending the validity time of Glonass ephemeris, and simplifying the GNSS receiver&#39;s software design by enabling it to do all navigation model computation in GPS ephemeris format. 
     Embodiments of the invention also include non-transitory computer-readable media bearing instructions for performing methods as described above. 
     These and other objects and advantages of the present invention will no doubt become obvious to those of ordinary skill in the art after having read the following detailed description of the preferred embodiments which are illustrated in the various drawing figures. 
    
    
     
       IN THE DRAWINGS 
         FIG. 1A  is a functional block diagram of a system embodiment of a mobile electronic device incorporating a GNSS receiver; 
         FIG. 1B  is another diagram of the mobile electronic device of  FIG. 1A ; 
         FIG. 2  is a flow chart of a method for constructing a unified satellite ephemeris model applicable to GPS satellites, Glonass satellites, etc.; 
         FIG. 3  is a flow chart of a method for converting orbit integration position samples into a GPS ephemeris navigation model; 
         FIG. 4  is a plot of position error over time for a first Glonass satellite using an orbital model based solely on Glonass ephemeris data; 
         FIG. 5  is a plot of position error over time for a second Glonass satellite using an orbital model based solely on Glonass ephemeris data; 
         FIG. 6  is diagram illustrating concepts of radial error and maximum observable error; 
         FIG. 7  is a plot of position error over time for a first Glonass satellite using a unified orbital model as described herein; and 
         FIG. 8  is a plot of position error over time for a second Glonass satellite using a unified orbital model as described herein. 
     
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT 
     Referring now to  FIG. 1A , a diagram is shown of an electronic device, such as a mobile electronic device, a server-based system, etc., having extended ephemeris satellite navigation capabilities, referred to herein by the general reference numeral  100 . Over time, continually varying constellations of all the orbiting satellite vehicles (SV&#39;s)  102  transmit microwave signals that include their then-up-to-date respective ephemerides. A processor  104  demodulates these ephemerides (and/or the almanacs that include them) opportunistically over time (over days or even weeks). The processor  104  may be part of a mobile electronic device, or may be in communication with a server-based system. A complete collection  106  of the ephemerides and the almanacs may then be made available on an on-going basis to a microcomputer  108 . 
     The satellite vehicles  102  may belong to different satellite navigations systems, e.g., GPS, Glonass, etc. Navigation Messages transmitted by the SVs  102  will be different depending on the navigation system. 
     An orbit integration algorithm program  110  is provided to the microcomputer  108 . In an exemplary embodiment, for a particular satellite, the orbit integration algorithm program code applies a corresponding force model to project collected ephemeris data out into the future. In an exemplary embodiment, only a single observation of the ephemeris for each SV is used in each of the corresponding SV-projections, e.g., the last good ephemeris demodulated and verified for that SV. Such an approach reduces the computational load and more importantly, reduces the amount of time a receiver must be powered on and collecting ephemeris. Such a single point observation nevertheless provides high quality extended ephemeris information that can be useful 7-10 days into the future. 
     Referring still to  FIG. 1A , a Keplerian Solver  115 , also referred to herein as an orbit parameter solver, provides the executable program code that is needed by the microcomputer  108  to compute estimates for the fifteen Keplerian parameters in TABLE I above. 
     In an exemplary embodiment, these parameters are computed to best fit a series of satellite X-Y-Z position samples in the ECEF coordinate system. The components of vector X are related to known position components X-Y-Z using conventional non-linear ephemeris equations. In an exemplary embodiment, the non-linear ephemeris equations are then linearized using a finite-order Taylor Series to find linear equations that will relate the Keplerian parameters to each X-Y-Z position. Then a standard Least Squares method is used to solve the Keplerian parameters. 
     In an exemplary embodiment, the Keplerian Solver program code  115  therefore converts orbital samples in the form of X-Y-Z satellite positions in the ECEF frame into ephemerides. In an exemplary embodiment, the ephemerides it outputs will each be valid for a period of hours, e.g., four hours before its computed time-of-ephemeris (TOE) and four hours after the TOE so that the TOE is centered in the usability region similar to the broadcast TOE 
     The Keplerian Solver program code  115  can commence operation after only a single observation of the ephemeris has been obtained for each corresponding SV  102 . As little as one X-Y-Z position sample per hour is all that is necessary to support the functioning. This means for an eight hour model, no more than nine samples are needed per SV  102 . 
     The orbital models obtained from the results of the Keplerian Solver may be stored in the form of Long-Term Compact Satellite Models (LTCSMs). An updating process  116  may schedule when processing time on the microcomputer  108  should be used to compute new LTCSM&#39;s. Such LTCSM processing can be in background while normal position solutions are actively being provided to a user, or as a residual process that continues after the user requests a power shut down. The updating process  116  can also give priority to building models to optimize LTCSM availability at some expected time in the near future. 
     An LTCSM library  118  is thus built up and maintained to support future navigation solution processing  120 . Flash memory can be used as a storage device for the LTCSM library  118 . Typically, such LTCSM library  118  will eventually have a functional LTCSM saved for each and every SV in a future constellation of SV&#39;s  122  that will present itself in the next several days. Using the LTCSM library, position fixes  124  may be computed without having immediate access to anything more than the pseudoranges from SVs  122 . The navigation messages of the SVs need not be demodulatable, and so a high sensitivity mode of operation is therefore also enabled. A fast time-to-first-fix (TTFF) and a higher availability of location determination is an important advantage as the location can be determined long after the broadcast data was demodulated in case the satellite signal can still be tracked but the signal is too weak to allow demodulation of the broadcast ephemeris. 
     Regarding the LTCSM library  118 , typically no one long-term model can be used to describe the satellite orbit or clock for an entire week into the future with sufficient accuracy for position fixing. Therefore, the period of a week into the immediate future may be divided into segments, e.g., three, eight-hour segments for each of seven days with a one hour buffer at the beginning and the end, i.e., twenty-one ten-hour long-term models  33  for every possible GPS satellite. 
     Referring now to  FIG. 1B , a mobile electronic device  1200 , like that of  FIG. 1A , including navigation satellite receiver capabilities, includes a radio frequency (RF) stage  1202 , a digital signal processing (DSP) stage  1204 , a processor core  1206 , a temperature controlled crystal oscillator (TCXO)  1208 , and a flash memory  1210 . All of these may have their operating power separately controlled by a scheduler  1212  in response to user on/off power requests. In mobile type receivers, a battery  214  supplies all of the operating power. The scheduler  1210  may be directed by an updating process  116  ( FIG. 1A ). 
     Further details of an exemplary embodiment of the system of  FIG. 1A  and  FIG. 1B  are described in McBurney et al., U.S. Patent Publication 20120056782, application Ser. No. 12/874,904, Satellite Navigation Receivers With Self-Provided Future Ephemeris and Clock Predictions, filed Sep. 2, 2010, incorporated herein by reference. 
     As described above, the satellite vehicles may belong to different satellite navigations systems, e.g., GPS, Glonass, etc. Navigation Messages transmitted by the SVs  102  will be different depending on the navigation system. 
       FIG. 2  is a flow chart diagram of generating Glonass navigation models in a unified format, sometimes referred to herein as the unified ephemeris model. In step  201 , Glonass ephemeris navigation model is decoded from the sky or received from an external source, such as a server or the internet. 
     In step  202 , a desired validity time of the unified models is broken down into several intervals, each equal to X number of hours, for example 8 hours. Practically, the length of each interval should not be longer than orbital period of the satellite (i.e. about 12 hours). 
     In one embodiment, for each interval, or for each of multiple successive time periods, orbit integration is performed over the time period. The Keplerian solver is initialized with an initial estimate of the Keplerian orbital model parameters obtained from a preceding time period. Orbit integration data for the time period is input to the Keplerian solver, which is used to obtain Keplerian orbit model parameters for the time period. In this manner, multiple orbital model parameter sets are “chained together” to form an overall orbital model parameter set of extended duration. 
     In steps  203  and  204 , the orbit of the satellite is integrated between start and end time of the interval. End point of an interval is the start point of the next one (if any). The very first interval may be initialized using position and velocity data of the Glonass ephemeris model. The step size of the integration (time interval between orbit integration data points) may be fixed or varying with time, typically in the order of seconds. A larger step size results in faster integration, but produces larger integration errors. 
     Although the step size of the integration should be selected to be small enough to reduce the integration errors, only a few of the orbit samples are required for deriving the unified ephemeris model. In step  205 , a few orbit samples, one sample for every hour or so, are converted into ECEF (WGS-84) coordinate system. These samples are inputs to the Keplerian Solver (KS) in step  206 . 
     The program checks in Step  207  if there are any more models that have to be built to cover the desired use time of a long term satellite model. If so, the program moves to next model in step  208  and then repeats steps  204  to  207 , otherwise it ends. 
       FIG. 3  is a flow chart diagram of converting orbit integration samples into the unified ephemeris model. KS ( 115  in  FIG. 1A ) is a least square Keplerian Solver (referred to as KS) that finds the values of 15 unknowns. The unknowns are the parameters of the long term satellite model in GPS ephemeris format, hence the following parameters: 
         {right arrow over (E)}=[a,e,i   0   ,M   0   ,Δn,iDot,ω,Ω   0   ,{dot over (Ω)},Crs,Crc,Cus,Cuc,Cis,Cic]   T   (1)
 
     In step  301 , KS parameters are initialized using the Glonass satellite&#39;s ephemeris model data. This step is necessary in that KS will only converge and produce a reasonably accurate model, if initial values for states of KS are close enough to their true values. A method to find these initial values using position and velocity data of the reference Glonass ephemeris model is described in the following paragraphs. These states could also be estimated using Keplerian parameters obtained from Glonass non-native data messages, also referred to herein as Glonass Almanac model data. 
     The Glonass Almanac model for a satellite consists of several parameters that include: time in UTC, correction to GPS time relative to GLONASS time, longitude of the first ascending node of the satellite orbit in PZ-90 coordinate system, time of the first ascending node passage of the satellite, correction to the mean value of orbit inclination angle, correction to the mean value of Draconian period of the satellite, rate of change of Draconian period of the satellite, eccentricity, and argument of perigee. From these parameters, the first nine parameters in equation (1) may be derived using techniques available in various Orbital mechanics textbooks and provided in the Glonass ICD document. The remaining six correction parameters may be set to zero. 
     In step  302 , GPS ephemeris equations are linearized using first order Taylor series method around initial values of KS parameters. 
     In step  307 , the following KS&#39; equation is solved. The KS&#39; equation is formed as following: 
         {right arrow over (Y)}=  H {right arrow over (X)}→{right arrow over (X)}= (   H     T     H   ) −1     H {right arrow over (Y)}   
         {right arrow over (E)}={right arrow over (E)}   0   +{right arrow over (X)}   (2)
 
     where, vector Y consists of satellite&#39;s XYZ position data of the integrated orbit in ECEF coordinate system, between time t 1  to t n , as shown below: 
     
       
         
           
             
               
                 
                   
                     Y 
                     → 
                   
                   = 
                   
                     [ 
                     
                       
                         
                           
                             
                               P 
                               x 
                             
                              
                             
                               ( 
                               
                                 t 
                                 1 
                               
                               ) 
                             
                           
                         
                       
                       
                         
                           
                             
                               P 
                               y 
                             
                              
                             
                               ( 
                               
                                 t 
                                 1 
                               
                               ) 
                             
                           
                         
                       
                       
                         
                           
                             
                               P 
                               z 
                             
                              
                             
                               ( 
                               
                                 t 
                                 1 
                               
                               ) 
                             
                           
                         
                       
                       
                         
                           ⋮ 
                         
                       
                       
                         
                           
                             
                               P 
                               x 
                             
                              
                             
                               ( 
                               
                                 t 
                                 n 
                               
                               ) 
                             
                           
                         
                       
                       
                         
                           
                             
                               P 
                               y 
                             
                              
                             
                               ( 
                               
                                 t 
                                 n 
                               
                               ) 
                             
                           
                         
                       
                       
                         
                           
                             
                               P 
                               z 
                             
                              
                             
                               ( 
                               
                                 t 
                                 n 
                               
                               ) 
                             
                           
                         
                       
                     
                     ] 
                   
                 
               
               
                 
                   ( 
                   3 
                   ) 
                 
               
             
           
         
       
     
     Matrix H contains partial derivatives of GPS ephemeris equations for calculating position and velocity of satellite in the ECEF coordinate system. These equations are listed below: 
         t   k   =t−t   oe  Time from ephemeris reference epoch 
         t   k   =t   k +( wkn−wkn   oe )*604800 
     
       
      
       M 
       k 
       =M 
       0 
       nt 
       k  
      
     
         M   k   =E   k   −e  sin  E   k    
       sin  v   k =√{square root over (1 −e   2 )}sin  E   k /(1 −e  cos  E   k )
 
       cos  v   k =(cos  E   k   −e )/(1− e  cos  E   k )
 
       sin Φ k =sin  v   k  cos ω+cos  v   k  sin ω
 
       cos Φ k =cos  v   k  cos ω−sin  v   k  sin ω
 
       sin 2Φ k =2 cos Φ k  sin Φ k  
 
       cos 2Φ k =cos 2 Φ k −sin 2  Φ k  
 
       δ u   k   =C   us  sin 2Φ k   +C   us  cos 2Φ k  
 
       δ r   k   =C   rs  sin 2Φ k   +C   rc  cos 2Φ k  
 
       δ i   k   =C   is  sin 2Φ k   +C   ic  cos 2Φ k  
 
       sin  u   k =sin Φ k  cos δ u   k +cos Φ k  sin δ u   k  
 
       cos  u   k =cos Φ k  cos δ u   k −cos Φ k  cos δ u   k  
 
         r   k   =A (1 −e  cos  E   k )+δ r   k  
 
         i   k   =i   0   +δi   k +( IDOT ) t   k    
         x′   k   =r   k  cos  u   k    x  position in orbital plane 
         y′   k   =r   k  sin  u   k    y  position in orbital plane 
       Ω k =Ω 0 −{dot over (Ω)}t oe +({dot over (Ω)}−{dot over (Ω)} e ) t  
 
         P   xk   =x′   k  cos Ω k   −y′   k  cos  i   k  sin Ω k  
 
         P   yk   =x′   k  sin Ω k   +y′   k  cos  i   k  cos Ω k    ECEF  coordinates for position
 
         P   zk   =y′   k  sin  i   k    
     The above non-linear equations are differentiated with respect to each of the 15 ephemeris parameters to form elements of matrix H, as follows: 
     
       
         
           
             
               H 
               _ 
             
             = 
             
               [ 
               
                 
                   
                     
                       
                         
                           ∂ 
                           
                             P 
                             x 
                           
                         
                         
                           ∂ 
                           a 
                         
                       
                        
                       
                         ( 
                         
                           t 
                           1 
                         
                         ) 
                       
                     
                   
                   
                     
                       
                         
                           ∂ 
                           
                             P 
                             x 
                           
                         
                         
                           ∂ 
                           e 
                         
                       
                        
                       
                         ( 
                         
                           t 
                           1 
                         
                         ) 
                       
                     
                   
                   
                     
                       
                         
                           ∂ 
                           
                             P 
                             x 
                           
                         
                         
                           
                             ∂ 
                             i 
                           
                            
                           
                               
                           
                            
                           0 
                         
                       
                        
                       
                         ( 
                         
                           t 
                           1 
                         
                         ) 
                       
                     
                   
                   
                     … 
                   
                   
                     
                       
                         
                           ∂ 
                           
                             P 
                             x 
                           
                         
                         
                           ∂ 
                           Cic 
                         
                       
                        
                       
                         ( 
                         
                           t 
                           1 
                         
                         ) 
                       
                     
                   
                 
                 
                   
                     
                       
                         
                           ∂ 
                           
                             P 
                             y 
                           
                         
                         
                           ∂ 
                           a 
                         
                       
                        
                       
                         ( 
                         
                           t 
                           1 
                         
                         ) 
                       
                     
                   
                   
                     
                       
                         
                           ∂ 
                           
                             P 
                             y 
                           
                         
                         
                           ∂ 
                           e 
                         
                       
                        
                       
                         ( 
                         
                           t 
                           1 
                         
                         ) 
                       
                     
                   
                   
                     
                       
                         
                           ∂ 
                           
                             P 
                             y 
                           
                         
                         
                           
                             ∂ 
                             i 
                           
                            
                           
                               
                           
                            
                           0 
                         
                       
                        
                       
                         ( 
                         
                           t 
                           1 
                         
                         ) 
                       
                     
                   
                   
                     … 
                   
                   
                     
                       
                         
                           ∂ 
                           
                             P 
                             y 
                           
                         
                         
                           ∂ 
                           Cic 
                         
                       
                        
                       
                         ( 
                         
                           t 
                           1 
                         
                         ) 
                       
                     
                   
                 
                 
                   
                     
                       
                         
                           ∂ 
                           
                             P 
                             z 
                           
                         
                         
                           ∂ 
                           a 
                         
                       
                        
                       
                         ( 
                         
                           t 
                           1 
                         
                         ) 
                       
                     
                   
                   
                     
                       
                         
                           ∂ 
                           
                             P 
                             z 
                           
                         
                         
                           ∂ 
                           e 
                         
                       
                        
                       
                         ( 
                         
                           t 
                           1 
                         
                         ) 
                       
                     
                   
                   
                     
                       
                         
                           ∂ 
                           
                             P 
                             z 
                           
                         
                         
                           
                             ∂ 
                             i 
                           
                            
                           
                               
                           
                            
                           0 
                         
                       
                        
                       
                         ( 
                         
                           t 
                           1 
                         
                         ) 
                       
                     
                   
                   
                     … 
                   
                   
                     
                       
                         
                           ∂ 
                           
                             P 
                             z 
                           
                         
                         
                           ∂ 
                           Cic 
                         
                       
                        
                       
                         ( 
                         
                           t 
                           1 
                         
                         ) 
                       
                     
                   
                 
                 
                   
                     ⋮ 
                   
                   
                     ⋮ 
                   
                   
                     ⋮ 
                   
                   
                     ⋱ 
                   
                   
                     ⋮ 
                   
                 
                 
                   
                     
                       
                         
                           ∂ 
                           
                             P 
                             x 
                           
                         
                         
                           ∂ 
                           a 
                         
                       
                        
                       
                         ( 
                         
                           t 
                           n 
                         
                         ) 
                       
                     
                   
                   
                     
                       
                         
                           ∂ 
                           
                             P 
                             x 
                           
                         
                         
                           ∂ 
                           e 
                         
                       
                        
                       
                         ( 
                         
                           t 
                           n 
                         
                         ) 
                       
                     
                   
                   
                     
                       
                         
                           ∂ 
                           
                             P 
                             x 
                           
                         
                         
                           
                             ∂ 
                             i 
                           
                            
                           
                               
                           
                            
                           0 
                         
                       
                        
                       
                         ( 
                         
                           t 
                           n 
                         
                         ) 
                       
                     
                   
                   
                     … 
                   
                   
                     
                       
                         
                           ∂ 
                           
                             P 
                             x 
                           
                         
                         
                           ∂ 
                           Cic 
                         
                       
                        
                       
                         ( 
                         
                           t 
                           n 
                         
                         ) 
                       
                     
                   
                 
                 
                   
                     
                       
                         
                           ∂ 
                           
                             P 
                             y 
                           
                         
                         
                           ∂ 
                           a 
                         
                       
                        
                       
                         ( 
                         
                           t 
                           n 
                         
                         ) 
                       
                     
                   
                   
                     
                       
                         
                           ∂ 
                           
                             P 
                             y 
                           
                         
                         
                           ∂ 
                           e 
                         
                       
                        
                       
                         ( 
                         
                           t 
                           n 
                         
                         ) 
                       
                     
                   
                   
                     
                       
                         
                           ∂ 
                           
                             P 
                             y 
                           
                         
                         
                           
                             ∂ 
                             i 
                           
                            
                           
                               
                           
                            
                           0 
                         
                       
                        
                       
                         ( 
                         
                           t 
                           n 
                         
                         ) 
                       
                     
                   
                   
                     … 
                   
                   
                     
                       
                         
                           ∂ 
                           
                             P 
                             y 
                           
                         
                         
                           ∂ 
                           Cic 
                         
                       
                        
                       
                         ( 
                         
                           t 
                           n 
                         
                         ) 
                       
                     
                   
                 
                 
                   
                     
                       
                         
                           ∂ 
                           
                             P 
                             z 
                           
                         
                         
                           ∂ 
                           a 
                         
                       
                        
                       
                         ( 
                         
                           t 
                           n 
                         
                         ) 
                       
                     
                   
                   
                     
                       
                         
                           ∂ 
                           
                             P 
                             z 
                           
                         
                         
                           ∂ 
                           e 
                         
                       
                        
                       
                         ( 
                         
                           t 
                           n 
                         
                         ) 
                       
                     
                   
                   
                     
                       
                         
                           ∂ 
                           
                             P 
                             z 
                           
                         
                         
                           
                             ∂ 
                             i 
                           
                            
                           
                               
                           
                            
                           0 
                         
                       
                        
                       
                         ( 
                         
                           t 
                           n 
                         
                         ) 
                       
                     
                   
                   
                     … 
                   
                   
                     
                       
                         
                           ∂ 
                           
                             P 
                             z 
                           
                         
                         
                           ∂ 
                           Cic 
                         
                       
                        
                       
                         ( 
                         
                           t 
                           n 
                         
                         ) 
                       
                     
                   
                 
               
               ] 
             
           
         
       
     
     In equation (2), vector E 0  contains initial values for the KS&#39; unknown parameters. These initial values should be reasonably close to true values of the unknowns, otherwise the KS will not converge, even after many iterations. In case of GPS, parameters of the satellite&#39;s ephemeris model are used to set the values of the parameters of vector E 0 . But this is not possible for Glonass, because its ephemeris data is not in GPS format. 
     In an exemplary embodiment, the initialization of Keplerian Solver for Glonass satellite, step  301 , involves the following steps:
         1. Use satellites&#39; position and velocity data provided in the Glonass ephemeris model to set the following position and velocity vectors in ECEF (Earth Centered Earth Fixed, which is the same as WGS-84) coordinate system:       

         {right arrow over (r)}   ECEF =( P   x   ,P   y   ,P   z ) GLO Ephemeris    
         {right arrow over (v)}   ECEF =( V   x   ,V   y   ,V   z ) GLO Ephemeris   (5)
         2. Transform above vectors to ICRF (Inertial Celestial Reference Frame) coordinate system, which unlike ECEF does not rotate with Earth (one cycle in about 24 hours). The method of transformation between ECEF to ICRF is available in orbital mechanics textbooks, for example:
           Title: GPS Satellite Surveying   Author: Alfred Leick   
               

         {right arrow over (r)}={right arrow over (r)}   ICRF =( X,Y,Z ) 
         {right arrow over (v)}={right arrow over (v)}   ICRF =( {dot over (X)},{dot over (Y)},Ż )  (6)
         3. Compute five parameters a, e, i, w, and M0 of vector E 0 , using equations below:
           Eccentricity (e):   
               

     
       
         
           
             
               
                 
                   
                     
                       h 
                       → 
                     
                     = 
                     
                       
                         r 
                         → 
                       
                       × 
                       
                         v 
                         → 
                       
                     
                   
                    
                   
                     
 
                   
                    
                   
                     
                       e 
                       → 
                     
                     = 
                     
                       
                         
                           1 
                           μ 
                         
                          
                         
                           ( 
                           
                             
                               v 
                               → 
                             
                             × 
                             
                               h 
                               → 
                             
                           
                           ) 
                         
                       
                       - 
                       
                         
                           r 
                           → 
                         
                         r 
                       
                     
                   
                    
                   
                     
 
                   
                    
                   
                     e 
                     = 
                     
                        
                       
                         e 
                         → 
                       
                        
                     
                   
                    
                   
                     
 
                   
                    
                   
                     μ 
                     = 
                     
                       3.986005 
                       × 
                       
                         10 
                         
                           - 
                           5 
                         
                       
                        
                       
                         
                           m 
                           3 
                         
                         
                           s 
                           2 
                         
                       
                     
                   
                 
               
               
                 
                   ( 
                   7 
                   ) 
                 
               
             
           
         
       
         
         
           
             
               
                 Where, μ is the Earth&#39;s gravitational constant. 
                 Semi-major Axis (a): 
               
             
           
         
       
    
     
       
         
           
             
               
                 
                   a 
                   = 
                   
                     
                       
                         h 
                         → 
                       
                       · 
                       
                         h 
                         → 
                       
                     
                     
                       μ 
                        
                       
                         ( 
                         
                           1 
                           - 
                           
                             e 
                             2 
                           
                         
                         ) 
                       
                     
                   
                 
               
               
                 
                   ( 
                   8 
                   ) 
                 
               
             
           
         
       
         
         
           
             
               
                 Inclination angle (i0): 
               
             
           
         
       
    
     
       
         
           
             
               
                 
                   
                     i 
                     0 
                   
                   = 
                   
                     
                       cos 
                       
                         - 
                         1 
                       
                     
                      
                     
                       ( 
                       
                         
                           
                             k 
                             ^ 
                           
                           · 
                           
                             h 
                             → 
                           
                         
                         
                            
                           
                             h 
                             → 
                           
                            
                         
                       
                       ) 
                     
                   
                 
               
               
                 
                   ( 
                   9 
                   ) 
                 
               
             
           
         
       
         
         
           
             
               
                 Argument of perigee (w): 
               
             
           
         
       
    
     
       
         
           
             
               
                 
                   w 
                   = 
                   
                     
                       cos 
                       
                         - 
                         1 
                       
                     
                      
                     
                       ( 
                       
                         
                           
                             n 
                             → 
                           
                           · 
                           
                             e 
                             → 
                           
                         
                         
                           
                              
                             
                               n 
                               → 
                             
                              
                           
                            
                           e 
                         
                       
                       ) 
                     
                   
                 
               
               
                 
                   ( 
                   10 
                   ) 
                 
               
             
           
         
       
         
         
           
             
               
                 Mean anomaly (M0): 
               
             
           
         
       
    
     
       
         
           
             
               
                 
                   
                     θ 
                     = 
                     
                       
                         cos 
                         
                           - 
                           1 
                         
                       
                        
                       
                         ( 
                         
                           
                             
                               e 
                               → 
                             
                             · 
                             
                               r 
                               → 
                             
                           
                           
                             e 
                             × 
                             r 
                           
                         
                         ) 
                       
                     
                   
                    
                   
                     
 
                   
                    
                   
                     E 
                     = 
                     
                       
                         cos 
                         
                           - 
                           1 
                         
                       
                        
                       
                         ( 
                         
                           
                             e 
                             + 
                             
                               cos 
                                
                               
                                 ( 
                                 θ 
                                 ) 
                               
                             
                           
                           
                             1 
                             + 
                             
                               e 
                               × 
                               
                                 cos 
                                  
                                 
                                   ( 
                                   θ 
                                   ) 
                                 
                               
                             
                           
                         
                         ) 
                       
                     
                   
                    
                   
                     
 
                   
                    
                   
                     
                       M 
                        
                       
                           
                       
                        
                       0 
                     
                     = 
                     
                       E 
                       - 
                       
                         e 
                         × 
                         
                           sin 
                            
                           
                             ( 
                             θ 
                             ) 
                           
                         
                       
                     
                   
                 
               
               
                 
                   ( 
                   11 
                   ) 
                 
               
             
           
         
       
         
         
           
             4. Compute Δn using equation below: 
           
         
       
    
     
       
         
           
             
               
                 
                   
                     Δ 
                      
                     
                         
                     
                      
                     n 
                   
                   = 
                   
                     
                       μ 
                     
                     
                       a 
                       3 
                     
                   
                 
               
               
                 
                   ( 
                   12 
                   ) 
                 
               
             
           
         
       
         
         
           
             5. Set iDot and {dot over (Ω)} to zero. Also set six correction terms C rs , C rc , C Us , C uc , C is , C ic  to zero. 
             6. At this point, the only remaining parameter to be set is Ω 0 . The best value of Ω 0  may be computed by checking all possible angle values between 0 to 360 degrees, with a fine resolution of one degree or so. The best value is one that results in minimum total position error at the time of Glonass Ephemeris (TOE), using the complete set of estimated KS parameters to form a GPS-like satellite ephemeris model. This model is used to calculate the satellite&#39;s position in ECEF coordinates at TOE, which is then compared with corresponding values provided by the Glonass ephemeris model to compute a position error vector. The absolute value of this position error vector is taken to be total position error. In other words, for each candidate value of Ω o , the KS is run to obtain a candidate GPS-like satellite ephemeris model which is evaluated by comparing the satellite position at TOE as determined using the candidate model, or parameter set, and the satellite position at TOE as determined using the Glonass ephemeris model. The candidate model yielding the smallest error is chosen. 
           
         
       
    
     In step  308 , differences between orbit integration position samples and equivalent ones from the computed Keplerian unified model are calculated; if the unified model is a good fit for the data, then model is outputted, otherwise step  309  is executed. In this step, states of the KS are re-initialized using their latest values as output at step  307 , then steps  307  and  308  are repeated, until the condition of step  308  is satisfied. In practice, usually just one iteration results satisfies the condition. The resulting unified model may then be published (step  310 ), i.e., made available for use in determining location. 
     Glonass unified navigation models, derived using the method presented herein, have a much longer validity time (on the order of a few hours or days) than the conventional Glonass ephemeris model (just plus or minus 15 minutes from TOE).  FIG. 4  and  FIG. 5  show typical position accuracy of Glonass ephemeris models for two satellites for eight hours, which is beyond their designed use time of 15 minutes (as suggested by Glonass ICD). In  FIG. 4  and  FIG. 5 , Glonass ephemeris models are for satellite indices (or known as slot number)  1  and  2  at Mar. 20, 2013, 03:45 GMT. As seen, errors grow to several kilometers, which is too inaccurate for a GNSS receiver and could not be used to produce a fix. The unified navigation models thus extend the availability of location determination in case newer models cannot be collected, due to any number of conditions such as infrequent tracking, or signals too weak allow demodulation of broadcast data. 
     In  FIG. 4  and  FIG. 5 , ‘Radial Error’ refers to error along the direction between center of Earth and satellite; ‘Maximum Observable Error’ is the radial error plus 25% of the remaining position error in the plane perpendicular to the radial direction, as shown in  FIG. 6 . Error is defined as difference between position data from a valid Glonass ephemeris model at the time and the corresponding position data derived from integrating the orbit using either the ICD method or the Unified ephemeris method. 
     For the same satellites and time, position accuracy of Glonass unified ephemeris models is on the order of meters, as shown in  FIG. 7  and  FIG. 8 . 
     Although the present invention has been described in terms of the presently preferred embodiments, it is to be understood that the disclosure is not to be interpreted as limiting. Various alterations and modifications will no doubt become apparent to those skilled in the art after having read the above disclosure. Accordingly, it is intended that the appended claims be interpreted as covering all alterations and modifications as fall within the scope of the invention.