# Patent

## Title
Systems and methods for synthesizing GPS measurements to improve GPS location availability

## Abstract

There are situations where GPS signals are received from less than four satellites. In order to improve the GPS location availability, disclosed here are systems and methods for synthesizing GPS measurements, which, together with fewer than four available real GPS signals, can be used to calculate a position fix. In particular, GPS range measurements for lost satellites, which are satellites that were previously tracked but are now not tracked, are synthesized to improve GPS signal availability. The synthesized measurements are used along with real measurements to enable accurate position fix even when GPS satellite availability is poor. Different synthesized measurement generation schemes, depending on whether an INS/DR aiding system is available, are further described herein.

## Background
TECHNICAL FIELD
The present disclosure is generally related to global positioning system (GPS) technology and, more particularly, is related to systems and methods for synthesizing GPS measurements to improve GPS location availability.
BACKGROUND
The Global Positioning System (GPS) is a satellite-based radio navigation system. In the GPS system, each GPS satellite, also called Space Vehicle (SV) broadcasts time-tagged ranging signals and navigation data. A GPS receiver tracks the satellites whose signals are within its field of view. From these visible satellites a GPS receiver extracts the navigation data and obtains range measurements from its received GPS satellite signals. The range measurements are used in a navigation solution to calculate a position fix of the GPS receiver.
The GPS navigation data contain, but are not limited to, satellite ephemeris, where ephemeris parameters can be used to accurately calculate satellite position and velocity. In addition to knowing the satellite position, the GPS receiver receives the range measurement to the satellite in order to calculate the position fix. Range measurements include, but are not limited to, two types of measurements—pseudorange (PR) and delta pseudo range (DPR).
A pseudorange is the apparent distance from the GPS receiver to the satellite. It is calculated by multiplying the speed of light by the apparent transit time, which is the time difference between a signal reception time based on a receiver clock and a signal transmission time based on a satellite clock. This range is termed pseudorange since the receiver clock is not synchronized with the satellite clock and thus the measured range is not necessarily the true range.
A second type of range measurement is the delta pseudo range (DPR), which in some receivers are reported in forms of carrier phase or Doppler frequency measurements. DPR is the measured pseudo range change rate. It is a function of a relative velocity, and a relative clock frequency drift between the satellite and the GPS receiver. The DPR measurement allows the receiver to calculate a receiver velocity and a receiver clock frequency drift, from which a new position fix can then be obtained if a previous position is known.
Pseudorange measurements associated with at least four satellites are typically used to obtain a position fix. This is because the receiver typically not only resolves its 3-D position, but also its clock bias since the receiver clock is not synchronized with the satellite clock. Four pseudorange measurements thus give four simultaneous equations enough information to calculate its 3-D position and clock bias. If only three pseudorange measurements are available, then the receiver can generally obtain a 2-D position fix by assuming the receiver's altitude is known. If less than three pseudorange measurements are available, then the receiver cannot compute the position fix.
Satellite ephemeredes are typically decoded from live signals before the navigation solution uses the pseudorange data to obtain a first position fix; however, it takes at least 18 seconds to collect a set of satellite clock and ephemeris parameters, and in some weak signal environments, correctly decoding ephemeredes is very difficult. Several solutions are available to reduce the time to first fix (TTFF). One such solution is the Assisted GPS (AGPS) technology which uses a GPS assistance server to assist the GPS receiver in obtaining the position fix. In one type of AGPS operation modes—Mobile Station assisted (MS-assisted), the GPS receiver sends the GPS measurement data wirelessly to the GPS server for the GPS server to calculate the receiver position. It is a solution, among others, to the Federal Communication Commission (FCC) Enhanced-911 (E911) requirement which mandates that the position of a cell phone to be available to emergency call dispatchers.
However, in the operation of the GPS receiver, there are many locations where the number of satellites available to the GPS receiver for measurement is less than four. Such situations arise in urban canyons, parking structures, tunnels, or other locations with significant signal blockage. In these situations the GPS server in an AGPS operation mode or the navigation solution in a stand-alone GPS receiver may not be able to obtain the position fix or may only obtain a very poor fix.
SUMMARY
There are situations where the GPS signals are received from less than four satellites. In order to improve the GPS location availability, disclosed here are systems and methods for synthesizing GPS measurements, which, together with fewer than four available real GPS measurements, can be used to calculate a position fix. In particular, GPS range measurements for lost satellites, which are satellites that were previously tracked but are now not visible, are synthesized to improve GPS signal availability. The synthesized measurements are used along with real measurements to enable a more accurate position fix even when GPS satellite visibility and geometry were originally poor. Different synthesized measurement generation schemes, depending on whether an INS/DR aiding system is available, are further described herein.
GPS range measurements can be synthesized for stand-alone GPS receivers that do not have any external aiding sensors or systems or for GPS receivers where the external sensors or systems do not deliver any valid outputs. Alternatively or additionally, the GPS range measurements can be synthesized for GPS receivers where external sensors such as inertial navigation system (INS) sensors or automobile dead reckoning (DR) systems are available to deliver valid outputs.
Other systems, methods, features of the invention will be or will become apparent to one skilled in the art upon examination of the following figures and detailed description. It is intended that all such systems, methods, features be included within the scope of the invention, and be protected by the accompanying claims.



BRIEF DESCRIPTION
Many aspects of the disclosure can be better understood with reference to the following drawings. The components in the drawings are not necessarily to scale, emphasis instead being placed upon clearly illustrating the principles of the present disclosure. Moreover, in the drawings, the reference numerals designate corresponding parts throughout the several views. While several embodiments are described in connection with these drawings, there is no intent to limit the disclosure to the embodiment or embodiments disclosed herein. On the contrary, the intent is to cover all alternatives, modifications, and equivalents.
FIG. 1 is a block diagram that illustrates a system for synthesizing GPS measurements;
FIG. 2 is a block diagram that illustrates an embodiment of a navigation device 115, such as that shown in FIG. 1;
FIG. 3 is a block diagram that illustrates an embodiment of a GPS signal processing system, such as that shown in FIG. 2, which synthesizes GPS measurements;
FIG. 4 is a flow diagram that illustrates an embodiment of the architecture, functionality, and/or operation of the system, such as that shown in FIG. 1, which synthesizes pseudo-range (PR) and delta pseudo range (DPR);
FIG. 5 is a flow diagram that illustrates an embodiment of the architecture, functionality, and/or operation for estimating PR and DPR, such as that shown in step 430 of FIG. 4;
FIG. 6 is a diagram that illustrates a GPS signal availability scenario that generally occurs in urban canyon environments; and
FIG. 7 is a block diagram that illustrates an embodiment of a GPS signal process system 210, such as that shown in FIGS. 2 and 3.



DETAILED DESCRIPTION
Exemplary systems are first discussed with reference to the figures. Although these systems are described in detail, they are provided for purposes of illustration only and various modifications are feasible. After the exemplary systems are described, examples of flow diagrams of the systems are provided to explain the manner in which GPS measurements are synthesized.
FIG. 1 is a block diagram that illustrates a system 100 for synthesizing GPS measurements. A simple system 100 comprises a plurality of signal sources 105, 110, 113, 114 and a navigation device 115. Alternatively or additionally, a more complex system 100, such as an assisted global positioning system (AGPS), further comprises a base station 120 and a server 125. Although only one navigation device 115, one base station 120, and one server 125 are shown in system 100, the system 100 can include multiple navigation devices, multiple base stations and/or multiple servers. Alternatively or additionally, the server 125 may be co-located with the base station 120 or with the navigation device 115.
The signal sources 105, 110, 113, 114 include GPS satellites (also known as space vehicles), among others. The signal sources 105, 110, 113, 114 generally orbit above the location of the navigation devices 115 at any given time. The navigation devices 115 include, but are not limited to, GPS receivers, cell phones with embedded signal receivers, and personal digital assistants (PDAs) with embedded signal receivers, among others. The signal sources 105, 110, 113, 114 transmit signals to the navigation devices 115, which use the signals to determine the location, speed, and direction of the navigation devices 115.
In an AGPS system, a GPS assistance server 125 assists the navigation devices 115, such as a Mobile Station (MS) client (e.g., a cellular phone) in obtaining a position fix on the client's position. In one embodiment of the AGPS, the MS client 115 sends GPS measurements to the GPS server 125, which then calculates the client's position. For an accurate 3-D position fix the MS client 115 generally receives signals from four satellites 105, 110, 113, 114. However, signal blockage due to the mobile environment in which the client operates may prevent visibility to four satellites 105, 110, 113, 114. For example, as a mobile client 115 moves through the urban canyon, satellites 105, 110, 113, 114 may drop out of view, and conversely other satellites 105, 110, 113, 114 may come into view. If the GPS measurements to the lost satellites can be synthesized during the time interval when less than four satellites are visible, then the navigation device 115 and/or the GPS server can calculate the 3-D position fix.
FIG. 2 is a block diagram that illustrates an embodiment of the navigation device 115, such as that shown in FIG. 1. The navigation device 115 includes, but is not limited to, sensor(s) 205, a GPS signal processing system 210, and a user interface 215. It should be noted that the sensor 205 may not be included in some navigation devices 115. The sensor 205 can include, but is not limited to, inertial sensors that include, for example, micro-electromechanical system (MEMS) sensors, such as, for example, accelerometers and gyroscopes, among others. In general, accelerometers measure acceleration of their own motion. The accelerometer detects specific force which includes gravity and vehicle acceleration.
In general, an inertial navigation system (INS) has accelerometers and gyroscopes accelerometers mounted on multiple axes of a carrier vehicle. The accelerometers measure the vehicle acceleration and the gyroscopes measure orientation or angular change rate. In general, the sensor 205 can detect the difference between the moving and stationary vibrations of a vehicle. In particular, the sensor 205 can detect the acceleration and/or the angular change rate of the vehicle and generate a vehicle vibration profile based on the detected acceleration and/or the detected angular change rate. Based on the sensor measurements, the INS can calculate the traveled distance and direction change through integration.
INS is one kind of dead reckoning (DR) systems. Besides the INS, another DR system is, e.g., differential wheel speed sensor method, in which the distance traveled and the heading change can be derived based on one or two pairs of left and right wheel sensors. In general, dead reckoning refers to a process of calculating location by integrating measured increments of distance and direction of travel relative to a known location.
The GPS signal processing system 210 can include, but is not limited to, a GPS receiver, among others. Not only is the GPS receiver capable of computing position fixes by itself without sensors 205, but it can also be integrated with the INS/DR. The INS/DR and GPS can be integrated in a loose, tight or deep way. The integrated system can not only eliminate the error growth problem of an INS/DR but also overcome lots of difficulties faced by the GPS receiver in, for example, urban canyon environments.
FIG. 3 is a block diagram that illustrates an embodiment of the GPS signal processing system, such as that shown in FIG. 2, which synthesizes GPS measurements. The GPS signal processing system 210 can include, but is not limited to, an antenna 305, an application-specific integration circuit (ASIC) hardware 303 and a tracker and navigator 317. The ASIC hardware 303 includes a radio frequency (RF) front end 310 and a baseband digital signal processing (DSP) 320. The navigation tracker and navigator 317 includes, but is not limited to, a position, velocity, and time (PVT) unit 330 and tracking loops unit 320 that controls the DSP. The tracker and navigator 317 can be, for example, in a form of software running inside a microprocessor, among others.
The antenna 305 receives GPS signals for visible satellites, and sends the received signals to the RF front end unit 310 that down-converts, magnifies, filters, and digitizes the received signals into digital immediate frequency (IF) signals 315. Such digital IF signals 315 are input to the baseband DSP unit 320 that acquires and tracks the received signals and then generates pseudorange measurements 325 according to the received GPS signals. In one embodiment, the baseband DSP 320 includes a carrier tracking loop (not shown) that computes an estimated DPR and a code tracking loop (not shown) that computes an estimated PR.
The baseband DSP unit 320 delivers the generated pseudorange measurements 325 to the PVT unit 330 that computes a GPS solution or position fix 335 based on the generated pseudorange measurements 325 with or without the aid of an external aiding sensor or system. The PVT unit 330 includes, but is not limited to, a navigation algorithm (not shown), among others, which can include, but is not limited to, a Least-Square (LS) or Kalman filtering, among others. It should be noted that in an AGPS system, the server 125 receives the GPS measurements from the navigation devices 115 and calculates a position fix on the receiver's position.
When signal blockage occurs in an urban environment, the RF signal may be impaired where the baseband DSP 320 is unable to track the signal sources 105, 110, 113, 114 (FIG. 1) and then fail to generate the GPS range measurements for the signal sources 105, 110, 113, 114. Accordingly, GPS range measurements can be synthesized at, for example, the baseband DSP 320, PVT Unit 330, or a stand alone GPS measurement synthesis unit (not shown) between the baseband DSP 320 and PVT Unit 330, among others. Operations for synthesizing GPS range measurements are described in relation to FIGS. 4 and 5.
FIG. 4 is a flow diagram that illustrates an embodiment of the architecture, functionality, and/or operation of the system, such as that shown in FIG. 1, which synthesizes pseudorange (PR) and delta pseudo range (DPR). Beginning with steps 405 and 410, a navigation device 115 (FIG. 1) receives GPS signals from signal sources 105, 110, 113, 114 (FIG. 1) and calculates the pseudoranges and delta pseudo ranges associated with the GPS signals from the signal sources 105, 110, 113, 114, respectively. It should be noted that calculated PRs and DPRs and previous PRs and DPRs are stored in memory (not shown) in the navigation device 115.
In step 415, the navigation device 115 determines whether the navigation device 115 receives three (3) or less signal sources. If the navigation device 115 receives GPS signals from at least four signal sources, the navigation device 115, in step 420, calculates the PRs and DPRs associated with the GPS signals from the at least four signal sources. In step 420, the navigation device 115 and/or the server 125 calculates a position fix using the calculated PRs and DPRs.
If the navigation device 115 receives the GPS signals from three or less signal sources, the navigation device 115, in step 425, determines which signal source(s) was lost or became untracked. In step 430, the navigation device 115 estimates pseudorange and delta pseudo range for each lost signal source based on the received GPS signals. In step 435, the navigation device 115 and/or server 125 calculates a position fix using the calculated pseudoranges and delta pseudo ranges as well as the estimated pseudorange and delta pseudo range in a navigation solution.
FIG. 5 is a flow diagram that illustrates an embodiment of the architecture, functionality, and/or operation for estimating pseudorange (PR) and delta pseudo range (DPR) for signal sources 105, 110, 113, 114 (FIG. 1) that are temporarily invisible or lost, such as that shown in step 430 of FIG. 4. Beginning with step 505, the navigation device 115 determines whether the navigation device 115 has external aiding sensors or systems 205 (FIG. 2), or the navigation device 115 receives GPS information associated with the external aiding sensors or systems 205.
The navigation device 115 has a time counter for each satellite, which records the time when the satellite was last tracked. This recorded time cannot be too long from the current time, t2, the difference of which are compared with the time threshold. In step 510, if the navigation device 115 does not utilize external aiding sensors or systems 205, the navigation device 115 determines whether the difference between the recorded time and the time, t2, associated with estimating the PR and DPR passed (e.g., is less than) a time threshold. The DPR is assumed to stay relatively constant over a short time interval; thus, the time threshold includes several seconds in any case and up to a minute for high-elevation satellites if the navigation device 115 is static or moves with a nearly constant speed.
The time, t1, generally refers to the last time when the PR and DPR measurements, either real or synthesized, are valid. Once a measurement is received or synthesized at time, t2, it immediately becomes time, t1, for next epoch. Accordingly, t2−t1 is usually very close to 1 second (but not exactly 1 second).
Generally, the DPR is a function of the relative velocity between the signal source 105, 110, 113, 114 (FIG. 1) and the receiver 210 (FIG. 2) projected along the line of sight, the clock frequency drift of the signal source 105, 110, 113, 114, and the receiver's clock frequency drift. It is expressed by

dr(k)=({right arrow over (v)}(k)−{right arrow over (v)}rx)·{right arrow over (1)}(k)+δfrx−δf(k)  (Eq. 1)

where dr(k) refers to the DPR of a satellite 105, 110, 113, 114, {right arrow over (v)}(k) refers to the satellite velocity, {right arrow over (v)}rx refers to the receiver velocity, {right arrow over (1)}(k) refers to the line of sight unit vector from the receiver 210 to the satellite 105, 110, 113, 114, δfrx refers to the receiver frequency drift, and δf(k) refers to the satellite clock frequency drift.

The receiver 210 is assumed to have a constant velocity motion relative to the satellite 105, 110, 113, 114. Since the satellite velocity {right arrow over (v)}(k), about 3 kilometers per second, is much larger than the receiver velocity {right arrow over (v)}rx, the smooth motion of the satellite 105, 110, 113, 114 and its line of trajectory largely determine the relative velocity between the satellite 105, 110, 113, 114 and the receiver 210. Within a short time interval, it is reasonable to assume that the satellite 105, 110, 113, 114 moves with a constant velocity projected on the line of sight. Therefore, ({right arrow over (v)}(k)−{right arrow over (v)}rx)·{right arrow over (1)}(k) is generally constant for a short duration of up to 5 seconds for land vehicle navigation and longer than 5 seconds for a receiver that is static or moves with a constant speed. The δfrx and δf(k) are also reasonably assumed to be stable for this brief duration.
The relationship between PR and DPR is expressed by

pr2(k)−pr1(k)≈(t2−t1)×dr2(k)  (Eq. 2)

where pr1(k) and pr2(k) are the noise-free pseudorange measurements for the same satellite 105, 110, 113, 114 delivered by a GPS receiver 210 at t1 and t2, respectively, and dr2(k) is the corresponding noise-free DPR measurement at t2. An approximation equality used in the above formula is due to the code/carrier phase ionospheric divergence, among others. For example, the ionospheric delay makes PR measurements longer while the DPR measurements shorter.

If the time difference from step 510 is not small enough or the user dynamic is not constant, then in step 520 the navigation device 115 and/or the server 125 stops estimation of the PR and DPR. In step 515, since DPR measures the pseudorange change rate and if DPR is assumed to be constant over a brief duration and if the receiver 210 loses the tracking of the satellite 105, 110, 113, 114 at t2, the receiver 210 can synthesize the kth satellite's pr2(k) and dr2(k) as:

dr2(k)=dr1(k)  (Eq. 3)

pr2(k)=pr1(k)+dr1(k)(t2−t1)  (Eq. 4)

If the receiver 210 receives the GPS information associated with the external aiding sensors or systems 205, the navigation device 115 and/or server 125 can synthesize GPS measurements using the GPS information from the external aiding sensors 205, such as inertial navigation systems (INS) or automobile ABS dead reckoning (DR) system. The sensors 205 can further include, but are not limited to, Cell ID, Timing Access (TA), Round Trip Time (RTT), Angle of Arrival (AoA), signal strength; with the aid of system such as wireless network of 802.11, Bluetooth; or with other hybrid technology, and other Global Satellite Navigation System (GNSS) signals, such as Galileo and GLONASS. In general, if the position, velocity and clock can be computed or maintained with the help of any external aiding sensors or systems, GPS measurements for temporarily invisible satellites can be synthesized.
The INS and DR sensors 205 generally deliver two pieces of information about the motion of the navigation device 115, such as, for example, the distance traveled and the heading change during a certain period of time. Alternatively or additionally, an INS/DR system 205 delivers velocity information in each axis of a coordinate system, either a 3D or 2D, depending on the number of sensors. For example, for landing vehicle navigation, two accelerometers can be mounted and can deliver a 2D velocity information in a horizontal plane. The vertical velocity is assumed to be zero.
In another example, if three accelerometers on three perpendicular axes are mounted, then the accelerometers can deliver 3D velocity information. Given a 3D velocity {right arrow over (v)}rx and available GPS measurements, in step 525, the receiver movement is calculated as (t2−t1)×{right arrow over (v)}rx based on the receiver velocity {right arrow over (v)}rx, from the external aiding sensors 205. In step 530, given the receiver's position {right arrow over (x)}1 at t1, the navigation device 115 can update the receiver's position {right arrow over (x)}2 at time t2 based on the calculated receiver movement.

{right arrow over (x)}2={right arrow over (x)}1+(t2−t1){right arrow over (v)}rx  (Eq. 5)

In step 535, based on the updated receiver position {right arrow over (x)}2, and the satellite position for each available satellite from the ephemeris, the line of sight vector {right arrow over (l)} to each available satellite (e.g., satellite k) can be calculated. In step 537, the DPR measurement residual is calculated for each tracked or visible satellite k as well as {right arrow over (v)}rx from the external aiding sensors 205, the actual DPR measurement from the carrier tracking loop, satellite velocity {right arrow over (v)}(k) and satellite clock frequency drift δf(k) from the ephemeris based on the calculated line of sight vector {right arrow over (1)}(k) as follows:

δfrx=dr(k)−({right arrow over (v)}(k)−{right arrow over (v)}rx)·{right arrow over (1)}(k)+δf(k)  (Eq. 6)

In step 540, the average of the DPR measurement residuals for all the tracked satellites is regarded as the receiver frequency drift δfrx and is calculated as follows:





  
    
      
        
          δ
          ⁢
          
            
          
          ⁢
          
            f
            rx
          
        
        =
        
          
            1
            N
          
          ⁢
          
            
              ∑
              
                k
                =
                1
              
              N
            
            ⁢
            
              δ
              ⁢
              
                
              
              ⁢
              
                f
                
                  (
                  k
                  )
                
              
            
          
        
      
    
    
      
        (
        
          Eq
          .
          
            
          
          ⁢
          7
        
        )
      
    
  




where k from 1 to N denotes all the tracked satellites.

In step 545, after obtaining the estimates of the receiver velocity {right arrow over (v)}rx from the external aiding sensors 205, and frequency drift δfrx at t2, the navigation 115 synthesizes GPS measurements for lost satellites from equation (1) and equation (2) as follows:

dr2(k)=({right arrow over (v)}(k)−{right arrow over (v)}rx)·{right arrow over (1)}(k)−δf(k)+δfrx  (Eq. 8)

pr2(k)=pr1(k)+dr2(k)·(t2−t1)  (Eq. 9)

where index k is from N+1 to M, and these satellites were previously tracked but lost at t2. For each non-tracked satellite k, satellite velocity {right arrow over (v)}(k), satellite clock frequency drift δf(k) and the line of sight unit vector {right arrow over (1)}(k) from the receiver to the lost satellite at t2 can be easily calculated even though the satellite is not tracked at t2.

Since the external aiding sensors measurements reflect the actual dynamics of the receiver 210, the navigation device 115 does not need to assume any user dynamic motion model to synthesize the GPS measurements. The navigation device 115 having the external aiding sensors 205 can not only synthesize both PR and DPR measurements, but can also synthesize measurements for lost satellites for a longer duration. Simulations and experiments showed that the navigation device 115 having the external aiding sensors 205 synthesizes accurate GPS measurements for satellites even after an approximately 60-second outage, for example. Generally, the accuracy of such synthesized GPS measurements and the valid duration for synthesizing the GPS measurements depend on the accuracy of the external aiding sensors 205 and their error accumulation nature. It should be noted that the navigation device 115 having the external aiding sensors 205 generally includes an initial receiver position at previous time of t1. If the navigation device 115 does not have the initial receiver position, the navigation device 115 can calculate the initial receiver position using steps 510 to 520, which assumes that the navigation device 115 does not have external aiding sensors.
Though the process in step 430 is intended to improve AGPS location availability, the process in step 430 can also be used to improve the availability of stand-alone GPS receivers. For example, the use of steps 525 to 545 to update the average receiver clock frequency drift δfrx, and to update the DPR and PR for the lost satellite can be used to initialize Kalman filter earlier in a standalone GPS navigation solution. Alternatively or additionally, steps 510 to 520 can be used to obtain 3D Least Squares position fix more quickly in AGPS mode.
FIG. 6 is a diagram that illustrates a GPS signal availability scenario that generally occurs in urban canyon environments. The GPS signals are tracked according to time of week (TOW) GPS time 605, which is generated based on a combination of the current Week Number and the time of week. The TOW refers to the number of seconds into the week ranging from 0 second to 604800 seconds and is counted from midnight Saturday/Sunday on the GPS time scale.
In this example, during the six seconds from 420387 seconds to 420392 seconds, there were only three or even two space vehicle measurements available at certain seconds. The GPS signals associated with space vehicles 1 and 23 are available as first and second sets 610, 615 of space vehicle measurements. However, a third set 620 of space vehicle measurement is available from both space vehicles 11 and 20. There are no available GPS signals for a fourth set 620 of space vehicle measurement. Although losing track of space vehicle 11, the navigation device 115 tracked a new space vehicle, e.g., space vehicle 20, from 420388 seconds to 420389 seconds. Based on the space vehicle 11 measurements at 420388 seconds, the navigation device 115 can synthesize measurements 625 for space vehicle 11, for example, at 420389 seconds. Together with the synthesized measurements of space vehicle 11, a total of four satellite measurements is available where the navigation device 115 and/or the server 125 can calculate a 3D position fix at 420389 seconds.
FIG. 7 is a block diagram that illustrates an embodiment of the GPS signal process system 210, such as that shown in FIGS. 2 and 3. The GPS signal process system 210 includes a processor 710, a network interface 720, memory 730, and non-volatile storage 740. Examples of non-volatile storage include, for example, a hard disk, flash RAM, flash ROM, EEPROM, etc. These components are coupled via a bus 750. The memory 730 includes a navigational solution manager 760 that facilitates synthesizing GPS measurements and processing a navigational solution based on the synthesized GPS measurements. Operations of the navigational manager 760 can be described in detail in relation to FIGS. 4 and 5. The memory 730 contains instructions which, when executed by the processor 710, implement at least a portion of the methods and systems disclosed herein, particularly the navigational solution manager 760. Omitted from FIG. 7 are a number of conventional components, known to those skilled in the art that are unnecessary to explain the operation of the device 210.
The systems and methods disclosed herein can be implemented in software, hardware, or a combination thereof. In some embodiments, the system and/or method is implemented in software that is stored in a memory and that is executed by a suitable microprocessor (μP) situated in a computing device. However, the systems and methods can be embodied in any computer-readable medium for use by or in connection with an instruction execution system, apparatus, or device. Such instruction execution systems include any computer-based system, processor-containing system, or other system that can fetch and execute the instructions from the instruction execution system. In the context of this disclosure, a “computer-readable medium” can be any means that can contain, store, communicate, propagate, or transport the program for use by, or in connection with, the instruction execution system. The computer readable medium can be, for example, but not limited to, a system or propagation medium that is based on electronic, magnetic, optical, electromagnetic, infrared, or semiconductor technology.
Specific examples of a computer-readable medium using electronic technology would include (but are not limited to) the following: an electrical connection (electronic) having one or more wires; a random access memory (RAM); a read-only memory (ROM); an erasable programmable read-only memory (EPROM or Flash memory). A specific example using magnetic technology includes (but is not limited to) a portable computer diskette. Specific examples using optical technology include (but are not limited to) optical fiber and compact disc read-only memory (CD-ROM).
Note that the computer-readable medium could even be paper or another suitable medium on which the program is printed. Using such a medium, the program can be electronically captured (using, for instance, optical scanning of the paper or other medium), compiled, interpreted or otherwise processed in a suitable manner, and then stored in a computer memory. In addition, the scope of the certain embodiments of the present disclosure includes embodying the functionality of the preferred embodiments of the present disclosure in logic embodied in hardware or software-configured mediums.
It should be noted that any process descriptions or blocks in flowcharts should be understood as representing modules, segments, or portions of code which include one or more executable instructions for implementing specific logical functions or steps in the process. As would be understood by those of ordinary skill in the art of the software development, alternate embodiments are also included within the scope of the disclosure. In these alternate embodiments, functions may be executed out of order from that shown or discussed, including substantially concurrently or in reverse order, depending on the functionality involved.
This description has been presented for purposes of illustration and description. It is not intended to be exhaustive or to limit the disclosure to the precise forms disclosed. Obvious modifications or variations are possible in light of the above teachings. The embodiments discussed, however, were chosen to illustrate the principles of the disclosure, and its practical application. The disclosure is thus intended to enable one of ordinary skill in the art to use the disclosure, in various embodiments and with various modifications, as are suited to the particular use contemplated. All such modifications and variation are within the scope of this disclosure, as determined by the appended claims when interpreted in accordance with the breadth to which they are fairly and legally entitled.

## Claims

1. A method for synthesizing global positioning system (GPS) measurements, the method comprising:
receiving GPS signals from at least four signal sources by a navigation device;
calculating pseudoranges (PRs) and delta pseudo ranges (DPRs) associated with the GPS signals from the at least four signal sources;
identifying a lost signal source when the GPS signals are received from less than four of the at least four signal sources;
estimating PRs and DPRs for the lost signal source based on previously calculated PRs and DPRs of the lost signal source; and
calculating a position fix using the calculated PRs and DPRs, and the estimated PRs and DPRs in a navigation solution.

2. The method as defined in claim 1, further comprising determining whether the difference between a time associated with the previously calculated PRs and DPRs and a time associated with the estimated PRs and DPRs passed a time threshold.

3. The method as defined in claim 2, wherein the estimated PRs and DPRs can be used to obtain a 3D Least Squares position fix in an Assisted GPS (AGPS) mode.

4. The method as defined in claim 1, further comprising determining whether the navigation device includes external aiding sensors wherein, the navigation device includes a receiver.

5. The method as defined in claim 4, further comprising responsive to determining that the navigation device includes the external aiding sensors, calculating the movement of the receiver using the external aiding sensors.

6. The method as defined in claim 5, further comprising updating the position of the receiver based on the calculated receiver movement.

7. The method as defined in claim 6, further comprising:
determining whether the GPS signals are received from three or less signal sources of the at least four signal sources;
calculating line of sight vectors for the three or less signal sources of the signal sources based on the updated receiver's position; and
calculating DPR residuals for the three or less signal sources of the signal sources.

8. The method as defined in claim 7, further comprising calculating a receiver frequency drift by averaging the DPR residuals.

9. The method as defined in claim 8, wherein estimating the PRs and DPRs for the lost signal source is based on the calculated receiver frequency drift and the calculated receiver movement.

10. The method as defined in claim 9, further comprising initializing a Kalman filter in a standalone GPS navigation solution based on the updated receiver's clock frequency drift and the estimated PRs and DPRs.

11. The method as defined in claim 1, further comprising transmitting the estimated PRs and DPRs to an Mobile Station (MS)-assisted GPS server in an AGPS operation mode.

12. A system for synthesizing global positioning system (GPS) measurements comprising:
a GPS receiver that is configured to:
receive GPS signals from at least four satellites,
calculate pseudoranges (PRs) and delta pseudo ranges (DPRs) associated with the GPS signals from the at least four satellites,
identify a lost satellite when the GPS signals are received from less than four of the at least four satellites, and
estimate PRs and DPRs for the lost satellite based on previously calculated PRs and DPRs of the lost satellite,

a server in an Assisted GPS (AGPS) operation mode that is configured to:
receive the calculated PRs and DPRs, and the estimated PRs and DPRs from the GPS receiver,
calculate a position fix of the GPS receiver based on the received calculated PRs and DPRs, and the received estimated PRs and DPRs, and
transmit the position fix to the GPS receiver.

13. The system as defined in claim 12, wherein the GPS receiver is further configured to determine whether the difference between a time associated with the previously calculated PRs and DPRs and a time associated with the estimated PRs and DPRs has passed a time threshold.

14. The system as defined in claim 12, wherein the server is configured to obtain a 3D Least Squared position fix in AGPS mode based on the received estimated PRs and DPRs.

15. The system as defined in claim 12, wherein the GPS receiver includes an external aiding sensor or system, the external aiding sensor or system including at least one of inertial navigation system (INS) sensors and automobile ABS dead reckoning (DR) system.

16. The system as defined in claim 15, wherein the GPS receiver is further configured to calculate the movement of the receiver using the external aiding sensors.

17. The system as defined in claim 16, wherein the GPS receiver is further configured to update the position of the receiver based on the calculated receiver movement.

18. The system as defined in claim 17, wherein the GPS receiver is further configured to:
determine whether the at least four GPS signals are received from three or less signal sources of the signal sources,
calculate line of sight vectors for the three or less signal sources of the at least four signal sources based on the updated receiver's position, and
calculate DPR residuals for the three or less signal sources of the at least four signal sources.

19. The system as defined in claim 18, wherein the GPS receiver is further configured to calculate a receiver frequency drift based on the calculated line of sight vectors.

20. The system as defined in claim 19, wherein the GPS receiver is further configured to estimate the PRs and DPRs for the lost signal source based on the calculated receiver frequency drift and the calculated receiver movement.

21. A GPS receiver comprising:
an antenna that is configured to receive GPS signals from at least four signal sources; and
a baseband digital signal processor that is configured to:
receive the GPS signals from the antenna,
calculate pseudoranges (PRs) and delta pseudo ranges (DPRs) associated with the GPS signals from the at least four signal sources,
identify a lost signal source when the GPS signals are received from less than four of the at least four signal sources;
estimate PRs and DPRs for the lost signal source based on previously calculated PRs and DPRs of the lost signal source; and
calculate a position fix using the calculated PRs and DPRs, and the estimated PRs and DPRs in a navigation solution.