WO2009115899A2 - Moving body positioning device and moving body positioning method - Google Patents

Moving body positioning device and moving body positioning method Download PDF

Info

Publication number
WO2009115899A2
WO2009115899A2 PCT/IB2009/000548 IB2009000548W WO2009115899A2 WO 2009115899 A2 WO2009115899 A2 WO 2009115899A2 IB 2009000548 W IB2009000548 W IB 2009000548W WO 2009115899 A2 WO2009115899 A2 WO 2009115899A2
Authority
WO
WIPO (PCT)
Prior art keywords
psr
computed
pseudorange
moving body
computing
Prior art date
Application number
PCT/IB2009/000548
Other languages
French (fr)
Other versions
WO2009115899A3 (en
Inventor
Naoto Hasegawa
Hideaki Tampo
Original Assignee
Toyota Jidosha Kabushiki Kaisha
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 Toyota Jidosha Kabushiki Kaisha filed Critical Toyota Jidosha Kabushiki Kaisha
Publication of WO2009115899A2 publication Critical patent/WO2009115899A2/en
Publication of WO2009115899A3 publication Critical patent/WO2009115899A3/en

Links

Classifications

    • 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/13Receivers
    • G01S19/24Acquisition or tracking or demodulation of signals transmitted by the system
    • G01S19/25Acquisition or tracking or demodulation of signals transmitted by the system involving aiding data received from a cooperating element, e.g. assisted GPS
    • 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
    • G01S19/48Determining position by combining or switching between position solutions derived from the satellite radio beacon positioning system and position solutions derived from a further system
    • G01S19/49Determining position by combining or switching between position solutions derived from the satellite radio beacon positioning system and position solutions derived from a further system whereby the further system is an inertial position system, e.g. loosely-coupled
    • 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

Definitions

  • the present invention relates to a moving body positioning device through which a moving body receives a radio wave from a satellite to determine the position of the moving body, and a moving body positioning method.
  • JP-A-2001-4734 discloses a GPS receiver that includes: a GPS antenna for receiving a satellite signal; a wave detecting section for computing a Doppler shifted frequency and a pseudorange from the received signal; a pseudorange estimating section for computing a rate of change in the pseudorange from the Doppler shifted frequency to estimate the pseudorange; and a positioning section for selectively using the computed pseudorange or the estimated pseudorange to determine the position of the GPS receiver.
  • the positioning section determines the position of the GPS receiver by using either the pseudorange that is computed by the wave detecting section when a radio wave from the satellite can be received or the pseudorange estimated by the pseudorange estimating section when the radio wave is blocked and thus the pseudorange cannot be computed.
  • the pseudorange estimating section computes a relative velocity between the satellite and the GPS receiver from the Doppler shifted frequency obtained in previous positioning process, and estimates the current pseudorange from the relative velocity and the pseudorange obtained in the previous positioning process.
  • the present invention provides a moving body positioning device with which highly accurate positioning can be achieved even when an error in a computed pseudorange is large, and also provides a moving body positioning method.
  • a moving body positioning device through which a moving body receives a radio wave from a satellite to determine the position of the moving body includes: PSR computing means for computing a pseudorange between the satellite and the moving body per given cycle based on an observed phase of a pseudo random noise code in a satellite wave; ADR computing means for computing an accumulated Doppler range (ADR) per given cycle based on an observed Doppler shifted frequency of the satellite wave; positioning means for determining the position of the moving body per given cycle based on the pseudorange that is computed by the PSR computing means; satellite position computing means for obtaining information representing a satellite position and computing the satellite position per given cycle; previous value PSR estimating means for computing an estimated value of the pseudorange in a previous cycle (an estimated previous value) based on a magnitude of a difference vector between a positioning result of the moving body in the previous cycle that is obtained from the positioning means and a computed result of the satellite position in the previous cycle that is obtained from the satellite position computing means;
  • the computing cycles of the ADR computing means and the PSR computing means are not necessarily be synchronized with the positioning cycle of the positioning means and the computing cycle of the satellite position computing means.
  • the positioning cycle of the positioning means and the computing cycle of the satellite position computing means may be synchronized with integral multiples of the computing cycles of the ADR computing means and the PSR computing means.
  • the previous cycle and the current cycle of the ADR computing means and those of the PSR computing means are synchronized with the previous cycle and the current cycle of the positioning means and those of the satellite position computing means.
  • the determination by the PSR error determination means is typically made in an cycle synchronized with the computing cycle of the PSR computing means.
  • the PSR error determination means may make a determination in the computing cycle of the PSR computing means that is synchronized with the positioning cycle of the positioning means and the computing means of the satellite positioning means.
  • the PSR error determination means does not have to make a determination per positioning cycle of the positioning means and per computing cycle of the satellite position computing means, but may make a determination once per a certain plurality of cycles or at random cycles.
  • the positioning means determines the position of the moving body in the current cycle based on the estimated pseudorange that is computed by the PSR estimating means instead of the pseudorange that is computed by the PSR computing means in the current cycle when either one of the following conditions is met: the PSR error determination means determines that the error in the pseudorange that is computed by the PSR computing means in the current cycle exceeds the given allowable range, and a given time period has not been elapsed since a satellite related to the pseudorange is captured.
  • the positioning means may determine the position of the moving body in the current cycle based on the estimated pseudorange that is computed by the PSR estimating means instead of the pseudorange that is computed by the PSR computing means in the current cycle if the PSR error determination means determines that the error in the pseudorange that is computed by the PSR computing means in the current cycle exceeds the given allowable range, and the given time period has not been elapsed since the satellite related to the pseudorange is captured.
  • the determination of whether or not the satellite is newly captured may be made based on a captured time period that corresponds with a time period required for filtering process of the pseudorange and that starts from a cycle in which the satellite is captured.
  • the filtering process may be carrier smoothing using a Hatch filter or a Kalman filter.
  • the positioning means may execute positioning by an inertial navigation method with use of information from an INS sensor when it is impossible to execute positioning by a satellite navigation method based on a reception result of the satellite wave.
  • the positioning result of the moving body in the previous cycle that is produced in the positioning means and used in the previous value PSR estimating means may include a positioning result derived by the inertial navigation method.
  • the positioning means may execute positioning when the number of satellites for which either the pseudorange or the estimated pseudorange is computed is equal to or greater than three. [0013] In the moving body positioning device according to the first aspect, the positioning means may execute positioning by the satellite navigation method when the number of satellites for which the estimated pseudorange is computed is equal to or greater than four, and when the number of satellites for which the pseudorange is computed is equal to or greater than two.
  • the PSR error determination means may compare a difference ⁇ PSR between pseudoranges that are computed by the PSR computing means in the previous and current cycles with a difference ⁇ ADR between ADRs that are computed by the ADR computing means in the previous and current cycles, with respect to the same satellite, and may determine whether or not the error in the pseudorange that is computed by the PSR computing means exceeds the given allowable range.
  • the PSR error determination means may determine that the error in the pseudorange that is computed by the PSR computing means exceeds the given allowable range when an absolute value
  • the positioning means may determine the position of the moving body in the current cycle based on the pseudorange that is computed by the PSR computing means in the current cycle when the PSR error determination means determines that the error in the pseudorange that is computed by the PSR computing means in the current cycle does not exceed the given allowable range.
  • the previous value PSR estimating means may compute the estimated previous value by adding the magnitude of the difference vector to an estimated value of a clock error that is included in the pseudorange.
  • the estimated value of the clock error may be derived by calculating back from the positioning result produced in the positioning means.
  • the PSR estimating means may compute the estimated pseudorange in the first cycle of the two or more cycles by adding the estimated previous value to the difference between ADRs that are computed by the ADR computing means in the previous and current cycles, and from the second cycle onward by adding the estimated pseudorange that is computed in the previous cycle to the difference between ADRs that are computed by the ADR computing means in the previous and current cycles.
  • a moving body positioning method through which a moving body receives a radio wave from a satellite to determine the position of the moving body includes: computing a pseudorange between the satellite and the moving body per given cycle based on an observed phase of a pseudo random noise code in a satellite wave; computing an accumulated Doppler range per given cycle based on an observed Doppler frequency of the satellite wave; determining the position of the moving body per given cycle based on the computed pseudorange; obtaining information representing a satellite position to compute the satellite position per given cycle; computing an estimated previous value as an estimated value of the pseudorange in a previous cycle based on a magnitude of a difference vector between a positioning result of the moving body in the previous cycle and a computed result of the satellite position in the previous cycle; computing an estimated pseudorange as an estimated value of the pseudorange in a current cycle by adding the estimated previous value to a difference between the accumulated
  • Doppler ranges computed in the previous and current cycles determining whether an error in the computed pseudorange exceeds a given allowable range; and determining the position of the moving body in the current cycle based on the estimated pseudorange, which is computed in the current cycle, instead of the pseudorange that is computed in the current cycle when it is determined that the error in the pseudorange that is computed hi the current cycle exceeds the given allowable range.
  • a moving body positioning device with which highly accurate positioning can be achieved even when an error in a computed pseudorange is large and a moving body positioning method can be provided.
  • FIG 1 is a system configuration diagram showing a general configuration of a GPS to which a moving body positioning device according to a first embodiment of the present invention is applied;
  • FIG.2 is a block diagram showing an example of main components of a GPS receiver according to the first embodiment of the present invention;
  • FIG 3 is a block diagram showing an example of main components of a DLL of the GPS receiver according to the first embodiment of the present invention
  • FIG 4 is a flow chart showing the flow of main processing executed by the GPS receiver according to the first embodiment of the present invention.
  • FIG 5 is a graph showing time sequences of PSR, EPSR, and ADR after capture of a GPS satellite according to the first embodiment of the present invention
  • FIG 6 is a block diagram showing an example of main components of a GPS receiver according to a second embodiment of the present invention
  • FIG 7 is a flow chart showing the flow of main processing executed by the GPS receiver according to the second embodiment of the present invention.
  • FIG 1 is a system configuration diagram showing a general configuration of a Global Positioning System (GPS) to which a moving body positioning device according to the present invention is applied.
  • GPS Global Positioning System
  • the GPS is constituted of GPS satellites 10 orbiting the Earth and a vehicle 90 located and traveling on the Earth.
  • the vehicle 90 is merely an example of a moving body, and the moving body can also be any of a motorcycle, train, ship, aircraft, foiklift, robot, information terminal such as a cellular phone that moves together with a user, and the like.
  • the GPS satellite 10 continuously broadcasts a navigation message (satellite signal) to the Earth.
  • the navigation message includes the satellite orbital information of the corresponding GPS satellite 10 (an ephemeris and an almanac), a correction value of a clock, and an ionospheric correction factor.
  • the navigation message is diffused by a C/A-code and continuously broadcasted to the Earth on an Ll carrier (frequency: 1575.42 MHz).
  • the Ll carrier is a synthetic wave of a sine wave modulated by the C/A-code and a cosine wave modulated by a precision code (P-code), and is orthogonally modulated.
  • Both the C/A-code and the P-code are a pseudo random noise code, a repeated sequence with a random set of -Is and Is.
  • the twenty four GPS satellites 10 orbit the Earth at an altitude of about 20,000 km, and each four of the GPS satellites 10 are evenly arranged in one of six Earth orbital planes that are each inclined 55 degrees to the other. Therefore, as long as the sky is clear, at least five GPS satellites 10 can be constantly observed from anywhere on the Earth.
  • the vehicle 90 is equipped with a GPS receiver 20 as a moving body positioning device.
  • FIG 2 is a block diagram showing an example of main components of the GPS receiver 20 according to the first embodiment of the present invention.
  • FIG 3 is a block diagram showing an example of main components of a DLL 203 of the GPS receiver 20 according to the first embodiment of the present invention.
  • the processing of the signal from the GPS satellite 10 j is substantially the same as the processing of a signal from another GPS satellite 10.
  • the processing of a satellite signal, which is described later, is performed in parallel (simultaneously) with the processing of signals from all the observable GPS satellites.
  • the GPS receiver 20 includes a high-frequency circuit 201, an analog-to-digital (AfO) converter circuit 202, a Delay-Locked Loop (DLL) 203, a Phase-Locked Loop (PLL) 204, a filter 205, a PSR e ⁇ or determination section 206, an ADR computing section 208, a satellite position computing section 209, a PSR estimating section 212, a position computing section 214, a computed value storing section 216, and a PSR previous value estimating section 218.
  • AfO analog-to-digital
  • DLL Delay-Locked Loop
  • PLL Phase-Locked Loop
  • the A/D converter circuit 202 converts an EF signal (analog signal) supplied from the high-frequency circuit 201 to a digital IF signal for digital signal processing.
  • the DLL 203 is configured to synchronize a phase of the C/A-code on the Ll carrier with a phase of an internally generated replica C/A-code and to compute a pseudorange (PSR) (hereinafter referred to as "PSR'j")-
  • PSR pseudorange
  • the apostrophe added to PSR j indicates that filtering process, which is described later, has not been performed, and a symbol with the subscript "j" indicates that it is a value related to the GPS satellite 1O j (the same rule applies to values other than PSR'j).
  • the digital IF signal is multiplied by a replica carrier, which is supplied from the PLL 204, by a mixer (not shown), and then input to the DLL 203 in practice.
  • the DLL 203 includes cross-correlation computing sections 111 and 112, a phase leading section 113, a phase lagging section 114, a phase shift computing section 115, a phase correction amount computing section 116, a replica C/A-code generating section 117, and a PSR computing section 118.
  • a replica C/A-code is generated in the replica C/A-code generating section 117.
  • the replica C/A-code has the same sequence of +ls and -Is as the C/A-code on the signal from the GPS satellite 10j.
  • the replica C/A-code generated in the replica C/A-code generating section 117 is input to the cross-correlation computing section 111 via the phase leading section 113.
  • an early replica code is input to the cross-correlation computing section 111.
  • the replica C/A-code is led for given phases.
  • An amount of the phases by which the replica C/A-code is led in the phase leading section 113 is set as ⁇ j.
  • the digital IF signal is also input to the cross-correlation computing section 111 after being multiplied by the replica carrier, which is generated in the PLL 204, by the mixer (not shown).
  • the input digital IF signal and the early replica code with the phase leading amount of ⁇ j are used to compute a correlation value (early correlation value ECA)-
  • the early correlation value ECA ⁇ S computed by the following equation, for example:
  • Early correlation value ECA ⁇ (digital IF) x (Early replica code) ⁇ .
  • the replica C/A-code generated in the replica C/A-code generating section 117 is input to the cross-correlation computing section 112 via the phase lagging section 114.
  • a late replica code is input to the cross-correlation computing section 112.
  • the replica C/A-code is lagged for given phases.
  • the amount of phases by which the replica G/A-code is lagged in the phase lagging section 114 is equal to the phase leading amount ⁇ j but is denoted by an opposite sign.
  • the digital EP signal is also input to the cross-correlation computing section 112 after being multiplied by the replica carrier, which is generated in the PLL 204, by the mixer (not shown).
  • IQ the cross-correlation computing section 112 the input digital IF signal and the late replica code with the phase lagging amount of - ⁇ j are used to compute a correlation value (late correlation value LCA).
  • the correlation values with a correlation interval L are computed in the cross-correlation computing sections 111, 112.
  • the early correlation value ECA and the late correlation value LCA that are respectively computed in the cross-correlation computing sections 111, 112 arc input to the phase shift computing section 115.
  • phase shift computing section 115 a phase shift amount is computed between the digital IF signal and the replica C/A-code generated in the replica C/A-code generating section 117.
  • a phase shift amount ⁇ of the replica C/A-code with respect to the received C/A-code is computed (estimated) in the phase shift computing section 115.
  • phase shift amount ⁇ computed as above is input to the phase correction amount computing section 116.
  • phase correction amount computing section 116 a proper phase correction amount is computed to offset the phase shift amount ⁇ .
  • the above equation represents feedback control using PI control, and P-gain and I-gain are experimentally determined in consideration with a balance between variation and responsiveness.
  • the phase correction amount computed as above is input to the replica C/A-code generating section 117. [0042] In the replica C/A-code generating section 117, the phase of the replica
  • the C/A-code to be generated is corrected for the phase correction amount that is computed in the phase correction amount computing section 116. In other words, a tracking point of the replica C/A-code is corrected.
  • the replica C/A-code generated as above is input to the cross-correlation computing sections 111, 112 via the phase leading section 113 and the phase lagging section 114 as described above, and is also input to the PSR computing section 118. Li the cross-correlation computing sections 111, 112, the replica C/A-code generated as above is used to compute the correlation value with respect to the IF digital signal that will be input in the next observation cycle.
  • PSR' j is computed by the following equation, for example:
  • NCA denotes the number of bits in the C/A-code from the GPS satellite 1O j to the vehicle 90, and is computed based on the phase of the replica C/A-code generated in the replica C/A-code generating section 117 and a receiver clock in the GPS receiver 20.
  • the numerical value 300 is derived from a fact that a bit length of the C/A-code is 1 ⁇ s, which is equivalent to about 300 m (1 ⁇ s x the speed of light).
  • a signal representing PSR J j which is computed as above, is input from the DLL 203 to the filter 205.
  • the PLL 204 computes a correlation value relative to a received carrier wave (received carrier) by using a replica carrier signal generated therein, and then measures a Doppler frequency (Doppler shifted frequency) ⁇ f j of the Doppler-shifted received carrier.
  • the digital IF signal is multiplied by the replica C/A-code, which is supplied from the DLL 203, by the mixer (not shown) and then input to the PLL 204 in practice.
  • a signal that represents the Doppler frequency ⁇ f j . which is computed in the PLL 204, is input to the filter 205 and the ADR computing section 208.
  • (i) denotes a current value
  • (i-1) denotes a previous value (the same rale applies when (i) or (i-1) is added to other symbols).
  • M is a weighting factor. The value M is properly determined in consideration of precision and responsiveness.
  • the above filtering process in the filter 205 is so-called carrier smoothing known in the art, and can also be executed with a Kalman filter, for example, instead of the above-mentioned filtering process with a Hatch filter.
  • a signal that represents PSRj after the filtering process, which is computed as described above, is input to the PSR error determination section 206 and the position computing section 214.
  • the PSR error determination section 206 evaluates an error in PSR j after the filtering process, and then determines whether or not the error exceeds a given allowable range. Of all the various determination methods, one method will be described later. A determination result produced in the PSR error determination section 206 is input to the position computing section 214.
  • an accumulated Doppler range, ADR j is computed by using the Doppler frequency ⁇ fj obtained in the PLL 204.
  • ADR j is an integrated value of a Doppler range dp j that is computed from the Doppler frequency ⁇ f j , and an initial value of ADR j can be any value.
  • ADR j may be computed by the following equation: [Equation 2]
  • ADRo denotes any initial value
  • a Doppler range dp j (k) denotes the Doppler range dp j obtained in a cycle k.
  • a signal that represents ADRj, which is computed as described above, is input to the PSR error determination section 206 and the PSR estimating section 212.
  • IGS International GNSS Service
  • the position S j of the GPS satellite 1Oj can be derived immediately after the GPS satellite 1O j is captured.
  • the satellite position S j derived in the satellite position computing section 209 as described above is input to the position, computing section 214.
  • the PSR estimating section 212 computes an estimated value (i) with respect to a current value PSR'j(i) of the pseudorange that is computed in the PSR computing section 118 as described above. From now, the estimated value (i) is referred to as "EPSR j (i)" (EPSR: estimated pseudorange) for distinction.
  • EPSR j (i-l) of the previous value
  • the estimated value PSRJO of the PSR previous value obtained in the PSR previous value estimating section 218, which will be described later, is used.
  • EPSR j is computed by adding a difference between the current value ADRj(I) and the previous value ADR j (M) to the estimated value PSRJO of the PSR previous value.
  • a signal that represents EPSRj, which is derived in the PSR estimating section 212 as described above, is input to the position computing section 214.
  • the position of the vehicle 90 may be computed by the following equation using a least square method or the like, for example: [Equation 3]
  • c • ⁇ T denotes a clock error in the GPS receiver 20. If the number of GPS satellites 10 available for positioning is four, the equation 3 is computed for four coordinates, thereby allowing positioning without the clock error c • ⁇ T. In this case, an error included in the observed range of each GPS satellite 10 may be estimated, and an index value that represents the error level (a variance) may be used as a diagonal element of a weighting matrix to compute a weighted position.
  • a decision on whether to use PSR,(i) or EPSR,(i) depends on the determination result produced in the PSR error determination section 206 in the current cycle (i), that is, an error in PSR j (i).
  • PSRj is used if it is determined that the error in PSR j (Q in the current cycle (i) is within the given allowable range
  • EPSRj(i) is used if it is determined that the error in PSR j (i) in the current cycle (i) exceeds the given allowable range.
  • PSR j is used as the measured range for the positioning in cycles (i) in which the error in PSRj(i) is in the given allowable range. Meanwhile, in the other cycles (i) in which the error in PSRj(i) exceeds the given allowable range, EPSR j (i) is used as the measured range for the positioning.
  • the positioning result produced in the position computing section 214 as described above may be supplied to a navigation system (not shown) for display of a vehicle location on a map, for example. It should be noted that the position computing section 214 may compute a speed of the vehicle 90 by using the Doppler range dp j in addition to the position of the vehicle 90.
  • the clock error c • ⁇ T (see the equation 3) in the GPS receiver 20 that is derived by calculating back from the positioning result in the position computing section 214 is also stored in the computed value storing section 216.
  • the clock error c • ⁇ T may be computed in the position computing section 214 for each cycle (i); however, it may be computed only once when code tracking is completed.
  • the PSR previous value estimating section 218 computes an estimated value PSRjo (hereinafter referred to as an "estimated previous value PSRJO") with respect to the previous value PSR' j (i-l) of the pseudorange that is computed in the PSR computing section 118 as described above .
  • the estimated previous value PSRjo is computed by the following equation, for example, by using the previous value of the position of the vehicle 90, ((X 11 (H), Y u (i-1), Zu(H)), the previous value of the satellite position, (X j (i-l), Yj(i-l), Zj(I-I)), and the clock error c • ⁇ T in the GPS receiver 20, which are all stored in the computed value storing section 216: [Equation 4]
  • FIG 4 is a flow chart showing the flow of main processing executed by the GPS receiver 20 according to the first embodiment of the present invention.
  • a loop 1 is performed per given cycle (positioning cycle of the position computing section 214), and a current cycle is set here as a cycle (i) for description.
  • the positioning cycle of the position computing section 214 may be synchronized with a PPS signal and 1 second, for example.
  • the computing cycles of PSR and ADR may be synchronized with the positioning cycle, or may be fractional multiples of the positioning cycle (for example, 10 ms).
  • a loop 2 is set within the loop 1 and is executed for each of the observable GPS satellites 10 in one cycle. A description below is mainly made on the processing in the loop 2 in regard to the GPS satellite 1Oj.
  • step 400 PSR j (i) of the current cycle is derived in the DLL 203 and the filter 205, and ADRj(i) of the current cycle is computed in the ADR computing section 208.
  • step 404 it is determined in the PSR error determination section 206 whether or not the GPS satellite 1O j is newly captured and whether or not the error in PSR(i) in the current cycle exceeds the allowable range.
  • the determination of whether or not the GPS satellite 10 j is newly captured may be made based on the number of elapsed cycles (a captured time period) from a cycle in which the GPS satellite 10 j is captured initially, or based on whether or not the captured time period is shorter than a given time period, for example.
  • the given time period may correspond with time ⁇ Tl required for the filter 205 to complete the processing (see FIG 5), for example, and is adjusted in accordance with test results, etc.
  • the given threshold value is a compatible value, and, for example, it may be set as a value slightly larger than the maximum absolute value j ⁇ PSR - ⁇ ADR
  • Another method may be used to determine whether or not the error in PSR(i) in the current cycle exceeds the given allowable range. For example, it may be determined that the error in PSR(i) in the current cycle exceeds the given allowable range when reception sensitivity of radio waves from the GPS satellite 1O j is lower than a given reference value, when a peak correlation value that is computed at the time of code tracking is lower than a given reference value, or when multipath of the radio waves from the GPS satellite 10 j is detected. [0063] In step 404, if it is determined that the GPS satellite 10j is newly captured and that the error in PSR(i) in the current cycle exceeds the given allowable range, the process proceeds to step 406.
  • the process proceeds to step 410.
  • the process may proceed to step 406 if it is determined that the GPS satellite 10 j is newly captured or that the error in PSR(i) in the current cycle exceeds the given allowable range.
  • the process proceeds to step 410 if it is determined that the GPS satellite 10 j is not newly captured and that the error in PSR(i) in the current cycle does not exceed the given allowable range.
  • the process may proceed to step 406 if it is determined that the error in PSR(i) in the current cycle exceeds the given allowable range, and the process may proceed to step 410 if it is determined that the error in PSR(i) hi the current cycle does not exceed the given allowable range.
  • an estimated value of the previous value PSR j (M) of PSR j is computed in the PSR previous value estimating section 218.
  • the computing method of the estimated previous value PSRJO is as described above.
  • the estimated previous value PSRJO can be computed by substituting the previous value of the positioning result of the vehicle 90 ((X 11 (M), Y n (H), Zu(i-1)), the previous value of the satellite position (X j (M), Y j (M) 9 Zj(M)), and the clock error c « ⁇ T in the GPS receiver 20, which are all stored in the computed value storing section 216, into the above equation 4.
  • step 406 is executed only when the condition in step 404 is true. Alternatively, when the conditions in above step 404 are true for consecutive cycles, the processing in step 406 may only be executed for the first cycle.
  • step 408 the estimated value of the current value PSR j (Q of PSR j , that is, EPSR j (i) is computed in the PSR estimating section 212.
  • the computing method of EPSR j (i) is as described above.
  • EPSRj(i) is computed by the following equation, for example, by using the current value ADRj(i) obtained from the ADR computing section 208 and the previous value ADR j (M) obtained from the computed value storing section 216:
  • EPSRj(i) EPSRj(M) + ADRj(i) -ADRj(M).
  • EPSR j (M) is a previous value, and in an cycle in which step 406 is executed, the estimated previous value PSRjo obtained in step 406 is used.
  • EPSRj(i) is computed in step 408, PSR(i) obtained in step 400 will be replaced with EPSR j (i).
  • PSR(i) obtained in step 400 is discarded when the condition in step 404 is true, and EPSRj(i) is adapted instead.
  • PSR(i) is adopted.
  • step 410 it is determined whether or not PSR(i) or EPSR(i) is computed for all the observable GPS satellites 10. If the condition is true, the process leaves the loop 2 and proceeds to step 412. Meanwhile, if PSR(i) or EPSR(i) has not been computed for one or more of the GPS satellites 10, the processing in the loop 2 (the processing from step 400) is executed for the appropriate GPS satellites 10.
  • step 412 the position of the vehicle 90 in the current cycle (i), (X u (i), Y u (i), Z tt (i)), is computed in the position computing section 214 by using PSR(i) or EPSR(i) obtained for each of the GPS satellites 10 in the loop 2 in the current cycle (i).
  • the computing method of the position of the vehicle 90 is as described above. However, if the number of observed GPS satellites 10 is greater than that required for positioning, PSR(i) may be used preferentially to EPSR(i). In other words, only when the number of GPS satellites 10 for which PSR(i) is computed is insufficient, the GPS satellites 10 for which EPSR(i) is computed may be supplementary used to compute the position of the vehicle 90.
  • step 414 the positioning result that is obtained in step 412, ADR, and the current values of the satellite positions are stored in the computed value storing section 216. These computed values are used as "previous values" in the next cycle.
  • step 416 positioning in the current cycle is terminated, and the process from the loop 1 is repeated in the next cycle.
  • FIG 5 shows time sequences of PSR j , EPSR j , and ADR j that are computed as above.
  • FIG 5 shows the time sequences of PSR j , EPSR j , and ADR j according to the GPS satellite 1Oj.
  • FIG 5 schematically shows the time sequence of a true value of PSRj.
  • a graph starts at time t0 when the GPS satellite 1O j is captured.
  • the error in PSRj (an error relative to the true value) is large because the processing in the filter 205 is not completed.
  • ADRj is a relative value, it retains relatively high accuracy even in the time period ⁇ T1 in a short time since the capture of the GPS satellite 1Oj. Therefore, it can be understood that EPSRj computed from the satellite position, the previous value of the positioning result, and ADRj has a smaller error than PSRj even in the time period ⁇ T1 in a short time since the capture of the GPS satellite 1O j . Consequently, EPSR j can be used for positioning. In other words, by using EPSRJ instead of PSR j , the positioning can be executed with high accuracy from the time period ⁇ T1 in a short time since the capture of the GPS satellite 1O j . In an example shown in FIG 5, PSRj is used for positioning from time tl onward because the error in PSRj becomes smaller at time tl, for example.
  • the highly accurate positioning can be started and maintained by using EPSRj, which is appropriately estimated, instead of PSR j even in a time period in a short time since the capture of the satellite 1Oj or a time period in which the accuracy of PSR j according to the GPS satellite 10 j is low. Accordingly, the positioning with high accuracy can be started from the time immediately after the GPS satellite 1O j is newly captured, for example, and can be maintained even when the accuracy of PSR j according to the GPS satellite 1O j is temporarily degraded under the influence of the multipath, etc.
  • the second embodiment of the present invention mainly differs from the first embodiment in which the positioning computation is executed by the satellite navigation method in a point that the position is computed by selectively using an inertial navigation method with an INS sensor. Description will hereinafter be made by focusing on the unique features of the second embodiment, and the other features of the second embodiment may be the same as the features of the first embodiment
  • FIG 6 is a block diagram showing an example of main components of a GPS receiver 20' according to the second embodiment of the present invention.
  • the GPS receiver 20' includes an INS sensor data obtaining section 220 that obtains INS sensor data from the INS sensor (not shown) installed in the vehicle 90.
  • the INS sensor may be constituted of a tii-axial acceleration sensor and a tri-axial angular velocity sensor.
  • Aposition computing section 214' computes the position of the vehicle 90,
  • the vehicle position and vehicle speed (INS positioning results) computed by the inertial navigation method in the position computing section 214' may be respectively compared with the vehicle position and vehicle speed (GPS positioning results) computed by the above satellite navigation method to obtain difference values therebetween. Then, the difference values may be input to the Kalma ⁇ filter to determine various correction amounts.
  • FIG 7 is a flow chart showing the flow of the main processing executed by the GPS receiver 20' according to the second embodiment of the present invention.
  • INS sensor data is obtained in the INS sensor data obtaining section 220.
  • step 702 PSR j (i) in the current cycle is derived in the DLL 203 and the filter 205, and ADR j (i) in the current cycle is computed in the ADR computing section 208.
  • step 706 it is determined in the PSR error determination section 206 whether or not the GPS satellite 10 j is newly captured and whether or not the error in PSR(i) in the current cycle exceeds the given allowable range.
  • the determination method can be the same as that in step 404 of FIG 4 in the first embodiment.
  • step 706 if it is dete ⁇ nined that the GPS satellite 10 j is newly captured and that the error in PSR(i) exceeds the given allowable range, the process proceeds to step 708. Unless one of the above condition is satisfied, the process proceeds to step 712.
  • the process may proceed to step 708 if it is dete ⁇ nined that the GPS satellite 1O j is newly captured or that the error in PSR(i) in the current cycle exceeds the given allowable range.
  • the process proceeds to step 712 if it is determined that the GPS satellite 1Oj is not newly captured and that the error in PSR(i) in the current cycle does not exceed the given allowable range.
  • the process may proceed to step 708 if it is dete ⁇ nined that the error in PSR(i) in the current cycle exceeds the given allowable range, and the process may proceed to step 712 if it is dete ⁇ nined that the error in PSR(i) in the current cycle does not exceed the given allowable range.
  • step 708 the estimated value of the previous value PSR j (M) of PSR j , that is, the estimated previous value PSRJO is computed in the PSR previous value estimating section 218.
  • the computing method of the estimated previous value PSRJO is as described above.
  • the processing in step 708 is executed only in a first cycle in which the condition in step 706 is true. Alternatively, when the conditions in above step 706 are true for consecutive cycles, the processing in step 708 may only be executed for the first cycle.
  • step 710 the estimated value of the current value PSR j (i) of PSRj, that is, EPSRj(i) is computed in the PSR estimating section 212.
  • the computing method of EPSRj(i) is as described above.
  • EPSR j (i) is computed by the following equation, for example, by using the current value ADR j (i) that is obtained from the ADR computing section 208 and the previous value ADR j (i-l) that is obtained from the computed value storing section 216:
  • EPSRj(i) EPSRj(i-l) + ADRj(i) -ADR j (I-I).
  • EPSRj(i-l) is a previous value
  • the estimated previous value PSRjo obtained in step 708 is used.
  • EPSRj(I) is computed in step 710
  • PSR(i) obtained in step 702 will be replaced with EPSR,(i).
  • PSR(i) obtained in step 702 is discarded when the condition in step 706 is true, and EPSRj(i) is computed instead.
  • step 712 it is determined whether or not PSR(i) or EPSR(i) is computed for all the observable GPS satellites 10. If the condition is true, the process leaves the loop 2 and proceeds to step 714. Meanwhile, if PSR(i) or EPSR(i) has not been computed for one or more of the GPS satellites 10, the processing in the loop 2 (the processing from step 702) is executed for the appropriate GPS satellites 10.
  • step 714 it is determined whether or not GPS positioning computation is possible in the position computing section 214'.
  • the positioning by the satellite navigation method positioning by the equation 3 that is described in the first embodiment is possible.
  • the GPS positioning computation is possible when the number of the GPS satellites 10 for which PSR(i) or EPSR(i) is computed is equal to or larger than a given number.
  • the given number may be 3, but preferably be equal to or larger than 4 to eliminate the clock error.
  • the GPS positioning computation is possible when the number of the GPS satellites 10 for which PSR(i) or EPSR(i) is computed is equal to or larger than a given number ThI, and when the number of the GPS satellites 10 for which PSR(i) is computed is equal to or larger than a given number Th2.
  • the given number ThI may be an appropriate number equal to or larger than 4, and the given number Th2 may be set smaller than the given number ThI (for example, 2). If it is determined in step 714 that the GPS positioning computation is possible, the process proceeds to step 716, If it is determined in step 714 that the GPS positioning computation is impossible, the process proceeds to step 718.
  • step 716 the position of the vehicle 90, (X u (i), Y u (i), Z n (J)), in the current cycle (i) is computed in the position computing section 214' by using PSR(i) or EPSR(i) obtained for each of the GPS satellites 10 in the loop 2 in the current cycle (i).
  • the computing method of the position of the vehicle 90 is as described above. However, if the number of the observed GPS satellites 10 is larger than that required for positioning, PSR(i) may be used preferentially to EPSR(i).
  • step 718 the position of the vehicle 90, (X 0 (J), Y u (i), Zu(i)), is computed by the i ⁇ ertial navigation method in the position computing section 214' .
  • the computing method of the position of the vehicle 90 by the inertial navigation method is as described above.
  • step 720 the positioning result obtained in step 716 or 718, ADR, and the current values of the satellite positions are stored in the computed value storing section 216. These computed values are used as "previous values" in the next cycle.
  • step 722 positioning in the current interval is terminated, and the process from the loop 1 is repeated in the next cycle.
  • the highly accurate positioning can be started and maintained by using EPSR j , which is appropriately estimated, instead of PSR j even in a time period in a short time since the capture of the satellite 10; or a time period in which the accuracy of PSR j according to the GPS satellite 1O j is low. Accordingly, the positioning with high accuracy can be started from the time immediately after the GPS satellite 10j is newly captured, for example, and can be maintained even when the accuracy of PSR,- according to the GPS satellite 1Oj is temporarily degraded under the influence of the multipath, etc.
  • the estimated previous value PSR j o can be computed in any cycle because the positioning result can be output either by the satellite navigation method or by the inertial navigation method.
  • the PSR estimating section 212 and the PSR previous value estimating section 218 may be operated only when the determination result in the above PSR error determination section 206 is negative, that is, only in a cycle in which the error in PSRj afteT the filtering process exceeds the given allowable range.
  • part of various functions performed by the GPS receiver 20 may be performed by an external computer that is connected to the GPS receiver 20, or may be performed in cooperation with an external computer that is connected to the GPS receiver 20.
  • the filter 205 is used; however, the filter 205 may be omitted.
  • the determination processing is executed every positioning cycle in the PSR error determination section 206; however, the determination processing may be executed once per a plurality of positioning cycles or at random cycles (any cycle that is synchronized with the positioning cycle).
  • the determination processing in the PSR error determination section 206 may only be executed for a given time period after the new GPS satellite 10 is captured. From the similar perspective, processing shown in FIG. 4 and FIG. 7 may only be executed for a given time period after the new GPS satellite 10 is captured.
  • PSR is derived by using the C/A-code; however, PSR can be computed based on another pseudo random noise code such as a P-code on an L2 carrier.
  • the P-code may be decoded by the DLL that uses a cross-correlation method upon synchronization of the P-code.
  • GNSS Global Navigation Satellite System

Abstract

A moving body positioning device according to the present invention includes: previous value PSR estimating means for computing an estimated previous value in a previous cycle based on a magnitude of a difference vector between a positioning result of the moving body in the previous cycle and a computed result of the satellite position in the previous cycle; PSR estimating means for computing an estimated pseudorange in the current cycle by adding the estimated previous value to a difference between ADRs that are computed in the previous and current cycles; and PSR error determination means for determining whether an error in the pseudorange exceeds a given allowable range, in which the positioning means determines the position of the moving body in the current cycle based on the estimated pseudorange when it is determined that the error in the pseudorange in the current cycle exceeds the given allowable range.

Description

MOVING BODY POSITIONING DEVICE AND MOVING BODY POSITIONING
METHOD
BACKGROUND OF THE INVENTION 1. Field of the Invention
[0001] The present invention relates to a moving body positioning device through which a moving body receives a radio wave from a satellite to determine the position of the moving body, and a moving body positioning method. 2. Description of the Related Art [0002] For example, Japanese Patent Application Publication No. 2001-4734
(JP-A-2001-4734) discloses a GPS receiver that includes: a GPS antenna for receiving a satellite signal; a wave detecting section for computing a Doppler shifted frequency and a pseudorange from the received signal; a pseudorange estimating section for computing a rate of change in the pseudorange from the Doppler shifted frequency to estimate the pseudorange; and a positioning section for selectively using the computed pseudorange or the estimated pseudorange to determine the position of the GPS receiver. In this GPS receiver, the positioning section determines the position of the GPS receiver by using either the pseudorange that is computed by the wave detecting section when a radio wave from the satellite can be received or the pseudorange estimated by the pseudorange estimating section when the radio wave is blocked and thus the pseudorange cannot be computed. Also in this GPS receiver, the pseudorange estimating section computes a relative velocity between the satellite and the GPS receiver from the Doppler shifted frequency obtained in previous positioning process, and estimates the current pseudorange from the relative velocity and the pseudorange obtained in the previous positioning process. [0003] A pseudorange that is related to a newly captured satellite and computed
(measured) immediately after the new satellite is captured generally shows a large positioning error because filtering process has not been completed. Therefore, information from the newly captured satellite cannot be used immediately for positioning. The above condition also applies to a case in which a trace of a satellite that has been captured is temporarily lost and later becomes captured again.
SUMMARY OF THE INVENTION
[0004] The present invention provides a moving body positioning device with which highly accurate positioning can be achieved even when an error in a computed pseudorange is large, and also provides a moving body positioning method.
[0005] A moving body positioning device according to a first aspect of the present invention through which a moving body receives a radio wave from a satellite to determine the position of the moving body includes: PSR computing means for computing a pseudorange between the satellite and the moving body per given cycle based on an observed phase of a pseudo random noise code in a satellite wave; ADR computing means for computing an accumulated Doppler range (ADR) per given cycle based on an observed Doppler shifted frequency of the satellite wave; positioning means for determining the position of the moving body per given cycle based on the pseudorange that is computed by the PSR computing means; satellite position computing means for obtaining information representing a satellite position and computing the satellite position per given cycle; previous value PSR estimating means for computing an estimated value of the pseudorange in a previous cycle (an estimated previous value) based on a magnitude of a difference vector between a positioning result of the moving body in the previous cycle that is obtained from the positioning means and a computed result of the satellite position in the previous cycle that is obtained from the satellite position computing means; PSR estimating means for computing an estimated value of the pseudorange (an estimated pseudorange) in a current cycle by adding the estimated previous value that is computed by the previous value PSR estimating means to a difference between ADRs that are computed by the ADR computing means in the previous and current cycles; and PSR error determination means for determining whether an error in the pseudorange that is computed by the PSR computing means exceeds a given allowable range, in which the positioning means determines the position of the moving body in the current cycle based on the estimated pseudorange that is computed by the PSR estimating means instead of the pseudorange that is computed by the PSR computing means in the current cycle when the PSR error determination means determines that the error in the pseudoraπge that is computed by the PSR computing means exceeds the given allowable range.
[0006] Here, in the moving body positioning device according to the first aspect, the computing cycles of the ADR computing means and the PSR computing means are not necessarily be synchronized with the positioning cycle of the positioning means and the computing cycle of the satellite position computing means. For example, the positioning cycle of the positioning means and the computing cycle of the satellite position computing means may be synchronized with integral multiples of the computing cycles of the ADR computing means and the PSR computing means. In this case, the previous cycle and the current cycle of the ADR computing means and those of the PSR computing means are synchronized with the previous cycle and the current cycle of the positioning means and those of the satellite position computing means. The determination by the PSR error determination means is typically made in an cycle synchronized with the computing cycle of the PSR computing means. However, if both of the positioning cycle of the positioning means and the computing cycle of the satellite positioning means are synchronized with the integral multiples of the computing cycles of the ADR computing means and the PSR computing means, the PSR error determination means may make a determination in the computing cycle of the PSR computing means that is synchronized with the positioning cycle of the positioning means and the computing means of the satellite positioning means. The PSR error determination means does not have to make a determination per positioning cycle of the positioning means and per computing cycle of the satellite position computing means, but may make a determination once per a certain plurality of cycles or at random cycles.
[0007] In the moving body positioning device according to the above first aspect, the positioning means determines the position of the moving body in the current cycle based on the estimated pseudorange that is computed by the PSR estimating means instead of the pseudorange that is computed by the PSR computing means in the current cycle when either one of the following conditions is met: the PSR error determination means determines that the error in the pseudorange that is computed by the PSR computing means in the current cycle exceeds the given allowable range, and a given time period has not been elapsed since a satellite related to the pseudorange is captured.
[0008] In the moving body positioning device according to the above first aspect, the positioning means may determine the position of the moving body in the current cycle based on the estimated pseudorange that is computed by the PSR estimating means instead of the pseudorange that is computed by the PSR computing means in the current cycle if the PSR error determination means determines that the error in the pseudorange that is computed by the PSR computing means in the current cycle exceeds the given allowable range, and the given time period has not been elapsed since the satellite related to the pseudorange is captured.
[0009] In the moving body positioning device according to the first aspect, the determination of whether or not the satellite is newly captured may be made based on a captured time period that corresponds with a time period required for filtering process of the pseudorange and that starts from a cycle in which the satellite is captured. [0010] In the moving body positioning device according to the first aspect, the filtering process may be carrier smoothing using a Hatch filter or a Kalman filter.
[0011] In the moving body positioning device according to the first aspect, the positioning means may execute positioning by an inertial navigation method with use of information from an INS sensor when it is impossible to execute positioning by a satellite navigation method based on a reception result of the satellite wave. The positioning result of the moving body in the previous cycle that is produced in the positioning means and used in the previous value PSR estimating means may include a positioning result derived by the inertial navigation method.
[0012] In the moving body positioning device according to the first aspect, the positioning means may execute positioning when the number of satellites for which either the pseudorange or the estimated pseudorange is computed is equal to or greater than three. [0013] In the moving body positioning device according to the first aspect, the positioning means may execute positioning by the satellite navigation method when the number of satellites for which the estimated pseudorange is computed is equal to or greater than four, and when the number of satellites for which the pseudorange is computed is equal to or greater than two.
[0014] In the moving body positioning device according to the first aspect, the PSR error determination means may compare a difference ΔPSR between pseudoranges that are computed by the PSR computing means in the previous and current cycles with a difference ΔADR between ADRs that are computed by the ADR computing means in the previous and current cycles, with respect to the same satellite, and may determine whether or not the error in the pseudorange that is computed by the PSR computing means exceeds the given allowable range. [0015] In the moving body positioning device according to the first aspect, the PSR error determination means may determine that the error in the pseudorange that is computed by the PSR computing means exceeds the given allowable range when an absolute value |ΔPSR - ΔADR| of a difference between the difference ΔPSR and the difference ΔADR exceeds a given threshold Value. [0016] In the moving body positioning device according to the first aspect, the positioning means may determine the position of the moving body in the current cycle based on the pseudorange that is computed by the PSR computing means in the current cycle when the PSR error determination means determines that the error in the pseudorange that is computed by the PSR computing means in the current cycle does not exceed the given allowable range.
[0017] In the moving body positioning device according to the first aspect, the previous value PSR estimating means may compute the estimated previous value by adding the magnitude of the difference vector to an estimated value of a clock error that is included in the pseudorange. [0018] In the moving body positioning device according to the first aspect, the estimated value of the clock error may be derived by calculating back from the positioning result produced in the positioning means.
[0019] In the moving body positioning device according to the first aspect, if the PSR error determination means determines for consecutive two or more cycles that the error in the pseudorange that is computed by the PSR computing means exceeds the given allowable range, the PSR estimating means may compute the estimated pseudorange in the first cycle of the two or more cycles by adding the estimated previous value to the difference between ADRs that are computed by the ADR computing means in the previous and current cycles, and from the second cycle onward by adding the estimated pseudorange that is computed in the previous cycle to the difference between ADRs that are computed by the ADR computing means in the previous and current cycles.
[0020] A moving body positioning method according to the second aspect of the present invention through which a moving body receives a radio wave from a satellite to determine the position of the moving body includes: computing a pseudorange between the satellite and the moving body per given cycle based on an observed phase of a pseudo random noise code in a satellite wave; computing an accumulated Doppler range per given cycle based on an observed Doppler frequency of the satellite wave; determining the position of the moving body per given cycle based on the computed pseudorange; obtaining information representing a satellite position to compute the satellite position per given cycle; computing an estimated previous value as an estimated value of the pseudorange in a previous cycle based on a magnitude of a difference vector between a positioning result of the moving body in the previous cycle and a computed result of the satellite position in the previous cycle; computing an estimated pseudorange as an estimated value of the pseudorange in a current cycle by adding the estimated previous value to a difference between the accumulated
Doppler ranges computed in the previous and current cycles; determining whether an error in the computed pseudorange exceeds a given allowable range; and determining the position of the moving body in the current cycle based on the estimated pseudorange, which is computed in the current cycle, instead of the pseudorange that is computed in the current cycle when it is determined that the error in the pseudorange that is computed hi the current cycle exceeds the given allowable range.
[0021] According to the present invention, a moving body positioning device with which highly accurate positioning can be achieved even when an error in a computed pseudorange is large and a moving body positioning method can be provided. BRIEF DESCRIPTION OF THE DRAWINGS
[0022] The foregoing and/or further objects, features and advantages of the invention will become more apparent from the following description of preferred embodiment with reference to the accompanying drawings, in which like numerals are used to represent like elements and wherein:
FIG 1 is a system configuration diagram showing a general configuration of a GPS to which a moving body positioning device according to a first embodiment of the present invention is applied; FIG.2 is a block diagram showing an example of main components of a GPS receiver according to the first embodiment of the present invention;
FIG 3 is a block diagram showing an example of main components of a DLL of the GPS receiver according to the first embodiment of the present invention;
FIG 4 is a flow chart showing the flow of main processing executed by the GPS receiver according to the first embodiment of the present invention;
FIG 5 is a graph showing time sequences of PSR, EPSR, and ADR after capture of a GPS satellite according to the first embodiment of the present invention;
FIG 6 is a block diagram showing an example of main components of a GPS receiver according to a second embodiment of the present invention; and FIG 7 is a flow chart showing the flow of main processing executed by the GPS receiver according to the second embodiment of the present invention.
DETAILED DESCRIPTION OF EMBODIMENTS
[0023] Embodiments of the present invention will hereinafter be described with reference to the drawings.
[0024] FIG 1 is a system configuration diagram showing a general configuration of a Global Positioning System (GPS) to which a moving body positioning device according to the present invention is applied. As shown in FIG 1, the GPS is constituted of GPS satellites 10 orbiting the Earth and a vehicle 90 located and traveling on the Earth. The vehicle 90 is merely an example of a moving body, and the moving body can also be any of a motorcycle, train, ship, aircraft, foiklift, robot, information terminal such as a cellular phone that moves together with a user, and the like.
[0025] The GPS satellite 10 continuously broadcasts a navigation message (satellite signal) to the Earth. The navigation message includes the satellite orbital information of the corresponding GPS satellite 10 (an ephemeris and an almanac), a correction value of a clock, and an ionospheric correction factor. The navigation message is diffused by a C/A-code and continuously broadcasted to the Earth on an Ll carrier (frequency: 1575.42 MHz). Here, the Ll carrier is a synthetic wave of a sine wave modulated by the C/A-code and a cosine wave modulated by a precision code (P-code), and is orthogonally modulated. Both the C/A-code and the P-code are a pseudo random noise code, a repeated sequence with a random set of -Is and Is.
[0026] Today, the twenty four GPS satellites 10 orbit the Earth at an altitude of about 20,000 km, and each four of the GPS satellites 10 are evenly arranged in one of six Earth orbital planes that are each inclined 55 degrees to the other. Therefore, as long as the sky is clear, at least five GPS satellites 10 can be constantly observed from anywhere on the Earth.
[0027] The vehicle 90 is equipped with a GPS receiver 20 as a moving body positioning device.
[0028] FIG 2 is a block diagram showing an example of main components of the GPS receiver 20 according to the first embodiment of the present invention. FIG 3 is a block diagram showing an example of main components of a DLL 203 of the GPS receiver 20 according to the first embodiment of the present invention.
[0029] Here, a description is mainly made on signal processing by the GPS receiver 20 in regard to a signal from a GPS satellite 1Oj among the plurality of observable GPS satellites 10. The processing of the signal from the GPS satellite 10j is substantially the same as the processing of a signal from another GPS satellite 10. In practice, the processing of a satellite signal, which is described later, is performed in parallel (simultaneously) with the processing of signals from all the observable GPS satellites.
[0030] As shown in FIG 2, the GPS receiver 20 includes a high-frequency circuit 201, an analog-to-digital (AfO) converter circuit 202, a Delay-Locked Loop (DLL) 203, a Phase-Locked Loop (PLL) 204, a filter 205, a PSR eπor determination section 206, an ADR computing section 208, a satellite position computing section 209, a PSR estimating section 212, a position computing section 214, a computed value storing section 216, and a PSR previous value estimating section 218.
[0031] The A/D converter circuit 202 converts an EF signal (analog signal) supplied from the high-frequency circuit 201 to a digital IF signal for digital signal processing.
[0032] The DLL 203 is configured to synchronize a phase of the C/A-code on the Ll carrier with a phase of an internally generated replica C/A-code and to compute a pseudorange (PSR) (hereinafter referred to as "PSR'j")- As the meanings of the symbols, the apostrophe added to PSRj indicates that filtering process, which is described later, has not been performed, and a symbol with the subscript "j" indicates that it is a value related to the GPS satellite 1Oj (the same rule applies to values other than PSR'j). In addition, the digital IF signal is multiplied by a replica carrier, which is supplied from the PLL 204, by a mixer (not shown), and then input to the DLL 203 in practice.
[0033] Specifically, as shown in FIG 3, the DLL 203 includes cross-correlation computing sections 111 and 112, a phase leading section 113, a phase lagging section 114, a phase shift computing section 115, a phase correction amount computing section 116, a replica C/A-code generating section 117, and a PSR computing section 118. [0034] A replica C/A-code is generated in the replica C/A-code generating section 117.
The replica C/A-code has the same sequence of +ls and -Is as the C/A-code on the signal from the GPS satellite 10j.
[0035] The replica C/A-code generated in the replica C/A-code generating section 117 is input to the cross-correlation computing section 111 via the phase leading section 113. In other words, an early replica code is input to the cross-correlation computing section 111. In the phase leading section 113, the replica C/A-code is led for given phases. An amount of the phases by which the replica C/A-code is led in the phase leading section 113 is set as θj. [0036] The digital IF signal is also input to the cross-correlation computing section 111 after being multiplied by the replica carrier, which is generated in the PLL 204, by the mixer (not shown).
[0037] In the cioss-correlation computing section 111, the input digital IF signal and the early replica code with the phase leading amount of θj are used to compute a correlation value (early correlation value ECA)- The early correlation value ECAΪS computed by the following equation, for example:
Early correlation value ECA= ^{(digital IF) x (Early replica code)}. The replica C/A-code generated in the replica C/A-code generating section 117 is input to the cross-correlation computing section 112 via the phase lagging section 114. In other words, a late replica code is input to the cross-correlation computing section 112. In the phase lagging section 114, the replica C/A-code is lagged for given phases. The amount of phases by which the replica G/A-code is lagged in the phase lagging section 114 is equal to the phase leading amount θjbut is denoted by an opposite sign.
[0038] The digital EP signal is also input to the cross-correlation computing section 112 after being multiplied by the replica carrier, which is generated in the PLL 204, by the mixer (not shown).
[0039] IQ the cross-correlation computing section 112, the input digital IF signal and the late replica code with the phase lagging amount of -θj are used to compute a correlation value (late correlation value LCA). The late correlation value LcAis calculated by the following equation, for example: Late correlation value L0A = ^{(digital IF) x (Late replica code)}.
As described above, the correlation values with a correlation interval L (also referred to as "spacing") of 2θj therebetween are computed in the cross-correlation computing sections 111, 112. The early correlation value ECA and the late correlation value LCA that are respectively computed in the cross-correlation computing sections 111, 112 arc input to the phase shift computing section 115.
[0040] In the phase shift computing section 115, a phase shift amount is computed between the digital IF signal and the replica C/A-code generated in the replica C/A-code generating section 117. In other words, a phase shift amount Δφ of the replica C/A-code with respect to the received C/A-code is computed (estimated) in the phase shift computing section 115. The phase shift amount Δφ of the replica C/A-code is computed by the following equation, for example: (Phase shift amount Δφ) = (ECA- LCA) / 2(ECA + LCA).
The phase shift amount Δφ computed as above is input to the phase correction amount computing section 116.
[0041] In the phase correction amount computing section 116, a proper phase correction amount is computed to offset the phase shift amount Δφ. The proper phase correction amounf; is computed by the following equation, for example: (Phase correction amount) = (P-gain) x (phase shift amount Δφ) + (I-gain) x ∑(phase shift amount Δφ).
The above equation represents feedback control using PI control, and P-gain and I-gain are experimentally determined in consideration with a balance between variation and responsiveness. The phase correction amount computed as above is input to the replica C/A-code generating section 117. [0042] In the replica C/A-code generating section 117, the phase of the replica
C/A-code to be generated is corrected for the phase correction amount that is computed in the phase correction amount computing section 116. In other words, a tracking point of the replica C/A-code is corrected. The replica C/A-code generated as above is input to the cross-correlation computing sections 111, 112 via the phase leading section 113 and the phase lagging section 114 as described above, and is also input to the PSR computing section 118. Li the cross-correlation computing sections 111, 112, the replica C/A-code generated as above is used to compute the correlation value with respect to the IF digital signal that will be input in the next observation cycle.
[0043] In the PSR computing section 118, based on the replica C/A-code generated in the replica C/A-code generating section 117, PSR'j is computed by the following equation, for example:
PSR'J = NCA X 300.
Here, NCA denotes the number of bits in the C/A-code from the GPS satellite 1Oj to the vehicle 90, and is computed based on the phase of the replica C/A-code generated in the replica C/A-code generating section 117 and a receiver clock in the GPS receiver 20. The numerical value 300 is derived from a fact that a bit length of the C/A-code is 1 μs, which is equivalent to about 300 m (1 μs x the speed of light). A signal representing PSR J j, which is computed as above, is input from the DLL 203 to the filter 205. [0044] Referring now to FIG 2, the PLL 204 computes a correlation value relative to a received carrier wave (received carrier) by using a replica carrier signal generated therein, and then measures a Doppler frequency (Doppler shifted frequency) Δfj of the Doppler-shifted received carrier. It should be noted that the digital IF signal is multiplied by the replica C/A-code, which is supplied from the DLL 203, by the mixer (not shown) and then input to the PLL 204 in practice. In the PLL 204, the Doppler frequency Δfj (= fr - fx) is computed based on a frequency fr of the replica carrier and a known frequency ft (1575.42 MHz) of the carrier wave. A signal that represents the Doppler frequency Δfj. which is computed in the PLL 204, is input to the filter 205 and the ADR computing section 208.
[0045] In the filter 205, PSRj after completion of filtering process is computed by the following equation, for example: [Equation 1]
Figure imgf000013_0001
[0046] In the above equation, (i) denotes a current value, and (i-1) denotes a previous value (the same rale applies when (i) or (i-1) is added to other symbols). M is a weighting factor. The value M is properly determined in consideration of precision and responsiveness. In addition, ΔV denotes a relative velocity between the GPS satellite 10j and the vehicle 90, and may be computed by the following equation with the Doppler frequency Δfj obtained in the PLL 204, for example: Δfj = ΔV « fL/ (c- ΔV).
The above filtering process in the filter 205 is so-called carrier smoothing known in the art, and can also be executed with a Kalman filter, for example, instead of the above-mentioned filtering process with a Hatch filter. A signal that represents PSRj after the filtering process, which is computed as described above, is input to the PSR error determination section 206 and the position computing section 214.
[00471 The PSR error determination section 206 evaluates an error in PSRj after the filtering process, and then determines whether or not the error exceeds a given allowable range. Of all the various determination methods, one method will be described later. A determination result produced in the PSR error determination section 206 is input to the position computing section 214.
[0048] In the ADR computing section 208, an accumulated Doppler range, ADRj, is computed by using the Doppler frequency Δfj obtained in the PLL 204. ADRj is an integrated value of a Doppler range dpj that is computed from the Doppler frequency Δfj, and an initial value of ADRj can be any value. ADRj may be computed by the following equation: [Equation 2]
Figure imgf000014_0001
[0049] Here, ADRo denotes any initial value, and a Doppler range dpj(k) denotes the Doppler range dpj obtained in a cycle k. The Doppler range dpj(k) may be computed by dpj(k) = λ • Δfj(k), for example, where λ is wavelength of the carrier wave (known), and Δfj(k) is a Doppler frequency related to the GPS satellite 10j that can be obtained in the cycle k. A signal that represents ADRj, which is computed as described above, is input to the PSR error determination section 206 and the PSR estimating section 212.
[0050] The satellite position computing section 209 computes the current position of the GPS satellite 1Oj on a world coordinate system, Sj(i) = (Xj(i), Yj(i), Z1-(I)), based on the satellite orbital information in the navigation message. Or, the satellite position computing section 209 may compute the current position of the GPS satellite 10j on the world coordinate system, Sj(i) = (Xj(i), Yj(i), Z3(O), based on satellite orbital information that is obtained from an external source in advance (including precise almanac data provided by an agency such as International GNSS Service (IGS)). When the latter method is taken, the position Sj of the GPS satellite 1Oj can be derived immediately after the GPS satellite 1Oj is captured. The satellite position Sj derived in the satellite position computing section 209 as described above is input to the position, computing section 214.
[0051] The PSR estimating section 212 computes an estimated value (i) with respect to a current value PSR'j(i) of the pseudorange that is computed in the PSR computing section 118 as described above. From now, the estimated value (i) is referred to as "EPSRj(i)" (EPSR: estimated pseudorange) for distinction. EPSRj(i) is computed by the following equation, for example, by using an estimated value PSRJO of the PSR previous value obtained in the PSR previous value estimating section 218 described later, a current value ADRj(i) obtained in the ADR computing section 208, and a previous value ADRj(i-l) obtained in the computed value storing section 216 described later: EPSRj(i) = EPSRjO-I) + ADRj(i) -ADR1(I-I).
Here, as an initial value EPSRj(i-l) of the previous value, the estimated value PSRJO of the PSR previous value obtained in the PSR previous value estimating section 218, which will be described later, is used. In other words, in an initial cycle in which the PSR estimating section 212 computes EPSRj, EPSRj is computed by adding a difference between the current value ADRj(I) and the previous value ADRj(M) to the estimated value PSRJO of the PSR previous value. A signal that represents EPSRj, which is derived in the PSR estimating section 212 as described above, is input to the position computing section 214. [0052] The position computing section 214 computes a position of the vehicle 90 in the current cycle (i), (Xu(i)> Yu(i)> Z_.(i))> based on the position of the GPS satellite 10j, Sj(i) = (Xj(i), Yj(i), Zj(i)), from the satellite position computing section 209 and also based either on PSRjO) after the filtering process in the filter 205 or EPSRjO) &°m **» PSR estimating section 212. The position of the vehicle 90 may be computed by the following equation using a least square method or the like, for example: [Equation 3]
PSRjif) or
Figure imgf000015_0001
[0053] Here, c • ΔT denotes a clock error in the GPS receiver 20. If the number of GPS satellites 10 available for positioning is four, the equation 3 is computed for four coordinates, thereby allowing positioning without the clock error c • ΔT. In this case, an error included in the observed range of each GPS satellite 10 may be estimated, and an index value that represents the error level (a variance) may be used as a diagonal element of a weighting matrix to compute a weighted position. In regard to the measured range on the left side of the above equation 3, a decision on whether to use PSR,(i) or EPSR,(i) depends on the determination result produced in the PSR error determination section 206 in the current cycle (i), that is, an error in PSRj(i). In other words, PSRj is used if it is determined that the error in PSRj(Q in the current cycle (i) is within the given allowable range, or EPSRj(i) is used if it is determined that the error in PSRj(i) in the current cycle (i) exceeds the given allowable range. Therefore, in the position computing section 214, PSRj is used as the measured range for the positioning in cycles (i) in which the error in PSRj(i) is in the given allowable range. Meanwhile, in the other cycles (i) in which the error in PSRj(i) exceeds the given allowable range, EPSRj(i) is used as the measured range for the positioning. The positioning result produced in the position computing section 214 as described above may be supplied to a navigation system (not shown) for display of a vehicle location on a map, for example. It should be noted that the position computing section 214 may compute a speed of the vehicle 90 by using the Doppler range dpj in addition to the position of the vehicle 90. [0054] In the computed value storing section 216, values computed in each cycle (i) are stored. These values are used as previous values in a next cycle (i+1). An embodiment for use of the values will be described later. Specifically, in the computed value storing section 216, the position of the vehicle 90, (Xu(i)> Yu(i)> Zu(i))> computed in the position computing section 214, the satellite position, Sj(i) = (Xj(i), Yj(i), 2-j(i)), ADRj(i), computed in the ADR computing section 208, and the like are stored. The clock error c ΔT (see the equation 3) in the GPS receiver 20 that is derived by calculating back from the positioning result in the position computing section 214 is also stored in the computed value storing section 216. Here, the clock error c • ΔT may be computed in the position computing section 214 for each cycle (i); however, it may be computed only once when code tracking is completed.
[0055] The PSR previous value estimating section 218 computes an estimated value PSRjo (hereinafter referred to as an "estimated previous value PSRJO") with respect to the previous value PSR'j(i-l) of the pseudorange that is computed in the PSR computing section 118 as described above . The estimated previous value PSRjo is computed by the following equation, for example, by using the previous value of the position of the vehicle 90, ((X11(H), Yu(i-1), Zu(H)), the previous value of the satellite position, (Xj(i-l), Yj(i-l), Zj(I-I)), and the clock error c • ΔT in the GPS receiver 20, which are all stored in the computed value storing section 216: [Equation 4]
PSR10 - ^y(/-l)- JT11(Z-I))2 +(YJ(i-ϊ)-Yu(i~l))2+(zj(i-l)-Z1t(i-l))2 +c- ΔT
[0056] A signal that represents the estimated previous value PSRJO, which is derived in the PSR previous value estimating section 218, is input to the PSR estimating section 212 and used as an initial value of EPSRj as described above.
[0057] FIG 4 is a flow chart showing the flow of main processing executed by the GPS receiver 20 according to the first embodiment of the present invention. In a processing routine of FIG 4, a loop 1 is performed per given cycle (positioning cycle of the position computing section 214), and a current cycle is set here as a cycle (i) for description. The positioning cycle of the position computing section 214 may be synchronized with a PPS signal and 1 second, for example. The computing cycles of PSR and ADR may be synchronized with the positioning cycle, or may be fractional multiples of the positioning cycle (for example, 10 ms). A loop 2 is set within the loop 1 and is executed for each of the observable GPS satellites 10 in one cycle. A description below is mainly made on the processing in the loop 2 in regard to the GPS satellite 1Oj.
[0058] In step 400, PSRj(i) of the current cycle is derived in the DLL 203 and the filter 205, and ADRj(i) of the current cycle is computed in the ADR computing section 208. [0059] In step 402, the satellite position S/i) = (Xj(i), Yj(i), Z,(i)) is computed in the satellite position computing section 209.
[0060] In step 404, it is determined in the PSR error determination section 206 whether or not the GPS satellite 1Oj is newly captured and whether or not the error in PSR(i) in the current cycle exceeds the allowable range. The determination of whether or not the GPS satellite 10j is newly captured may be made based on the number of elapsed cycles (a captured time period) from a cycle in which the GPS satellite 10j is captured initially, or based on whether or not the captured time period is shorter than a given time period, for example. In this case, the given time period may correspond with time ΔTl required for the filter 205 to complete the processing (see FIG 5), for example, and is adjusted in accordance with test results, etc.
[0061] The determination of whether or not the error in PSR(i) in the current cycle exceeds the given allowable range is preferably made based on whether or not an absolute value of a difference between an amount of change in PSR, ΔPSR, in the given time period and an amount of change in ADR, ΔADR, in the same given time period (= |ΔPSR - ΔADRj) exceeds a given threshold value. Here, ΔPSR can be computed by subtracting PSR(M) in the previous cycle from PSR(i) in the current cycle in an equation, ΔPSR = PSR(i) - PSR(i-l). Similarly, ΔADR can be computed by subtracting ADR(M) in the previous cycle from ADR(i) in the current cycle in an equation, ΔADR = ADR(i) - ADR(M). The given threshold value is a compatible value, and, for example, it may be set as a value slightly larger than the maximum absolute value jΔPSR - ΔADR| possibly obtained after the completion of the processing in the filter 205 under a condition in which the reception of radio waves is clear and in which multipath is not found.
[0062] Another method may be used to determine whether or not the error in PSR(i) in the current cycle exceeds the given allowable range. For example, it may be determined that the error in PSR(i) in the current cycle exceeds the given allowable range when reception sensitivity of radio waves from the GPS satellite 1Oj is lower than a given reference value, when a peak correlation value that is computed at the time of code tracking is lower than a given reference value, or when multipath of the radio waves from the GPS satellite 10j is detected. [0063] In step 404, if it is determined that the GPS satellite 10j is newly captured and that the error in PSR(i) in the current cycle exceeds the given allowable range, the process proceeds to step 406. Unless one of the above conditions is satisfied, the process proceeds to step 410. Alternatively, the process may proceed to step 406 if it is determined that the GPS satellite 10j is newly captured or that the error in PSR(i) in the current cycle exceeds the given allowable range. In this alternative example, the process proceeds to step 410 if it is determined that the GPS satellite 10j is not newly captured and that the error in PSR(i) in the current cycle does not exceed the given allowable range. As another alternative example, regardless of the captured time period of the GPS satellite 1Oj1 the process may proceed to step 406 if it is determined that the error in PSR(i) in the current cycle exceeds the given allowable range, and the process may proceed to step 410 if it is determined that the error in PSR(i) hi the current cycle does not exceed the given allowable range.
10064} In step 406, an estimated value of the previous value PSRj(M) of PSRj, that is, the estimated previous value PSRJO is computed in the PSR previous value estimating section 218. The computing method of the estimated previous value PSRJO is as described above. In other words, the estimated previous value PSRJO can be computed by substituting the previous value of the positioning result of the vehicle 90 ((X11(M), Yn(H), Zu(i-1)), the previous value of the satellite position (Xj(M), Yj(M)9 Zj(M)), and the clock error c « ΔT in the GPS receiver 20, which are all stored in the computed value storing section 216, into the above equation 4.
[0065] The processing in step 406 is executed only when the condition in step 404 is true. Alternatively, when the conditions in above step 404 are true for consecutive cycles, the processing in step 406 may only be executed for the first cycle.
[0066] In step 408, the estimated value of the current value PSRj(Q of PSRj, that is, EPSRj(i) is computed in the PSR estimating section 212. The computing method of EPSRj(i) is as described above. In other words, EPSRj(i) is computed by the following equation, for example, by using the current value ADRj(i) obtained from the ADR computing section 208 and the previous value ADRj(M) obtained from the computed value storing section 216: EPSRj(i) = EPSRj(M) + ADRj(i) -ADRj(M).
Here, EPSRj(M) is a previous value, and in an cycle in which step 406 is executed, the estimated previous value PSRjo obtained in step 406 is used.
[00671 K EPSRj(i) is computed in step 408, PSR(i) obtained in step 400 will be replaced with EPSRj(i). In other words, PSR(i) obtained in step 400 is discarded when the condition in step 404 is true, and EPSRj(i) is adapted instead. On the other hand, when the condition in step 404 is false, PSR(i) is adopted.
[0068] In step 410, it is determined whether or not PSR(i) or EPSR(i) is computed for all the observable GPS satellites 10. If the condition is true, the process leaves the loop 2 and proceeds to step 412. Meanwhile, if PSR(i) or EPSR(i) has not been computed for one or more of the GPS satellites 10, the processing in the loop 2 (the processing from step 400) is executed for the appropriate GPS satellites 10.
[0069] In step 412, the position of the vehicle 90 in the current cycle (i), (Xu(i), Yu(i), Ztt(i)), is computed in the position computing section 214 by using PSR(i) or EPSR(i) obtained for each of the GPS satellites 10 in the loop 2 in the current cycle (i). The computing method of the position of the vehicle 90 is as described above. However, if the number of observed GPS satellites 10 is greater than that required for positioning, PSR(i) may be used preferentially to EPSR(i). In other words, only when the number of GPS satellites 10 for which PSR(i) is computed is insufficient, the GPS satellites 10 for which EPSR(i) is computed may be supplementary used to compute the position of the vehicle 90.
[0070] In step 414, the positioning result that is obtained in step 412, ADR, and the current values of the satellite positions are stored in the computed value storing section 216. These computed values are used as "previous values" in the next cycle.
[0071] In step 416, positioning in the current cycle is terminated, and the process from the loop 1 is repeated in the next cycle.
[0072] FIG 5 shows time sequences of PSRj, EPSRj, and ADRj that are computed as above. Representatively, FIG 5 shows the time sequences of PSRj, EPSRj, and ADRj according to the GPS satellite 1Oj. In addition, FIG 5 schematically shows the time sequence of a true value of PSRj. Here, a graph starts at time t0 when the GPS satellite 1Oj is captured. As shown in FIG 5, in a time period ΔT1 (from time tO to tl) in a short time since the capture of the GPS satellite 1Oj, the error in PSRj (an error relative to the true value) is large because the processing in the filter 205 is not completed. Meanwhile, although ADRj is a relative value, it retains relatively high accuracy even in the time period ΔT1 in a short time since the capture of the GPS satellite 1Oj. Therefore, it can be understood that EPSRj computed from the satellite position, the previous value of the positioning result, and ADRj has a smaller error than PSRj even in the time period ΔT1 in a short time since the capture of the GPS satellite 1Oj. Consequently, EPSRj can be used for positioning. In other words, by using EPSRJ instead of PSRj, the positioning can be executed with high accuracy from the time period ΔT1 in a short time since the capture of the GPS satellite 1Oj. In an example shown in FIG 5, PSRj is used for positioning from time tl onward because the error in PSRj becomes smaller at time tl, for example.
[0073] The first embodiment of the present invention described above particularly have the following effects. [0074] According to the first embodiment of the present invention, as described above, the highly accurate positioning can be started and maintained by using EPSRj, which is appropriately estimated, instead of PSRj even in a time period in a short time since the capture of the satellite 1Oj or a time period in which the accuracy of PSRj according to the GPS satellite 10j is low. Accordingly, the positioning with high accuracy can be started from the time immediately after the GPS satellite 1Oj is newly captured, for example, and can be maintained even when the accuracy of PSRj according to the GPS satellite 1Oj is temporarily degraded under the influence of the multipath, etc.
[0075] The second embodiment of the present invention mainly differs from the first embodiment in which the positioning computation is executed by the satellite navigation method in a point that the position is computed by selectively using an inertial navigation method with an INS sensor. Description will hereinafter be made by focusing on the unique features of the second embodiment, and the other features of the second embodiment may be the same as the features of the first embodiment
[0076] FIG 6 is a block diagram showing an example of main components of a GPS receiver 20' according to the second embodiment of the present invention. The GPS receiver 20' includes an INS sensor data obtaining section 220 that obtains INS sensor data from the INS sensor (not shown) installed in the vehicle 90. The INS sensor may be constituted of a tii-axial acceleration sensor and a tri-axial angular velocity sensor. [0077] Aposition computing section 214' computes the position of the vehicle 90,
(XuO)5 Yu(O' ZuO)X by the inertial navigation method based on the information from the INS sensor. A variety of the computing methods of a vehicle position by the inertial navigation method are available, and any of the methods can be used. For example, in order to derive the vehicle position, an output value of the acceleration sensor is first processed for attitude conversion, gravitational correction, and Coriolis force correction, and then integrated twice. A travel distance obtained from the double integral is integrated by the previous value of the vehicle position (Xu(i-1), Yn(i-1), Zu(i-1)). The vehicle position and vehicle speed (INS positioning results) computed by the inertial navigation method in the position computing section 214' may be respectively compared with the vehicle position and vehicle speed (GPS positioning results) computed by the above satellite navigation method to obtain difference values therebetween. Then, the difference values may be input to the Kalmaα filter to determine various correction amounts.
[0078] FIG 7 is a flow chart showing the flow of the main processing executed by the GPS receiver 20' according to the second embodiment of the present invention. [0079] In step 700, INS sensor data is obtained in the INS sensor data obtaining section 220.
[0080] In step 702, PSRj(i) in the current cycle is derived in the DLL 203 and the filter 205, and ADRj(i) in the current cycle is computed in the ADR computing section 208.
[0081] In step 704, the satellite position, SjC*) = (Xj(i), Yj(O, Zj(O)1 is computed in the satellite position computing section 209.
[0082] In step 706, it is determined in the PSR error determination section 206 whether or not the GPS satellite 10j is newly captured and whether or not the error in PSR(i) in the current cycle exceeds the given allowable range. The determination method can be the same as that in step 404 of FIG 4 in the first embodiment. [0083] In step 706, if it is deteπnined that the GPS satellite 10j is newly captured and that the error in PSR(i) exceeds the given allowable range, the process proceeds to step 708. Unless one of the above condition is satisfied, the process proceeds to step 712. Alternatively, the process may proceed to step 708 if it is deteπnined that the GPS satellite 1Oj is newly captured or that the error in PSR(i) in the current cycle exceeds the given allowable range. In this alternative example, the process proceeds to step 712 if it is determined that the GPS satellite 1Oj is not newly captured and that the error in PSR(i) in the current cycle does not exceed the given allowable range. As another alternative example, regardless of the captured time period of the GPS satellite 1Oj1 the process may proceed to step 708 if it is deteπnined that the error in PSR(i) in the current cycle exceeds the given allowable range, and the process may proceed to step 712 if it is deteπnined that the error in PSR(i) in the current cycle does not exceed the given allowable range.
[0084] In step 708, the estimated value of the previous value PSRj(M) of PSRj, that is, the estimated previous value PSRJO is computed in the PSR previous value estimating section 218. The computing method of the estimated previous value PSRJO is as described above. The processing in step 708 is executed only in a first cycle in which the condition in step 706 is true. Alternatively, when the conditions in above step 706 are true for consecutive cycles, the processing in step 708 may only be executed for the first cycle.
[0085] In step 710, the estimated value of the current value PSRj(i) of PSRj, that is, EPSRj(i) is computed in the PSR estimating section 212. The computing method of EPSRj(i) is as described above. In other words, EPSRj(i) is computed by the following equation, for example, by using the current value ADRj(i) that is obtained from the ADR computing section 208 and the previous value ADRj(i-l) that is obtained from the computed value storing section 216: EPSRj(i) = EPSRj(i-l) + ADRj(i) -ADRj(I-I).
Here, EPSRj(i-l) is a previous value, and in an cycle in which step 708 is executed, the estimated previous value PSRjo obtained in step 708 is used.
[0086] If EPSRj(I) is computed in step 710, PSR(i) obtained in step 702 will be replaced with EPSR,(i). In other words, PSR(i) obtained in step 702 is discarded when the condition in step 706 is true, and EPSRj(i) is computed instead.
[0087] In step 712, it is determined whether or not PSR(i) or EPSR(i) is computed for all the observable GPS satellites 10. If the condition is true, the process leaves the loop 2 and proceeds to step 714. Meanwhile, if PSR(i) or EPSR(i) has not been computed for one or more of the GPS satellites 10, the processing in the loop 2 (the processing from step 702) is executed for the appropriate GPS satellites 10.
[0088] In step 714, it is determined whether or not GPS positioning computation is possible in the position computing section 214'. In other words, it is determined whether or not the positioning by the satellite navigation method (positioning by the equation 3) that is described in the first embodiment is possible. For example, it may be determined that the GPS positioning computation is possible when the number of the GPS satellites 10 for which PSR(i) or EPSR(i) is computed is equal to or larger than a given number. The given number may be 3, but preferably be equal to or larger than 4 to eliminate the clock error. Alternatively, it may be determined that the GPS positioning computation is possible when the number of the GPS satellites 10 for which PSR(i) or EPSR(i) is computed is equal to or larger than a given number ThI, and when the number of the GPS satellites 10 for which PSR(i) is computed is equal to or larger than a given number Th2. In this case, the given number ThI may be an appropriate number equal to or larger than 4, and the given number Th2 may be set smaller than the given number ThI (for example, 2). If it is determined in step 714 that the GPS positioning computation is possible, the process proceeds to step 716, If it is determined in step 714 that the GPS positioning computation is impossible, the process proceeds to step 718.
[0089] In step 716, the position of the vehicle 90, (Xu(i), Yu(i), Zn(J)), in the current cycle (i) is computed in the position computing section 214' by using PSR(i) or EPSR(i) obtained for each of the GPS satellites 10 in the loop 2 in the current cycle (i). The computing method of the position of the vehicle 90 is as described above. However, if the number of the observed GPS satellites 10 is larger than that required for positioning, PSR(i) may be used preferentially to EPSR(i).
[0090J In step 718, the position of the vehicle 90, (X0(J), Yu(i), Zu(i)), is computed by the iπertial navigation method in the position computing section 214' . The computing method of the position of the vehicle 90 by the inertial navigation method is as described above.
[0091] In step 720, the positioning result obtained in step 716 or 718, ADR, and the current values of the satellite positions are stored in the computed value storing section 216. These computed values are used as "previous values" in the next cycle.
[0092] In step 722, positioning in the current interval is terminated, and the process from the loop 1 is repeated in the next cycle.
[0093] The second embodiment of the present invention described above particularly have the following effects.
According to the second embodiment of the present invention, as described above, the highly accurate positioning can be started and maintained by using EPSRj, which is appropriately estimated, instead of PSRj even in a time period in a short time since the capture of the satellite 10; or a time period in which the accuracy of PSRj according to the GPS satellite 1Oj is low. Accordingly, the positioning with high accuracy can be started from the time immediately after the GPS satellite 10j is newly captured, for example, and can be maintained even when the accuracy of PSR,- according to the GPS satellite 1Oj is temporarily degraded under the influence of the multipath, etc.
[0094] What to be specially emphasized is that, according to the second embodiment, even when the position of the vehicle 90 cannot be computed by the satellite navigation method in the previous cycle due to a reason that the number of the observable GPS satellites 10 is insufficient, for example, it is still possible to compute the estimated previous value PSRjo by using the positioning result (previous value) because the position of the vehicle 90 is obtained by the inertial navigation method in the previous cycle. In other words, according to the second embodiment, the estimated previous value PSRjo (and consequently, EPSRj based thereon) can be computed in any cycle because the positioning result can be output either by the satellite navigation method or by the inertial navigation method.
[0095] Although the detailed descriptions for the embodiments of the present invention have been provided, the present invention is not limited to the aforementioned embodiments, and various modification and replacement to the aforementioned embodiments may be allowed without departing from the scope of the invention.
[0096] For example, in the above embodiments, the PSR estimating section 212 and the PSR previous value estimating section 218 may be operated only when the determination result in the above PSR error determination section 206 is negative, that is, only in a cycle in which the error in PSRj afteT the filtering process exceeds the given allowable range.
[0097] In the above embodiments, part of various functions performed by the GPS receiver 20 may be performed by an external computer that is connected to the GPS receiver 20, or may be performed in cooperation with an external computer that is connected to the GPS receiver 20.
[0098] In the above embodiments, the filter 205 is used; however, the filter 205 may be omitted.
[0099] In the above embodiments, the determination processing is executed every positioning cycle in the PSR error determination section 206; however, the determination processing may be executed once per a plurality of positioning cycles or at random cycles (any cycle that is synchronized with the positioning cycle). In addition, the determination processing in the PSR error determination section 206 may only be executed for a given time period after the new GPS satellite 10 is captured. From the similar perspective, processing shown in FIG. 4 and FIG. 7 may only be executed for a given time period after the new GPS satellite 10 is captured.
[0100] In the above embodiments, PSR is derived by using the C/A-code; however, PSR can be computed based on another pseudo random noise code such as a P-code on an L2 carrier. It should be noted that because the P-code is encrypted with a W-code, the P-code may be decoded by the DLL that uses a cross-correlation method upon synchronization of the P-code. PSR based on the P-code can be obtained by measuring Mp bit of the P-code received by the vehicle 90 because the P-code of the GPS satellite 10 starts at 0 bit, and the following equation is used: PSR = Mp x 30.
[0101] The above embodiments show the example in which the present invention is applied to GPS; however, the present invention is also applicable to other satellite systems including a Global Navigation Satellite System (GNSS) such as Galileo.
[0102] While the invention has been described with reference to example embodiments thereof, it should be understood that the invention is not limited to the example embodiments or constructions. To the contrary, the invention is intended to cover various modifications and equivalent arrangements. In addition, while the various elements of the example embodiments are shown in various combinations and configurations, which are example, other combinations and configurations, including more, less or only a single element, are also within the spirit and scope of the invention.

Claims

1. A moving body positioning device through which a moving body receives a radio wave from a satellite to determine the position of the moving body, the moving body positioning device characterized by comprising:
PSR computing means foi computing a pseudorange between a satellite and the moving body per given cycle based on an observed phase of a pseudo random noise code on a satellite wave;
ADR computing means for computing an accumulated Doppler range per given cycle based on an observed Doppler frequency of the satellite wave; positioning means for determining a position of the moving body based on the pseudorange computed by the PSR computing means; satellite position computing means for obtaining information representing a satellite position and computing the satellite position per given cycle; previous value PSR estimating means for computing an estimated previous value as an estimated value of a pseudorange in a previous cycle based on a magnitude of a difference vector between a positioning result of the moving body in the previous cycle that is obtained from the positioning means and a computed result of the satellite position in the previous cycle that is obtained from the satellite position computing means;
PSR estimating means for computing an estimated pseudorange as an estimated value of the pseudorange in a current cycle by adding the estimated previous value that is computed by the previous value PSR estimating means to a difference between the accumulated Doppler ranges that are computed by the ADR computing means in the current and previous cycles; and
PSR error determination means for determining whether an error in the pseudorange that is computed by the PSR computing means exceeds a given allowable range, wherein the positioning means determines the position of the moving body in the current cycle based on the estimated pseudorange that is computed by the PSR estimating means instead of the pseudorange that is computed by the PSR computing means in the current cycle when the PSR error determination means determines that the error in the pseudorange that is computed by the PSR computing means in the current cycle exceeds the given allowable range.
2. The moving body positioning device according to claim 1, wherein the positioning means determines the position of the moving body in the current cycle based on the estimated pseudorange that is computed by the PSR estimating means instead of the pseudorange that is computed by the PSR computing means in the current cycle when at least either one of the following conditions is met: the PSR error determination means determines that the error in the pseudorange that is computed by the PSR computing means in the current cycle exceeds the given allowable range, and a given time period has not been elapsed since a satellite related to the above pseudorange is captured.
3. The moving body positioning device according to claim 2, wherein the positioning means determines the position of the moving body in the current cycle based on the estimated pseudorange that is computed by the PSR estimating means instead of the pseudorange that is computed by the PSR computing means in the current cycle when the PSR error determination means determines that the error in the pseudorange that is computed by the PSR computing means in the current cycle exceeds the given allowable range, and when the given time period has not been elapsed since the satellite related to the above pseudorange is captured.
4. The moving body positioning device according to claim 2 or 3, wherein the determination of whether the satellite is newly captured is made based on a captured time period that corresponds with a time period required for filtering process of the pseudorange and that starts from a cycle in which the satellite is captured.
5. The moving body positioning device according to claim 4, wherein the filtering process is carrier smoothing with a Hatch filter or a Kalman filter.
6. The moving body positioning device according to claim 1, wherein the positioning means executes positioning by an ϊnertial navigation method with information from an INS sensor when it is impossible to execute positioning by a satellite navigation method based on a reception result of the satellite wave, and the positioning result of the moving body in the previous cycle that is computed in the positioning means and used in the previous value PSR estimating means includes a positioning result derived by the inertial navigation method.
7. The moving body positioning device according to claim 6, wherein the positioning means performs positioning by the satellite navigation method when the number of satellites for which either the pseudorange or the estimated pseudorange is computed is equal to or greater than three.
8. The moving body positioning device according to claim 6, wherein the positioning means performs positioning by the satellite navigation method when the number of satellites for which the estimated pseudorange is computed is equal to or greater than four, and when the number of satellites for which the pseudorange is computed is equal to or greater than two.
9. The moving body positioning device according to claim 1, wherein the PSR error determination means compares a difference ΔPSR that is a difference between pseudoranges that are computed by the PSR computing means in the previous and current cycles with a difference ΔADR that is a difference between accumulated Doppler ranges that are computed by the ADR computing means in the previous and current cycles, and determines whether an error in the pseudorange that is computed by the PSR computing means exceeds the given allowable range based on a comparative result.
10. The moving body positioning device according to claim 9, wherein the PSR error determination means determines that the error in the pseudoiange that is computed by the PSR computing means exceeds the given allowable range when an absolute value jΔPSR - ΔADR| of a difference between the difference ΔPSR and the difference ΔADR exceeds a given threshold value.
11. The moving body positioning device according to claim 1, wherein the positioning means determines the position of the moving body in the current cycle based on the pseudorange that is computed by the PSR computing means in the current cycle when the PSR error determination means determines that the error in the pseudorange that is computed by the PSR computing means in the current cycle does not exceed the given allowable range.
12. The moving body positioning device according to claim 1, wherein the previous value PSR estimating means computes the estimated previous value by adding the magnitude of the difference vector to an estimated value of a clock error that is included in the pseudorange.
13. The moving body positioning device according to claim 12, wherein the estimated value of the clock error is computed by calculating back from the positioning result of the positioning means.
14. The moving body positioning device according to claim 1, wherein when the PSR error determination means determines for consecutive two or more cycles that the eπor in the pseudorange that is computed by the PSR computing means exceeds the given allowable range, the PSR estimating means computes the estimated pseudorange in the first cycle of the two or more cycles by adding the estimated previous value to a difference between the accumulated Doppler ranges that are computed by the ADR computing means in the previous and current cycles, and from the second cycle onward by adding the estimated pseudorange that is computed in the previous cycle to the difference between the accumulated Dopplet ranges that are computed by the ADR computing means in the previous and current cycles.
15. A moving body positioning method through which a moving body receives a radio wave from a satellite to determine the position of the moving body, the moving body positioning method characterized by comprising: computing a pseudorange between a satellite and the moving body per given cycle based on an observed phase of a pseudo random noise code on a satellite wave; computing an accumulated Doppler range per given cycle based on an observed Doppler frequency of the satellite wave; determining the position of the moving body per given cycle based on the computed pseudorange; obtaining information representing a satellite position and computing the satellite position per given cycle; computing an estimated previous value as an estimated value of the pseudorange in a previous cycle based on a magnitude of a difference vector between a positioning result of the moving body in the previous cycle and a computed result of the satellite position in the previous cycle; computing an estimated pseudorange as an estimated value of the pseudorange in a current cycle by adding the estimated previous value, which has been computed, to a difference between the accumulated Doppler ranges computed in the previous and current cycles; determining whether an error in the computed pseudorange exceeds a given allowable range; and determining the position of the moving body in the current cycle based on the estimated pseudorange, which has been computed, instead of the pseudorange that is computed in the current cycle when it is determined that the error in the pseudorange that is computed in the current cycle exceeds the given allowable range.
16. Amoving body positioning device through which a moving body receives a radio wave from a satellite to determine the position of the moving body, the moving body positioning device comprising: a PSR computing section that computes a pseudoraπge between a satellite and the moving body per given cycle based on an observed phase of a pseudo random noise code on a satellite wave; an ADR computing section that computes an accumulated Doppler range per given cycle based on an observed Doppler frequency of the satellite wave; a positioning section that determines a position of the moving body based on the pseudorange that is computed by the PSR computing section; a satellite position computing section that obtains information of a satellite position and computes the satellite position per given cycle; a previous value PSR estimating section that computes an estimated previous value as an estimated value of the pseudorange in a previous cycle based on a magnitude of a difference vector between a positioning result of the moving body in the previous cycle that is obtained from the positioning section and a computed result of the satellite position in the previous cycle that is obtained from the satellite position computing section; a PSR estimating section that computes an estimated pseudorange as an estimated value of the pseudorange in a current cycle by adding the estimated previous value that is computed by the previous value PSR estimating section to a difference between the accumulated Doppler ranges that are computed by the ADR computing section in the previous and current cycles; and a PSR error determination section that determines whether an error in the pseudorange that is computed by the PSR computing section exceeds a given allowable range, wherein the positioning section determines the position of the moving body in the current cycle based on the estimated pseudorange that is computed by the PSR estimating section instead of the pseudorange that is computed by the PSR computing section in the current cycle when the PSR error determination section determines that the error in the pseudorange that is computed by the PSR computing section in the current cycle exceeds the given allowable range.
PCT/IB2009/000548 2008-03-19 2009-03-19 Moving body positioning device and moving body positioning method WO2009115899A2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2008-070908 2008-03-19
JP2008070908A JP2009229065A (en) 2008-03-19 2008-03-19 Positioning apparatus for moving body

Publications (2)

Publication Number Publication Date
WO2009115899A2 true WO2009115899A2 (en) 2009-09-24
WO2009115899A3 WO2009115899A3 (en) 2009-11-12

Family

ID=40911079

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IB2009/000548 WO2009115899A2 (en) 2008-03-19 2009-03-19 Moving body positioning device and moving body positioning method

Country Status (2)

Country Link
JP (1) JP2009229065A (en)
WO (1) WO2009115899A2 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2806290A1 (en) * 2013-05-24 2014-11-26 O2 Micro, Inc. Systems and methods for estimating pseudorange errors
CN104749587A (en) * 2013-12-31 2015-07-01 清华大学 Receiver pseudo-range fault monitoring method and receiver
US10267920B2 (en) 2012-06-27 2019-04-23 Mitsubishi Electric Corporation Positioning method
CN113884061A (en) * 2021-11-30 2022-01-04 腾讯科技(深圳)有限公司 Ramp recognition method, device, equipment, readable storage medium and program product

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9625573B2 (en) * 2010-04-08 2017-04-18 The Boeing Company Geolocation leveraging spot beam overlap
JP2011220793A (en) * 2010-04-08 2011-11-04 Seiko Epson Corp Position calculation method and position calculation device
CN104181553A (en) * 2013-05-24 2014-12-03 凹凸电子(武汉)有限公司 Pseudo range error estimation method and system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5808581A (en) * 1995-12-07 1998-09-15 Trimble Navigation Limited Fault detection and exclusion method for navigation satellite receivers
US7095370B1 (en) * 2005-10-27 2006-08-22 Global Locate, Inc. Method and apparatus for mitigating multipath effects at a satellite signal receiver using a sequential estimation filter
US20060211430A1 (en) * 2005-03-17 2006-09-21 Persico Charles J GPS position tracking method with variable updating rate for power conservation

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07198821A (en) * 1994-01-06 1995-08-01 Japan Radio Co Ltd Gps receivr and its positoning method
JPH1114383A (en) * 1997-06-26 1999-01-22 Matsushita Electric Ind Co Ltd Position tracking system
JP2005164395A (en) * 2003-12-02 2005-06-23 Toyota Motor Corp Carrier wave phase type gps positioning apparatus and method
US7490008B2 (en) * 2004-09-17 2009-02-10 Itt Manufacturing Enterprises, Inc. GPS accumulated delta range processing for navigation applications
JP2006322846A (en) * 2005-05-19 2006-11-30 Mitsubishi Electric Corp Gps receiver
JP2007010550A (en) * 2005-07-01 2007-01-18 Japan Radio Co Ltd Positioning device and positioning method
JP4470944B2 (en) * 2007-01-24 2010-06-02 トヨタ自動車株式会社 Mobile positioning device
JP4424365B2 (en) * 2007-03-29 2010-03-03 トヨタ自動車株式会社 Positioning apparatus for moving body and positioning method for moving body

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5808581A (en) * 1995-12-07 1998-09-15 Trimble Navigation Limited Fault detection and exclusion method for navigation satellite receivers
US20060211430A1 (en) * 2005-03-17 2006-09-21 Persico Charles J GPS position tracking method with variable updating rate for power conservation
US7095370B1 (en) * 2005-10-27 2006-08-22 Global Locate, Inc. Method and apparatus for mitigating multipath effects at a satellite signal receiver using a sequential estimation filter

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10267920B2 (en) 2012-06-27 2019-04-23 Mitsubishi Electric Corporation Positioning method
EP2806290A1 (en) * 2013-05-24 2014-11-26 O2 Micro, Inc. Systems and methods for estimating pseudorange errors
CN104749587A (en) * 2013-12-31 2015-07-01 清华大学 Receiver pseudo-range fault monitoring method and receiver
CN113884061A (en) * 2021-11-30 2022-01-04 腾讯科技(深圳)有限公司 Ramp recognition method, device, equipment, readable storage medium and program product
CN113884061B (en) * 2021-11-30 2022-03-25 腾讯科技(深圳)有限公司 Ramp recognition method, device, equipment, readable storage medium and program product

Also Published As

Publication number Publication date
JP2009229065A (en) 2009-10-08
WO2009115899A3 (en) 2009-11-12

Similar Documents

Publication Publication Date Title
US10620321B1 (en) Systems and methods for tracking power modulation
US7274504B2 (en) System and method for advanced tight coupling of GPS and inertial navigation sensors
EP2067054B1 (en) Mobile-unit positioning device
EP2356482B1 (en) Mobile unit's position measurement apparatus and mobile unit's position measurement method
US7916070B2 (en) Tight coupling of GPS and navigation estimates with reducer or eliminated inertial measurement unit data
JP4525689B2 (en) Measuring device for moving objects
US20080309552A1 (en) System and method for gps acquisition using advanced tight coupling
US8370064B1 (en) Integrated global navigation satellite system and inertial navigation system for navigation and tracking
EP2064568A1 (en) Highly integrated gps, galileo and inertial navigation system
WO2009115899A2 (en) Moving body positioning device and moving body positioning method
JP2008145303A (en) Positioning device for mobile
US8970431B2 (en) Method and apparatus for weak data bit sync in a positioning system
JP2010223684A (en) Positioning apparatus for moving body
JP2008139105A (en) Apparatus for measuring moving body position
US6720913B1 (en) Lock slip detection using inertial information
JP2010112759A (en) Mobile body positioning apparatus
JP2008232761A (en) Positioning device for mobile
JP4470944B2 (en) Mobile positioning device
JP4518096B2 (en) Mobile positioning device
JP2011107108A (en) Positioning device for mobile object
JPH0466316B2 (en)
WO2023067344A1 (en) Positioning system and method
JP2008134092A (en) Mobile body position positioning device
JP2008292322A (en) Positioning device for movable body

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 09722762

Country of ref document: EP

Kind code of ref document: A2

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 09722762

Country of ref document: EP

Kind code of ref document: A2