GB2339641A - GPS receiver with remote processing - Google Patents

GPS receiver with remote processing Download PDF

Info

Publication number
GB2339641A
GB2339641A GB9925349A GB9925349A GB2339641A GB 2339641 A GB2339641 A GB 2339641A GB 9925349 A GB9925349 A GB 9925349A GB 9925349 A GB9925349 A GB 9925349A GB 2339641 A GB2339641 A GB 2339641A
Authority
GB
United Kingdom
Prior art keywords
time
satellite
receiver
data
gps
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
GB9925349A
Other versions
GB2339641B (en
GB9925349D0 (en
Inventor
Daniel David Harrison
Anantha Krishnan Pradeep
Glen William Brooksby
Stephen Michael Hladik
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
General Electric Co
Original Assignee
General Electric Co
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by General Electric Co filed Critical General Electric Co
Priority claimed from GB9610549A external-priority patent/GB2301725B/en
Publication of GB9925349D0 publication Critical patent/GB9925349D0/en
Publication of GB2339641A publication Critical patent/GB2339641A/en
Application granted granted Critical
Publication of GB2339641B publication Critical patent/GB2339641B/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G08SIGNALLING
    • G08GTRAFFIC CONTROL SYSTEMS
    • G08G1/00Traffic control systems for road vehicles
    • G08G1/20Monitoring the location of vehicles belonging to a group, e.g. fleet of vehicles, countable or determined number of vehicles
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B61RAILWAYS
    • B61LGUIDING RAILWAY TRAFFIC; ENSURING THE SAFETY OF RAILWAY TRAFFIC
    • B61L25/00Recording or indicating positions or identities of vehicles or vehicle trains or setting of track apparatus
    • B61L25/02Indicating or recording positions or identities of vehicles or vehicle trains
    • B61L25/025Absolute localisation, e.g. providing geodetic coordinates
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/01Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/03Cooperating elements; Interaction or communication between different cooperating elements or between cooperating elements and receivers
    • G01S19/09Cooperating elements; Interaction or communication between different cooperating elements or between cooperating elements and receivers providing processing capability normally carried out by the receiver
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/38Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system
    • G01S19/39Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system the satellite radio beacon positioning system transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/42Determining position
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S5/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S5/0009Transmission of position information to remote stations
    • G01S5/0018Transmission from mobile station to base station
    • G01S5/0027Transmission from mobile station to base station of actual mobile position, i.e. position determined on mobile
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S5/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S5/0009Transmission of position information to remote stations
    • G01S5/0018Transmission from mobile station to base station
    • G01S5/0036Transmission from mobile station to base station of measured values, i.e. measurement on mobile and position calculation on base station
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S5/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S5/02Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves
    • G01S5/10Position of receiver fixed by co-ordinating a plurality of position lines defined by path-difference measurements, e.g. omega or decca systems
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S5/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S5/02Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves
    • G01S5/12Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves by co-ordinating position lines of different shape, e.g. hyperbolic, circular, elliptical or radial
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S5/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S5/02Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves
    • G01S5/14Determining absolute distances from a plurality of spaced points of known location
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B61RAILWAYS
    • B61LGUIDING RAILWAY TRAFFIC; ENSURING THE SAFETY OF RAILWAY TRAFFIC
    • B61L2205/00Communication or navigation systems for railway traffic
    • B61L2205/04Satellite based navigation systems, e.g. GPS

Description

RD-23, 5 ko 2339641 A REDUCED-POWER GPS-BASED SYSTEM FOR TRACKING MULTIPLE
OBJECTS FROM A CENTRAL LOCATION
Field of tha Invention
This invention relates to object tracking systems used to locate and track multiple terrestrial (including water-based) objects and, more particularly, to power efficient object tracking systems based upon information obtained from satellites.
Background of the Invention
The tracking and location of assets such as railcars, shipping or cargo containers, trucks, truck trailers, automobiles, etc. can be highly advantageous in commerce. Precise tracking of such vehicles and objects can facilitate their being allocated and positioned in an efficient manner, and can provide for immediate, accurate localization of lost, delayed or damaged assets. The space-based global positioning system (GPS) implemented by -the United States Department of Defense constitutes a convenient instrumentality for determining geograhical position in real time.
The GPS is a multiple satellite-based radio 25 positioning system in which each satellite transmits data that allows precise measurement of the distance from selected ones of the GPS satellites to the antenna of a user's receiver so as to enable the user to compute position, velocity and time parameters through known triangulation techniques. The signals provided by the GPS can be received both globally and continuously.
RD-231530 The GPS comprises three major segments known as the space, control and user segments. The space segment consists of 21 operational satellites and three spare satellites. The satellites are positioned in a constellation such that typically seven satellites, but a minimum of four, are observable by a user anywhere on or near the earth's surface. Each satellite transmits signals on two frequencies known as Ll (1575.42 MHz) and L2 (1227.6 MHz), using spread spectrum techniques that employ two types of spreading functions.
C/A (or coarse /acquis it ion code) and P (or precise) pseudo random noise (PRN) codes are transmitted on frequency Ll, and P code only is transmitted on frequency L2. The C/A is available to any user, military or civilian, but the P code is only available to authorized military and civilian users. Both P and C/A codes contain data that enable a receiver to determine the range between a satellite and the user.
Superimposed on both the P and C/A codes is a navigation (NAV) message. A NAV message contains the GPS signal transmission time; a handover word used in connection with the transition from C/A to P code tracking; ephemeris data for the particular satellites being tracked; and almanac data for all of the satellites in the constellation, including information regarding satellite health, coefficients for the ionospheric delay model for C/A code users, and coefficients used to calculate universal coordinated time (UCT).
The control segment comprises a master control station (MCS) and a number of monitor stations. The monitor stations passively track all GPS sate llites in view, collecting ranging data and satellite clock data F,D-23, 53U from each satellite. This information is passed on to the MCS where the satellite's future ephemeris and clock drift are predicted. Updated ephemeris and clock data are uploaded to each satellite for 5 retransmission in each satellite's navigation message. The purpose of the control segment is to ensure that the information transmitted from the satellites is as accurate as possible.
The GPS is intended to be used in a wide variety of applications, including space, air, sea and land vehicle navigation, precise positioning, time transfer, altitude referencing and surve'ying-. A typical- GPS receiver comprises a number of subsystems, including an antenna assembly, an RE (radio frequency) assembly, and a GPS processor assembly. The antenna assembly receives the L-band GPS signal and amplifies it prior to insertion into the RF assembly. A significant factor affecting accuracy of the computed position, velocity or time parameters is the positional geometry of the satellite selected for measurement of ranges. Generally, a best position solution is obtained -using satellites having wide angles of separation. Considerable emphasis has therefore been placed on designing ahtenna systems to receive, with uniform gain, signals from any point on the hemisphere.
The RF assembly mixes the L-band GPS signal down to a convenient IF (intermediate frequency) signal. Using various known techniques, the PRN code modulating the L-band signal is tracked through codecorrelation at the receiver. This provides the processing gain needed to achieve a signal-to- noise ratio (SNR) sufficient for demodulating the navigation data and signal transmission time. The Doppler shift of the received L-band signal is also measured through a carrier tracking loop. The code correlation and carrier tracking function can be performed using either analog or digital signal processing.
By differencing the signal transmission time with the time of reception, as determined by the clock of the receiver, the pseudo range between the receiver and the satellite being tracked may be determined. The pseudo range includes both the range to the satellite and the offset of the clock from the GPS master time reference. The pseudo range and Doppler measurements (and the navigation data) from four satellites are used to compute a three dimens- ional positi"bn and velocity fix, which calibrates the receiver's clock offset and provides an indication of GPS time.
In some known receivers, the receiver processor controller (RPC) functions are performed using a computer separate from that on which the navigation functions are performed. In other known receivers, both types of functions are performed by a single computer. The RPC processing and memory functions performed by a typical GPS receiver include monitoring channel status and control, signal acquisition and reacquisition, code and carrier tracking loops, computing pseudo range (PR) and delta range (DR) measurements, determining data edge timing, acquisition and storage of almanac and ephemeris data broadcast by the satellites, processor control and timing, address and command decoding, timed interrupt generation, interrupt acknowledgment control and GPS timing.
U.S. Patent No. 5,225,842 describes an apparatus and method for computing the position and velocity of multiple low cost vehicle-mounted sensors, monitored and tracked by a central control station. The receiver processor functions are physically separated from the navigation functions and the low rate data interfaces provided between the computers that perform these functions, thus achieving cost saving in the GPS sensor that is employed on board each vehicle.
One type of known GPS receiver is described in U.S. Patent No. 4,114,155, wherein the position of a receiver responsive to C/A signals derived from multiple, orbiting spacecrafts is determined to an accuracy better than 300 meters. Each of the C/A signals has the same carrier frequency and a different, predetermined Gold code seqijence- that normAlly prevents position determination from being more accurate than to within 300 meters. C/A signals transmitted to the receiver are separately detected by cross-correlating received Gold code sequences with plural locally derived Gold code sequences. Four of the detected C/A signals are combined to compute receiver position to an accuracy of 300 meters. To determine receiver position to an accuracy better than 300 meters, the relative phase of internally-derived Gold code sequences is varied over the interval of one chip (i.e., pulse) of each sequence, to derive second cross-correlation values indicative of received and locally-derived Gold code sequences. ' The- basic approach followed most recently is to receive and process the signals from several of the GPS satellites in order to determine range to each satellite (and relative velocity). With perfect knowledge of range to only three of the GPS satellites, exact receiver position can be determined from the intersection of the three "spheres" induced by the known satellite positions and the derived receiver ranges. With receiver noise and imperfect knowledge of satellite positions, the 'receiver- RD -23 530 satellite ranges can only be estimated. Typically, errors from receiver noise are reduced by (effectively) averaging many range calculations.
In the above most- recent approach, the range from a particular satellite.is estimated by reading a time stamp from the satellite's data stream (the transmission instant), subtracting this from the reception time, and multiplying the time difference by the speed of light. Any error in satellite and receiver clock synchronization leads to proportional range errors. Because the same clock is used in receiving from all satellites, there is- oni-y one unknown receiver clock "bias". By using a fourth (or more) satellite, the clock bias and ranges can be jointly estimated.
At the receiver, the reception time is determined by performing a crosscorrelation of the received data with a local replica of the known satellite Gold code, and noting the time of a chosen correlation peak, and its position relative to the time stamp. The satellite signal structures use Code Division Multiple Access (CDMA) so that theabove cross correlation is part of the standard GPS receiver processing.
The above-described system that Iollows the most recent basic approach assumes that each receiver must determine its own position. In the system of the invention, there is a central facility or station that needs the receiver positions and can communicate with the receivers. Each tracked object (e.g., a railcar) carries a GPS-based receiver that processes data from several of the visible GPS satellites. However, the full position determination is not made at the railcar. Instead, only partial processing is done at the railcar and intermediate results are transmitted to the central station. The forms of both the partial processing and intermediate results are chosen to minimize the complexity and energy requirements at the railcars.
The standard GPS system requires that the transmit-time stamps, satellite ephemeris and other correction data be decoded from each satellite's data stream at the tracked object. The receiver is thus required to process data from each satellite long enough (between six and 150 seconds) to synchronize with, and decode, these data. This consumes significant power.
Z=azZy of the TnvAntion Briefly, in accordance with a preferred embodiment of the invention, a method for identifying location of an asset or object to be tracked comprises measuring data related to propagation time differences between signals transmitted from a plurality of satellites and received at the object to be tracked, transmitting the data to a central station, and calculating, at the central station, the location of the object to be tracked based upon the transmitted data. The data received at the object to be tracked may include data identifying a respective associated satellite by, for example, a satellite identification number, such that the step of calculating the location of the object to be tracked is thereupon based further upon the satellite identification numbers.
In another preferred embodiment, a reduced-power GPS-based system for tracking location of an asset or object from a central location comprises a central station at the central location, and an object to be tracked which includes means for receiving signals from at least four GPS satellites, first,_ processor means for processing data from the receiver means RiD - 2 3 5.3 0 propagation time differences for the signals, and transmission means for transmitting the processed data to the central station. Second processor means situated at the central station determine location of the object based upon the data received from the transmission means.
In still another preferred embodiment, a reduced-power GPS-based system for tracking multiple objects from a central location comprises a central station at the central location, and a plurality of objects to be tracked. Each of the objects includes receiver means containing an antenna for recelving signals including data related to the propagation time differences of the signals from at least four GPS satellites, first processor means for calculating a receiver code word phase for each of the satellites based upon the signals received by the receiver means, and transmission means for transmitting the code word phase to the central station. Second processor means are provided at the central station for determining the signal propagation times between the plurality of satellites and each of the tracked objects based on the receiver code word phase transmitted by the respective object and for determining from the signal propagation times the location of each respective one of the objects.
In another preferred embodiment, a reduted-power GPS-based system for tracking location of multiple objects from a central location comprises a central station at the central location, and an object to be tracked which includes means for receiving signals including data related to propagation time differences of said signals from at least four GPS satellites, first processor means for calculating a receiver code- time offset for each of the satellite signais and for RD-23, 5JU determining the receiver code period for each signal, and for determining identification numbers Of the at least four GPS satellites, and transmission means for transmitting the receiver code-time offsets, code periods, and identification numbers to the central station. Second processor means at the central station determine the signal propagation times between the plurality of satellites and the tracked object and determine location of the object based upon the receiver code-time offsets, code period, and satellite identification numbers transmitted by the transmission means.
In still a further preferred embodiment, a reduced-power GPS-based system for tracking location of an object from a central location comprises a central station at the central location, and an object to be tracked which includes means for receiving transmission signals from at least four GPS satellites, first processor means for calculating a receiver bit phase for each of the satellite signals based upon the signals received by the receiver means, means for keeping track of time at the object, and transmission means for transmitting the bit phase signals and time signals to the central station.
Second processor means are provided,at the central station for determining the signal propagation times between the plurality of satellites and the object and for determining location of the object based upon the bit phase and time signals transmitted by the transmission means.
Utilizing the present invention, power consumption and calculation complexity at the tracked object are reduced relative to that for a standard GPS receiver. Arrival time differences between satellite signals are measured at the tracked objec and this information is relayed to the central station via the separate communications link. Satellite data streams need not be decoded at the tracked object.
The central station thereby necessarily 5 determines the location of the object to be tracked. Because the receiver front end and data processor use significant power only when processing, the receiver power can be dramatically reduced by being "active,, only long enough to get accurate time-difference measurements. This can be less than one second and requires no GPS data- frame synchronization because of the nature of the signals. For example, assuming-that the tr-acked object is a railcar, new railcar locations typically are needed only as frequently as 15 minutes.
Thus the receiver energy used is reduced in direct proportion to the reduction of "active" receiver time. Moreover, receiver complexity and cost can be reduced by replacing the advanced microprocessor employed in current GPS receivers with a simpler one that is matched to the arrival-time differencing tasks.
In accordance with the invention, one object is is to provide a GPS-based asset tracking system in which processing is performed at a location remote from the tracked assets and based upon specific recognizable variables. I cpAnother object is to provide a GPS-based asset tracking system which requires minimal energy at the tracked assets.
Brief neRnription. of the Figilre2 The features of the invention believed to be novel are set forth in the appended claims. The invention, however, together with further objects and advantages thereof, may best be understood by RD-23, 530 -il reference to the following description taken in conjunction with the accompanying drawing(s) in which:
Figure I is a block diagram of a remote tracking system in accordance with the present invention; Figure 1A is a block diagram of a railcar tracking unit on an object to be tracked in accordance with the invention; Figure 1B is a block diagram of the transmitter at the central station of the remote tracking system of the invention; Figure 2 illustrates the long time-scale data frame -relationship between a GPS standard tim(F mark and two satellite data frames in accordance with the present invention; Figure 3 illustrates a typical Gold-code correlation output signal on a short time scale when the proper code replica is used at the local station receiver; Figure 4 illustrates the time delay relationships of the transmitted and received signals; Figure 5 illustrates a plurality of intersecting time-difference solution regions on the surface of the earth; Figure 6 illustrates tracked object message timing diagrams in accordance with the present invention; Figure 7 illustrates tracked object locationdependent communication delay; and Figure 8 is a block diagram of a system for evaluating GPS algorithms in accordance with the present invention.
notailed pemcriRtioa The present invention is directed to a system and method for reducing the power and complexity RD-23, 530 requirements of a local GPS receiver, which can be carried by a railcar, by effectively requiring only measurement of arrival-time differences between a plurality of GPS satellite signals. Data related to these time differences are transmitted to a central station where the majority of calculations required to determine the receiver (railcar) location are performed. In the preferred embodiments, a standard CDMA receiver is employed with radio frequency/intermediate frequency (RF/IF) front end and Gold-code cross correlators..
In Figure 1, the invention is shon as comprising a plurality of GPS satellites 12, an object to be tracked, such as a railcar carrying a tracking unit 14, and a central station 16. Although the invention is herein described in the context of a railcar, the teachings of the invention are applicable to a variety of objects which may be tracked by a GPS or satellite-based system. With respect to the GPS signal format, accurate timing of GPS signals is critical and is monitored by central station 16.
Each satellite 12 includes its own set of clock correction parameters within its data stream. These allow a receiver to ascertain the absolute transmission timing for each satellite' with respect to a common GPS standard time. A particular satellite's clock may drift relative to those of other satellites. The GPS system conrol monitors these offsets and periodically includes them in the satellite's data stream. The clock time offsets are not needed at the individual receivers and can be determined at central station 16 by utilizing a standard GPS receiver there or at a remotely controlled site.
As shown in Figure 1A, railcar tracking unit 14 is actually comprised of a railcar receiver 2 responsive to the signals from GPS satellites 12, a processor 3, and a transmitter 4. The received signals are processed in processor 3 to ascertain and utilize propagation time differences among the signals received from GPS satellites 12. The processed signals are furnished to transmitter 4 from whence they are transmitted, as reduced order parameters, to central station 16.
As shown in Figure 1B, central station 16 includes a receiver 7 responsive to signals from transmitter 4 of tracking unit 14 (Figure 1A) and a processor 8 responsive to receiver 7 for determining location of tracking unit 14.
In the long time scale data frame shown in Figure 2, ai is the frame time offset for satellite i. A value aj - ai is the time offset between transmitted signals from two satellites, i and j.
A Gold-code correlator output waveform ri(t) for satellite i is illustrated in Figure 3 from the perspective of the railcar receiver. Each correlation-peak location respectively marks the beginning of a new Gold code cycle in the received waveform. Each Gold code cycle is lms long and comprises 1023 binary Gold code "chips". Furthermore, there are 20 code cycles for each encoded navigation data bitr. Figure 3 also illustrates, by a dotted line, a typical bit-boundary position.
With respect to a particular time tR at a railcar receiver, the receiver code-time offset for satellite i is yi. The receiver code-time offset is the time elapsed to a time tR from the beginning of the code word (cycle) in which tR falls. Similarly, the receiver bit-time offset Bi is the time elapsed to time tR from the beginning of the bit in which tp, falls. The satellite-railcar radial' velocity Ku-zj, Diu component varies for different satellites and this results in a relative waveform expansion or compression (Doppler) at the railcar. Thus the observed code and bit periods are satellite dependent.
The code and bit periods observed at the railcar for satellite i are designated as Tic and TR respectively.
Frequently, the railcar receiver will use satellite signals that are not visible from (i.e., cannot be received by) the central station. This presents no problem because the satellite clocks drift slowly (less than five nanoseconds error per Irour) If, A - t the railcar receiver, time differences are calculated using a satellite that is not visible at the central station, then, at the central station, the last calculated clock offset for that satellite can be used (or extrapolated, based on past drift rate) until that satellite is again visible. As an alternative, central station 16 (Figure 1) could communicate with standard GPS receivers strategically situated to guarantee satellite visibility.
A key feature of the present invention is the provision of a method for determining location of the object (here, a railcar) to be tracked. In a first method ("method 1"), the object's location is accurately determined from propagation time differences between at least five satellites' signals received at the tracked object. This method requires no measurement of time at the tracked object. The propagation time difference between signals from satellites i and j is defined as Aij = Tj - Ti, where Ti is the signal propagation time from satellite i to the railcar. These propagation times are not directly measured at the receiver but are calculated from received code word or bit phases, as described below RD-23, 5.JU (see equations 8 and 9). The satellite-railcar ranges and propagation time differences are related by the equation Ri (t, t - Ti) Rl (t, t - Tl) = CA 1 i (t) 5 or:
R2(t, t - T2) - Rl(t, t - 'Tl) = CA 12 (t) R3(t, t - T3) - Rl(t, t - Tl) = CA 13 W R4(t, t - TO - Rl(t, t - Tl) = CA 14 W R.5 (t, t - T5) - Rl(t, t Tl) = CA 15 (t) where Ri() is a function of the parameters in its argumont and is discussed below. In equation (1), t is the common time at which the signals are measured at the receiver, C is the speed of light, and Ri (t, t-ri) - (2) C (x (t) -x,. (t -,r,) 2+(y (t) _y, (t-T,))2+(z (t) _z, (t-,E,))2)1/2 is the range from the i 'th satellite to the railcar receiver. Also, xi, yi and zi are time-dependent coordinates for satellite i and are specified by the satellite's ephemeris equations. For satellite i, the 20 signal received at time t = tR was transmitted at time tT.
tR - 'Ti, which is now defined as i Time tR is identical for all of the satellites. Furthermore, the propagation times are related by ri rl + Ali. (3) For any particular measurement time t tR, equation (1) can be rewritten as R2(X,Y,Z,tT_ I A12)_R1(X1Y1Z-t'1)=CA12 (4) R3(X,Y,Z,tT -A13)-RI(X,Y,Zltr =CA13 1 1) RX,Y,Z,tT -A,4)-R,(x,y,zt,=CA 4 ( 1 14 RD-23, 530 R, (x, y, Z9tT_6J5)_RJ(X'y'Z'tT)=CZjJ5 I I The corresponding satellite transmission times are needed to properly determine the satellite locations needed in equation (2). From equations (2), (3) and (4), the object coordinates x, y, z and the transmission time tT form the only unknowns. Yet the time delay differences in equation (1) do not have to be calculated with reference to satellite (1); i.e., any satellite pairing will be satisfactory as long as the four equations in (1) utilize unique pa irings.
Using these simultaneous equations at central station 16 (Figure. 1), four time delay differences determine a point at the intersection of four hyperbolic sheets in three dimensional space as well as the unknown transmit time, tT The other satellite 1 T T T T transmission times t2, t3, t4l and t, are then found from the equation:
T =t T_ ti I Ii. (5) The resultant values are utilized to determine the satellite locations needed in equation (2). The nonlinear equations (4) are readily solved with standard techniques using iteration. It is not necessary that time tR be measured at the railcar receiver. This value can be found, if desired, at the central station from the equation:
T tR=; +RJ/C. (6) In the present invention, the propagation time differences Aij are not directly measured at the railcar receiver. Instead, only the code or bit 30 phases associated with reception time tR are measured, and these data, or their differences including the RD-23, 530 satellite identifications, are transmitted to the central station. This permits the railcar receiver to focus only on cross correlation and to operate long enough to get a sufficient SNR (Signal-to-Noise Ratio) through averaging. In general, the averaging times are so brief that any Doppler shifts can be considered as. constants. Thus the bit and code periods are constant during these periods. Railcar locations can be determined at the central- station by calculating the true differential delays from the measured phases, as described below, and using them in equations (1) through (5).
In determining the propagation time difference between two satellite signals, it is assumed that the Doppler shift is constant locally, i.e., that the sate llite-railcar propagation delay changes linearly with time. Using this assumption, a particular relative position in a received code word or data-bit cycle corresponds to the same relative position in the associated transmitted code word or data-bit cycle. From the previous definitions, and as shown in Figure 4, for each satellite i, j, etc., t,t = r,' + T'(mi + pi) + ri. (7) Pursuant to equation (7), r,' is the time when the start of a currently received frame was transmitted, mi is the integer number of code periods between time tR and the beginning of the received data frame, and gi is the receiver code word phase at time tR and is defined as Tc, (8) a where yi is the receiver code-time offset at the receiver, and 7f is the code period (at time tR) in the received data frame. TC is the common code period at all transmitters. Because the Doppler shift is constant, it is true that -ci ITc Tc (9) so the relative code word phase in the transmitted waveform at time tR - Ti is equal to Ai that was measured at the receiver at time tR- From equation (7), the propagation time difference between. signals from satellites i and j is Aij=Tj-Ti=aj-ai+TC(mi-mj)+TC(ii-gj) (10) whichutilizes the equation fo r each i. At the central station, ai, aj and TC are known, tGPS is the chosen reference time, and gi and gj are received from the tracked object as measurements. The integers mi and mj are unknown and yield ambiguity as discussed below. At the receiver, time tR can be chosen to align with thefirst satellite's received code word boundary. Then gl = 0 by convention and the other four phases can be sent to the central station. In this way, the central station can know the individual phase values as well as their differences. Knowledge of each phase value at the central station constrains each unknown associated transmission time to be on a lattice of time points that have that phase value.
While the above discussion illustrates how the several satellite propagation time differences can be deduced from receiver code word phase measurements, as an alternative, receiver bit phases can be measured.
In this instance, pi of equation (8) becomes the bit phase when yi is replaced by fli, and is replaced by Tf. A relationship similar to equation (9) also holds for bit phases. Finally, in equation (10), ml and mi become the unknown integer number of bit periods. In either instance, the unknowns mi and mj Diu _19 cause a periodic ambiguity in propagation time difference A that must be resolved. This ambiguity has a period of approximately one millisecond for code periods and 20 milliseconds for bit periods.
Because each possible propagation time difference value induces a three-dimensional hyperbolic sheet for the railcar location solution, the ambiguity in A induces multiple sheets for each value of A. On an assumed flat earth, the sheets from just one phase difference form a set of hyperbolas with the positions of satellites i and j as the foci. Phase differences from other- satellite pairs'-induce different hyperbola sets. The only feasible railcar location solutions are those where there is a congruence of one hyperbolic sheet from each participating satellite pair. with ambiguous time differences from four satellites, only a small set of possible joint ambiguity images yield intersecting hyperbolas near the earth's surface, and the set is further reduced as more satellites are used.
Time-delay difference and satellite location accuracies are such that the location solution regions from each satellite pair are very narrow relative to the ambiguity spacing, as shown in Figure S. Thus the several ambiguous time delay differences yield a small set of possible railcar locations.
The use of bit-time differences provides advantages over code-time differences because the former yield a smaller number of possible location solutions. The 20 millisecond period for bit-time differences always yields a location ambiguity spatial period of at least 1500 miles at the earth surface, while for code-time differences the ambiguity spatial period is only 75 miles. This shortest ambiguity RD-23, 5JU period assumption is derived by assuming the two satellites involved are on the horizon in opposite directions. For railcar tracking applications, car locations will be known a-priori to within 1500 miles, so a 1500 mile ambiguity is not a problem. Receiver bit phases, however, are slightly complicated to derive because the satellite's binary data stream is NRZ coded.
Using an NRZ code sequence, a sequence of identical bits has no transitions and bit locations are not visible. However, with GPS data, such sequences are very short, so that bit 'edges are readfly observed. Once a single bit transition has been observed, the receiver bit phase for the chosen time tR is readily deduced be cause the code period is observed and there are always 20 code cycles per bit period. Furthermore, each bit boundary coincides with a code word boundary.
In order to solve equation (4) for the railcar receiver location, the propagation time delay differences are first found, as from equation (10). In equation (10), (mi - mj) is the unknown integer part of the code or bit period offset between the signals received from satellites i and j. For a given measurement of jUi and yj, equations (10) and (4) yield a different location solution for each value of (Mi mj). Conceptually, each integer value of (mi mj) must be tried, and the resulting position solution must be checked against known bounds for validity. In earthbound (e.g., railcar) applications, altitude is a simple bound against which each position solution can be checked. Also, railcar velocities are constrained, so that new locations cannot be extremely different from previous locations.
RD-23, 530 Most of the ambiguous solutions are at invalid altitudes, far from the earth's surface. To avoid wasteful calculation, it is desirable to directly limit the values of (mi - mj) that are used in equation (10). The GPS satellite-earth geometry constrains each time ti to be between 58.5 and 79.9 milliseconds (ms). This is true because GPS satellites orbit at approximatel y 25 X 103 km above the earth's center So that the delay from directly overhead is 58.5 ms while the delay from a satellite on the horizon (nearly 400.0 miles farther away) is 79.9 ms. The delay difference between two satellites is tfierefore constrained to the interval C-21.4, 21.41 milliseconds. At the central station, equation (10) is readily used to deduce values of (mi - mj) that satisfy this interval constraint. If code phases are measured, there are approximately 43 feasible values of (mi - mj) for each measured Qli - juj). Thus there are 43 values for each Aij in equation (4). If bit phases are measured, there are only 2 or 3 feasible values for each propagation time difference Aij and the resulting list of possible railcar locations will be much shorter.
To summarize the foregoing object-tracking method ("method 1"), five satellite's ignals must be receivect. Five receiver code word or bit phases are measured, as are the associated satellite identification numbers, and these are sent to the central station. From these measurements a list of feasible railcar locations is determined at the central station. The basic steps are:
1. Phases lil through A5 are measured along with their corresponding satellite numbers and these data are sent to the central station. The measured phases can be code word phases in the simplest receiver, or p,D-23, 530 -22 data-bit phases in a slightly more complex receiver.
Bit phase could be specif ied as code word phase plus an integer number of code words offset from the bit transition.
2. A standard GPS receiver at the central station determines satellite transmission offsets al through a5 that are valid around the time the receiver measurements are received at the center. Validity of each satellite ephemeris equation is determined for the same time period.
3. At the central st-atian, reasonable values for the integer offsets (ml - mj) for j from 2 tHrough 5 are selected, and equation (10) is used to calculate Alj for j from 2 through 5.
4. At the central station, an initial value for T ti is chosen and equation (5) is used to find corresponding values for tT for i from 2 through 5. i The value of is constrained such that the t transmitted bit or codeword phase at tT has the 1 measured phase, ill. The integer ml is indirectly specified when choosing a tT that satisfies the above I constraint. At the central station, the initial value for transmit time tr may be set to an approximation of the receiver message time tR, if known,. In a railcar- tracking application, time tR could be known to within several minutes at the central station (without any communication of time values).
5. Standard iterative methods are used with equations (1) and (2) in order to solve for the railcar receiver (x, y, z) position and transmission time t T In equation (2), the ephemeris equation for I each satellite is included in the iteration. The last reported location can be used as the initial values for x, y, and z in the iteration.
6. Steps 3 through 5 are then repeated for each feasible combination of integer offsets (ml - rnj) for j from 2 through 5. This yields a list of potential railcar receiver location solutions.
An advantage of the tracking, method described above is that requirements for receiver clock accuracy are minimal. Railcar time is not part of the measurement set.
The present invention may alternatively employ a second method ("method 2") for determining location of an object being tracked. The second method is similar to the first method, except that only four-satellites are uTed and the railcar receiver message time tR must be made known to the central station, (e.g., measured and transmitted to the central station). By using four satellites, only three independent propagation time differences can be obtained from the receiver code word or bit-phase measurements. To determine the railcar location, the time at which these propagation time differences are valid must be known. More specifically, as shown in Figure 4, the transmission times tT' for i from. 1 to 4, mustbe determined so i that the satellite position, (associated with the common reception time tR) can be determined. In a manner similar to the first tracking method, the railcar -receiver location is determined from the following three equations:
R2 X,Y,Z,tT_ A12 R, XIYIzlt T) = CA I) ( 1 12 R3(X,Y,Z,tT I _A13) RI(X'Y'Zltr) = CA13 Y,Z,tT_ R4 (X1 I A14)-R1(x,y,zt1=CA14 In equation 11, the Alj terms are derived from the measured code word or bit phases with ambiguities as RD-23, 530 in the first tracking method. Also as in the f irst method, t T _ Ali) is the transmission time from the I i1th satellite corresponding to reception time tRThis transmission time determines the satellite location from the ephemeris equations, and the satellite locations are needed to determine the ranges in equations (11). The Ali values are known at the central station from the received measurements and equation (10). Furthermore, time t T is related to time tR by t rl (X, Y, Z' XI (' T), Y, (t T), Z' (t I tR tl I _(l 2) Here -T, is the GPS signal propagation delay from satellite 1 and depends, as shown, on location of the object being tracked, and satellite location. The satellite location (xl, yl, zl) depends, in turn, on time tT. Therefore, if time and the satellite I tR T depends ephemeris equations are known, then time t, only on the location of the object being tracked. For a given location of the object being tracked, T equation (12) can be solved iteratively for time T After convergence, the value of t, can be modified to the nearest point of the time grid induced by equations (8) and (9) and the known (measured) value of JUI so as to obey the previously mentioned lattice constraint. To speed convergence, this constraint can be applied after each iteration. Equations (11) and (12) together form a system of nonlinear equations with object location (x, y, z) as the only unknowns, and these equations can be solved using standard iterative techniques.
In many railcar tracking applications (e.g., when the railcar is traveling), extreme accuracy is T not required. In such cases, t, can be approximated by tR - (79.9 - 58.5)/2. As stated earlier in the description of the first tracking method, the GPSsignal transmission times (tT) must lie between tR - 79.9 ms and tR - 58.5 ms. This yields a tT 1 uncertainty of 21.4 ms if tR is known. The satellites travel at approximately 3.49 km per second so that a T uncertainty of 21.4 ms ields a satellite location ti y (x, y or z) uncertainty of, at most, 74.8 meters, which translates directly to a similar uncertainty in railcar receiver location. This may provide sufficient accuracy for. most railcar-tracking applications. If greater accuracy is des-Ired, equation (12) can be included in the iterative solution of equation (11) to determine location of the object being tracked. The initial value for tT can be set equal to tR and equation (11) iterated to solution for (x, y, z). This result and the initial value for t T can then be used to initialize an iteratlon for I solving equation (12). This yields an improved value 20 for tr which can be used with the previous (x, y, z) solution to initialize another iterative solution of equation (11). This cascade of iterations will rapidly -converge to the correct railcar location, subject to the (ml mj) induced ambiguities.
Sma 11 errors in tR can be tolerated because must obey the previously-mentioned lattice constraint. Thus if the received codework or bit phases gi are measured at time tR, but the measured time is actually reported as tR Plus some error C, the railcar location will be accurately calculated for time tR if the value of C is less than one-half of the code word (data-bit) period. If desired, the correct value for tR can be determined following completion of the iteration using the following equation:
t T + R, 1C.
1 (13) In performing this method of tracking an object, it is assumed that the reception time tR for the railcar receiver can be accurately measured and used 5 to find the relevant satellite transmission times. This is easily done if the object being tracked includes an accurate clock and its time reading at t = tR is sent to the central station. Alternatively, time tR can be determined at the central station by determining the time of data arrival at the central station and using this as a reference. As sho-wn in Figur6- 6, data transmitted from a GPS satellite at time To is detected at the railcar receiver at time Tl = tR, is transmitted to the central station at time T2, and is received by the central station at time T3The central station maintains an accurate clock so that the value tR can be determined if both (T3 - T2) and Ct2 - T1) are known. The delay (-T2 TO can be easily recorded by an inexpensive timer located at the railcar receiver and can be transmitted as data to the central station. The communication delay (T3 - T2) is dependent upon the data communication network and may be known at the central station where reception time tR may then be calculated using the formula:
tR = T3- (T3-T2) - CC2-T0 - (14) As indicated in Figure 7, there are some situations in which the data communication may be made via a satellite link. Assuming the use of a geostationary satellite 19 for the data link, transmissions out to and back from the satellite will experience a delay which depends on the locations of central station 16, railcar receiver 14 and satellite 19. This delay will be bounde d between RD-23, 530 -27 ol 2R11C and 02 2(Rl + R2)/C as can be seen from Figure 7, where C is the speed of light, R1 is the distance from satellite 19 to the surface of the earth and R2 is the earth's radius. With Rl approximately 38,623 km and R2 approximately 6,437 km, the delay uncertainty is approximately 46 ms. During this interval, the GPS satellites move 174 meters at their speed of 3.78 km per second. Thus the railcar locations will have an additional error if this delay uncertainty is not resolved.
If a more accurate railcar location is required, the uncertainty in geostationary satellite delay (due to uncertain railcar location) can be el iminated with an iteration scheme such as that discussed earlier (for the GPS signal delays). Initially, the railcar location is calculated at the central station by assuming a particular feasible value for the communication delay (T3 - 'C2) - With the new railcar location and the known satellite 19 and central station 16 positions, the communication delay is recalculated. This corrected delay is then used in equation (14) to correct the value tR- The new value Of tR is used, as described earlier, to find a railcar location. This iteration can continue until little change in railcar location is observable.
For accurate results from this approach, the data storage delay (T2 - T1) must be short enough such that the railcar receiver clock yields an accurate storage delay measurement. In a preferred embodiment, the railcar will collect time-difference data approximately every 15 minutes and report these data to the central station hourly. Thus the storage delay (T2 - Tl) for the first measurement set could be up to 60 minutes, or 3600 seconds. An inexpensive receiver clock may keep time to one part in one RJ- 2 J D -3 U million, so that a 3.6 ms error may accrue in 3600 seconds. This error is directly reflected in the measured value of tR- If the residual error in tR, due to receiver clock drift, is kept to less than one- half of the code word or data-bit period, the iteration method described above will reduce the residual railcar location error to zero.
To summarize this second object-tracking method ("method 2"), four satellite signals must be received.
Four receiver code word or bit phases are measured, as are the associated satellite identification numbers and the single measurement time, and these are sent to the ce'ntral station. The basic steps are:
1. Code word or bit phases 41 through U4 and their associated satellite numbers are measured at reception time tR- These data, including the measurement time tR, are sent to the central station. The bit phase can be specified as code word phase plus an integer number of code words offset from a bit transition. If an accurate clock is not available at the railcar receiver, the data-storage time (12 - 'Cl) at the railcar receiver is sent instead of the actual measurement time.
2. If storage time is measured at the object being tracked and sent to the central station, then the time of data reception (T3) at the central station is determined and used with storage delay (12 - Tl), and with the known bounds on transmission delay between the object being tracked and central station ('13 - 'T2), to estimate the measured common reception time tR from equation (14) - 3. A standard GPS receiver is used at the central station to determine satellite transmission offsets al through a4 and the satellite ephemeris equations that are valid near the measured reception time tR. Because these parameters change relatively slowly, and because the delay between a GPS satellite and the object being tracked is short, these parameters will be valid at the several satellite transmission times.
4. At the central station, reasonable values for the integer offsets, (ml - mj) for j from 2 through 4 are selected, in view of limitations on these offsets that are induced by satellite-earth geometry, prior object location, object velocity limits, etc. Equation (10) is used to calculate propagation time difference Alj for j from-2 th- rough 4.
5. At the central station, an initial value for time tr is chosen based on jul, and on limitations on the communication delay (T3 - T2) and bounds on the GPS signal travel delays (ri). An effective simple initial value is tR- 6. Equation (5) is then used to calculate corresponding values for t for i from 2 through 4.
7. Standard iterative methods are then used to solve equation (11) for railcar receiver location (X,Y,Z). Because the values tT are fixed, the ephemeris equations are evaluated only once during this iteration. f 8. For higher accuracy, the new (x, Y, Z) result is used with equation (12) to iteratively solve for an improved value of tT This can be done either I after step 7 has converged, or after each iteration of step 7.
9. Steps 6 through 8 are repeated, terminating after step 7 if the new position (x, y, 2) is substantially unchanged.
10. Steps 4 through 9 are repeated for each feasible combination of integer offsets, (ml mj) for from 2 through 4. This yields a list of potential railcar location solutions.
An advantage of this second method of object tracking is that only four satellite signals must be received. Furthermore, the iteration for finding railcar location is less time-consuming because the search for the correct GPS transmission times is substantially eliminated.
For some communication methods, the communication delay time cannot be determined with sufficient accuracy. In such cases, other methods for determining receiver and transmission timt-s mitst be used.' one approach is to utilize a unique mark (unique over a sufficient period) in any one GPS satellite's data stream as a time reference at the tracked object, and to measure reception or receiver time tR relative to this received mark. Because the mark is unique, it can be found in the GPS signal received at the central station and its transmission time can be determined accordingly. Hence the transmission time associated with reception time tR can be found by adding the measured offset to the mark time. All other satellite transmission times tT can then be found from the known offsets ai at the central station. Utilizing equations (11Y and (13), the railcar 'receiver locations and associated receiver times are calculated.
The GPS telemetry-word preamble (TWP) is a specific eight-bit sequence (10001011) that is transmitted at the beginning of every six-second subframe from each satellite and is a standard synchronization mark. This sequence cannot be falsely replicated by any prefix or postfix of up to six bits in length. If a short periodic receiver window is synchronized with the TWP from one of the satellites i -4 t.j-zj, Diu whose data is to be processed, and this window is used to occasionally "awaken" or activate the railcar receiver for TWP-synchronized GPS signal processing, little or no extra power will be required at the railcar receiver to support learning the transmission times at the central station. This TWP windowing scheme is useful if the uncertainty in satellite transmission times is less than six seconds. Initial window synchronization may require up to a full six seconds of GPS data processing to ensure TWP acquisition but, once acquired, the window can easily be tracked by noting the position of each TWP in its surrounding window and altering the window timing to keep the TWP centered. with inexpensive clocks at the railcar receiver, the window can drift on the order of only 3. 6 ms per hour. If the signal TWP region is also used for the time-difference processing, then the window can drift only on the order of 3.6/4 ms over the 15 minute inter-measurement interval. Since the TWP sequence is unique within 6 bit periods (120 ms), use of a 100 ms window ensures that the TWP will not be missed or falsely recognized.
If the transmission delay to the central station has uncertainty greater than six seconds, the TWP windowing scheme can be augmented with GPS time-stamp decoding at the receiver. The GPS time stamp is encoded in the data stream at a fixed short delay from the TWP word. The TWP window can be used to enable time- stamp decoding, and the time stamp can be sent to the central station as an estimate of the receiver time tR- As an alternative, time t.R can be chosen at the railcar receiver to coincide with the TWP word boundary on satellite channel number 1, and the following time stamp can be decoded and sent to the central station. The correct value for time t is RD-23, 530 then easily found at the central station as the value of the time stamp prior to that from the receiver.
The above railcar receiver windowing scheme need be implemented only on one of the satellite signals in order to determine receiver time tR. However, if a separate TWP receiver window is formed, respectively, for each satellite signal, then all time- delay ambiguities associated with code or bit periods are readily resolved by noting the TWP-relative time at the end of the correlation process for each signal. This simplifies processing at the central station at the expense of extra window processing and receiver vTon" time at the railcar receiver.
A further method for determining time is to broadcast time signals via a separate channel accessible to the railcar receivers. For example, time signals may be transmitted over a separate geostationary satellite link on a one-second grid or smaller, thereby easing railcar receiver clock accuracy requirements. This method results in a railcar-location dependent delay from the central station to the railcar receiver. The delay can be accounted for by using iterations in a manner similar to that described above.
Figure 8 illustrates a system for evaluating GPS-based localization algorithms for low power tracking applications. The system includes a standard GPS hardware unit 22 for receiving GPS signals and developing standard GPS navigation solutions for reference, and a data interface unit 24 and computer workstation 26 for generating GPS navigation solutions using the reduced-power GPS methods described herein. Standard GPS hardware unit 22 uses a commercially available multi-channel GPS receiver and GPS signal 35 processor to develop standard navigation s olutions.
Data interface unit 24 collects intermediate GPS signal information from hardware unit 22 (e.g., demodulated but unprocessed GPS data streams), performs some data processing (e.g., calculate relative bit phases of the different GPS signals), and passes the results to computer workstation 26. The data interface unit also collects decoded GPS almanac, ephemeris, and clock correction data from the hardware unit and passes these to the workstation. At the workstation, the various reduced-power GPS tracking algorithms are developed using the commercially available Matlab programming language. - Matlab is availaBle from The MathWorks, Inc., Natick, Mass. The tracked unit (railcar) and central-station functions are performed separately in the computer workstation.
There follows a source code listing which may be utilized by the central sta.tion to calculate the location of the object being tracked, pursuantto method I herein.
Ap2endix A Source Code Listing RO-GPS - Solves for user position and time based on ephemeris equations and on time-difference measurements from 5 GPS satellites.
U (3xl) the users position time (IxI) seconds Ub (3xl) an initial guess at the users position dU (3 x 1) is the adjustment made on the initial guess sat (3x5) is the location of each satellite H (4x4) mau-ix differentiating r_diff wrt (U,t) satO is the (3x5) matrix of 5 sat positions at beginning of interpolation interval. sat2 is the (3x5) matrix of 5 sat positions at end of interpolation interval. V is a (3x5) matrix of velocities for all 5 satellites- dU = 0; % step 1: Guess an initial LThar, and Lime. U-true = (1300748.12;- 4500694.5;4313770.5); % Actual user location Ub = (1200748.12;-4400694.5; 4319770.5]; % User location gum time-true = 483738.75; Lime = 483638.75; interval = 300; % Linear interpolation (half) interval for saEs.
select rive satellites Files that contain ephemeris constants. These happened to be visible at the data coDection time. sv I = sv7_eph sv2 = sv2-eph; sv3 = sv9-eph; sv4 = sv4-eph; svS = svI2-eph %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Synthesize measurement vector %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % For now, ignore that satellites move during signal propagation % time. Thus, set ephemeris time to measurement time, time_true. svI(l) = time_true; sv2(l) = Ume_true; sv3(l) = fime_true; sv4(l) = time - true; sv5(l) = time-ne; % Get satellite positions sat(:, 1) = satellite-ephemeris(sv 1); sat(:,2) = satellite_ephemeris(sv2); sat(:,3) = satellite-ephemeris(sv3); sat(:,4) = satellite_ephemeris(sv4); sat(:.5) = satelI.jje_ephemeris(sv5); % Calculate perfect measured range differences. for i = 1:4 r-diff t(i) = norm(saL(:,l) - U_Erue) - norm(sat(:+I) - U_tr-ue) end % Add noise to the measurements light-Speed = 3e8; % MeLers/sec dt-sigma = le-7; % One tenth of a chip.
% r_diffm = rjifft + Oight-speed dt_sigma randn(1,4)) r-di f-rn = r_difLt + [0 0 0 10] r-diff_m = rjiff-m'; dr-var = dt-Sigma 3e8 dt-sigma 3e8 r_diff-covar dr_var 0 0 0 0 dr_var 0 0; 0 0 dr_var 0; 0 0 0 dr-var %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Find satellite average velocities %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Set time to beginning of interpolation intmal First element of svi is always time. sv 1 (1) = time - interval; sv2(1) = time - interval; sv30) = time interval; sv40) = time interval; sv50) = time interval; % Get satellite positions saLA(:. 1) = SaLelliEe-ephemeris(sv 1); saLA(:,2) = satellite_ephemeris(sv2); saLA(:,3) = satellite-ephemeris(sv3); saLA(:,4) = satcllite-ephemeris(sv4); saLA(:,5) = sa Celli te_ephemeris(sv5); % Set time to end of interpolation interval. svl(l) = time + interval; sv2(l) = time + interval; sv3(l) = time+ interval; sv40) = time + interval; sv5(l) = time + interval; % Get satellite positions.
saLB(:.I) = saLellite-ephemeris(sv I)-. saLB(:,2) = sateUite-cphemeris(sv2); saLB(:,3) = sate Ilite-ephemeris(sv3); saLB(:,4) = saLelliLe-ephemeris(sv4); saLB(:,5) = satellite-ephemeris(sv5); % calculate x,yz velocities (in m/s) V = (saLB-satA)/inEerval; %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%70%% % Form initial H matrix of partials %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% I % Partials taken at guessed time and user position.
Need partials of sat coordinates w.r.L time. Over the "interval- specified above we assume sat velocity is constant. Set partials to sat velocities. Compute vector and range from object to each satellite.
Get satellite positions at guessed time.
svI(l) = time; sv2(l) = time; sv3(l) = time sv4(l) = ame sv5(l) = time: sat(:,I) = satellite_ephemeris(sv I); sat(:,2) = satellite_ephemeris(sv2); sat(:,3) = satellite-ephemeris(sv3); sat(:,4) = satellite_ephemeris(sv4); sat(:,5) = satellite_ephemeris(sv5); % Compute estimated sat user vectors and ranges. for i = 1:5, sat.U(:j) = sat(: j) - Ub range(i) norm(sat.U(:,i)) DV(:j) sat_U(J) / range(i) end Form 14 matrix of partials at estimated user location and fime:
i'th row of H is H = (pl) li/px, pDli/py, pD I i/pz, pl) I Upt) First three elements is just the difference between the normal.ized direction vectors to the first and to the i'th sateffites.
Last element is difference between Ist and i'th inner products of direction vectors with satellite velocity vectors. for i = 1:4, H(i, 1:3) = DV(:,i+1)' - DV(:. I)' H(i,4) = DV(:, 1)' V(:, 1) - DV(:,i+ 1)' V(:,i+ 1) end % now compute the first estimate of G % G inv(H); loop 0; epsilon = 1; %meter while ( loop < 20) loop = loop + 1; % step 3 Substitute t into ephemeris data and get positions at guessed Lime.
Hem we use actual ephemeris equations to find sat posidons, but note that the fime derivatives of sat posidon are taken from the linear interpolation. sv 1 (1) = Lime; sv2(l) = time; sv3(1) = Lime; sA (1) = time; SVS(I) time; sat(:.I) satellite_ephemeris(svl); saL(:,2) satellite-ephemeris(sv2); saL(:,3) satellite-ephemeris(sv3); saE(:,4) saEelliEe-ephemeris(sv4); saL(:,5) satelUte_ephemeris(sv5); satl(:,Ioop) = sat(:,I) sat2(:,Ioop) = sat(:.2) sat3(-.,Ioop) = sat(:,3) sat4(:,loop) = sat(:,4) saL5(:,Ioop) = sat(:,5) % Compute- vector and range from object to each satellite, % Needed for new H matrix. for i = 1:5, sat-U(:j) = sat(:,i) - Ub range(i) norm (saE_U(:
DV(:,i) S2E-U(:.i) / range(i) end % compute r-diff using Ubar and t rjiff(l) = range(l) - range(2); r-. diff(2) = range(l) - range(3); r-diff(3) = range(l) - range(4); rjiff(4) = range(l) - range(5); % step 4 % compute range-difference error. r_dif_error(:,Ioop) = rjiff-rn - rjiff' % step 5 % Form H matrix of partials: % i'Lh row of H is H = (pD Ii/px, pDI i/py, pDli/pz, pDliJpt) % Fim du= elements is just the difference between the normalized direction vectors to the first and to the i'th satellites.
Last element is difference between Ist and i'Lh inner products of direction vectors with satellite velocity vectors. for i = 1:4, H(i,1:3) = DV(:,i+ 1)' - DV(:,I)' H(i.4) = DV(:, 1)' V(:, 1) - DV(:,i+ 1)' V(:,i+ 1) RD-23 530 end H4(:Joop) H(:,4); % step 6 % compute G via I iteration % G = G(2eye(4)-HG); G = inv(M; G4(loop,:) = G(4,:); % step 7 % compute dU as G r_differror(:,loop) dU4 = G r_dif_error(:, Ioop); dU = dU4(1:3); dt = dU4(4); % step 8 % update position and Lime estimate Ub Ub + dU, time time + dt ans_vec(:,Ioop) = RJb',time]' Ub = Ub + dU; Lime = time + dt.; loop; end % while U-covar = G rjiffcovar G' U-sigma(l) = sqrt(U-covar(l,l)); U-sigma(2) = sqrt(U_covar(2.2)) U-sigma(3) = sqrL(U-jcovar(3,3)) U-sigma(4) = sqrt(U_povar(4,4)); Plot x,yz, or t convergence vs loop iteration number.
I -> x,2-> y,3->z,4-> time.
% % % v ploL(arz-vec(l,:)); end function [veq_satellim_ecfl = satelfite_ephemeris(input_vector) The following code for calculating satellite positions from ephemeris data is taken from ICD-GPS-2000, table 20-IV.
RD-23 530 t = input-vecLor(I,I) M-0 = input_vector(2,I); delta-n input-vector(3,I); e = input_vector(4,I) sqrt-a inpu[-vector(5,1); OMEGA-9 = input-Vector(6,I) i-Q = input-vector(7,I); omega = input-vector(8, 1); OMEGA-dot = input-vocEor(9,I); i-dot = input_vector(10,1); C-LIC = input_vector(IIJ); C-us = input_vector(12,I); = input_vector(13,I); C_rs = input-vector(14,I) c-ic = input-vector(I 5, 1), c-is = input_vecLor(16,I); t-oe = input-vector(17,1) iode input-VecLor(18,I); % Earth mass times universal gravity constant (see Ref 1, pp 34).
mu = 3.986005e 14 % Earth rotation rate.
OM:EGA_e_dot = 7.2921151467e-5 % Orbit ellipse sernimajor axis length a = (sqrta)A2 % Mean angular motion (Average angular rate of orbit).
n-0 = (mu/(aA3))AO.5; % Time elapsed since ephemeris reference epoch.
t-k t - t-oe if t-k > 302400 Ej = Lk-604800; %correct time for EOW crossovers elseif t-k < -302400 t_k = tj+604800; %correct time for EOW crossovers end % Corrected mean angular motion.
n = n-0 + delta-n % Mean anomaly (false saE orbit angle in orbit plane, using mean motion).
m-k = M-0 + nt-k; RD-23 530 % Eccenuic anomaly (true sat orbit angle in orbit plane, from ellipse center).
e-k = kep ler(e,m-k,0.0 1, 10000) % Terms for finding true anomaly.
cosU = (cos(e_k) - e)/(I - ecos(e_k)) sinf-k = ((I - eA2),O.5)sin(e-k)/(I - elcos(e_k)) % True anomaly (true sat orbit angle in orbit plane, from earth center).
fj = aLan2(sinLkcosLk); % Argument of lauitude (sat orbit angle from ascending node point on equator) phi-k f-k + omega; sin2phik sin(2phi_k):
cos2phik =COS(2phij); % Argument of lattitude correction. delta-u-k = c-ussin2phik + c- uccos2phik % Radius correcdon. deltajj = C-jccos2phik + cjssin2phik % Correction to inclination.
delta_ij = c-iccos2phik + cjssin2phik % Corrected argument of [attitude.
u-k = phi_k + del ta-u_k % Corrected radius. r-k = a (I - ecos(e-k)) + deltajj % Corrected inclination. i_k = i_O + delta_i-k + i_dotLk % Final x-y posidon in orbital plane. x-k-prime = rjcos(u-k) y-k-prime = r-ksin(u-k); % Longitude of ascending node. omega_k = OM:EGAJ + (OM:EGA_dot-ONMGA-e- dot)t_k - ONEGA_e_dotLoe; % Final sat position in earth-rixed coordinates.
x-k X-k_primecos(omep_k) - y_k_primecos(i_k)sin(omega-k) yj xj-primesin(omega_k) + y_k-prirnecos(i_k)cos(omegaLk) zj yj_prime si n(i-k); RD-23, 536 vec_satellite_jecf (x-k;y_k;z_kl end function x = kepler(a,b.epsilonN) %KEPLER KEPLER(ab,epsilonN) returns the iterated solution to x=asin(x)+b. Iterates until the new value is within epsilon of the old value or until the number of iterations % reaches N. old-x = 0; new-x = b; iteraLions=O; while ((abs(new_x-old_x)>epsilon) & (iteraLions<N)) ol&x = new_x; %disp(new_x); new-x = asin(old_x)+b; iterations = iterations+l; end if iterations<N x=new-x; %disp('IteraUons:')-, %disp(iterations); %disp(a); %disp(b); %disp(x); elseif iterations=--N disp(Tixed Point Iteration Failed'); end function (param_vec] = sv7-ephO EphemerisSVO71ength 167;%bytes SV-PRN = 7; t = 483634.754; t-cphern = 483042; weeknum = 763; codeL2 = J., L2Pdata = 0; SVacc_raw 7; RD-23, 530 SV-healLh 0; IODC = 120; T-GD = 1.39698e-09; I-oc = 485504; a-12 = 0; a-fl = 1.13687e-13; 2-fo = 0.000697501; Svacc = 32; IODE = 120; fit-intvl 0-, C-rs = -17.2812; delLa-n = 4.39733e--09; M-0 = -1.6207 C-uc = -9.2759e-07; ecc = 0.00659284; C-us = 9.46783e4)6; sqrt-A = 5153.78; t-oe = 485504; C-ic = 1.47149e47; OMEGA_.Q = 0.79399 1; C-is = -9.31323e--09; i-O = 0.962958; C-rc = 197.938; omega = -2.69189-, OMEGADOT = -7.93212c-.09; MOT = 7.82175e-11; Axis = 2.65614e+07; n = 0.00014585; rlme2 = 0.999978; OMF-GA_n = -34.6095; ODOT-n = -7.2929le-05; param.yec M-0; delta-n; ecc; sqri.A; OMEGA_O; i-0; omega; OMEGADOT, RD-23, 550 IDOT; C-uc; C-us; C-rc; C_rs; C-ic; C-is; t.oe; IODE]; function [param_vecl sv2_ephO EphemerisSVO21engLh 167;%bytes SV-PRN = 2; t = 483634.754; t-ephem = 483042, weeknum = 763; codeL2 = 1; L2Pdata = 0; SVacc-raw = 7; SVth = 0; IODC = 165; T-GD = 9.31323e-10; t-OC = 489600'.
a-f2 = 0; a-fl = -2.16005e-12; a-fD = -0.000 109646; SVacc = 32; IODE = 165; rit-inrvl 0; CJS = -30.6562; dclta-n = 4.92235e-.09; M-O = 0.0785892; C-UC = -1.5255le-.06; ecc = 0.0134761; C-us = 4.63426e-06; sqrt-A = 5153.66; Loe = 489600-, C-ic = 1.09896e-07; ONEGA-0 = -0.26998; C-is = 1.63913e-07; i-O = 0.953377; C-rc = 285.688; omega = -2.63668; OMT-GADOT = -8.54964e-.09; MOT = -2.16795e-10; Axis = 2.65602e+07; n = 0.00014586; rIme2 = 0.999909; OM:EGA-n = -35.9722; ODOT-n = -7.29297e-05; pararn-vec [t; M-0; delta n ecc; sqrt_A, OMEGA_O; i-0; omega, OM.EGADOT, [DOT-, C-uc; Q-us; Cjc; Q-rs; C-ic; Cjs; I_oe; IODE]; function (param_vec] sv9-ephO EphemerisSVO91engLh 167;%bytes SV-PRN = 9; It = 483634.754; t-ephem = 483042, weeknum = 763; codeL2 = 1; L2Pdata = 0-, D-23,530 SVacc-raw = 7; SV-healLh = 0; IODC = 592; T-GD = 1.39698e-.09; t-OC = 489600-, a-f2 = 0; a-fl = -1.13687e-12; a-fD = -5.16325e-.06; SVacc = 32; IODE = 80; fit_inEvl 0, C_:rs = 80.1875; delta-n = 4.85127e-.09; M-0 = -2.65977; C-uc = 4.2580le-06; ecc = 0.002924-43; C-us = 5.34952c--06; sqrt-A = 5153.73; t-oc = 489600; C-ic = 5.58794e--09; ONMGA_O = -1.28659; C-is = 2.23517e-08; i-O = 0.950-485; C-rc = 270.656; omega = 4.581175; OMEGADOT = -8.33535e-.09; MOT = 2.450le-10; Axis = 2.6561e+07; n = 0.000145854; rlme2 = 0.999996; OMEGA_p = -36.9888; MOT - n = -7.29295e45; param-vec M-Q; delta-n; ecc; sqq_A; OMEGA-O. i-0; omega; D-23 530 OMEGADOT, [DOT-, C-uc; C-us; C_rc; C-rs; (_ic; Cjs; t-oe; IODEI; funcLion (param_vec) sv4_epho EphemerisSVO41engLh 167;%bytes SV-PRN = 4, E = 483634.754; t_ephem = 483048; weeknum = 763; codeL2 = J; L2PdaEa = 0; Svacc-yaw = 7; SV-hea)Lh = 0; TODC = 711; T-GD = 1.39698e--09; t-oc = 489600; a_f2 = 0; a-fl = 1.59162e-12; a-fD = 4.03658e-05; SVacc = 32; IODE = 199; rit-inrvi 0', C-rs = 15.4375; delLa_n = 4.67448e--09; M-0 = 2.57307; C-uc = 9.76026e-07; ecc = 0.00303051; C-us = 6.10203e-.06; sqrt.A = 5153.62; t-oc = 489600-, C-ic = 4.09782e-08; RD-23 530 OMEGA-0 = 1.86007; C-is = 1.11759e-08; i-O = 0.963886; C-rc = 261.562; omega = -1.24408; OMEGADOT = -8.10534e-.09; MOT = 2.6251le-10; Axis = 2.65598c+07; n = 0.000145863; rlme2 = 0.999995; OMEGA-n = -33.8421; ODOT-n = -7.29293e45; param-,vec -_[t; delta_n; ecc; sqrt_A; OMEGA-0; i-0; omega; OMEGADOT-, IDOT, C-uc; C-us; C_rc; Cjs; C-ic; Cjs; Ioe; IODE]; function [param-ve-cl svl2-epho T"his ephemeris data was extracted from testO826.asc by Glen Brooksby.
EphemerisSV121ength 167;%bytes SV-PRN = 12; t = 483634.754; t_ephem, = 482748-, RD-23, 530 weeknum = 763; codeL2 = 1; L2PdaEa = 0; SVacc-raw = 2; SV-healEh = 0; IODC = 323; T-GD = 2.79397e--09; I-oc = 489600-, a-f2 = 0; a-fl = -1.21645e-11, a-fD = -2.44565e-05; Svacc = 4; IODE = 67; fit_intvl 0; C-rs = 42.75; delta-n = 1.96937e-.09; M-0 = 3.01393; C-uc = 2.28174e-.06; ecc = 0.0147704; C-us = 5.3402e--06; sqrt-a = 5153.5; t-0e. = 489600; C-ic = -1.65775e-07; omega-0 = -0.925903; C-is = 3.91155e-08; i__o = 1.09737; C-rc = 338.719; omega = -0.167314; OMEGADOT = -6.63885e-.09; TDOT = 1.2572c-10; Axis = 2.65585e+07; n = 0.000145871; rlme2 = 0.99989 1; OMEGA - n = -36.628 1; ODOT-n = -7.29278e45; param-vec (t., m--Q; delta-n; occ; sqrLa:
D-23, 53Q I N 50- omega_O; i-0; omega; OMEGADOT-, IDOT-, C_uc; C-us; Q_rc; Q-rs; C-ic; C-is; -oe; IODEI;

Claims (4)

CLAIMS:-
1. A system for identifying location of an object to be tracked, comprising: means for measuring data related to propagation time differences between signals transmitted from a plurality of GPS satellites and received at said object to be tracked, each of said signals identifying an associated satellite, said object to be tracked including: receiver means for receiving signals from at least four GPS satellites; and first processor means for processing data from the I receiver means at predetermined time intervals in synchronism with received signal events, said data being related to propagation time differences for said signals; receiver means apart from said object for receiving said signals transmitted from said plurality of satellites; a central station for calculating the location of said object based upon the measured data, data derived from said receiver means apart from said object, and the satellite identification data; and transmission means for transmitting the processed data to said central station; said system further including: second processor means at said central station for determining the location of said object based on the data received from said transmission means and data derived from said receiver means apart from said object.
2. The system of claim I wherein said signal events comprise a telemetryword preamble signal event in a GPS signal.
3. The system of claim I or 2 wherein said first processor means further comprises means for decoding a satellite time stamp from a predetermined one of the received GPS signals, based upon the telemetry-word preamble signal event.
I % r 52
4. A system for identifying location of an object to be tracked as claimed in claim 1 and substantially as described herein with reference to the drawings.
GB9925349A 1995-05-31 1996-05-20 A reduced-power GPS-based system for tracking multiple objects from a central location Expired - Fee Related GB2339641B (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US45622995A 1995-05-31 1995-05-31
GB9610549A GB2301725B (en) 1995-05-31 1996-05-20 A reduced-power GPS-based system for tracking multiple objects from a central location

Publications (3)

Publication Number Publication Date
GB9925349D0 GB9925349D0 (en) 1999-12-29
GB2339641A true GB2339641A (en) 2000-02-02
GB2339641B GB2339641B (en) 2000-03-15

Family

ID=26309370

Family Applications (3)

Application Number Title Priority Date Filing Date
GB9925349A Expired - Fee Related GB2339641B (en) 1995-05-31 1996-05-20 A reduced-power GPS-based system for tracking multiple objects from a central location
GB9925345A Expired - Fee Related GB2339639B (en) 1995-05-31 1996-05-20 A reduced-power gps-based system for tracking multiple objects from a central location
GB9925347A Expired - Fee Related GB2339640B (en) 1995-05-31 1996-05-20 A reduced-power GPS-based system for tracking multiple objects from a central location

Family Applications After (2)

Application Number Title Priority Date Filing Date
GB9925345A Expired - Fee Related GB2339639B (en) 1995-05-31 1996-05-20 A reduced-power gps-based system for tracking multiple objects from a central location
GB9925347A Expired - Fee Related GB2339640B (en) 1995-05-31 1996-05-20 A reduced-power GPS-based system for tracking multiple objects from a central location

Country Status (1)

Country Link
GB (3) GB2339641B (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2376363A (en) * 2000-12-07 2002-12-11 Parthus Positioning Apparatus
US6738713B2 (en) 2000-05-26 2004-05-18 Parthus (Uk) Limited Positioning apparatus and method
US9736618B1 (en) 2005-04-04 2017-08-15 X One, Inc. Techniques for sharing relative position between mobile devices

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES2167217B1 (en) * 2000-03-24 2003-10-16 World Wide Loc S L DISTANCE OPERATING CONTROL SYSTEM
US10279893B2 (en) * 2017-02-16 2019-05-07 Bell Helicopter Textron Inc. System and method for validating rotorcraft position coordinates

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1987006410A1 (en) * 1986-04-15 1987-10-22 Magnavox Government And Industrial Electronics Com Method and apparatus for precision surveying using broadcast satellite signals
EP0512789A2 (en) * 1991-05-09 1992-11-11 Navsys Corporation Vehicle tracking system employing global positioning system (GPS) satellites
WO1992021181A1 (en) * 1991-05-20 1992-11-26 Qualcomm Incorporated Dual satellite navigation system and method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1987006410A1 (en) * 1986-04-15 1987-10-22 Magnavox Government And Industrial Electronics Com Method and apparatus for precision surveying using broadcast satellite signals
EP0512789A2 (en) * 1991-05-09 1992-11-11 Navsys Corporation Vehicle tracking system employing global positioning system (GPS) satellites
WO1992021181A1 (en) * 1991-05-20 1992-11-26 Qualcomm Incorporated Dual satellite navigation system and method

Cited By (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6738713B2 (en) 2000-05-26 2004-05-18 Parthus (Uk) Limited Positioning apparatus and method
GB2376363A (en) * 2000-12-07 2002-12-11 Parthus Positioning Apparatus
GB2376363B (en) * 2000-12-07 2005-01-12 Parthus Positioning apparatus and method
US10165059B2 (en) 2005-04-04 2018-12-25 X One, Inc. Methods, systems and apparatuses for the formation and tracking of location sharing groups
US10299071B2 (en) 2005-04-04 2019-05-21 X One, Inc. Server-implemented methods and systems for sharing location amongst web-enabled cell phones
US9854394B1 (en) 2005-04-04 2017-12-26 X One, Inc. Ad hoc location sharing group between first and second cellular wireless devices
US9854402B1 (en) 2005-04-04 2017-12-26 X One, Inc. Formation of wireless device location sharing group
US9883360B1 (en) 2005-04-04 2018-01-30 X One, Inc. Rendez vous management using mobile phones or other mobile devices
US9942705B1 (en) 2005-04-04 2018-04-10 X One, Inc. Location sharing group for services provision
US9955298B1 (en) 2005-04-04 2018-04-24 X One, Inc. Methods, systems and apparatuses for the formation and tracking of location sharing groups
US9967704B1 (en) 2005-04-04 2018-05-08 X One, Inc. Location sharing group map management
US10149092B1 (en) 2005-04-04 2018-12-04 X One, Inc. Location sharing service between GPS-enabled wireless devices, with shared target location exchange
US9736618B1 (en) 2005-04-04 2017-08-15 X One, Inc. Techniques for sharing relative position between mobile devices
US10200811B1 (en) 2005-04-04 2019-02-05 X One, Inc. Map presentation on cellular device showing positions of multiple other wireless device users
US9749790B1 (en) 2005-04-04 2017-08-29 X One, Inc. Rendez vous management using mobile phones or other mobile devices
US10313826B2 (en) 2005-04-04 2019-06-04 X One, Inc. Location sharing and map support in connection with services request
US10341808B2 (en) 2005-04-04 2019-07-02 X One, Inc. Location sharing for commercial and proprietary content applications
US10341809B2 (en) 2005-04-04 2019-07-02 X One, Inc. Location sharing with facilitated meeting point definition
US10750311B2 (en) 2005-04-04 2020-08-18 X One, Inc. Application-based tracking and mapping function in connection with vehicle-based services provision
US10750310B2 (en) 2005-04-04 2020-08-18 X One, Inc. Temporary location sharing group with event based termination
US10750309B2 (en) 2005-04-04 2020-08-18 X One, Inc. Ad hoc location sharing group establishment for wireless devices with designated meeting point
US10791414B2 (en) 2005-04-04 2020-09-29 X One, Inc. Location sharing for commercial and proprietary content applications
US10856099B2 (en) 2005-04-04 2020-12-01 X One, Inc. Application-based two-way tracking and mapping function with selected individuals
US11356799B2 (en) 2005-04-04 2022-06-07 X One, Inc. Fleet location sharing application in association with services provision
US11778415B2 (en) 2005-04-04 2023-10-03 Xone, Inc. Location sharing application in association with services provision

Also Published As

Publication number Publication date
GB2339640B (en) 2000-03-15
GB2339639B (en) 2000-03-15
GB2339641B (en) 2000-03-15
GB2339639A (en) 2000-02-02
GB9925345D0 (en) 1999-12-29
GB9925347D0 (en) 1999-12-29
GB9925349D0 (en) 1999-12-29
GB2339640A (en) 2000-02-02

Similar Documents

Publication Publication Date Title
USRE40642E1 (en) Reduced-power GPS-based system for tracking multiple objects from a central location
US5379224A (en) GPS tracking system
US4613864A (en) Position-fixing system
US6104978A (en) GPS-based centralized tracking system with reduced energy consumption
US5977909A (en) Method and apparatus for locating an object using reduced number of GPS satellite signals or with improved accuracy
EP1851564B1 (en) Method and apparatus for enhanced autonomous gps
US5959575A (en) Interior GPS navigation
US5815114A (en) Positioning system and method
KR100543634B1 (en) A method and device for creating a network positioning systemnps
US6563457B2 (en) Method and system for determining a position of an object using two-way ranging in a polystatic satellite configuration
US8063825B1 (en) Cooperative position location via wireless data link using broadcast digital transmissions
US20040117114A1 (en) Method and apparatus for using long term satellite tracking data in a remote receiver
US5717404A (en) Satellite ephemeris determination system using GPS tracking techniques
JPS6140578A (en) Navigation system using satellite
GB2271902A (en) Satellite navigation
US5625556A (en) Accurate time standard for vehicle operation
US20070241960A1 (en) Enhancement of gnss position determination in poor signal propagation environments
EP0166300A2 (en) Receiver for global positioning system and method for determining position of a stationary station using same
GB2339641A (en) GPS receiver with remote processing
EP1835300B1 (en) Method and apparatus for using long term satellite tracking data in a remote receiver
GB2295063A (en) Monitoring GPS ephemeris data
AU713642C (en) Positioning system and method
RU2160917C2 (en) Method for determination of time difference between stations in radio navigational positions system in real time
Liu et al. A Consistent Geodetic Reference System for GPS (Global Positioning System).
Rizos et al. GPS ephemeris considerations for the Australian

Legal Events

Date Code Title Description
PCNP Patent ceased through non-payment of renewal fee

Effective date: 20140520