WO2019019044A1 - 一种伪距计算方法和终端 - Google Patents

一种伪距计算方法和终端 Download PDF

Info

Publication number
WO2019019044A1
WO2019019044A1 PCT/CN2017/094449 CN2017094449W WO2019019044A1 WO 2019019044 A1 WO2019019044 A1 WO 2019019044A1 CN 2017094449 W CN2017094449 W CN 2017094449W WO 2019019044 A1 WO2019019044 A1 WO 2019019044A1
Authority
WO
WIPO (PCT)
Prior art keywords
time
terminal
satellite
transmission
error
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/CN2017/094449
Other languages
English (en)
French (fr)
Inventor
张伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SZ DJI Technology Co Ltd
Original Assignee
SZ DJI Technology Co Ltd
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 SZ DJI Technology Co Ltd filed Critical SZ DJI Technology Co Ltd
Priority to CN201780006832.6A priority Critical patent/CN108513623B/zh
Priority to PCT/CN2017/094449 priority patent/WO2019019044A1/zh
Publication of WO2019019044A1 publication Critical patent/WO2019019044A1/zh
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

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/35Constructional details or hardware or software details of the signal processing chain
    • G01S19/37Hardware or software details of the signal processing chain
    • 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/23Testing, monitoring, correcting or calibrating of receiver elements

Definitions

  • the present application relates to the field of satellite navigation technology, and in particular, to a pseudorange calculation method and a terminal.
  • a first aspect of the embodiments of the present application provides a pseudorange calculation method, which may include:
  • the determining whether the transmission error meets a preset condition comprises:
  • the calculating the second transmission time according to the first transmission time and the actual time of the navigation message transmitted from the loss-locking satellite includes:
  • the obtaining the distance between the terminal and the lost lock satellite includes:
  • the acquiring the current terminal location information of the terminal includes:
  • the distance is obtained based on the geometric distance, the satellite error, the propagation error, and the receiver error.
  • the method further includes:
  • Positioning is performed according to at least three of the pseudoranges.
  • a second aspect of the embodiments of the present application provides a terminal, where the terminal includes a processor, where the processor is configured to acquire a current time local to the terminal;
  • the processor is further configured to acquire a satellite error of the lost-lock satellite and a propagation error of the satellite signal;
  • the processor is further configured to acquire a code period of the terminal preset receiver channel
  • the transmission error When the transmission error is less than half of the code period, it is determined that the transmission error satisfies a first preset condition, and the first preset condition is included in the preset condition.
  • the second transmission time is calculated according to the first transmission time, the actual code phase time, and the estimated code phase time.
  • the processor is further configured to acquire a bit period of the receiver channel when the transmission error is greater than half of the code period;
  • the transmission error When the transmission error is less than half of the bit period, it is determined that the transmission error satisfies a second preset condition, and the second preset condition is included in the preset condition.
  • the processor is further configured to: when the transmission error meets the second preset condition, acquire an actual code phase time and a preset bit from the navigation message transmitted by the lost lock satellite The actual code cycle time corresponding to the code period count;
  • the processor is further configured to acquire current terminal location information of the terminal;
  • the processor is further configured to acquire the terminal location information by using at least one positioning device, wherein the positioning device comprises at least one of the following: inertial navigation, a visual sensor, or an ultrasonic wave.
  • the processor is further configured to acquire a geometric distance according to the terminal location information and the satellite location information;
  • the distance is obtained based on the geometric distance, the satellite error, the propagation error, and the receiver error.
  • the processor is further configured to acquire, according to a preset time, a crystal temperature of a receiver preset by the terminal;
  • the processor is further configured to: acquire a transmission time of the satellite to send a satellite signal to the terminal, and acquire an initial transmission time of the satellite signal;
  • the processor is further configured to perform positioning according to at least three of the pseudoranges.
  • a third aspect of the embodiments of the present application provides a computer program product comprising instructions, when the computer program product is run on a computer, causing the computer to execute the pseudorange calculation method according to the first aspect of the foregoing embodiment of the present application.
  • a fourth aspect of embodiments of the present application provides a computer readable storage medium having instructions stored therein that, when run on a computer, cause the computer to perform the pseudo-first aspect of the first embodiment of the present application. Distance calculation method.
  • the terminal may acquire the first transmission time of the satellite to send the satellite signal to the terminal according to the current time of acquiring the local time, the distance between the self and the lost lock satellite. Then, the terminal calculates a second transmission time according to the first transmission time and the actual time, and calculates a pseudorange between the terminal and the satellite according to the current time and the second transmission time. In the whole process of pseudorange calculation, no need to enter The line frame synchronization avoids the waiting time for the completion of the frame synchronization, shortens the time taken by the terminal to calculate the pseudorange, and improves the speed of the pseudorange calculation.
  • FIG. 1 is an architectural diagram of a UAV receiving satellite signals for positioning in an embodiment of the present application
  • FIG. 3 is a schematic diagram of another embodiment of a pseudorange calculation method according to an embodiment of the present application.
  • FIG. 4 is a schematic diagram of another embodiment of a pseudorange calculation method according to an embodiment of the present application.
  • the embodiment of the present application provides a pseudorange calculation method, where the terminal calculates the real launch time by using the estimated transmission time and the obtained actual time. Thereby obtaining a pseudorange. It realizes that no frame synchronization is needed in the process of calculating the pseudorange, which improves the speed of pseudorange calculation.
  • the embodiments of the present application also provide a terminal, a computer program product, a computer storage medium, and the like.
  • the drone is preset with a receiver for receiving satellite signals, and is also set.
  • a positioning device which includes at least one of the following: inertial navigation, a visual sensor, or an ultrasonic wave.
  • the UAV can also include other devices, which are not limited herein.
  • the drone can be launched by receiving more than 4 satellites at the beginning of the flight. The satellite signal is accurately located. Then, when the drone moves between the building and the cave, the satellite signal transmitted by some satellites is weakened or disappeared.
  • the drone can only receive satellite signals transmitted by some satellites, and the satellite that originally provided the positioning service for the terminal. It becomes a lost lock satellite.
  • the drone calculates the current time of the local terminal and acquires the distance between the terminal and the lost lock satellite through the pseudorange calculation method in the embodiment of the present application, and then calculates the loss according to the current time and distance.
  • the lock satellite transmits the first transmission time of the satellite signal to the terminal, and then calculates the second transmission time according to the first transmission time and the actual time calculated by the navigation message transmitted from the lost lock satellite, and finally can be calculated according to the current time and the second transmission time.
  • the pseudorange between the terminal and the lost lock satellite is a pseudorange between the terminal and the lost lock satellite.
  • the terminal can perform positioning.
  • the local clock is corrected by the clock difference, only more than 3 can be positioned, even when When there are more than three remaining connected satellites, the positioning result can be obtained, and the positioning result can be corrected by the pseudorange calculated by the above method to obtain a more accurate positioning result.
  • an embodiment of the pseudorange calculation method in the embodiment of the present application includes:
  • the lost lock satellite can be one or more, for example, when the terminal only needs to count When calculating a pseudorange, the terminal can only obtain the distance from the lost lock satellite; when the terminal needs to calculate multiple pseudoranges, the terminal can separately acquire the distance from the plurality of lost lock satellites.
  • the terminal may calculate the pseudorange between the self and the lost lock satellite according to the current time and the second transmission time, and the calculation manner of the pseudorange is not limited herein. It should be noted that the terminal may calculate one or more pseudoranges according to actual needs. For example, when some satellite signals in the satellites providing location services for the terminal are lost, and the satellite signals are not lost, the terminal may Only the pseudorange between one of the lost satellites is calculated; when all the satellite signals in all the satellites providing the positioning service for the terminal are out of lock, the terminal needs to calculate the pseudorange between at least four of the lost lock satellites. It can be understood that, in practical applications, the number of calculations of the pseudorange can also be flexibly set, which is not limited herein.
  • the terminal may acquire the first transmission time of the satellite to send the satellite signal to the terminal according to the current time of acquiring the local time, the distance between the self and the lost lock satellite. Then, the terminal calculates the second transmission time according to the first transmission time and the actual time, and then according to the current time and the second transmission The time is calculated from the pseudorange between the terminal and the satellite. In the whole process of pseudorange calculation, frame synchronization is not needed, thereby avoiding the waiting time for the completion of the frame synchronization, shortening the time consumed by the terminal to calculate the pseudorange, and improving the speed of the pseudorange calculation.
  • the terminal may adjust the current time in advance before acquiring the local current time.
  • the terminal adjusts the current time to include:
  • the crystal temperature of the receiver preset by the terminal is acquired every preset time
  • a temperature sensor can be preset in the receiver, and the temperature of the crystal oscillator is collected by the temperature sensor.
  • the preset time can be flexibly set according to actual needs, which is not limited herein.
  • the mapping table or conversion relationship between the crystal temperature and the crystal frequency offset may be preset in the terminal. After obtaining the crystal temperature, the crystal frequency offset corresponding to the crystal temperature may be obtained by querying the mapping table, or calculated by the conversion relationship.
  • the crystal oscillator temperature corresponds to the crystal frequency deviation. That is, the terminal can also calculate the corresponding crystal frequency offset according to the formula after obtaining the crystal temperature.
  • the local time of the receiver is adjusted according to the time deviation, and the adjusted local time is set as the current time.
  • the formula for the terminal to adjust the local time according to the time deviation is:
  • the second method is: acquiring the transmission time of the satellite transmitting the satellite signal to the terminal, and acquiring the initial transmission time of the satellite signal; adjusting the local time of the receiver according to the transmission time and the initial transmission time, and setting the adjusted local time as the current time.
  • t r the current time
  • t x the initial transmission time
  • e the transmission time.
  • the terminal when the terminal acquires the distance between itself and the lost lock satellite, it first acquires the current terminal location information of the terminal, and acquires the satellite position information of the lost lock satellite.
  • the current relative position information of the terminal may be acquired by at least one positioning device, and the terminal position information in the earth coordinate system may be obtained by using the position information acquired before the satellite loses lock and the relative position information acquired by the positioning device, wherein the positioning The device includes at least one of the following: inertial navigation, a visual sensor or an ultrasonic wave, etc., for example, the terminal position information may be acquired by fusion positioning according to inertial navigation preset by the terminal, the visual sensor and the ultrasonic wave, or only one of the positioning devices may be used. Get terminal location information. It should be noted that the terminal location information obtained by the positioning device may have a certain error, and the terminal may calculate the terminal location information in combination with the error.
  • a location model may be established, which may be established by using location information before the terminal, or may be established by other data of flight, or a combination of the two, and then passed through Kalman.
  • the filtering calibrates the result so that the position information in the model and the position information acquired by the actual positioning device occupy different weights, and the closest terminal position information is obtained.
  • the satellite position information of the lost lock satellite may be satellite position information calculated according to the satellite ephemeris obtained in the navigation message preset by the terminal.
  • the satellite ephemeris may be a satellite ephemeris of the lost lock satellite in an effective period before the lock is lost. For example, it may be a satellite ephemeris within one hour before the lock is lost, which is not limited herein.
  • the distance between the terminal and the lost lock satellite is obtained.
  • the geometric distance r j between the terminal and the lost lock satellite is calculated according to the following formula:
  • the distance between the acquisition terminal and the lost lock satellite may be the geometric distance calculated by the above method, or may be the distance after error correction of the geometric distance. Since the obtained satellite position information may have a certain error, in order to obtain a relatively accurate distance, when the distance is obtained according to the terminal position information and the satellite position information, the geometric distance can be obtained according to the terminal position information and the satellite position information, and acquired.
  • the satellite error of the lost lock satellite, the propagation error of the satellite signal, the receiver error of the receiver, and then the distance is obtained according to the geometric distance, satellite error, propagation error and receiver error.
  • the satellite error may include a satellite clock error, which may include the ionospheric correction of the ionosphere where the satellite is located, and the convection of the satellite.
  • the tropospheric correction of the layer, and the effect error caused by the multipath effect, etc., the receiver error may include the crystal clock difference of the receiver.
  • the distance ⁇ j between the terminal and the lost lock satellite can be calculated according to the following formula:
  • ⁇ j is the distance between the terminal and the lost lock satellite
  • r j is the geometric distance between the terminal and the lost lock satellite
  • c is the speed of light
  • ⁇ t r is the crystal clock difference
  • ⁇ t j is the satellite clock of the jth satellite Poor
  • ⁇ iono is the ionospheric correction
  • ⁇ trop is the tropospheric correction
  • ⁇ mp is the multipath effect error.
  • the distance is related to satellite error, propagation error, receiver error, etc., in order to calculate a precise first transmission time
  • the terminal can calculate the first launch time according to the current time, distance, satellite clock difference, crystal clock error, ionospheric correction amount, tropospheric correction amount, effect error and light speed, and the formula is:
  • t r is the current time
  • ⁇ t r is the crystal clock difference
  • ⁇ t j is the satellite clock of the jth satellite
  • r j is the geometric distance between the terminal and the lost lock satellite
  • ⁇ mp is the multipath
  • the effect error c is the speed of light
  • ⁇ iono is the ionospheric correction.
  • the ionospheric correction can be calculated by the ionospheric correction parameter and the corresponding ionospheric correction model
  • ⁇ trop is the tropospheric correction, which can be calculated by using the appropriate tropospheric model.
  • Tropospheric corrections for example, the Sastamoning model, the Hopfield model, etc.
  • the above different errors are calculated by different weights combined with the time of loss of lock.
  • the above errors have time error and distance error.
  • the distance error can be converted into time error to obtain the transmission error.
  • the time interval is short before the lock loss and the re-trap, the distance between the satellite and the terminal is short, and the satellite error, the propagation error, and the receiver error in the receiver error are compared. Small, in some cases, can be omitted, that is, the error caused by the fusion positioning is combined with the time of loss of lock to calculate the transmission error.
  • the terminal may calculate the pseudorange when the transmission error of the first transmission time meets the preset condition, and includes two cases: 1. When the transmission error satisfies the first preset condition, the terminal calculates according to the mode 1. Pseudorange; Second, when the transmission error satisfies the second preset condition, the pseudorange is calculated according to the second method, which will be described in detail below.
  • the pseudorange between the terminal and the lost lock satellite is calculated according to the method 1.
  • another embodiment of the pseudorange calculation method in the embodiment of the present application includes:
  • the current time of obtaining the locality of the terminal in this embodiment is similar to the current time of obtaining the locality of the terminal in the foregoing embodiment, and details are not described herein again.
  • the distance between the acquiring terminal and the lost lock satellite is similar to the distance between the acquiring terminal and the lost lock satellite in the foregoing embodiment, and details are not described herein again.
  • the first transmission time of the satellite signal transmitted by the lost-lock satellite to the terminal is calculated according to the current time and distance, and the satellite signal is sent to the terminal by the lost-lock satellite according to the current time and distance in the foregoing embodiment.
  • the first launch time is similar, and will not be described here.
  • the transmission error of the first transmission time is obtained, which is similar to the transmission error of obtaining the first transmission time in the foregoing embodiment, and details are not described herein again.
  • the terminal calculates the pseudorange in the following manner: First, the second transmission time t x of calculating the satellite signal transmitted by the lost lock satellite to the terminal is:
  • t frame is the frame start time, which can be obtained from the navigation message
  • N bit is 1 frame bit count, which can be obtained after frame synchronization
  • N cyc is 1 bit inner code cycle count, which can be obtained after bit synchronization
  • N cdp is the code phase, which can be obtained after stable tracking of the satellite
  • T bit is the time corresponding to 1 bit
  • T cyc is the time corresponding to 1 code period.
  • the code phase N cdp is first acquired, then the 1-bit inner code cycle count N cyc is obtained , and finally the 1-bit inner bit count N bit is obtained .
  • one frame of the GPS L1 C/A code includes 300 bits, one bit contains 20 code periods, the time corresponding to one bit is 0.02 seconds, and the time corresponding to one code period is 0.001 seconds.
  • the pseudorange can be calculated according to the second transmission time and the current time.
  • the pseudorange is calculated as follows:
  • the terminal determines whether the transmit error is less than half of the code period, and when the transmit error is less than half of the code period, the bit period of the receiver channel may be acquired first, and then Determine if the transmission error is less than half of the bit period, and if so, Then, a step of determining whether the transmission error is less than half of the code period is performed.
  • the first preset condition is included in the aforementioned preset condition. When the transmission error satisfies the first preset condition, the actual code phase time of the navigation message transmitted from the lost lock satellite is obtained.
  • the terminal determines whether the transmission error satisfies the first preset condition or the second preset condition, and may determine whether the transmission error satisfies the first preset condition, and then determines whether the transmission error satisfies the second preset. Condition; firstly, it is first determined whether the transmission error satisfies the second preset condition, and then it is determined whether the transmission error satisfies the first preset condition; or may be a selection judgment, or may directly determine whether the first preset condition is satisfied or satisfied
  • the two preset conditions are not limited herein.
  • the terminal acquires the bit period and code period of the receiver channel, where the navigation message can be decoded in the receiver channel. Then, calculating the estimated code phase time according to the first transmission time, the code period, and the bit period, because the first transmission time is a sum of the bit period time, the code period time, and the code phase time, when the transmission error satisfies the first preset condition It is considered that the product of the bit period and the bit period count, that is, the bit period time is accurate, and that the product of the code period and the code period count, that is, the code period time is accurate, and then the second is calculated according to the actual code phase time and the estimated code phase time.
  • the transmission time removes the uncertain estimated code phase time from the first transmission time, and then adds the exact actual code phase time calculated from the navigation message, that is, the second transmission time is obtained, and the calculation formula is as follows:
  • floor( ) is a round-down function and t 0 is the sum of the bit period time and the code period time.
  • t 2 is the second transmission time
  • t cdp is the actual code phase time
  • t cdp is in the range of 0 ⁇ t cdp ⁇ b
  • ⁇ t is the difference between the actual code period time and the estimated code phase time.
  • b is the code phase period
  • n is the time corresponding to 1 bit.
  • the bit period time is accurate. which is The code phase is accurate.
  • the actual code period calculated from the satellite navigation message, the code cycle time there will be three cases, respectively Since the transmission error is less than 1/2 code period, the true value is considered to be The center of the 1/2 code period is within the radius, then Different code cycle times are taken under certain circumstances.
  • the pseudorange calculated by the terminal may include a pseudorange between the terminal and the at least three unlocked satellites, that is, at least three pseudoranges may be calculated, and after at least three pseudoranges are obtained, according to the at least three Pseudoranges for positioning.
  • the terminal can also calculate a pseudo-distance according to its current situation, and combine the un-locked satellite to accurately locate, or calculate a plurality of pseudo-ranges and calculate the target pseudo-range by the least square method, and perform positioning according to the target pseudo-range. So that the terminal can quickly calculate the pseudorange, and realize the lock-up and recapture fast. Quick solution.
  • the formula for calculating the pseudorange according to the first method is:
  • the bit period is 20 ms
  • the code period is 1 ms.
  • Floor() is a rounding function
  • t r is the current time
  • t 0 is the sum of the bit cycle time and the code cycle time
  • t cdp is the actual code phase time
  • t cdp is in the range of 0 ⁇ t cdp ⁇ 1 ( Ms)
  • ⁇ t is the difference between the actual code cycle time and the estimated code phase time
  • the code period is 1 millisecond (ms).
  • 0.001 is used to convert milliseconds into seconds
  • c is the speed of light
  • is the pseudorange. The true pseudorange can be calculated by the above method.
  • the terminal may calculate the first sending time according to the obtained current time, the distance between the terminal and the lost lock satellite, and when the transmitting error of the first transmitting time satisfies the first preset condition, according to the stable tracking satellite
  • the obtained actual code phase time, the predicted code phase time calculated according to the bit period and the code period, and the first transmission time are used to calculate the second transmission time, and then the terminal and the lost lock satellite are calculated according to the current time and the second transmission time.
  • the pseudorange between them so that the accurate second phase can be obtained by replacing the estimated code phase time with an accurate code phase time without frame synchronization and bit synchronization, and an accurate pseudorange can be calculated. Calculate accurate location information.
  • steps 401 to 404 in this embodiment are similar to steps 301 to 304 in the foregoing embodiment shown in FIG. 3, and details are not described herein again.
  • Whether the terminal determines whether the transmission error satisfies the preset condition comprises: acquiring a code period of the terminal preset receiver channel; determining whether the transmission error is less than half of the code period; if not, acquiring a bit period of the receiver channel, when the transmission error is less than the bit period At half of the time, it is determined that the transmission error satisfies the second preset condition.
  • the second preset condition can be flexibly set, which is not limited herein.
  • the terminal determines whether the transmit error is less than half of the code period, and when the transmit error is greater than half of the code period, the bit period of the receiver channel may be acquired first, and then It is judged whether the transmission error is less than half of the bit period; if so, a step of determining whether the transmission error is less than half of the code period is performed.
  • the second preset condition is included in the aforementioned preset condition. When the transmission error satisfies the second preset condition, the terminal acquires the actual code phase time calculated by the navigation message transmitted from the lost lock satellite and the actual code cycle time corresponding to the preset bit code period count.
  • the terminal may first determine whether the transmission error is less than half of the code period, and then determine whether the transmission error is less than half of the bit period; or determine whether the transmission error is less than half of the bit period, and then determine whether the transmission error is less than the code. It is also a half of the period; it can also be a selective judgment, or it can be determined at the same time whether the transmission error is less than half of the code period or less than half of the bit period, which is not limited herein.
  • the terminal When the transmission error satisfies the second preset condition, the terminal acquires the actual code phase time and the actual code cycle time of the navigation message transmitted from the lost lock satellite, and acquires the bit period of the receiver channel, where the navigation message can be at the receiver. In-channel decoding. Then, the terminal calculates the sum of the estimated code phase time and the estimated code cycle time according to the first transmission time and the bit period, because the first transmission time is the sum of the bit cycle time, the code cycle time, and the code phase time, when the transmission error is satisfied.
  • the product of the bit period and the bit period count that is, the bit period time is accurate, and then according to the first transmission time, the actual code period time, the actual code phase time, the estimated code phase time, and the estimation code.
  • the sum of the cycle times calculates the second transmission time, specifically, the sum of the uncertain estimated code phase time and the estimated code cycle time is removed from the first transmission time, and then the exact actual code solved from the navigation message is added.
  • Phase time And the code cycle time, that is, the second launch time is obtained, and the calculation formula is as follows:
  • t 0 is the sum of the estimated code phase time and the estimated code cycle time.
  • t 2 is the second transmission time
  • t cyc is the actual code period time
  • t cdp is the actual code phase time
  • t cyc is in the range of 0 ⁇ t cyc ⁇ n
  • ⁇ t is the actual code period time
  • n is the time corresponding to 1 bit.
  • the first transmission time and the second transmission time are divided into three parts, namely, a bit period time, a code period time, and a code phase time, when the transmission error is outside the 1/2 code period and within the 1/2 bit period
  • the actual bit period calculated from the satellite navigation message there are three cases at the bit cycle time, respectively Since the transmission error is within 1/2 code period and 1/2 bit period, the true value is considered to be Centered on the 1/2 bit period to the radius of the 1/2 code period, then Different bit cycle times are taken under certain circumstances.
  • is a pseudorange
  • t r is the current time
  • t 2 is the second transmission time
  • a is a time-dependent constant coefficient for converting the time unit, for example, converting milliseconds into seconds
  • c is the speed of light.
  • the pseudorange calculated by the terminal may include a pseudorange between the terminal and the at least three unlocked satellites, that is, at least three pseudoranges may be calculated, and after at least three pseudoranges are obtained, according to the at least three Pseudoranges for positioning.
  • the terminal can also calculate only one pseudorange according to its current situation, and the combination is not lost.
  • the lock satellite is accurately positioned, or after calculating a plurality of pseudoranges, the target pseudorange is calculated by a least squares method, and the target pseudorange is used for positioning. Therefore, the terminal can quickly calculate the pseudorange, and realize the fast solution of the lockout and recapture.
  • the distance is obtained based on geometric distance, satellite error, propagation error, and receiver error.
  • the processor 501 is further configured to: acquire a transmission time of the satellite to transmit the satellite signal to the terminal, and acquire an initial transmission time of the satellite signal;
  • the local time of the receiver is adjusted, and the adjusted local time is set as the current time.
  • All or part of the solution may be embodied in the form of a software product stored in a storage medium, including instructions for causing a computer device (which may be a personal computer, a server, or a network device, etc.) to execute the present invention. All or part of the steps of the methods described in the various embodiments are applied.
  • the foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk, and the like. .

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Position Fixing By Use Of Radio Waves (AREA)

Abstract

一种伪距计算方法和终端、计算机程序产品及计算机存储介质,包括:获取终端本地的当前时间(201);获取所述终端与失锁卫星之间的距离(202),所述失锁卫星是在未失锁前为所述终端提供定位服务的卫星;根据所述当前时间及所述距离计算所述失锁卫星向所述终端发送卫星信号的第一发射时间(203);根据所述第一发射时间和从所述失锁卫星发射的导航电文解算的实际时间计算第二发射时间(204);根据所述当前时间及所述第二发射时间计算所述终端与所述失锁卫星之间的伪距(205)。该方法由于在伪距计算过程中不需要进行帧同步,从而避免了帧同步的完成需要等待较长的时间,缩短了终端计算伪距所消耗的时间,提高了伪距计算的速度。

Description

一种伪距计算方法和终端 技术领域
本申请涉及卫星导航技术领域,尤其涉及一种伪距计算方法和终端。
背景技术
为了实现定位功能,一般无人机、车辆、手机等终端上都会通过设置全球卫星导航系统(Global Navigation Satellite System,GNSS)来实现,例如,全球定位系统(Global Positioning System,GPS)、北斗卫星导航系统(BeiDou Navigation Satellite System,BDS)、格洛纳斯导航系统(Global Navigation Satellite System,GLONASS)和伽利略导航系统GALILEO等。当GNSS的导航卫星信号较弱时,例如当终端在移动的过程中经过山洞、桥洞、地下通道、楼宇遮挡等经过遮挡环境或遇到突发干扰时,导致终端通过自身预置的接收机无法跟踪锁定卫星信号,从而造成卫星信号失锁。当卫星信号重新出现后,进行恢复时终端需要通过该接收机重新捕获并跟踪卫星信号,实现重新定位,这一过程称之为失锁重捕。
当部分卫星失锁后,若终端通过接收机无法准确定位,则终端可根据失锁前的位置信息、速度信息、失锁时间以及应用场景等估算出当前的位置范围。例如,终端首先通过接收机获取当前时间,并查询接收机的通道是否完成比特同步和帧同步,当完成比特同步和帧同步时,可读取接收机的通道的码相位、预设比特内码周期计数、预设帧内比特计数、预设比特对应的时间、以及预设码周期对应的时间等参数。然后根据这些参数估算卫星信号的发射时间,再根据本地时间及发射时间等估算伪距,最后根据得到的伪距进行定位。
由于在估算卫星信号的发射时间时,不确定范围较大,不仅需要完成比特同步,而且需要完成帧同步后,才能根据码相位、码周期计数、比特计数、预设比特对应的时间、以及预设码周期对应的时间等参数估算出发射时间,再根据发射时间进一步估算伪距,而帧同步的完成需要等待较长时间,因此导致终端计算得到伪距的等待时间较长。
发明内容
为了解决现有技术中计算伪距时的等待时间较长的技术问题,本申请实施例提供了一种伪距计算方法,终端通过估计的发射时间和获取的部分实际时间计算真实的发射时间,从而得到伪距。实现了在计算伪距的过程中不需要进行帧同步,提高了伪距计算的速度。本申请实施例还提供了终端、计算机程序产品及计算机存储介质等。
本申请实施例第一方面提供了一种伪距计算方法,可包括:
获取终端本地的当前时间;
获取所述终端与失锁卫星之间的距离,所述失锁卫星是在未失锁前为所述终端提供定位服务的卫星;
根据所述当前时间及所述距离计算所述失锁卫星向所述终端发送卫星信号的第一发射时间;
根据所述第一发射时间和从所述失锁卫星发射的导航电文解算的实际时间计算第二发射时间;
根据所述当前时间及所述第二发射时间计算所述终端与所述失锁卫星之间的伪距。
可选地,所述根据所述第一发射时间和从所述失锁卫星发射的导航电文解算的实际时间计算第二发射时间之前,所述方法还包括:
获取所述第一发射时间的发射误差;
判断所述发射误差是否满足预设条件;
若是,则执行根据所述第一发射时间和从所述失锁卫星发射的导航电文解算的实际时间计算第二发射时间的步骤。
可选地,所述获取所述第一发射时间的发射误差包括:
获取所述失锁卫星的卫星误差及所述卫星信号的传播误差;
获取所述终端预置接收机的接收机误差;
根据所述卫星误差、所述传播误差及所述接收机误差获取所述发射误差。
可选地,所述判断所述发射误差是否满足预设条件包括:
获取所述终端预置接收机通道的码周期;
当所述发射误差小于所述码周期的一半时,则确定所述发射误差满足第一 预设条件,所述第一预设条件包含于所述预设条件。
可选地,所述根据所述第一发射时间和从所述失锁卫星发射的导航电文解算的实际时间计算第二发射时间包括:
当所述发射误差满足所述第一预设条件时,获取从所述失锁卫星发射的导航电文解算的实际码相位时间;
获取所述接收机通道的比特周期;
根据所述第一发射时间、所述码周期、所述比特周期计算预估码相位时间;
根据所述第一发射时间、所述实际码相位时间和所述预估码相位时间计算所述第二发射时间。
可选地,在获取所述终端预置接收机通道的码周期之后,所述方法还包括:
当所述发射误差大于所述码周期的一半时,获取所述接收机通道的比特周期;
当所述发射误差小于比特周期的一半时,则确定所述发射误差满足第二预设条件,所述第二预设条件包含于所述预设条件。
可选地,所述根据所述第一发射时间和从所述失锁卫星发射的导航电文解算的实际时间计算第二发射时间包括:
当所述发射误差满足所述第二预设条件时,获取从所述失锁卫星发射的导航电文解算的实际码相位时间和预设比特内码周期计数对应的实际码周期时间;
根据所述第一发射时间和所述比特周期计算预估码相位时间与预估码周期时间的和;
根据所述第一发射时间、所述实际码周期时间、所述实际码相位时间及预估码相位时间与预估码周期时间的和计算所述第二发射时间。
可选地,所述获取所述终端与失锁卫星之间的距离包括:
获取所述终端当前的终端位置信息;
获取所述失锁卫星的卫星位置信息;
根据所述终端位置信息及所述卫星位置信息获取所述距离。
可选地,所述获取所述终端当前的终端位置信息包括:
通过至少一种定位装置获取所述终端位置信息,其中,所述定位装置包括 以下至少一种:惯性导航、视觉传感器或超声波。
可选地,根据所述终端位置信息及所述卫星位置信息获取所述距离包括:
根据所述终端位置信息及所述卫星位置信息获取几何距离;
根据所述几何距离、所述卫星误差、所述传播误差及所述接收机误差获取所述距离。
可选地,所述获取终端本地的当前时间之前,所述方法还包括:
每隔预设时间获取所述终端预置的接收机的晶振温度;
获取所述晶振温度对应的晶振频偏;
获取所述晶振频偏对应的时间偏差;
根据所述时间偏差调整所述接收机的本地时间,将调整后的本地时间设定为所述当前时间。
可选地,所述获取终端本地的当前时间之前,所述方法还包括:
获取所述卫星向所述终端发送卫星信号的传输时间,以及获取所述卫星信号的初始发射时间;
根据所述传输时间及所述初始发射时间,调整所述接收机的本地时间,将调整后的本地时间设定为所述当前时间。
可选地,所述根据所述当前时间及所述第二发射时间计算所述终端与所述失锁卫星之间的伪距之后,所述方法还包括:
根据至少三个所述伪距进行定位。
本申请实施例第二方面提供了一种终端,所述终端包括处理器,所述处理器用于,获取终端本地的当前时间;
获取所述终端与失锁卫星之间的距离,所述失锁卫星是在未失锁前为所述终端提供定位服务的卫星;
根据所述当前时间及所述距离计算所述失锁卫星向所述终端发送卫星信号的第一发射时间;
根据所述第一发射时间和从所述失锁卫星发射的导航电文解算的实际时间计算第二发射时间;
根据所述当前时间及所述第二发射时间计算所述终端与所述失锁卫星之间的伪距。
可选地,所述处理器还用于,获取所述第一发射时间的发射误差;
判断所述发射误差是否满足预设条件;
若是,则执行根据所述第一发射时间和从所述失锁卫星发射的导航电文解算的实际时间计算第二发射时间的步骤。
可选地,所述处理器还用于,获取所述失锁卫星的卫星误差及所述卫星信号的传播误差;
获取所述终端预置接收机的接收机误差;
根据所述卫星误差、所述传播误差及所述接收机误差获取所述发射误差。
可选地,所述处理器还用于,获取所述终端预置接收机通道的码周期;
当所述发射误差小于所述码周期的一半时,则确定所述发射误差满足第一预设条件,所述第一预设条件包含于所述预设条件。
可选地,所述处理器还用于,当所述发射误差满足所述第一预设条件时,获取从所述失锁卫星发射的导航电文解算的实际码相位时间;
获取所述接收机通道的比特周期;
根据所述第一发射时间、所述码周期、所述比特周期计算预估码相位时间;
根据所述第一发射时间、所述实际码相位时间和所述预估码相位时间计算所述第二发射时间。
可选地,所述处理器还用于,当所述发射误差大于所述码周期的一半时,获取所述接收机通道的比特周期;
当所述发射误差小于比特周期的一半时,则确定所述发射误差满足第二预设条件,所述第二预设条件包含于所述预设条件。
可选地,所述处理器还用于,当所述发射误差满足所述第二预设条件时,获取从所述失锁卫星发射的导航电文解算的实际码相位时间和预设比特内码周期计数对应的实际码周期时间;
根据所述第一发射时间和所述比特周期计算预估码相位时间与预估码周期时间的和;
根据所述第一发射时间、所述实际码周期时间、所述实际码相位时间及预估码相位时间与预估码周期时间的和计算所述第二发射时间。
可选地,所述处理器还用于,获取所述终端当前的终端位置信息;
获取所述失锁卫星的卫星位置信息;
根据所述终端位置信息及所述卫星位置信息获取所述距离。
可选地,所述处理器还用于,通过至少一种定位装置获取所述终端位置信息,其中,所述定位装置包括以下至少一种:惯性导航、视觉传感器或超声波。
可选地,所述处理器还用于,根据所述终端位置信息及所述卫星位置信息获取几何距离;
根据所述几何距离、所述卫星误差、所述传播误差及所述接收机误差获取所述距离。
可选地,所述处理器还用于,每隔预设时间获取所述终端预置的接收机的晶振温度;
获取所述晶振温度对应的晶振频偏;
获取所述晶振频偏对应的时间偏差;
根据所述时间偏差调整所述接收机的本地时间,将调整后的本地时间设定为所述当前时间。
可选地,所述处理器还用于,获取所述卫星向所述终端发送卫星信号的传输时间,以及获取所述卫星信号的初始发射时间;
根据所述传输时间及所述初始发射时间,调整所述接收机的本地时间,将调整后的本地时间设定为所述当前时间。
可选地,所述处理器还用于,根据至少三个所述伪距进行定位。
本申请实施例第三方面提供了一种包含指令的计算机程序产品,当所述计算机程序产品在计算机上运行时,使得计算机执行如前述本申请实施例第一方面所述的伪距计算方法。
本申请实施例第四方面提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行如前述本申请实施例第一方面的伪距计算方法。
本申请实施例中终端可根据获取到自身本地的当前时间、自身与失锁卫星之间的距离等参数,获取卫星向终端发送卫星信号的第一发射时间。然后,终端根据第一发射时间及实际时间计算第二发射时间,再根据当前时间及第二发射时间计算终端与所述卫星之间的伪距。在伪距计算的整个过程中,不需要进 行帧同步,从而避免了帧同步的完成需要等待的时间,缩短了终端计算伪距所消耗的时间,提高了伪距计算的速度。
附图说明
图1为本申请实施例中无人机接收卫星信号进行定位的架构图;
图2为本申请实施例中伪距计算方法一个实施例示意图;
图3为本申请实施例中伪距计算方法另一实施例示意图;
图4为本申请实施例中伪距计算方法另一实施例示意图;
图5为本申请实施例中终端一个实施例示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。在不冲突的情况下,下述的实施例及实施方式中的特征可以相互组合。
为了解决现有技术中计算伪距时的等待时间较长的技术问题,本申请实施例提供了一种伪距计算方法,终端通过估计的发射时间和获取的部分实际时间计算真实的发射时间,从而得到伪距。实现了在计算伪距的过程中不需要进行帧同步,提高了伪距计算的速度。本申请实施例还提供了终端、计算机程序产品及计算机存储介质等。
本实施例中,伪距计算方法可应用于终端,该终端可以为无人机,可以理解的是,在实际应用中,该终端除了可以为无人机之外,还可以为其他的可移动平台,例如,手机、车辆或机器人等,具体此处不作限定。
以下将以无人机为例,结合一个具体的应用场景对本申请中的伪距计算方法进行详细描述:如图1所示,该无人机预先设置有用于接收卫星信号的接收机,还设置有定位装置,该定位装置包括以下至少一种:惯性导航、视觉传感器或超声波等,可以理解的是,该无人机还可以包括其他器件,具体此处不作限定。首先,无人机在飞行的过程中,刚开始可通过接收4个以上的卫星发射 的卫星信号进行准确定位。然后,当无人机在楼宇、山洞之间穿梭时,由于部分卫星发射的卫星信号减弱或者消失,此时无人机仅能接收到部分卫星发射的卫星信号,原先为终端提供定位服务的卫星变为失锁卫星,这时无人机通过本申请实施例中伪距计算方法,先获取终端本地的当前时间,以及获取终端与失锁卫星之间的距离,再根据当前时间及距离计算失锁卫星向终端发送卫星信号的第一发射时间,然后根据第一发射时间和从失锁卫星发射的导航电文解算的实际时间计算第二发射时间,最终可根据当前时间及第二发射时间计算终端与失锁卫星之间的伪距。再通过上述计算得到的伪距数量和未失锁的卫星数量的和超过4个时,终端可以进行定位,当本地时钟是经过钟差校正后,可以只需要超过3个即可定位,即使当剩余连接的卫星超过3个时,已经可以得到定位结果,也可以通过上述方法计算的伪距来对定位结果进行修正,得到更为准确的定位结果。上述应用场景只是为了进行示意性说明,本领域技术人员技术方案应用到其他应用场景,在这里不做限定。
为便于理解,下面对本申请实施例中的具体流程进行描述,请参阅图2,本申请实施例中伪距计算方法的一个实施例包括:
201、获取终端本地的当前时间;
本实施例中,该终端上设置有用于接收卫星信号的接收机,终端在计算伪距的过程中,首先可通过该接收机的晶振获取自身本地的当前时间,该晶振可以是温补晶振或者数字化补偿晶振等等。
202、获取终端与失锁卫星之间的距离;
该失锁卫星是在未失锁前为终端提供定位服务的卫星,终端可以获取自身与失锁卫星之间的距离,例如,终端先通过惯性导航获取终端当前的终端位置信息,以及从导航电文中获取失锁卫星的卫星星历,根据该卫星星历获取失锁卫星的卫星位置信息,再根据终端位置信息及卫星位置信息,获取终端与失锁卫星之间的距离。可以理解的是,在实际应用中,由于终端位置信息的获取方式多种多样,以及该距离的计算结果可能还与卫星误差、卫星信号的传播误差及接收机误差等有关,因此终端获取自身与失锁卫星之间的距离的方式还可以包括其他方式,具体此处不作限定。
可以理解的是,该失锁卫星可以是一个或者多个,例如,当终端只需要计 算一个伪距时,终端可仅获取与该失锁卫星之间的距离;当终端需要计算多个伪距时,终端可分别获取与多个失锁卫星之间的距离。
203、根据当前时间及距离计算失锁卫星向终端发送卫星信号的第一发射时间;
在得到当前时间、以及终端与失锁卫星之间的距离后,终端可根据该当前时间及该距离计算失锁卫星向终端发送卫星信号的第一发射时间,例如,第一发射时间等于当前时间减去距离除以光速的值,即第一发射时间=当前时间-距离/光速。可以理解的是,在实际应用中,第一发射时间还可能与卫星误差、卫星信号的传播误差及接收机误差等有关,该第一发射时间的计算方式还可以包括其他方式,具体此处不作限定。
204、根据第一发射时间和从失锁卫星发射的导航电文解算的实际时间计算第二发射时间;
在得到第一发射时间后,终端可从本地存储的该失锁卫星发射的导航电文中解算出实际时间,该实际时间可以是比特周期时间,也可以是码周期时间,也可以是码相位时间,然后根据第一发射时间及实际时间计算第二发射时间,这里可以将用上述第一发射时间不确定量替换为解算出的实际时间,从而得到准确的第二发射时间。
205、根据当前时间及第二发射时间计算终端与失锁卫星之间的伪距。
在得到第二发射时间后,终端可根据当前时间及第二发射时间计算自身与失锁卫星之间的伪距,该伪距的计算方式具体此处不作限定。需要说明的是,终端可根据实际需要计算一个或多个伪距,例如,当为终端提供定位服务的所有卫星中存在部分卫星信号失锁,而还有三个卫星信号未失锁时,终端可仅计算与其中一个失锁卫星之间的伪距;当为终端提供定位服务的所有卫星中全部卫星信号失锁时,终端需要计算与其中至少四个失锁卫星之间的伪距。可以理解的是,在实际应用中,伪距的计算个数还可以进行灵活设置,具体此处不作限定。
本申请实施例中终端可根据获取到自身本地的当前时间、自身与失锁卫星之间的距离等参数,获取卫星向终端发送卫星信号的第一发射时间。然后,终端根据第一发射时间及实际时间计算第二发射时间,再根据当前时间及第二发 射时间计算终端与所述卫星之间的伪距。在伪距计算的整个过程中,不需要进行帧同步,从而避免了帧同步的完成需要等待的时间,缩短了终端计算伪距所消耗的时间,提高了伪距计算的速度。
在某些实施例中,由于接收机的晶振提供本地的当前时间可能存在一定的误差,因此为了能够获取到精准的当前时间,终端在获取本地的当前时间之前,可预先对当前时间进行调整,终端对当前时间进行调整包括:
方式一,首先,每隔预设时间获取终端预置的接收机的晶振温度;
该接收机内可预先设置有温度传感器,通过该温度传感器采集晶振温度。该预设时间可根据实际需要进行灵活设置,具体此处不作限定。
其次,获取晶振温度对应的晶振频偏;
终端本地可预先设置有晶振温度和晶振频偏之间的映射表或者换算关系,在得到晶振温度后,可通过查询该映射表获取与该晶振温度对应的晶振频偏,或通过换算关系计算与该晶振温度对应的晶振频偏。即终端还可以在得到晶振温度后,根据公式计算得到对应的晶振频偏。
再次,获取晶振频偏对应的时间偏差;
在得到晶振频偏后,终端可确定该晶振频偏对应的时间偏差。可以理解的是,也可以直接通过获取晶振温度对应的时间偏差。
最后,根据时间偏差调整接收机的本地时间,将调整后的本地时间设定为当前时间。
终端根据时间偏差调整本地时间的公式为:
Figure PCTCN2017094449-appb-000001
其中,
Figure PCTCN2017094449-appb-000002
为预设时间对应的终止时间,
Figure PCTCN2017094449-appb-000003
为预设时间对应的起起始时间,ttick为预设时间对应的总时间,Δtclk为时间偏差,此时可将预设时间对应的起终止时间
Figure PCTCN2017094449-appb-000004
设定为当前时间。
方式二,获取卫星向终端发送卫星信号的传输时间,以及获取卫星信号的初始发射时间;根据传输时间及初始发射时间,调整接收机的本地时间,将调整后的本地时间设定为当前时间。
其中,终端根据信号的传输时间及初始发射时间,调整接收机晶振的本地时间的公式为:
tr=tx+e
其中,tr为当前时间,tx为初始发射时间,e为传输时间。假设GPS卫星的信号传输时间为0.07秒,则当前时间为tr=tx+0.07。
在某些实施例中,终端获取自身与失锁卫星之间的距离时,首先获取终端当前的终端位置信息,以及获取失锁卫星的卫星位置信息。终端当前的相对位置信息可以通过至少一种定位装置获取到,可以通过在卫星失锁前获取的位置信息和定位装置获取的相对位置信息得到在地球坐标系下的终端位置信息,其中,该定位装置包括以下至少一种:惯性导航、视觉传感器或超声波等,例如,可根据终端预置的惯性导航、视觉传感器及超声波进行融合定位获取终端位置信息,或者是,仅根据其中的一种定位装置获取终端位置信息。需要说明的是,由定位装置得到的终端位置信息可能存在一定的误差,此时终端可以结合该误差计算终端位置信息。
需要说明的是,在获取终端位置信息时,可以建立位置模型,该模型可以通过终端之前的定位信息建立,也可以通过飞行的其他数据来建立,也可以是两者的结合,然后通过卡尔曼滤波对结果进行校准,使模型中的位置信息和实际定位装置获取的位置信息占不同的权重,求出最接近真实的终端位置信息。
失锁卫星的卫星位置信息可以是根据终端预置的导航电文中得到的卫星星历计算出的卫星位置信息。该卫星星历可以是失锁卫星在失锁前有效时间段内的卫星星历,例如,可以是失锁前一小时内的卫星星历,具体此处不作限定。
然后,根据终端位置信息及卫星位置信息,获取终端与失锁卫星之间的距离。例如,当终端位置信息为(x,y,z),卫星位置信息为(xj,yj,zj)时,根据以下公式计算终端与失锁卫星之间的几何距离rj为:
Figure PCTCN2017094449-appb-000005
获取终端与失锁卫星之间的距离可以是上述方法计算的几何距离,也可以是对几何距离进行误差校正后的距离。由于得到的卫星位置信息可能存在一定的误差,因此为了能够获取较精准的距离,根据终端位置信息及卫星位置信息获取该距离时,可先根据终端位置信息及卫星位置信息获取几何距离,以及获取失锁卫星的卫星误差、卫星信号的传播误差、接收机的接收机误差,再根据几何距离、卫星误差、传播误差及接收机误差获取该距离。该卫星误差可包括卫星钟差,该传播误差可包括卫星所在电离层的电离层修正量、卫星所在对流 层的对流层修正量、以及多路径效应引起的效应误差等,接收机误差可包括接收机的晶振钟差。
例如,可根据以下公式计算终端与失锁卫星之间的距离ρj为:
ρj=rj+c×Δtr-c×Δtjionotropmp
其中,ρj为终端与失锁卫星之间的距离,rj为终端与失锁卫星之间的几何距离,c为光速,Δtr为晶振钟差,Δtj为第j颗卫星的卫星钟差,Δiono为电离层修正量,Δtrop为对流层修正量,Δmp为多路径的效应误差。
在某些实施例中,在得到当前时间、以及终端与失锁卫星之间的距离后,终端可根据当前时间及距离计算失锁卫星向终端发送卫星信号的第一发射时间。终端根据当前时间及距离计算第一发射时间的公式为:
Figure PCTCN2017094449-appb-000006
其中,
Figure PCTCN2017094449-appb-000007
为第一发射时间,tr为当前时间,rj为几何距离,c为光速。
在某些实施例中,由于该距离与卫星误差、传播误差及接收机误差等有关,因此为了计算得到精准的第一发射时间,
此时终端可根据当前时间、距离、卫星钟差、晶振钟差、电离层修正量、对流层修正量、效应误差及光速计算第一发射时间,其公式为:
Figure PCTCN2017094449-appb-000008
其中,
Figure PCTCN2017094449-appb-000009
为第一发射时间,tr为当前时间,Δtr为晶振钟差,Δtj为第j颗卫星的卫星钟差,rj为终端与失锁卫星之间的几何距离,Δmp为多路径的效应误差,c为光速,Δiono为电离层修正量,该电离层修正量可由电离层修正参数和对应的电离层修正模型计算获得;Δtrop为对流层修正量,可选用合适的对流层模型计算对流层修正,例如,萨斯塔莫宁模型,霍普菲尔德模型等。
在某些实施例中,在得到第一发射时间后,终端在根据第一发射时间和从失锁卫星发射的导航电文解算的实际时间计算第二发射时间之前,首先可获取第一发射时间的发射误差,终端获取第一发射时间的发射误差包括:获取失锁卫星的卫星误差及卫星信号的传播误差;获取终端预置接收机的接收机误差;根据卫星误差、传播误差及接收机误差获取发射误差。其中,卫星的误差包括:卫星的钟差和卫星星历的误差,传播误差包括对流层误差、电离层误差、多路 径的效应误差、相对论引起的误差等等,接收机误差包括接收机钟差、融合定位误差等等。
上述不同的误差以不同的权重配合失锁的时间所计算得出发射误差,上述误差有时间误差,也有距离误差,在一定的传播速度下可以将距离误差转化为时间误差,得到发射误差。
在某些实施例中,这里因为在失锁前和重捕时,时间间隔较短,卫星和终端的移动距离较短,其卫星的误差、传播误差和接收机误差中的接收机钟差较小,在某些情况下可以省略,即通过融合定位带来的误差配合失锁的时间计算发射误差。
本申请实施例中,终端可在第一发射时间的发射误差满足预设条件时,对伪距进行计算,包括两种情况:一、当发射误差满足第一预设条件时,根据方式一计算伪距;二、当发射误差满足第二预设条件时,根据方式二计算伪距,以下将分别进行详细描述。
一、当发射误差满足第一预设条件时,根据方式一计算终端与失锁卫星之间的伪距,请参阅图3,本申请实施例中伪距计算方法的另一实施例包括:
301、获取终端本地的当前时间;
需要说明的是,本实施例中获取终端本地的当前时间与前述所示实施例中获取终端本地的当前时间类似,具体此处不再赘述。
302、获取终端与失锁卫星之间的距离;
需要说明的是,本实施例中获取终端与失锁卫星之间的距离,与前述所示实施例中获取终端与失锁卫星之间的距离类似,具体此处不再赘述。
303、根据当前时间及距离计算失锁卫星向终端发送卫星信号的第一发射时间;
需要说明的是,本实施例中根据当前时间及距离计算失锁卫星向终端发送卫星信号的第一发射时间,与前述所示实施例中根据当前时间及距离计算失锁卫星向终端发送卫星信号的第一发射时间类似,具体此处不再赘述。
304、获取第一发射时间的发射误差;
需要说明的是,本实施例中获取第一发射时间的发射误差,与前述所示实施例中获取第一发射时间的发射误差类似,具体此处不再赘述。
在得到第一发射时间的发射误差后,终端判断发射误差是否满足预设条件,该预设条件可包括第一预设条件和第二预设条件。当发射误差满足预设条件时,终端可执行根据第一发射时间和从失锁卫星发射的导航电文解算的实际时间计算第二发射时间的步骤。
当发射误差不满足预设条件时,终端按照以下方式计算伪距:首先,计算失锁卫星向终端发射卫星信号的第二发射时间tx为:
tx=tframe+Nbit×Tbit+Ncyc×Tcyc+Ncdp×Tcyc
其中,tframe为帧起始时刻,可以从导航电文中获取到;Nbit为1帧内比特计数,帧同步后可以获取到;Ncyc为1比特内码周期计数,比特同步后可以获取到;Ncdp为码相位,稳定跟踪卫星后可以获取到;Tbit为1比特对应的时间,Tcyc为1码周期对应的时间。在导航电文的解算过程中,首先获取的是码相位Ncdp,然后获取的是1比特内码周期计数Ncyc,最后获取的是1帧内比特计数Nbit。以GPS L1 C/A码为例,GPS L1 C/A码中1帧包含300比特,1比特包含20个码周期,1比特对应的时间为0.02秒,1码周期对应的时间为0.001秒。
在到的第二发射时间后,即可根据第二发射时间和当前时间计算伪距,伪距的计算公式如下:
ρ=(tr-tx)×c
其中,ρ为伪距,tr为当前时间,tx为第二发射时间,c为光速。
305、当发射误差满足第一预设条件时,获取从失锁卫星发射的导航电文解算的实际码相位时间;
终端判断发射误差是否满足预设条件包括:获取终端预置接收机通道的码周期;判断发射误差是否小于码周期的一半;若是,则确定发射误差满足第一预设条件。以GPS L1 C/A码为例,其码周期为1毫秒,当发射误差小于1/2码周期,即发射误差小于0.5毫秒时,确定发射误差满足第一预设条件。需要说明的是,根据不同类型码,该第一预设条件可进行灵活设置,具体此处不作限定。
为了能够对射误差是否满足第一预设条件进行准确判断,终端判断发射误差是否小于码周期的一半之前,当该发射误差小于码周期的一半时,可先获取接收机通道的比特周期,然后判断发射误差是否小于比特周期的一半,若是, 则执行判断发射误差是否小于码周期的一半的步骤。该第一预设条件包含于前述的预设条件。当发射误差满足第一预设条件时,获取从失锁卫星发射的导航电文解算的实际码相位时间。
需要说明的是,终端判断发射误差是否满足第一预设条件或第二预设条件的顺序不限定,可以先判断发射误差是否满足第一预设条件,再判断发射误差是否满足第二预设条件;也可以先判断发射误差是否满足第二预设条件,后判断发射误差是否满足第一预设条件;也可以是选择式判断,还可以是直接判定是满足第一预设条件还是满足第二预设条件,具体此处不作限定。
当发射误差满足第一预设条件时,终端可以从预先存储的该失锁卫星发射的导航电文中,解算出实际码相位时间。
306、获取接收机通道的比特周期;
307、根据第一发射时间、码周期、比特周期计算预估码相位时间;
308、根据第一发射时间、实际码相位时间及预估码相位时间计算第二发射时间;
当发射误差满足第一预设条件时,终端获取接收机通道的比特周期和码周期,这里导航电文可以在接收机通道内解码。然后,根据第一发射时间、码周期、比特周期计算预估码相位时间,因为第一发射时间为比特周期时间、码周期时间、码相位时间的和,当发射误差满足第一预设条件时,认为比特周期和比特周期计数的积即比特周期时间是准确的,认为码周期和码周期计数的积即码周期时间是准确的,再根据实际码相位时间及预估码相位时间计算第二发射时间,具体是从第一发射时间中除去不确定的预估码相位时间,然后再加上准确的从导航电文解算的实际码相位时间,即得到第二发射时间,其计算公式如下:
Figure PCTCN2017094449-appb-000010
其中,floor( )为向下取整函数,t0为比特周期时间与码周期时间的和,
Figure PCTCN2017094449-appb-000011
为第一发射时间,t2为第二发射时间,tcdp为实际码相位时间,tcdp的取值范围为0≤tcdp<b,Δt为实际码周期时间与预估码相位时间的差,b为码相位周期,
Figure PCTCN2017094449-appb-000012
为预估的码相位,n是1比特对应的时间。
由于第一发射时间、第二发射时间分为三个部分,分别是比特周期时间、码周期时间和码相位时间,因此当发射误差在1/2码周期以内时,比特周期时间是准确的,即
Figure PCTCN2017094449-appb-000013
码相位是准确的,从卫星导航电文中解算出的实际码周期,码周期时间这时会存在三种情况,分别是
Figure PCTCN2017094449-appb-000014
Figure PCTCN2017094449-appb-000015
因为发射误差小于1/2码周期,即认为的真实值在以
Figure PCTCN2017094449-appb-000016
为中心的1/2码周期为半径的范围内,则在
Figure PCTCN2017094449-appb-000017
一定的情况下取不同的码周期时间。
309、根据当前时间及第二发射时间计算终端与失锁卫星之间的伪距。
终端在得到第二发射时间后,可根据当前时间及第二发射时间计算终端与失锁卫星之间的伪距,其计算公式如下:
ρ=a×(tr-t2)×c
其中,ρ为伪距,tr为当前时间,t2为第二发射时间,a为与时间有关的常系数,用于转换时间单位,例如,将毫秒转换为秒,c为光速。通过上述公式的计算即可以得到准确的伪距,之后可以利用多个伪距计算卫星位置。
需要说明的是,终端计算得到的伪距可包括终端与至少三个失锁卫星之间的伪距,即可计算至少三个伪距,在得到至少三个伪距后,可根据该至少三个伪距进行定位。终端还可以根据自身的当前情况仅计算一个伪距后,结合未失锁卫星进行准确定位,或者,计算多个伪距后利用最小二乘法计算出目标伪距,根据,目标伪距进行定位。从而使得终端可快速计算出伪距,实现失锁重捕快 速解算。
以GPS L1 C/A码为例,其根据方式一计算伪距的公式为:
Figure PCTCN2017094449-appb-000018
其中,对于GPS L1C/A码,其比特周期为20ms,码周期为1ms。floor()为向下取整函数,
Figure PCTCN2017094449-appb-000019
为第一发射时间,当
Figure PCTCN2017094449-appb-000020
的单位为毫秒(ms)时,tr为当前时间,t0为比特周期时间与码周期时间的和,tcdp为实际码相位时间,tcdp的取值范围为0≤tcdp≤1(ms),Δt为实际码周期时间与预估码相位时间的差,码周期为1毫秒(ms),
Figure PCTCN2017094449-appb-000021
为预估的码相位,0.001用于将毫秒转化成秒,c为光速,ρ为伪距。通过上述方法即可计算出真实的伪距。
通过上述方法,终端可根据获取到的当前时间、终端与失锁卫星之间的距离计算第一发送时间,并且在第一发射时间的发射误差满足第一预设条件时,根据在稳定跟踪卫星后获取到的实际码相位时间、根据比特周期和码周期计算得到的预估码相位时间及第一发射时间计算第二发射时间,再根据当前时间及第二发射时间计算终端与失锁卫星之间的伪距,从而可以在不用进行帧同步和比特同步的情况下,通过使用准确的码相位时间替换预估的码相位时间来得到准确的第二发射时间,计算出准确的伪距,从而计算出准确的位置信息。
二、当发射误差满足第二预设条件时,根据方式二计算终端与失锁卫星之间的伪距,请参阅图4,本申请实施例中伪距计算方法的另一实施例包括:
401、获取终端本地的当前时间;
402、获取终端与失锁卫星之间的距离;
403、根据当前时间及距离计算失锁卫星向终端发送卫星信号的第一发射时间;
404、获取第一发射时间的发射误差;
需要说明的是,本实施例中的步骤401至步骤404与前述图3所示实施例中的步骤301至步骤304类似,具体此处不再赘述。
405、当发射误差满足第二预设条件时,获取从失锁卫星发射的导航电文解算的实际码相位时间和预设比特码周期计数对应的实际码周期时间;
终端判断发射误差是否满足预设条件包括:获取终端预置接收机通道的码周期;判断发射误差是否小于码周期的一半;若否,则获取接收机通道的比特周期,当发射误差小于比特周期的一半时,确定发射误差满足第二预设条件。需要说明的是,根据不同类型码,该第二预设条件可进行灵活设置,具体此处不作限定。
为了能够对射误差是否满足第二预设条件进行准确判断,终端判断发射误差是否小于码周期的一半后,当该发射误差大于码周期的一半时,可先获取接收机通道的比特周期,然后判断发射误差是否小于比特周期的一半;若是,则执行判断发射误差是否小于码周期的一半的步骤。该第二预设条件包含于前述的预设条件。当发射误差满足第二预设条件时,终端获取从失锁卫星发射的导航电文解算的实际码相位时间和预设比特码周期计数对应的实际码周期时间。
需要说明的是,终端可以先判断发射误差是否小于码周期的一半,再判断发射误差是否小于比特周期的一半;也可以是先判断发射误差是否小于比特周期的一半,再判断发射误差是否小于码周期的一半;也可以是选择式判断,还可以是同时判断是发射误差是否小于码周期的一半或是否小于比特周期的一半,具体此处不作限定。
406、根据第一发射时间和比特周期计算预估码相位时间与预估码周期时间的和;
407、根据第一发射时间、实际码周期时间、实际码相位时间、预估码相位时间与预估码周期时间的和计算第二发射时间;
当发射误差满足第二预设条件时,终端获取从失锁卫星发射的导航电文解算的实际码相位时间和实际码周期时间,以及获取接收机通道的比特周期,这里导航电文可以在接收机通道内解码。然后,终端根据第一发射时间和比特周期计算预估码相位时间与预估码周期时间的和,因为第一发射时间为比特周期时间、码周期时间、码相位时间的和,当发射误差满足第二预设条件时,认为比特周期和比特周期计数的积即比特周期时间是准确的,再根据第一发射时间、实际码周期时间、实际码相位时间、预估码相位时间与预估码周期时间的和计算第二发射时间,具体是从第一发射时间中除去不确定的预估码相位时间与预估码周期时间的和,然后再加上准确的从导航电文解算的实际码相位时间 和码周期时间,即得到第二发射时间,其计算公式如下:
Figure PCTCN2017094449-appb-000022
其中,floor()为向下取整函数,t0为预估码相位时间与预估码周期时间的和,
Figure PCTCN2017094449-appb-000023
为第一发射时间,t2为第二发射时间,tcyc为实际码周期时间,tcdp为实际码相位时间,tcyc的取值范围为0≤tcyc≤n,Δt为实际码周期时间与实际码相位时间的和与预估码周期时间预估码相位时间的和的差,
Figure PCTCN2017094449-appb-000024
为预估码周期时间预估码相位时间的和,n是1比特对应的时间。
由于第一发射时间、第二发射时间分为三个部分,分别是比特周期时间、码周期时间和码相位时间,因此当发射误差在1/2码周期以外且在1/2比特周期内时,从卫星导航电文中解算出的实际比特周期,比特周期时间这时会存在三种情况,分别是
Figure PCTCN2017094449-appb-000025
因为发射误差在1/2码周期和1/2比特周期内,即认为的真实值在以
Figure PCTCN2017094449-appb-000026
为中心的1/2比特周期到1/2码周期的半径的范围内,则在
Figure PCTCN2017094449-appb-000027
一定的情况下取不同的比特周期时间。
408、根据当前时间及第二发射时间计算终端与失锁卫星之间的伪距。
终端在得到第二发射时间后,可根据当前时间及第二发射时间计算终端与失锁卫星之间的伪距,其计算公式如下:
ρ=a×(tr-t2)×c
其中,ρ为伪距,tr为当前时间,t2为第二发射时间,a为与时间有关的常系数,用于转换时间单位,例如,将毫秒转换为秒,c为光速。通过上述公式的计算即可以得到准确的伪距,之后可以利用多个伪距计算卫星位置。
需要说明的是,终端计算得到的伪距可包括终端与至少三个失锁卫星之间的伪距,即可计算至少三个伪距,在得到至少三个伪距后,可根据该至少三个伪距进行定位。终端还可以根据自身的当前情况仅计算一个伪距后,结合未失 锁卫星进行准确定位,或者,计算多个伪距后利用最小二乘法计算出目标伪距,根据,目标伪距进行定位。从而使得终端可快速计算出伪距,实现失锁重捕快速解算。
以GPS L1 C/A码为例,其根据方式二计算伪距的公式为:
Figure PCTCN2017094449-appb-000028
其中,对于GPS L1C/A码,其比特周期为20ms,码周期为1ms,floor()为向下取整函数,t0为预估码相位时间与预估码周期时间的和,
Figure PCTCN2017094449-appb-000029
为第一发射时间,tr为当前时间,tcyc为实际码周期时间,tcdp为实际码相位时间,Δt为实际码周期时间与实际码相位时间的和与预估码周期时间预估码相位时间的和的差,
Figure PCTCN2017094449-appb-000030
为预估码周期时间预估码相位时间的和,0.001用于将毫秒转化成秒,c为光速,ρ为伪距。通过上述方法即可计算出真实的伪距。
通过上述方法,终端可根据获取到的当前时间、终端与失锁卫星之间的距离计算第一发送时间,并且在第一发射时间的发射误差满足第二预设条件时,根据在稳定跟踪卫星后获取到的实际码相位时间、根据比特同步后获取的实际码周期时间、和根据比特周期计算得到的预估码相位时间与预估码周期时间的和、以及第一发射时间计算第二发射时间,再根据当前时间及第二发射时间计算终端与失锁卫星之间的伪距,从而可以在不用进行帧同步的情况下,计算出准确的伪距,从而计算出准确的位置信息。
上面对本申请实施例中对伪距计算方法进行了描述,下面从硬件处理的角度对本申请实施例中的终端进行描述,如图5所示,本申请实施例中的终端一个实施例包括:
处理器501和存储器502(其中终端中的处理器501的数量可以一个或多个,图5中以一个处理器501为例)。在本发明的一些实施例中,处理器501和存储器502可通过总线或其它方式连接,其中,图5中以通过总线连接为例。
其中,存储器502中存储有程序代码,通过调用存储器502存储的程序代 码,处理器501用于执行以下步骤:
获取终端本地的当前时间;
获取终端与失锁卫星之间的距离,失锁卫星是在未失锁前为终端提供定位服务的卫星;
根据当前时间及距离计算失锁卫星向终端发送卫星信号的第一发射时间;
根据第一发射时间和从失锁卫星发射的导航电文解算的实际时间计算第二发射时间;
根据当前时间及第二发射时间计算终端与失锁卫星之间的伪距。
在某些实施例中,处理器501还用于,获取第一发射时间的发射误差;
判断发射误差是否满足预设条件;
若是,则执行根据第一发射时间和从失锁卫星发射的导航电文解算的实际时间计算第二发射时间的步骤。
在某些实施例中,处理器501还用于,获取失锁卫星的卫星误差及卫星信号的传播误差;
获取终端预置接收机的接收机误差;
根据卫星误差、传播误差及接收机误差获取发射误差。
在某些实施例中,处理器501还用于,获取终端预置接收机通道的码周期;
当发射误差小于码周期的一半时,则确定发射误差满足第一预设条件,第一预设条件包含于预设条件。
在某些实施例中,处理器501还用于,当发射误差满足第一预设条件时,获取从失锁卫星发射的导航电文解算的实际码相位时间;
获取接收机通道的比特周期;
根据第一发射时间、码周期、比特周期计算预估码相位时间;
根据第一发射时间、实际码相位时间和预估码相位时间计算第二发射时间。
在某些实施例中,处理器501还用于,当发射误差大于码周期的一半时,获取接收机通道的比特周期;
当发射误差小于比特周期的一半时,则确定发射误差满足第二预设条件,第二预设条件包含于预设条件。
在某些实施例中,处理器501还用于,当发射误差满足第二预设条件时,获取从失锁卫星发射的导航电文解算的实际码相位时间和预设比特内码周期计数对应的实际码周期时间;
根据第一发射时间和比特周期计算预估码相位时间与预估码周期时间的和;
根据第一发射时间、实际码周期时间、实际码相位时间及预估码相位时间与预估码周期时间的和计算第二发射时间。
在某些实施例中,处理器501还用于,获取终端当前的终端位置信息;
获取失锁卫星的卫星位置信息;
根据终端位置信息及卫星位置信息获取距离。
在某些实施例中,处理器501还用于,通过至少一种定位装置获取终端位置信息,其中,定位装置包括以下至少一种:惯性导航、视觉传感器或超声波。
在某些实施例中,处理器501还用于,根据终端位置信息及卫星位置信息获取几何距离;
根据几何距离、卫星误差、传播误差及接收机误差获取距离。
在某些实施例中,处理器501还用于,每隔预设时间获取终端预置的接收机的晶振温度;
获取晶振温度对应的晶振频偏;
获取晶振频偏对应的时间偏差;
根据时间偏差调整接收机的本地时间,将调整后的本地时间设定为当前时间。
在某些实施例中,处理器501还用于,获取卫星向终端发送卫星信号的传输时间,以及获取卫星信号的初始发射时间;
根据传输时间及初始发射时间,调整接收机的本地时间,将调整后的本地时间设定为当前时间。
在某些实施例中,处理器501还用于,根据至少三个伪距进行定位。
需要说明的是,该终端的处理器501执行的步骤与前述图2至图4所示实施例中的步骤类似,具体此处不再赘述。
本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术 方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (28)

  1. 一种伪距计算方法,其特征在于,包括:
    获取终端本地的当前时间;
    获取所述终端与失锁卫星之间的距离,所述失锁卫星是在未失锁前为所述终端提供定位服务的卫星;
    根据所述当前时间及所述距离计算所述失锁卫星向所述终端发送卫星信号的第一发射时间;
    根据所述第一发射时间和从所述失锁卫星发射的导航电文解算的实际时间计算第二发射时间;
    根据所述当前时间及所述第二发射时间计算所述终端与所述失锁卫星之间的伪距。
  2. 根据权利要求1所述的方法,其特征在于,所述根据所述第一发射时间和从所述失锁卫星发射的导航电文解算的实际时间计算第二发射时间之前,所述方法还包括:
    获取所述第一发射时间的发射误差;
    判断所述发射误差是否满足预设条件;
    若是,则执行根据所述第一发射时间和从所述失锁卫星发射的导航电文解算的实际时间计算第二发射时间的步骤。
  3. 根据权利要求2所述的方法,其特征在于,所述获取所述第一发射时间的发射误差包括:
    获取所述失锁卫星的卫星误差及所述卫星信号的传播误差;
    获取所述终端预置接收机的接收机误差;
    根据所述卫星误差、所述传播误差及所述接收机误差获取所述发射误差。
  4. 根据权利要求2所述的方法,其特征在于,所述判断所述发射误差是否满足预设条件包括:
    获取所述终端预置接收机通道的码周期;
    当所述发射误差小于所述码周期的一半时,则确定所述发射误差满足第一预设条件,所述第一预设条件包含于所述预设条件。
  5. 根据权利要求4所述的方法,其特征在于,所述根据所述第一发射时 间和从所述失锁卫星发射的导航电文解算的实际时间计算第二发射时间包括:
    当所述发射误差满足所述第一预设条件时,获取从所述失锁卫星发射的导航电文解算的实际码相位时间;
    获取所述接收机通道的比特周期;
    根据所述第一发射时间、所述码周期、所述比特周期计算预估码相位时间;
    根据所述第一发射时间、所述实际码相位时间和所述预估码相位时间计算所述第二发射时间。
  6. 根据权利要求4所述的方法,其特征在于,在获取所述终端预置接收机通道的码周期之后,所述方法还包括:
    当所述发射误差大于所述码周期的一半时,获取所述接收机通道的比特周期;
    当所述发射误差小于比特周期的一半时,则确定所述发射误差满足第二预设条件,所述第二预设条件包含于所述预设条件。
  7. 根据权利要求6所述的方法,其特征在于,所述根据所述第一发射时间和从所述失锁卫星发射的导航电文解算的实际时间计算第二发射时间包括:
    当所述发射误差满足所述第二预设条件时,获取从所述失锁卫星发射的导航电文解算的实际码相位时间和预设比特内码周期计数对应的实际码周期时间;
    根据所述第一发射时间和所述比特周期计算预估码相位时间与预估码周期时间的和;
    根据所述第一发射时间、所述实际码周期时间、所述实际码相位时间及预估码相位时间与预估码周期时间的和计算所述第二发射时间。
  8. 根据权利要求1所述的方法,其特征在于,所述获取所述终端与失锁卫星之间的距离包括:
    获取所述终端当前的终端位置信息;
    获取所述失锁卫星的卫星位置信息;
    根据所述终端位置信息及所述卫星位置信息获取所述距离。
  9. 根据权利要求8所述的方法,其特征在于,所述获取所述终端当前的终端位置信息包括:
    通过至少一种定位装置获取所述终端位置信息,其中,所述定位装置包括以下至少一种:惯性导航、视觉传感器或超声波。
  10. 根据权利要求8所述的方法,其特征在于,根据所述终端位置信息及所述卫星位置信息获取所述距离包括:
    根据所述终端位置信息及所述卫星位置信息获取几何距离;
    根据所述几何距离、所述卫星误差、所述传播误差及所述接收机误差获取所述距离。
  11. 根据权利要求1所述的方法,其特征在于,所述获取终端本地的当前时间之前,所述方法还包括:
    每隔预设时间获取所述终端预置的接收机的晶振温度;
    获取所述晶振温度对应的晶振频偏;
    获取所述晶振频偏对应的时间偏差;
    根据所述时间偏差调整所述接收机的本地时间,将调整后的本地时间设定为所述当前时间。
  12. 根据权利要求1所述的方法,其特征在于,所述获取终端本地的当前时间之前,所述方法还包括:
    获取所述卫星向所述终端发送卫星信号的传输时间,以及获取所述卫星信号的初始发射时间;
    根据所述传输时间及所述初始发射时间,调整所述接收机的本地时间,将调整后的本地时间设定为所述当前时间。
  13. 根据权利要求1至12中任一项所述的方法,其特征在于,所述根据所述当前时间及所述第二发射时间计算所述终端与所述失锁卫星之间的伪距之后,所述方法还包括:
    根据至少三个所述伪距进行定位。
  14. 一种终端,其特征在于,所述终端包括处理器,所述处理器用于,
    获取终端本地的当前时间;
    获取所述终端与失锁卫星之间的距离,所述失锁卫星是在未失锁前为所述终端提供定位服务的卫星;
    根据所述当前时间及所述距离计算所述失锁卫星向所述终端发送卫星信 号的第一发射时间;
    根据所述第一发射时间和从所述失锁卫星发射的导航电文解算的实际时间计算第二发射时间;
    根据所述当前时间及所述第二发射时间计算所述终端与所述失锁卫星之间的伪距。
  15. 根据权利要求14所述的终端,其特征在于,所述处理器还用于,获取所述第一发射时间的发射误差;
    判断所述发射误差是否满足预设条件;
    若是,则执行根据所述第一发射时间和从所述失锁卫星发射的导航电文解算的实际时间计算第二发射时间的步骤。
  16. 根据权利要求15所述的终端,其特征在于,所述处理器还用于,获取所述失锁卫星的卫星误差及所述卫星信号的传播误差;
    获取所述终端预置接收机的接收机误差;
    根据所述卫星误差、所述传播误差及所述接收机误差获取所述发射误差。
  17. 根据权利要求15所述的终端,其特征在于,所述处理器还用于,获取所述终端预置接收机通道的码周期;
    当所述发射误差小于所述码周期的一半时,则确定所述发射误差满足第一预设条件,所述第一预设条件包含于所述预设条件。
  18. 根据权利要求17所述的终端,其特征在于,所述处理器还用于,当所述发射误差满足所述第一预设条件时,获取从所述失锁卫星发射的导航电文解算的实际码相位时间;
    获取所述接收机通道的比特周期;
    根据所述第一发射时间、所述码周期、所述比特周期计算预估码相位时间;
    根据所述第一发射时间、所述实际码相位时间和所述预估码相位时间计算所述第二发射时间。
  19. 根据权利要求17所述的终端,其特征在于,所述处理器还用于,当所述发射误差大于所述码周期的一半时,获取所述接收机通道的比特周期;
    当所述发射误差小于比特周期的一半时,则确定所述发射误差满足第二预设条件,所述第二预设条件包含于所述预设条件。
  20. 根据权利要求19所述的终端,其特征在于,所述处理器还用于,当所述发射误差满足所述第二预设条件时,获取从所述失锁卫星发射的导航电文解算的实际码相位时间和预设比特内码周期计数对应的实际码周期时间;
    根据所述第一发射时间和所述比特周期计算预估码相位时间与预估码周期时间的和;
    根据所述第一发射时间、所述实际码周期时间、所述实际码相位时间及预估码相位时间与预估码周期时间的和计算所述第二发射时间。
  21. 根据权利要求14所述的终端,其特征在于,所述处理器还用于,获取所述终端当前的终端位置信息;
    获取所述失锁卫星的卫星位置信息;
    根据所述终端位置信息及所述卫星位置信息获取所述距离。
  22. 根据权利要求21所述的终端,其特征在于,所述处理器还用于,通过至少一种定位装置获取所述终端位置信息,其中,所述定位装置包括以下至少一种:惯性导航、视觉传感器或超声波。
  23. 根据权利要求21所述的终端,其特征在于,所述处理器还用于,根据所述终端位置信息及所述卫星位置信息获取几何距离;
    根据所述几何距离、所述卫星误差、所述传播误差及所述接收机误差获取所述距离。
  24. 根据权利要求14所述的终端,其特征在于,所述处理器还用于,每隔预设时间获取所述终端预置的接收机的晶振温度;
    获取所述晶振温度对应的晶振频偏;
    获取所述晶振频偏对应的时间偏差;
    根据所述时间偏差调整所述接收机的本地时间,将调整后的本地时间设定为所述当前时间。
  25. 根据权利要求14所述的终端,其特征在于,所述处理器还用于,获取所述卫星向所述终端发送卫星信号的传输时间,以及获取所述卫星信号的初始发射时间;
    根据所述传输时间及所述初始发射时间,调整所述接收机的本地时间,将调整后的本地时间设定为所述当前时间。
  26. 根据权利要求14至25中任一项所述的终端,其特征在于,所述处理器还用于,根据至少三个所述伪距进行定位。
  27. 一种包含指令的计算机程序产品,其特征在于,当所述计算机程序产品在计算机上运行时,使得计算机执行如权利要求1至13中任意一项所述的伪距计算方法。
  28. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述权利要求1至13中任一所述的伪距计算方法。
PCT/CN2017/094449 2017-07-26 2017-07-26 一种伪距计算方法和终端 Ceased WO2019019044A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201780006832.6A CN108513623B (zh) 2017-07-26 2017-07-26 一种伪距计算方法和终端
PCT/CN2017/094449 WO2019019044A1 (zh) 2017-07-26 2017-07-26 一种伪距计算方法和终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2017/094449 WO2019019044A1 (zh) 2017-07-26 2017-07-26 一种伪距计算方法和终端

Publications (1)

Publication Number Publication Date
WO2019019044A1 true WO2019019044A1 (zh) 2019-01-31

Family

ID=63375234

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/094449 Ceased WO2019019044A1 (zh) 2017-07-26 2017-07-26 一种伪距计算方法和终端

Country Status (2)

Country Link
CN (1) CN108513623B (zh)
WO (1) WO2019019044A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112462398A (zh) * 2020-11-18 2021-03-09 北京中捷时代航空科技有限公司 一种卫星信号失锁重定位方法及系统
CN112487729A (zh) * 2020-10-30 2021-03-12 佛山职业技术学院 提高嵌入式系统时钟精度的方法、系统、设备及存储介质
CN117991307A (zh) * 2024-04-03 2024-05-07 江苏深蓝航天有限公司 导航接收机的位移的求解方法和装置
CN119087481A (zh) * 2024-08-30 2024-12-06 广东海欣智能科技有限公司 室内定位方法、设备及产品

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111159618B (zh) * 2019-11-25 2024-04-09 南京六九零二科技有限公司 一种提高北斗二号卫星接收机pvt计算速度的方法
CN110907972B (zh) * 2019-12-04 2022-02-25 辰芯科技有限公司 一种位置定位、速度定位方法、装置及定位终端
CN113093250B (zh) * 2021-06-04 2021-08-27 腾讯科技(深圳)有限公司 伪距观测数据修复方法、定位信息确定方法及装置
CN114185066B (zh) * 2021-12-08 2025-07-15 重庆两江卫星移动通信有限公司 一种基于gnss的快速定位方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120026033A1 (en) * 2010-08-02 2012-02-02 Honda Motor Co., Ltd. Position calculation method and apparatus with gps
CN103744093A (zh) * 2014-01-06 2014-04-23 北京北斗星通导航技术股份有限公司 一种北斗导航接收机定位引擎及定位方法
CN104678419A (zh) * 2015-03-25 2015-06-03 天津七六四通信导航技术有限公司 一种卫星导航接收机失锁重捕后快速定位方法
CN105093242A (zh) * 2015-07-24 2015-11-25 北京航天长征飞行器研究所 一种卫星接收机失锁后快速捕获和定位方法
CN106199667A (zh) * 2016-06-17 2016-12-07 南京理工大学 Gps/sins超紧组合导航系统中的快速重定位方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2459334B (en) * 2008-04-24 2012-07-25 Nordnav Technologies Ab Method of positioning using satellites
CN102486540B (zh) * 2010-12-06 2013-12-04 中国科学院微电子研究所 一种应用于全球卫星定位与导航系统中的快速定位方法
CN102692632A (zh) * 2011-03-23 2012-09-26 中国科学院微电子研究所 消除卫星定位系统接收机定位过程中模糊度的方法及装置
CN102778683A (zh) * 2012-07-09 2012-11-14 北京邮电大学 一种北斗接收机及其热启动方法
CN104753464B (zh) * 2013-12-29 2017-06-30 展讯通信(上海)有限公司 一种移动终端中温度补偿晶振的频率校准方法和装置
CN104865587B (zh) * 2015-06-15 2017-05-17 中国人民解放军国防科学技术大学 基于geo星座粗定位的北斗接收机快速定位方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120026033A1 (en) * 2010-08-02 2012-02-02 Honda Motor Co., Ltd. Position calculation method and apparatus with gps
CN103744093A (zh) * 2014-01-06 2014-04-23 北京北斗星通导航技术股份有限公司 一种北斗导航接收机定位引擎及定位方法
CN104678419A (zh) * 2015-03-25 2015-06-03 天津七六四通信导航技术有限公司 一种卫星导航接收机失锁重捕后快速定位方法
CN105093242A (zh) * 2015-07-24 2015-11-25 北京航天长征飞行器研究所 一种卫星接收机失锁后快速捕获和定位方法
CN106199667A (zh) * 2016-06-17 2016-12-07 南京理工大学 Gps/sins超紧组合导航系统中的快速重定位方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112487729A (zh) * 2020-10-30 2021-03-12 佛山职业技术学院 提高嵌入式系统时钟精度的方法、系统、设备及存储介质
CN112462398A (zh) * 2020-11-18 2021-03-09 北京中捷时代航空科技有限公司 一种卫星信号失锁重定位方法及系统
CN112462398B (zh) * 2020-11-18 2024-02-23 北京中捷时代航空科技有限公司 一种卫星信号失锁重定位方法及系统
CN117991307A (zh) * 2024-04-03 2024-05-07 江苏深蓝航天有限公司 导航接收机的位移的求解方法和装置
CN119087481A (zh) * 2024-08-30 2024-12-06 广东海欣智能科技有限公司 室内定位方法、设备及产品

Also Published As

Publication number Publication date
CN108513623B (zh) 2022-03-18
CN108513623A (zh) 2018-09-07

Similar Documents

Publication Publication Date Title
WO2019019044A1 (zh) 一种伪距计算方法和终端
US7987048B2 (en) Method and apparatus for computing position using instantaneous doppler measurements from satellites
US8255160B2 (en) Integrated mobile terminal navigation
US11802971B2 (en) Real-time kinematic (RTK) and differential global navigation satellite system (DGNSS) corrections using multiple reference stations
EP1851564B1 (en) Method and apparatus for enhanced autonomous gps
US9182493B2 (en) Fine time assistance for global navigation satellite systems
US9354321B2 (en) Method for position determination with measurement stitching
EP2634593B1 (en) Positioning using a local wave-propagation model
US20100090889A1 (en) Precise orbit determination system and method using gps data and galileo data
US20120172054A1 (en) System and method for cooperative positioning
KR101452622B1 (ko) 내비게이션 비트 경계 결정 장치 및 그의 방법
WO2004113948A1 (en) Method and apparatus for locating position of a satellite signal receiver
EP2380036A1 (en) Navigation receiver and method for combined use of a standard rtk system and a global carrier-phase differential positioning system
US12554024B2 (en) Map-aided satellite selection
US8350756B2 (en) Detecting and compensating for erroneous time measurement for mobile device position calculation
KR100691407B1 (ko) 측위 시스템, 정보 제공 장치, 단말 장치, 정보 제공장치의 제어 방법, 정보 제공 장치의 제어 프로그램을기록한 컴퓨터 판독 가능한 기록 매체
CN113835109B (zh) 终端的定位方法、装置、电子设备、存储介质及程序产品
KR20230050331A (ko) 기지국이 없는 rtk gnss 포지셔닝
KR102609054B1 (ko) 위성 항법 시스템 수신기의 위치 추정 시스템 및 방법
US20230194731A1 (en) Calculating a position of one device relative to another
JP2010276605A (ja) モバイルデバイスの位置の決定方法
US9989651B2 (en) Geopositioning method with trust index, and associated terminal
WO2018052738A1 (en) Detection of outlier range measurements using spatial displacement data
KR20190080021A (ko) 위성정보를 이용한 위치 결정장치 및 그 방법
CN115585807B (zh) 基于机器学习的gnss/ins组合导航方法

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: 17919154

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 17919154

Country of ref document: EP

Kind code of ref document: A1