WO2019019044A1 - Pseudorange calculation method and terminal - Google Patents

Pseudorange calculation method and terminal 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
Application number
PCT/CN2017/094449
Other languages
French (fr)
Chinese (zh)
Inventor
张伟
Original Assignee
深圳市大疆创新科技有限公司
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 深圳市大疆创新科技有限公司 filed Critical 深圳市大疆创新科技有限公司
Priority to PCT/CN2017/094449 priority Critical patent/WO2019019044A1/en
Priority to CN201780006832.6A priority patent/CN108513623B/en
Publication of WO2019019044A1 publication Critical patent/WO2019019044A1/en

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

A pseudorange calculation method and terminal, computer program product and computer storage medium, the method comprising: obtaining the current local time of a terminal (201); obtaining a distance between the terminal and a lost-lock satellite (202), the lost-lock satellite being the satellite that provided positioning service for the terminal before the lock was lost; calculating, according to the current time and the distance, a first transmission time used by the lost-lock satellite to transmit a satellite signal to the terminal (203); calculating a second transmission time according to the first transmission time and according to an actual time resolved from a navigation message transmitted by the lost-lock satellite (204); and calculating a pseudorange between the terminal and the lost-lock satellite according to the current time and the second transmission time (205). According to the method, frame synchronization is not needed in a pseudorange calculation process, thereby avoiding the requirement of waiting for a long time for the completion of frame synchronization, shortening the time used by the terminal to calculate the pseudorange, and increasing the speed of the pseudorange calculation.

Description

一种伪距计算方法和终端Pseudorange calculation method and terminal 技术领域Technical field
本申请涉及卫星导航技术领域,尤其涉及一种伪距计算方法和终端。The present application relates to the field of satellite navigation technology, and in particular, to a pseudorange calculation method and a terminal.
背景技术Background technique
为了实现定位功能,一般无人机、车辆、手机等终端上都会通过设置全球卫星导航系统(Global Navigation Satellite System,GNSS)来实现,例如,全球定位系统(Global Positioning System,GPS)、北斗卫星导航系统(BeiDou Navigation Satellite System,BDS)、格洛纳斯导航系统(Global Navigation Satellite System,GLONASS)和伽利略导航系统GALILEO等。当GNSS的导航卫星信号较弱时,例如当终端在移动的过程中经过山洞、桥洞、地下通道、楼宇遮挡等经过遮挡环境或遇到突发干扰时,导致终端通过自身预置的接收机无法跟踪锁定卫星信号,从而造成卫星信号失锁。当卫星信号重新出现后,进行恢复时终端需要通过该接收机重新捕获并跟踪卫星信号,实现重新定位,这一过程称之为失锁重捕。In order to realize the positioning function, terminals such as drones, vehicles, and mobile phones are generally implemented by setting a Global Navigation Satellite System (GNSS), for example, Global Positioning System (GPS), Beidou satellite navigation. System (BeiDou Navigation Satellite System, BDS), Global Navigation Satellite System (GLONASS) and Galileo navigation system GALILEO. When the GNSS navigation satellite signal is weak, for example, when the terminal moves through the cave, bridge hole, underground passage, building occlusion, etc., or encounters sudden interference, the terminal cannot pass the preset receiver. The satellite signal is locked and locked, causing the satellite signal to lose lock. When the satellite signal reappears, the terminal needs to recapture and track the satellite signal through the receiver to recover, and the process is called re-locking.
当部分卫星失锁后,若终端通过接收机无法准确定位,则终端可根据失锁前的位置信息、速度信息、失锁时间以及应用场景等估算出当前的位置范围。例如,终端首先通过接收机获取当前时间,并查询接收机的通道是否完成比特同步和帧同步,当完成比特同步和帧同步时,可读取接收机的通道的码相位、预设比特内码周期计数、预设帧内比特计数、预设比特对应的时间、以及预设码周期对应的时间等参数。然后根据这些参数估算卫星信号的发射时间,再根据本地时间及发射时间等估算伪距,最后根据得到的伪距进行定位。When some satellites lose lock, if the terminal cannot be accurately located through the receiver, the terminal can estimate the current position range according to the position information, speed information, lost lock time and application scenario before the lock is lost. For example, the terminal first acquires the current time through the receiver, and queries whether the channel of the receiver completes the bit synchronization and the frame synchronization. When the bit synchronization and the frame synchronization are completed, the code phase of the channel of the receiver and the preset bit code are read. The cycle count, the preset intra-frame bit count, the time corresponding to the preset bit, and the time corresponding to the preset code period. Then, based on these parameters, the transmission time of the satellite signal is estimated, and then the pseudorange is estimated according to the local time and the transmission time, and finally, the positioning is performed according to the obtained pseudorange.
由于在估算卫星信号的发射时间时,不确定范围较大,不仅需要完成比特同步,而且需要完成帧同步后,才能根据码相位、码周期计数、比特计数、预设比特对应的时间、以及预设码周期对应的时间等参数估算出发射时间,再根据发射时间进一步估算伪距,而帧同步的完成需要等待较长时间,因此导致终端计算得到伪距的等待时间较长。 Since the uncertainty range is large when estimating the transmission time of the satellite signal, it is not only necessary to complete the bit synchronization, but also needs to complete the frame synchronization, according to the code phase, the code period count, the bit count, the time corresponding to the preset bit, and the pre- The time corresponding to the code period is used to estimate the transmission time, and then the pseudorange is further estimated according to the transmission time, and the completion of the frame synchronization needs to wait for a long time, so that the waiting time for the terminal to calculate the pseudorange is longer.
发明内容Summary of the invention
为了解决现有技术中计算伪距时的等待时间较长的技术问题,本申请实施例提供了一种伪距计算方法,终端通过估计的发射时间和获取的部分实际时间计算真实的发射时间,从而得到伪距。实现了在计算伪距的过程中不需要进行帧同步,提高了伪距计算的速度。本申请实施例还提供了终端、计算机程序产品及计算机存储介质等。In order to solve the technical problem that the waiting time is long when the pseudorange is calculated in the prior art, 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.
本申请实施例第一方面提供了一种伪距计算方法,可包括:A first aspect of the embodiments of the present application provides a pseudorange calculation method, which may include:
获取终端本地的当前时间;Get the current time of the terminal local;
获取所述终端与失锁卫星之间的距离,所述失锁卫星是在未失锁前为所述终端提供定位服务的卫星;Obtaining a distance between the terminal and a lost lock satellite, the satellite that provides positioning service for the terminal before the lock is lost;
根据所述当前时间及所述距离计算所述失锁卫星向所述终端发送卫星信号的第一发射时间;Calculating, according to the current time and the distance, a first transmission time that the lost-lock satellite transmits a satellite signal to the terminal;
根据所述第一发射时间和从所述失锁卫星发射的导航电文解算的实际时间计算第二发射时间;Calculating a second transmission time according to the first transmission time and an actual time calculated from a navigation message transmitted by the lost lock satellite;
根据所述当前时间及所述第二发射时间计算所述终端与所述失锁卫星之间的伪距。Calculating a pseudorange between the terminal and the lost lock satellite according to the current time and the second transmission time.
可选地,所述根据所述第一发射时间和从所述失锁卫星发射的导航电文解算的实际时间计算第二发射时间之前,所述方法还包括:Optionally, before 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, the method further includes:
获取所述第一发射时间的发射误差;Obtaining a transmission error of the first transmission time;
判断所述发射误差是否满足预设条件;Determining whether the transmission error satisfies a preset condition;
若是,则执行根据所述第一发射时间和从所述失锁卫星发射的导航电文解算的实际时间计算第二发射时间的步骤。If so, the step of calculating the second transmission time based on the first transmission time and the actual time of the navigation message transmitted from the lost lock satellite is performed.
可选地,所述获取所述第一发射时间的发射误差包括:Optionally, the acquiring the transmission error of the first transmission time includes:
获取所述失锁卫星的卫星误差及所述卫星信号的传播误差;Obtaining a satellite error of the lost lock satellite and a propagation error of the satellite signal;
获取所述终端预置接收机的接收机误差;Obtaining a receiver error of the terminal preset receiver;
根据所述卫星误差、所述传播误差及所述接收机误差获取所述发射误差。The transmission error is obtained based on the satellite error, the propagation error, and the receiver error.
可选地,所述判断所述发射误差是否满足预设条件包括:Optionally, the determining whether the transmission error meets a preset condition comprises:
获取所述终端预置接收机通道的码周期;Obtaining a code period of the terminal preset receiver channel;
当所述发射误差小于所述码周期的一半时,则确定所述发射误差满足第一 预设条件,所述第一预设条件包含于所述预设条件。When the transmission error is less than half of the code period, determining that the transmission error satisfies the first a preset condition, the first preset condition being included in the preset condition.
可选地,所述根据所述第一发射时间和从所述失锁卫星发射的导航电文解算的实际时间计算第二发射时间包括:Optionally, 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:
当所述发射误差满足所述第一预设条件时,获取从所述失锁卫星发射的导航电文解算的实际码相位时间;Acquiring the actual code phase time of the navigation message transmitted from the lost lock satellite when the transmission error satisfies the first preset condition;
获取所述接收机通道的比特周期;Obtaining a bit period of the receiver channel;
根据所述第一发射时间、所述码周期、所述比特周期计算预估码相位时间;Calculating an estimated code phase time according to the first transmission time, the code period, and the bit period;
根据所述第一发射时间、所述实际码相位时间和所述预估码相位时间计算所述第二发射时间。The second transmission time is calculated according to the first transmission time, the actual code phase time, and the estimated code phase time.
可选地,在获取所述终端预置接收机通道的码周期之后,所述方法还包括:Optionally, after acquiring the code period of the terminal preset receiver channel, the method further includes:
当所述发射误差大于所述码周期的一半时,获取所述接收机通道的比特周期;Obtaining a bit period of the receiver channel when the transmission error is greater than half of the code period;
当所述发射误差小于比特周期的一半时,则确定所述发射误差满足第二预设条件,所述第二预设条件包含于所述预设条件。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.
可选地,所述根据所述第一发射时间和从所述失锁卫星发射的导航电文解算的实际时间计算第二发射时间包括:Optionally, 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:
当所述发射误差满足所述第二预设条件时,获取从所述失锁卫星发射的导航电文解算的实际码相位时间和预设比特内码周期计数对应的实际码周期时间;And acquiring, when the transmission error meets the second preset condition, an actual code phase time calculated by the navigation message transmitted from the lost lock satellite and an actual code cycle time corresponding to the preset bit inner code cycle count;
根据所述第一发射时间和所述比特周期计算预估码相位时间与预估码周期时间的和;Calculating a sum of an estimated code phase time and an estimated code cycle time according to the first transmission time and the bit period;
根据所述第一发射时间、所述实际码周期时间、所述实际码相位时间及预估码相位时间与预估码周期时间的和计算所述第二发射时间。And calculating the second transmission time according to the sum of the first transmission time, the actual code period time, the actual code phase time, and the estimated code phase time and the estimated code period time.
可选地,所述获取所述终端与失锁卫星之间的距离包括:Optionally, the obtaining the distance between the terminal and the lost lock satellite includes:
获取所述终端当前的终端位置信息;Obtaining current terminal location information of the terminal;
获取所述失锁卫星的卫星位置信息;Obtaining satellite position information of the lost lock satellite;
根据所述终端位置信息及所述卫星位置信息获取所述距离。And obtaining the distance according to the terminal location information and the satellite location information.
可选地,所述获取所述终端当前的终端位置信息包括:Optionally, the acquiring the current terminal location information of the terminal includes:
通过至少一种定位装置获取所述终端位置信息,其中,所述定位装置包括 以下至少一种:惯性导航、视觉传感器或超声波。Acquiring the terminal location information by at least one positioning device, wherein the positioning device comprises At least one of the following: inertial navigation, visual sensors, or ultrasound.
可选地,根据所述终端位置信息及所述卫星位置信息获取所述距离包括:Optionally, acquiring the distance according to the terminal location information and the satellite location information includes:
根据所述终端位置信息及所述卫星位置信息获取几何距离;Obtaining 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.
可选地,所述获取终端本地的当前时间之前,所述方法还包括:Optionally, before the acquiring the current time local to the terminal, the method further includes:
每隔预设时间获取所述终端预置的接收机的晶振温度;Acquiring the crystal temperature of the receiver preset by the terminal every preset time;
获取所述晶振温度对应的晶振频偏;Obtaining a crystal frequency offset corresponding to the crystal temperature;
获取所述晶振频偏对应的时间偏差;Obtaining a time deviation corresponding to the crystal frequency offset;
根据所述时间偏差调整所述接收机的本地时间,将调整后的本地时间设定为所述当前时间。Adjusting the local time of the receiver according to the time offset, and setting the adjusted local time as the current time.
可选地,所述获取终端本地的当前时间之前,所述方法还包括:Optionally, before the acquiring the current time local to the terminal, the method further includes:
获取所述卫星向所述终端发送卫星信号的传输时间,以及获取所述卫星信号的初始发射时间;Obtaining a transmission time of the satellite transmitting a satellite signal to the terminal, and acquiring an initial transmission time of the satellite signal;
根据所述传输时间及所述初始发射时间,调整所述接收机的本地时间,将调整后的本地时间设定为所述当前时间。And 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.
可选地,所述根据所述当前时间及所述第二发射时间计算所述终端与所述失锁卫星之间的伪距之后,所述方法还包括:Optionally, after the calculating the pseudorange between the terminal and the lost-lock satellite according to the current time and the second transmission time, 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;
获取所述终端与失锁卫星之间的距离,所述失锁卫星是在未失锁前为所述终端提供定位服务的卫星;Obtaining a distance between the terminal and a lost lock satellite, the satellite that provides positioning service for the terminal before the lock is lost;
根据所述当前时间及所述距离计算所述失锁卫星向所述终端发送卫星信号的第一发射时间;Calculating, according to the current time and the distance, a first transmission time that the lost-lock satellite transmits a satellite signal to the terminal;
根据所述第一发射时间和从所述失锁卫星发射的导航电文解算的实际时间计算第二发射时间;Calculating a second transmission time according to the first transmission time and an actual time calculated from a navigation message transmitted by the lost lock satellite;
根据所述当前时间及所述第二发射时间计算所述终端与所述失锁卫星之间的伪距。 Calculating a pseudorange between the terminal and the lost lock satellite according to the current time and the second transmission time.
可选地,所述处理器还用于,获取所述第一发射时间的发射误差;Optionally, the processor is further configured to acquire a transmission error of the first transmission time;
判断所述发射误差是否满足预设条件;Determining whether the transmission error satisfies a preset condition;
若是,则执行根据所述第一发射时间和从所述失锁卫星发射的导航电文解算的实际时间计算第二发射时间的步骤。If so, the step of calculating the second transmission time based on the first transmission time and the actual time of the navigation message transmitted from the lost lock satellite is performed.
可选地,所述处理器还用于,获取所述失锁卫星的卫星误差及所述卫星信号的传播误差;Optionally, the processor is further configured to acquire a satellite error of the lost-lock satellite and a propagation error of the satellite signal;
获取所述终端预置接收机的接收机误差;Obtaining a receiver error of the terminal preset receiver;
根据所述卫星误差、所述传播误差及所述接收机误差获取所述发射误差。The transmission error is obtained based on the satellite error, the propagation error, and the receiver error.
可选地,所述处理器还用于,获取所述终端预置接收机通道的码周期;Optionally, the processor is further configured to acquire a code period of the terminal preset receiver channel;
当所述发射误差小于所述码周期的一半时,则确定所述发射误差满足第一预设条件,所述第一预设条件包含于所述预设条件。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.
可选地,所述处理器还用于,当所述发射误差满足所述第一预设条件时,获取从所述失锁卫星发射的导航电文解算的实际码相位时间;Optionally, the processor is further configured to: when the transmission error meets the first preset condition, acquire an actual code phase time of a navigation message transmitted from the loss-locking satellite;
获取所述接收机通道的比特周期;Obtaining a bit period of the receiver channel;
根据所述第一发射时间、所述码周期、所述比特周期计算预估码相位时间;Calculating an estimated code phase time according to the first transmission time, the code period, and the bit period;
根据所述第一发射时间、所述实际码相位时间和所述预估码相位时间计算所述第二发射时间。The second transmission time is calculated according to the first transmission time, the actual code phase time, and the estimated code phase time.
可选地,所述处理器还用于,当所述发射误差大于所述码周期的一半时,获取所述接收机通道的比特周期;Optionally, 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;
当所述发射误差小于比特周期的一半时,则确定所述发射误差满足第二预设条件,所述第二预设条件包含于所述预设条件。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.
可选地,所述处理器还用于,当所述发射误差满足所述第二预设条件时,获取从所述失锁卫星发射的导航电文解算的实际码相位时间和预设比特内码周期计数对应的实际码周期时间;Optionally, 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;
根据所述第一发射时间和所述比特周期计算预估码相位时间与预估码周期时间的和;Calculating a sum of an estimated code phase time and an estimated code cycle time according to the first transmission time and the bit period;
根据所述第一发射时间、所述实际码周期时间、所述实际码相位时间及预估码相位时间与预估码周期时间的和计算所述第二发射时间。And calculating the second transmission time according to the sum of the first transmission time, the actual code period time, the actual code phase time, and the estimated code phase time and the estimated code period time.
可选地,所述处理器还用于,获取所述终端当前的终端位置信息; Optionally, the processor is further configured to acquire current terminal location information of the terminal;
获取所述失锁卫星的卫星位置信息;Obtaining satellite position information of the lost lock satellite;
根据所述终端位置信息及所述卫星位置信息获取所述距离。And obtaining the distance according to the terminal location information and the satellite location information.
可选地,所述处理器还用于,通过至少一种定位装置获取所述终端位置信息,其中,所述定位装置包括以下至少一种:惯性导航、视觉传感器或超声波。Optionally, 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.
可选地,所述处理器还用于,根据所述终端位置信息及所述卫星位置信息获取几何距离;Optionally, 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.
可选地,所述处理器还用于,每隔预设时间获取所述终端预置的接收机的晶振温度;Optionally, the processor is further configured to acquire, according to a preset time, a crystal temperature of a receiver preset by the terminal;
获取所述晶振温度对应的晶振频偏;Obtaining a crystal frequency offset corresponding to the crystal temperature;
获取所述晶振频偏对应的时间偏差;Obtaining a time deviation corresponding to the crystal frequency offset;
根据所述时间偏差调整所述接收机的本地时间,将调整后的本地时间设定为所述当前时间。Adjusting the local time of the receiver according to the time offset, and setting the adjusted local time as the current time.
可选地,所述处理器还用于,获取所述卫星向所述终端发送卫星信号的传输时间,以及获取所述卫星信号的初始发射时间;Optionally, 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;
根据所述传输时间及所述初始发射时间,调整所述接收机的本地时间,将调整后的本地时间设定为所述当前时间。And 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.
可选地,所述处理器还用于,根据至少三个所述伪距进行定位。Optionally, 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.
本申请实施例中终端可根据获取到自身本地的当前时间、自身与失锁卫星之间的距离等参数,获取卫星向终端发送卫星信号的第一发射时间。然后,终端根据第一发射时间及实际时间计算第二发射时间,再根据当前时间及第二发射时间计算终端与所述卫星之间的伪距。在伪距计算的整个过程中,不需要进 行帧同步,从而避免了帧同步的完成需要等待的时间,缩短了终端计算伪距所消耗的时间,提高了伪距计算的速度。In the embodiment of the present application, 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.
附图说明DRAWINGS
图1为本申请实施例中无人机接收卫星信号进行定位的架构图;1 is an architectural diagram of a UAV receiving satellite signals for positioning in an embodiment of the present application;
图2为本申请实施例中伪距计算方法一个实施例示意图;2 is a schematic diagram of an embodiment of a pseudorange calculation method according to an embodiment of the present application;
图3为本申请实施例中伪距计算方法另一实施例示意图;3 is a schematic diagram of another embodiment of a pseudorange calculation method according to an embodiment of the present application;
图4为本申请实施例中伪距计算方法另一实施例示意图;4 is a schematic diagram of another embodiment of a pseudorange calculation method according to an embodiment of the present application;
图5为本申请实施例中终端一个实施例示意图。FIG. 5 is a schematic diagram of an embodiment of a terminal in an embodiment of the present application.
具体实施方式Detailed ways
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。在不冲突的情况下,下述的实施例及实施方式中的特征可以相互组合。The technical solutions in the embodiments of the present invention are clearly and completely described in the following with reference to the accompanying drawings in the embodiments of the present invention. It is obvious that the described embodiments are only a part of the embodiments of the present invention, but not all embodiments. All other embodiments obtained by a person of ordinary skill in the art based on the embodiments of the present invention without creative efforts are within the scope of the present invention. The features of the embodiments and embodiments described below may be combined with each other without conflict.
为了解决现有技术中计算伪距时的等待时间较长的技术问题,本申请实施例提供了一种伪距计算方法,终端通过估计的发射时间和获取的部分实际时间计算真实的发射时间,从而得到伪距。实现了在计算伪距的过程中不需要进行帧同步,提高了伪距计算的速度。本申请实施例还提供了终端、计算机程序产品及计算机存储介质等。In order to solve the technical problem that the waiting time is long when the pseudorange is calculated in the prior art, 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.
本实施例中,伪距计算方法可应用于终端,该终端可以为无人机,可以理解的是,在实际应用中,该终端除了可以为无人机之外,还可以为其他的可移动平台,例如,手机、车辆或机器人等,具体此处不作限定。In this embodiment, the pseudorange calculation method can be applied to a terminal, and the terminal can be a drone. It can be understood that, in practical applications, the terminal can be other mobile devices besides the drone. The platform, for example, a mobile phone, a vehicle, a robot, etc., is not limited herein.
以下将以无人机为例,结合一个具体的应用场景对本申请中的伪距计算方法进行详细描述:如图1所示,该无人机预先设置有用于接收卫星信号的接收机,还设置有定位装置,该定位装置包括以下至少一种:惯性导航、视觉传感器或超声波等,可以理解的是,该无人机还可以包括其他器件,具体此处不作限定。首先,无人机在飞行的过程中,刚开始可通过接收4个以上的卫星发射 的卫星信号进行准确定位。然后,当无人机在楼宇、山洞之间穿梭时,由于部分卫星发射的卫星信号减弱或者消失,此时无人机仅能接收到部分卫星发射的卫星信号,原先为终端提供定位服务的卫星变为失锁卫星,这时无人机通过本申请实施例中伪距计算方法,先获取终端本地的当前时间,以及获取终端与失锁卫星之间的距离,再根据当前时间及距离计算失锁卫星向终端发送卫星信号的第一发射时间,然后根据第一发射时间和从失锁卫星发射的导航电文解算的实际时间计算第二发射时间,最终可根据当前时间及第二发射时间计算终端与失锁卫星之间的伪距。再通过上述计算得到的伪距数量和未失锁的卫星数量的和超过4个时,终端可以进行定位,当本地时钟是经过钟差校正后,可以只需要超过3个即可定位,即使当剩余连接的卫星超过3个时,已经可以得到定位结果,也可以通过上述方法计算的伪距来对定位结果进行修正,得到更为准确的定位结果。上述应用场景只是为了进行示意性说明,本领域技术人员技术方案应用到其他应用场景,在这里不做限定。The following takes the drone as an example, and combines a specific application scenario to describe the pseudorange calculation method in the present application in detail. As shown in FIG. 1 , the drone is preset with a receiver for receiving satellite signals, and is also set. There is a positioning device, which includes at least one of the following: inertial navigation, a visual sensor, or an ultrasonic wave. It can be understood that the UAV can also include other devices, which are not limited herein. First of all, 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. At this time, 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. At this time, 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. When the sum of the number of pseudoranges obtained by the above calculation and the number of satellites that have not lost locks exceeds 4, the terminal can perform positioning. When 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. The foregoing application scenarios are only for illustrative purposes, and the technical solutions of the technical personnel in the art are applied to other application scenarios, which are not limited herein.
为便于理解,下面对本申请实施例中的具体流程进行描述,请参阅图2,本申请实施例中伪距计算方法的一个实施例包括:For ease of understanding, the specific process in the embodiment of the present application is described below. Referring to FIG. 2, an embodiment of the pseudorange calculation method in the embodiment of the present application includes:
201、获取终端本地的当前时间;201. Obtain a current time local to the terminal.
本实施例中,该终端上设置有用于接收卫星信号的接收机,终端在计算伪距的过程中,首先可通过该接收机的晶振获取自身本地的当前时间,该晶振可以是温补晶振或者数字化补偿晶振等等。In this embodiment, the terminal is provided with a receiver for receiving satellite signals. In the process of calculating the pseudorange, the terminal may first acquire the local time of the local oscillator through the crystal oscillator of the receiver, and the crystal oscillator may be a temperature-compensated crystal oscillator or Digitally compensates for crystals and more.
202、获取终端与失锁卫星之间的距离;202. Obtain a distance between the terminal and the lost lock satellite;
该失锁卫星是在未失锁前为终端提供定位服务的卫星,终端可以获取自身与失锁卫星之间的距离,例如,终端先通过惯性导航获取终端当前的终端位置信息,以及从导航电文中获取失锁卫星的卫星星历,根据该卫星星历获取失锁卫星的卫星位置信息,再根据终端位置信息及卫星位置信息,获取终端与失锁卫星之间的距离。可以理解的是,在实际应用中,由于终端位置信息的获取方式多种多样,以及该距离的计算结果可能还与卫星误差、卫星信号的传播误差及接收机误差等有关,因此终端获取自身与失锁卫星之间的距离的方式还可以包括其他方式,具体此处不作限定。The lost lock satellite is a satellite that provides positioning services for the terminal before the lock is lost. The terminal can acquire the distance between itself and the lost lock satellite. For example, the terminal first acquires the current terminal position information of the terminal through inertial navigation, and the navigation message. The satellite ephemeris of the lost lock satellite is obtained, and the satellite position information of the lost lock satellite is obtained according to the satellite ephemeris, and then the distance between the terminal and the lost lock satellite is obtained according to the terminal position information and the satellite position information. It can be understood that, in practical applications, since the terminal location information is acquired in various ways, and the calculation result of the distance may be related to satellite error, satellite signal propagation error, receiver error, etc., the terminal acquires itself and The manner of the distance between the lost satellites may also include other manners, which are not limited herein.
可以理解的是,该失锁卫星可以是一个或者多个,例如,当终端只需要计 算一个伪距时,终端可仅获取与该失锁卫星之间的距离;当终端需要计算多个伪距时,终端可分别获取与多个失锁卫星之间的距离。It can be understood that 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.
203、根据当前时间及距离计算失锁卫星向终端发送卫星信号的第一发射时间;203. Calculate, according to the current time and distance, a first transmission time of the satellite signal sent by the lost lock satellite to the terminal;
在得到当前时间、以及终端与失锁卫星之间的距离后,终端可根据该当前时间及该距离计算失锁卫星向终端发送卫星信号的第一发射时间,例如,第一发射时间等于当前时间减去距离除以光速的值,即第一发射时间=当前时间-距离/光速。可以理解的是,在实际应用中,第一发射时间还可能与卫星误差、卫星信号的传播误差及接收机误差等有关,该第一发射时间的计算方式还可以包括其他方式,具体此处不作限定。After obtaining the current time and the distance between the terminal and the lost lock satellite, the terminal may calculate the first transmission time of the satellite signal sent by the lost lock satellite to the terminal according to the current time and the distance, for example, the first launch time is equal to the current time. Subtract the distance divided by the value of the speed of light, ie the first transmission time = current time - distance / speed of light. It can be understood that, in practical applications, the first transmission time may also be related to satellite error, satellite signal propagation error, receiver error, etc., and the first transmission time may be calculated in other ways, specifically limited.
204、根据第一发射时间和从失锁卫星发射的导航电文解算的实际时间计算第二发射时间;204. Calculate a second transmission time according to the first transmission time and the actual time of the navigation message transmitted from the lost lock satellite;
在得到第一发射时间后,终端可从本地存储的该失锁卫星发射的导航电文中解算出实际时间,该实际时间可以是比特周期时间,也可以是码周期时间,也可以是码相位时间,然后根据第一发射时间及实际时间计算第二发射时间,这里可以将用上述第一发射时间不确定量替换为解算出的实际时间,从而得到准确的第二发射时间。After obtaining the first transmission time, the terminal may calculate the actual time from the locally stored navigation message transmitted by the lost-lock satellite, and the actual time may be a bit cycle time, a code cycle time, or a code phase time. Then, the second transmission time is calculated according to the first transmission time and the actual time. Here, the first transmission time uncertainty may be replaced with the calculated actual time, thereby obtaining an accurate second transmission time.
205、根据当前时间及第二发射时间计算终端与失锁卫星之间的伪距。205. Calculate a pseudorange between the terminal and the lost lock satellite according to the current time and the second launch time.
在得到第二发射时间后,终端可根据当前时间及第二发射时间计算自身与失锁卫星之间的伪距,该伪距的计算方式具体此处不作限定。需要说明的是,终端可根据实际需要计算一个或多个伪距,例如,当为终端提供定位服务的所有卫星中存在部分卫星信号失锁,而还有三个卫星信号未失锁时,终端可仅计算与其中一个失锁卫星之间的伪距;当为终端提供定位服务的所有卫星中全部卫星信号失锁时,终端需要计算与其中至少四个失锁卫星之间的伪距。可以理解的是,在实际应用中,伪距的计算个数还可以进行灵活设置,具体此处不作限定。After obtaining the second transmission time, 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.
本申请实施例中终端可根据获取到自身本地的当前时间、自身与失锁卫星之间的距离等参数,获取卫星向终端发送卫星信号的第一发射时间。然后,终端根据第一发射时间及实际时间计算第二发射时间,再根据当前时间及第二发 射时间计算终端与所述卫星之间的伪距。在伪距计算的整个过程中,不需要进行帧同步,从而避免了帧同步的完成需要等待的时间,缩短了终端计算伪距所消耗的时间,提高了伪距计算的速度。In the embodiment of the present application, 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.
在某些实施例中,由于接收机的晶振提供本地的当前时间可能存在一定的误差,因此为了能够获取到精准的当前时间,终端在获取本地的当前时间之前,可预先对当前时间进行调整,终端对当前时间进行调整包括:In some embodiments, since the crystal oscillator of the receiver may provide a certain error in the local current time, in order to obtain the accurate current time, the terminal may adjust the current time in advance before acquiring the local current time. The terminal adjusts the current time to include:
方式一,首先,每隔预设时间获取终端预置的接收机的晶振温度;In the first method, first, 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.
其次,获取晶振温度对应的晶振频偏;Secondly, obtaining a crystal frequency offset corresponding to the crystal temperature;
终端本地可预先设置有晶振温度和晶振频偏之间的映射表或者换算关系,在得到晶振温度后,可通过查询该映射表获取与该晶振温度对应的晶振频偏,或通过换算关系计算与该晶振温度对应的晶振频偏。即终端还可以在得到晶振温度后,根据公式计算得到对应的晶振频偏。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.
再次,获取晶振频偏对应的时间偏差;Again, obtaining a time offset corresponding to the crystal frequency offset;
在得到晶振频偏后,终端可确定该晶振频偏对应的时间偏差。可以理解的是,也可以直接通过获取晶振温度对应的时间偏差。After obtaining the crystal frequency offset, the terminal can determine the time deviation corresponding to the crystal frequency offset. It can be understood that the time deviation corresponding to the crystal temperature can also be obtained directly.
最后,根据时间偏差调整接收机的本地时间,将调整后的本地时间设定为当前时间。Finally, 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:
Figure PCTCN2017094449-appb-000001
Figure PCTCN2017094449-appb-000001
其中,
Figure PCTCN2017094449-appb-000002
为预设时间对应的终止时间,
Figure PCTCN2017094449-appb-000003
为预设时间对应的起起始时间,ttick为预设时间对应的总时间,Δtclk为时间偏差,此时可将预设时间对应的起终止时间
Figure PCTCN2017094449-appb-000004
设定为当前时间。
among them,
Figure PCTCN2017094449-appb-000002
For the end time corresponding to the preset time,
Figure PCTCN2017094449-appb-000003
For the start time corresponding to the preset time, t tick is the total time corresponding to the preset time, Δt clk is the time deviation, and the start time corresponding to the preset time can be
Figure PCTCN2017094449-appb-000004
Set to the current time.
方式二,获取卫星向终端发送卫星信号的传输时间,以及获取卫星信号的初始发射时间;根据传输时间及初始发射时间,调整接收机的本地时间,将调整后的本地时间设定为当前时间。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.
其中,终端根据信号的传输时间及初始发射时间,调整接收机晶振的本地时间的公式为:The formula for adjusting the local time of the receiver crystal oscillator according to the transmission time of the signal and the initial transmission time is:
tr=tx+e t r =t x +e
其中,tr为当前时间,tx为初始发射时间,e为传输时间。假设GPS卫星的信号传输时间为0.07秒,则当前时间为tr=tx+0.07。Where t r is the current time, t x is the initial transmission time, and e is the transmission time. Assuming that the signal transmission time of the GPS satellite is 0.07 seconds, the current time is t r = t x + 0.07.
在某些实施例中,终端获取自身与失锁卫星之间的距离时,首先获取终端当前的终端位置信息,以及获取失锁卫星的卫星位置信息。终端当前的相对位置信息可以通过至少一种定位装置获取到,可以通过在卫星失锁前获取的位置信息和定位装置获取的相对位置信息得到在地球坐标系下的终端位置信息,其中,该定位装置包括以下至少一种:惯性导航、视觉传感器或超声波等,例如,可根据终端预置的惯性导航、视觉传感器及超声波进行融合定位获取终端位置信息,或者是,仅根据其中的一种定位装置获取终端位置信息。需要说明的是,由定位装置得到的终端位置信息可能存在一定的误差,此时终端可以结合该误差计算终端位置信息。In some embodiments, 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.
需要说明的是,在获取终端位置信息时,可以建立位置模型,该模型可以通过终端之前的定位信息建立,也可以通过飞行的其他数据来建立,也可以是两者的结合,然后通过卡尔曼滤波对结果进行校准,使模型中的位置信息和实际定位装置获取的位置信息占不同的权重,求出最接近真实的终端位置信息。It should be noted that, when acquiring terminal location information, 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.
然后,根据终端位置信息及卫星位置信息,获取终端与失锁卫星之间的距离。例如,当终端位置信息为(x,y,z),卫星位置信息为(xj,yj,zj)时,根据以下公式计算终端与失锁卫星之间的几何距离rj为:Then, based on the terminal location information and the satellite location information, the distance between the terminal and the lost lock satellite is obtained. For example, when the terminal location information is (x, y, z) and the satellite position information is (x j , y j , z j ), the geometric distance r j between the terminal and the lost lock satellite is calculated according to the following formula:
Figure PCTCN2017094449-appb-000005
Figure PCTCN2017094449-appb-000005
获取终端与失锁卫星之间的距离可以是上述方法计算的几何距离,也可以是对几何距离进行误差校正后的距离。由于得到的卫星位置信息可能存在一定的误差,因此为了能够获取较精准的距离,根据终端位置信息及卫星位置信息获取该距离时,可先根据终端位置信息及卫星位置信息获取几何距离,以及获取失锁卫星的卫星误差、卫星信号的传播误差、接收机的接收机误差,再根据几何距离、卫星误差、传播误差及接收机误差获取该距离。该卫星误差可包括卫星钟差,该传播误差可包括卫星所在电离层的电离层修正量、卫星所在对流 层的对流层修正量、以及多路径效应引起的效应误差等,接收机误差可包括接收机的晶振钟差。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.
例如,可根据以下公式计算终端与失锁卫星之间的距离ρj为:For example, the distance ρ j between the terminal and the lost lock satellite can be calculated according to the following formula:
ρj=rj+c×Δtr-c×Δtjionotropmp ρ j =r j +c×Δt r -c×Δt jionotropmp
其中,ρj为终端与失锁卫星之间的距离,rj为终端与失锁卫星之间的几何距离,c为光速,Δtr为晶振钟差,Δtj为第j颗卫星的卫星钟差,Δiono为电离层修正量,Δtrop为对流层修正量,Δmp为多路径的效应误差。Where ρ 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, and Δt j is the satellite clock of the jth satellite Poor, Δ iono is the ionospheric correction, Δ trop is the tropospheric correction, and Δ mp is the multipath effect error.
在某些实施例中,在得到当前时间、以及终端与失锁卫星之间的距离后,终端可根据当前时间及距离计算失锁卫星向终端发送卫星信号的第一发射时间。终端根据当前时间及距离计算第一发射时间的公式为:In some embodiments, after obtaining the current time and the distance between the terminal and the lost lock satellite, the terminal may calculate the first transmission time of the satellite signal transmitted by the lost lock satellite to the terminal according to the current time and distance. The formula for calculating the first launch time based on the current time and distance is:
Figure PCTCN2017094449-appb-000006
Figure PCTCN2017094449-appb-000006
其中,
Figure PCTCN2017094449-appb-000007
为第一发射时间,tr为当前时间,rj为几何距离,c为光速。
among them,
Figure PCTCN2017094449-appb-000007
For the first launch time, t r is the current time, r j is the geometric distance, and c is the speed of light.
在某些实施例中,由于该距离与卫星误差、传播误差及接收机误差等有关,因此为了计算得到精准的第一发射时间,In some embodiments, since the distance is related to satellite error, propagation error, receiver error, etc., in order to calculate a precise first transmission time,
此时终端可根据当前时间、距离、卫星钟差、晶振钟差、电离层修正量、对流层修正量、效应误差及光速计算第一发射时间,其公式为:At this 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:
Figure PCTCN2017094449-appb-000008
Figure PCTCN2017094449-appb-000008
其中,
Figure PCTCN2017094449-appb-000009
为第一发射时间,tr为当前时间,Δtr为晶振钟差,Δtj为第j颗卫星的卫星钟差,rj为终端与失锁卫星之间的几何距离,Δmp为多路径的效应误差,c为光速,Δiono为电离层修正量,该电离层修正量可由电离层修正参数和对应的电离层修正模型计算获得;Δtrop为对流层修正量,可选用合适的对流层模型计算对流层修正,例如,萨斯塔莫宁模型,霍普菲尔德模型等。
among them,
Figure PCTCN2017094449-appb-000009
For the first launch time, 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, and Δ 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.
在某些实施例中,在得到第一发射时间后,终端在根据第一发射时间和从失锁卫星发射的导航电文解算的实际时间计算第二发射时间之前,首先可获取第一发射时间的发射误差,终端获取第一发射时间的发射误差包括:获取失锁卫星的卫星误差及卫星信号的传播误差;获取终端预置接收机的接收机误差;根据卫星误差、传播误差及接收机误差获取发射误差。其中,卫星的误差包括:卫星的钟差和卫星星历的误差,传播误差包括对流层误差、电离层误差、多路 径的效应误差、相对论引起的误差等等,接收机误差包括接收机钟差、融合定位误差等等。In some embodiments, after obtaining the first transmission time, the terminal may first acquire the first transmission time before calculating the second transmission time according to the first transmission time and the actual time of the navigation message transmitted from the lost lock satellite. The transmission error of the terminal acquiring the first transmission time includes: obtaining the satellite error of the lost lock satellite and the propagation error of the satellite signal; acquiring the receiver error of the preset receiver; and based on the satellite error, propagation error and receiver error Get the emission error. Among them, satellite errors include: satellite clock error and satellite ephemeris error, propagation error including tropospheric error, ionospheric error, multipath The effect error of the path, the error caused by the relativity, etc., the receiver error includes the receiver clock difference, the fusion positioning error, and the like.
上述不同的误差以不同的权重配合失锁的时间所计算得出发射误差,上述误差有时间误差,也有距离误差,在一定的传播速度下可以将距离误差转化为时间误差,得到发射误差。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. At a certain propagation speed, the distance error can be converted into time error to obtain the transmission error.
在某些实施例中,这里因为在失锁前和重捕时,时间间隔较短,卫星和终端的移动距离较短,其卫星的误差、传播误差和接收机误差中的接收机钟差较小,在某些情况下可以省略,即通过融合定位带来的误差配合失锁的时间计算发射误差。In some embodiments, because 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.
本申请实施例中,终端可在第一发射时间的发射误差满足预设条件时,对伪距进行计算,包括两种情况:一、当发射误差满足第一预设条件时,根据方式一计算伪距;二、当发射误差满足第二预设条件时,根据方式二计算伪距,以下将分别进行详细描述。In the embodiment of the present application, 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.
一、当发射误差满足第一预设条件时,根据方式一计算终端与失锁卫星之间的伪距,请参阅图3,本申请实施例中伪距计算方法的另一实施例包括:I. When the transmission error satisfies the first preset condition, the pseudorange between the terminal and the lost lock satellite is calculated according to the method 1. Referring to FIG. 3, another embodiment of the pseudorange calculation method in the embodiment of the present application includes:
301、获取终端本地的当前时间;301: Obtain a current time local to the terminal;
需要说明的是,本实施例中获取终端本地的当前时间与前述所示实施例中获取终端本地的当前时间类似,具体此处不再赘述。It should be noted that 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.
302、获取终端与失锁卫星之间的距离;302. Obtain a distance between the terminal and the lost lock satellite;
需要说明的是,本实施例中获取终端与失锁卫星之间的距离,与前述所示实施例中获取终端与失锁卫星之间的距离类似,具体此处不再赘述。It should be noted that, in this embodiment, 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.
303、根据当前时间及距离计算失锁卫星向终端发送卫星信号的第一发射时间;303. Calculate, according to the current time and distance, a first transmission time of the satellite signal sent by the lost lock satellite to the terminal;
需要说明的是,本实施例中根据当前时间及距离计算失锁卫星向终端发送卫星信号的第一发射时间,与前述所示实施例中根据当前时间及距离计算失锁卫星向终端发送卫星信号的第一发射时间类似,具体此处不再赘述。It should be noted that, in this embodiment, 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.
304、获取第一发射时间的发射误差;304: Obtain a transmission error of the first transmission time;
需要说明的是,本实施例中获取第一发射时间的发射误差,与前述所示实施例中获取第一发射时间的发射误差类似,具体此处不再赘述。 It should be noted that, in this embodiment, 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.
在得到第一发射时间的发射误差后,终端判断发射误差是否满足预设条件,该预设条件可包括第一预设条件和第二预设条件。当发射误差满足预设条件时,终端可执行根据第一发射时间和从失锁卫星发射的导航电文解算的实际时间计算第二发射时间的步骤。After obtaining the transmission error of the first transmission time, the terminal determines whether the transmission error satisfies a preset condition, and the preset condition may include a first preset condition and a second preset condition. When the transmission error satisfies the preset condition, the terminal may perform the step of calculating the second transmission time according to the first transmission time and the actual time of the navigation message transmitted from the lost lock satellite.
当发射误差不满足预设条件时,终端按照以下方式计算伪距:首先,计算失锁卫星向终端发射卫星信号的第二发射时间tx为:When the transmission error does not satisfy the preset condition, 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:
tx=tframe+Nbit×Tbit+Ncyc×Tcyc+Ncdp×Tcyc t x = t frame + N bit × T bit + N cyc × T cyc + N cdp × T cyc
其中,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秒。Where 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, and T cyc is the time corresponding to 1 code period. In the solution process of the navigation message, 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 . Taking the GPS L1 C/A code as an example, 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.
在到的第二发射时间后,即可根据第二发射时间和当前时间计算伪距,伪距的计算公式如下:After the second transmission time, the pseudorange can be calculated according to the second transmission time and the current time. The pseudorange is calculated as follows:
ρ=(tr-tx)×cρ=(t r -t x )×c
其中,ρ为伪距,tr为当前时间,tx为第二发射时间,c为光速。Where ρ is a pseudorange, t r is the current time, t x is the second transmission time, and c is the speed of light.
305、当发射误差满足第一预设条件时,获取从失锁卫星发射的导航电文解算的实际码相位时间;305. Acquire an actual code phase time of the navigation message transmitted from the lost lock satellite when the transmission error satisfies the first preset condition;
终端判断发射误差是否满足预设条件包括:获取终端预置接收机通道的码周期;判断发射误差是否小于码周期的一半;若是,则确定发射误差满足第一预设条件。以GPS L1 C/A码为例,其码周期为1毫秒,当发射误差小于1/2码周期,即发射误差小于0.5毫秒时,确定发射误差满足第一预设条件。需要说明的是,根据不同类型码,该第一预设条件可进行灵活设置,具体此处不作限定。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 yes, determining that the transmission error satisfies the first preset condition. Taking the GPS L1 C/A code as an example, the code period is 1 millisecond. When the transmission error is less than 1/2 code period, that is, the transmission error is less than 0.5 milliseconds, it is determined that the transmission error satisfies the first preset condition. It should be noted that, according to different types of codes, the first preset condition can be flexibly set, which is not limited herein.
为了能够对射误差是否满足第一预设条件进行准确判断,终端判断发射误差是否小于码周期的一半之前,当该发射误差小于码周期的一半时,可先获取接收机通道的比特周期,然后判断发射误差是否小于比特周期的一半,若是, 则执行判断发射误差是否小于码周期的一半的步骤。该第一预设条件包含于前述的预设条件。当发射误差满足第一预设条件时,获取从失锁卫星发射的导航电文解算的实际码相位时间。In order to accurately determine whether the incident error satisfies the first preset condition, 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.
需要说明的是,终端判断发射误差是否满足第一预设条件或第二预设条件的顺序不限定,可以先判断发射误差是否满足第一预设条件,再判断发射误差是否满足第二预设条件;也可以先判断发射误差是否满足第二预设条件,后判断发射误差是否满足第一预设条件;也可以是选择式判断,还可以是直接判定是满足第一预设条件还是满足第二预设条件,具体此处不作限定。It should be noted that, 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.
当发射误差满足第一预设条件时,终端可以从预先存储的该失锁卫星发射的导航电文中,解算出实际码相位时间。When the transmission error satisfies the first preset condition, the terminal may calculate the actual code phase time from the pre-stored navigation message transmitted by the lost-lock satellite.
306、获取接收机通道的比特周期;306. Obtain a bit period of a receiver channel.
307、根据第一发射时间、码周期、比特周期计算预估码相位时间;307. Calculate an estimated code phase time according to the first transmission time, the code period, and the bit period.
308、根据第一发射时间、实际码相位时间及预估码相位时间计算第二发射时间;308. Calculate a second transmission time according to the first transmission time, the actual code phase time, and the estimated code phase time.
当发射误差满足第一预设条件时,终端获取接收机通道的比特周期和码周期,这里导航电文可以在接收机通道内解码。然后,根据第一发射时间、码周期、比特周期计算预估码相位时间,因为第一发射时间为比特周期时间、码周期时间、码相位时间的和,当发射误差满足第一预设条件时,认为比特周期和比特周期计数的积即比特周期时间是准确的,认为码周期和码周期计数的积即码周期时间是准确的,再根据实际码相位时间及预估码相位时间计算第二发射时间,具体是从第一发射时间中除去不确定的预估码相位时间,然后再加上准确的从导航电文解算的实际码相位时间,即得到第二发射时间,其计算公式如下: When the transmission error satisfies the first preset condition, 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, in particular, 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:
Figure PCTCN2017094449-appb-000010
Figure PCTCN2017094449-appb-000010
其中,floor( )为向下取整函数,t0为比特周期时间与码周期时间的和,
Figure PCTCN2017094449-appb-000011
为第一发射时间,t2为第二发射时间,tcdp为实际码相位时间,tcdp的取值范围为0≤tcdp<b,Δt为实际码周期时间与预估码相位时间的差,b为码相位周期,
Figure PCTCN2017094449-appb-000012
为预估的码相位,n是1比特对应的时间。
Where floor( ) is a round-down function and t 0 is the sum of the bit period time and the code period time.
Figure PCTCN2017094449-appb-000011
For the first transmission time, t 2 is the second transmission time, t cdp is the actual code phase time, and t cdp is in the range of 0 ≤ t cdp <b, and Δt is the difference between the actual code period time and the estimated code phase time. , b is the code phase period,
Figure PCTCN2017094449-appb-000012
For the estimated code phase, n is the time corresponding to 1 bit.
由于第一发射时间、第二发射时间分为三个部分,分别是比特周期时间、码周期时间和码相位时间,因此当发射误差在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
一定的情况下取不同的码周期时间。
Since 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 within 1/2 code period, the bit period time is accurate. which is
Figure PCTCN2017094449-appb-000013
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
Figure PCTCN2017094449-appb-000014
Figure PCTCN2017094449-appb-000015
Since the transmission error is less than 1/2 code period, the true value is considered to be
Figure PCTCN2017094449-appb-000016
The center of the 1/2 code period is within the radius, then
Figure PCTCN2017094449-appb-000017
Different code cycle times are taken under certain circumstances.
309、根据当前时间及第二发射时间计算终端与失锁卫星之间的伪距。309. Calculate a pseudorange between the terminal and the lost lock satellite according to the current time and the second launch time.
终端在得到第二发射时间后,可根据当前时间及第二发射时间计算终端与失锁卫星之间的伪距,其计算公式如下:After obtaining the second transmission time, the terminal may calculate the pseudorange between the terminal and the lost lock satellite according to the current time and the second transmission time, and the calculation formula is as follows:
ρ=a×(tr-t2)×cρ=a×(t r -t 2 )×c
其中,ρ为伪距,tr为当前时间,t2为第二发射时间,a为与时间有关的常系数,用于转换时间单位,例如,将毫秒转换为秒,c为光速。通过上述公式的计算即可以得到准确的伪距,之后可以利用多个伪距计算卫星位置。Where ρ is a pseudorange, t r is the current time, t 2 is the second transmission time, and a is a time-dependent constant coefficient for converting the time unit, for example, converting milliseconds into seconds, and c is the speed of light. By calculating the above formula, an accurate pseudorange can be obtained, and then the satellite position can be calculated using a plurality of pseudoranges.
需要说明的是,终端计算得到的伪距可包括终端与至少三个失锁卫星之间的伪距,即可计算至少三个伪距,在得到至少三个伪距后,可根据该至少三个伪距进行定位。终端还可以根据自身的当前情况仅计算一个伪距后,结合未失锁卫星进行准确定位,或者,计算多个伪距后利用最小二乘法计算出目标伪距,根据,目标伪距进行定位。从而使得终端可快速计算出伪距,实现失锁重捕快 速解算。It should be noted that 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.
以GPS L1 C/A码为例,其根据方式一计算伪距的公式为:Taking the GPS L1 C/A code as an example, the formula for calculating the pseudorange according to the first method is:
Figure PCTCN2017094449-appb-000018
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为光速,ρ为伪距。通过上述方法即可计算出真实的伪距。
Among them, for the GPS L1C/A code, the bit period is 20 ms, and the code period is 1 ms. Floor() is a rounding function,
Figure PCTCN2017094449-appb-000019
For the first launch time, when
Figure PCTCN2017094449-appb-000020
When the unit is millisecond (ms), 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, and 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, and the code period is 1 millisecond (ms).
Figure PCTCN2017094449-appb-000021
For the estimated code phase, 0.001 is used to convert milliseconds into seconds, c is the speed of light, and ρ is the pseudorange. The true pseudorange can be calculated by the above method.
通过上述方法,终端可根据获取到的当前时间、终端与失锁卫星之间的距离计算第一发送时间,并且在第一发射时间的发射误差满足第一预设条件时,根据在稳定跟踪卫星后获取到的实际码相位时间、根据比特周期和码周期计算得到的预估码相位时间及第一发射时间计算第二发射时间,再根据当前时间及第二发射时间计算终端与失锁卫星之间的伪距,从而可以在不用进行帧同步和比特同步的情况下,通过使用准确的码相位时间替换预估的码相位时间来得到准确的第二发射时间,计算出准确的伪距,从而计算出准确的位置信息。Through 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.
二、当发射误差满足第二预设条件时,根据方式二计算终端与失锁卫星之间的伪距,请参阅图4,本申请实施例中伪距计算方法的另一实施例包括:2. When the transmission error meets the second preset condition, the pseudorange between the terminal and the lost lock satellite is calculated according to the second method. Referring to FIG. 4, another embodiment of the pseudorange calculation method in the embodiment of the present application includes:
401、获取终端本地的当前时间;401. Obtain a current time local to the terminal.
402、获取终端与失锁卫星之间的距离;402. Obtain a distance between the terminal and the lost lock satellite;
403、根据当前时间及距离计算失锁卫星向终端发送卫星信号的第一发射时间;403. Calculate, according to the current time and distance, a first transmission time of the satellite signal sent by the lost lock satellite to the terminal;
404、获取第一发射时间的发射误差;404. Acquire a transmission error of the first transmission time.
需要说明的是,本实施例中的步骤401至步骤404与前述图3所示实施例中的步骤301至步骤304类似,具体此处不再赘述。It should be noted that 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.
405、当发射误差满足第二预设条件时,获取从失锁卫星发射的导航电文解算的实际码相位时间和预设比特码周期计数对应的实际码周期时间; 405. When the transmission error meets the second preset condition, acquire an actual code phase time calculated by the navigation message transmitted from the lost lock satellite and an actual code cycle time corresponding to the preset bit code period count;
终端判断发射误差是否满足预设条件包括:获取终端预置接收机通道的码周期;判断发射误差是否小于码周期的一半;若否,则获取接收机通道的比特周期,当发射误差小于比特周期的一半时,确定发射误差满足第二预设条件。需要说明的是,根据不同类型码,该第二预设条件可进行灵活设置,具体此处不作限定。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. It should be noted that, according to different types of codes, the second preset condition can be flexibly set, which is not limited herein.
为了能够对射误差是否满足第二预设条件进行准确判断,终端判断发射误差是否小于码周期的一半后,当该发射误差大于码周期的一半时,可先获取接收机通道的比特周期,然后判断发射误差是否小于比特周期的一半;若是,则执行判断发射误差是否小于码周期的一半的步骤。该第二预设条件包含于前述的预设条件。当发射误差满足第二预设条件时,终端获取从失锁卫星发射的导航电文解算的实际码相位时间和预设比特码周期计数对应的实际码周期时间。In order to accurately determine whether the incident error satisfies the second preset condition, 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.
需要说明的是,终端可以先判断发射误差是否小于码周期的一半,再判断发射误差是否小于比特周期的一半;也可以是先判断发射误差是否小于比特周期的一半,再判断发射误差是否小于码周期的一半;也可以是选择式判断,还可以是同时判断是发射误差是否小于码周期的一半或是否小于比特周期的一半,具体此处不作限定。It should be noted that 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.
406、根据第一发射时间和比特周期计算预估码相位时间与预估码周期时间的和;406. Calculate a sum of the estimated code phase time and the estimated code cycle time according to the first transmission time and the bit period;
407、根据第一发射时间、实际码周期时间、实际码相位时间、预估码相位时间与预估码周期时间的和计算第二发射时间;407. Calculate a second transmission time according to a sum of the first transmission time, the actual code cycle time, the actual code phase time, the estimated code phase time, and the estimated code cycle time.
当发射误差满足第二预设条件时,终端获取从失锁卫星发射的导航电文解算的实际码相位时间和实际码周期时间,以及获取接收机通道的比特周期,这里导航电文可以在接收机通道内解码。然后,终端根据第一发射时间和比特周期计算预估码相位时间与预估码周期时间的和,因为第一发射时间为比特周期时间、码周期时间、码相位时间的和,当发射误差满足第二预设条件时,认为比特周期和比特周期计数的积即比特周期时间是准确的,再根据第一发射时间、实际码周期时间、实际码相位时间、预估码相位时间与预估码周期时间的和计算第二发射时间,具体是从第一发射时间中除去不确定的预估码相位时间与预估码周期时间的和,然后再加上准确的从导航电文解算的实际码相位时间 和码周期时间,即得到第二发射时间,其计算公式如下: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. In the second 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 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:
Figure PCTCN2017094449-appb-000022
Figure PCTCN2017094449-appb-000022
其中,floor()为向下取整函数,t0为预估码相位时间与预估码周期时间的和,
Figure PCTCN2017094449-appb-000023
为第一发射时间,t2为第二发射时间,tcyc为实际码周期时间,tcdp为实际码相位时间,tcyc的取值范围为0≤tcyc≤n,Δt为实际码周期时间与实际码相位时间的和与预估码周期时间预估码相位时间的和的差,
Figure PCTCN2017094449-appb-000024
为预估码周期时间预估码相位时间的和,n是1比特对应的时间。
Where floor() is the downward rounding function and t 0 is the sum of the estimated code phase time and the estimated code cycle time.
Figure PCTCN2017094449-appb-000023
For the first transmission time, t 2 is the second transmission time, t cyc is the actual code period time, t cdp is the actual code phase time, and t cyc is in the range of 0 ≤ t cyc ≤ n, Δt is the actual code period time The difference between the sum of the phase time of the actual code and the phase time of the estimated code period time estimate code,
Figure PCTCN2017094449-appb-000024
To estimate the sum of the code period time and the code phase time, n is the time corresponding to 1 bit.
由于第一发射时间、第二发射时间分为三个部分,分别是比特周期时间、码周期时间和码相位时间,因此当发射误差在1/2码周期以外且在1/2比特周期内时,从卫星导航电文中解算出的实际比特周期,比特周期时间这时会存在三种情况,分别是
Figure PCTCN2017094449-appb-000025
因为发射误差在1/2码周期和1/2比特周期内,即认为的真实值在以
Figure PCTCN2017094449-appb-000026
为中心的1/2比特周期到1/2码周期的半径的范围内,则在
Figure PCTCN2017094449-appb-000027
一定的情况下取不同的比特周期时间。
Since 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
Figure PCTCN2017094449-appb-000025
Since the transmission error is within 1/2 code period and 1/2 bit period, the true value is considered to be
Figure PCTCN2017094449-appb-000026
Centered on the 1/2 bit period to the radius of the 1/2 code period, then
Figure PCTCN2017094449-appb-000027
Different bit cycle times are taken under certain circumstances.
408、根据当前时间及第二发射时间计算终端与失锁卫星之间的伪距。408. Calculate a pseudorange between the terminal and the lost lock satellite according to the current time and the second launch time.
终端在得到第二发射时间后,可根据当前时间及第二发射时间计算终端与失锁卫星之间的伪距,其计算公式如下:After obtaining the second transmission time, the terminal may calculate the pseudorange between the terminal and the lost lock satellite according to the current time and the second transmission time, and the calculation formula is as follows:
ρ=a×(tr-t2)×cρ=a×(t r -t 2 )×c
其中,ρ为伪距,tr为当前时间,t2为第二发射时间,a为与时间有关的常系数,用于转换时间单位,例如,将毫秒转换为秒,c为光速。通过上述公式的计算即可以得到准确的伪距,之后可以利用多个伪距计算卫星位置。Where ρ is a pseudorange, t r is the current time, t 2 is the second transmission time, and a is a time-dependent constant coefficient for converting the time unit, for example, converting milliseconds into seconds, and c is the speed of light. By calculating the above formula, an accurate pseudorange can be obtained, and then the satellite position can be calculated using a plurality of pseudoranges.
需要说明的是,终端计算得到的伪距可包括终端与至少三个失锁卫星之间的伪距,即可计算至少三个伪距,在得到至少三个伪距后,可根据该至少三个伪距进行定位。终端还可以根据自身的当前情况仅计算一个伪距后,结合未失 锁卫星进行准确定位,或者,计算多个伪距后利用最小二乘法计算出目标伪距,根据,目标伪距进行定位。从而使得终端可快速计算出伪距,实现失锁重捕快速解算。It should be noted that 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.
以GPS L1 C/A码为例,其根据方式二计算伪距的公式为:Taking the GPS L1 C/A code as an example, the formula for calculating the pseudorange according to the second method is:
Figure PCTCN2017094449-appb-000028
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为光速,ρ为伪距。通过上述方法即可计算出真实的伪距。
Wherein, for the GPS L1C/A code, the bit period is 20 ms, the code period is 1 ms, floor() is a downward rounding function, and t 0 is the sum of the estimated code phase time and the estimated code period time.
Figure PCTCN2017094449-appb-000029
For the first transmission time, t r is the current time, t cyc is the actual code cycle time, t cdp is the actual code phase time, Δt is the sum of the actual code cycle time and the actual code phase time and the estimated code cycle time estimate code The difference between the sum of phase times,
Figure PCTCN2017094449-appb-000030
To estimate the sum of the code period time estimated code phase times, 0.001 is used to convert milliseconds into seconds, c is the speed of light, and ρ is the pseudorange. The true pseudorange can be calculated by the above method.
通过上述方法,终端可根据获取到的当前时间、终端与失锁卫星之间的距离计算第一发送时间,并且在第一发射时间的发射误差满足第二预设条件时,根据在稳定跟踪卫星后获取到的实际码相位时间、根据比特同步后获取的实际码周期时间、和根据比特周期计算得到的预估码相位时间与预估码周期时间的和、以及第一发射时间计算第二发射时间,再根据当前时间及第二发射时间计算终端与失锁卫星之间的伪距,从而可以在不用进行帧同步的情况下,计算出准确的伪距,从而计算出准确的位置信息。Through 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 second preset condition, according to the stable tracking satellite The actual code phase time obtained after the acquisition, the actual code cycle time obtained after the bit synchronization, and the sum of the estimated code phase time calculated from the bit period and the estimated code cycle time, and the second transmission time are calculated. Time, and then calculate the pseudorange between the terminal and the lost lock satellite according to the current time and the second launch time, so that an accurate pseudorange can be calculated without frame synchronization, thereby calculating accurate position information.
上面对本申请实施例中对伪距计算方法进行了描述,下面从硬件处理的角度对本申请实施例中的终端进行描述,如图5所示,本申请实施例中的终端一个实施例包括:The following describes the method for calculating the pseudorange in the embodiment of the present application. The following describes the terminal in the embodiment of the present application from the perspective of hardware processing. As shown in FIG. 5, an embodiment of the terminal in the embodiment of the present application includes:
处理器501和存储器502(其中终端中的处理器501的数量可以一个或多个,图5中以一个处理器501为例)。在本发明的一些实施例中,处理器501和存储器502可通过总线或其它方式连接,其中,图5中以通过总线连接为例。The processor 501 and the memory 502 (wherein the number of the processors 501 in the terminal may be one or more, and one processor 501 is taken as an example in FIG. 5). In some embodiments of the present invention, the processor 501 and the memory 502 may be connected by a bus or other means, wherein the bus connection is taken as an example in FIG.
其中,存储器502中存储有程序代码,通过调用存储器502存储的程序代 码,处理器501用于执行以下步骤:Wherein, the program code is stored in the memory 502, and the program generation stored in the memory 502 is called. The code is used by the processor 501 to perform the following steps:
获取终端本地的当前时间;Get the current time of the terminal local;
获取终端与失锁卫星之间的距离,失锁卫星是在未失锁前为终端提供定位服务的卫星;Obtaining the distance between the terminal and the lost lock satellite, which is a satellite that provides positioning services for the terminal before it loses lock;
根据当前时间及距离计算失锁卫星向终端发送卫星信号的第一发射时间;Calculating a first transmission time of the satellite signal transmitted by the lost lock satellite to the terminal according to the current time and distance;
根据第一发射时间和从失锁卫星发射的导航电文解算的实际时间计算第二发射时间;Calculating a second transmission time according to the first transmission time and the actual time of the navigation message transmitted from the lost lock satellite;
根据当前时间及第二发射时间计算终端与失锁卫星之间的伪距。The pseudorange between the terminal and the lost lock satellite is calculated according to the current time and the second launch time.
在某些实施例中,处理器501还用于,获取第一发射时间的发射误差;In some embodiments, the processor 501 is further configured to acquire a transmission error of the first transmission time;
判断发射误差是否满足预设条件;Determining whether the transmission error satisfies a preset condition;
若是,则执行根据第一发射时间和从失锁卫星发射的导航电文解算的实际时间计算第二发射时间的步骤。If so, the step of calculating the second transmission time based on the first transmission time and the actual time of the navigation message transmitted from the lost lock satellite is performed.
在某些实施例中,处理器501还用于,获取失锁卫星的卫星误差及卫星信号的传播误差;In some embodiments, the processor 501 is further configured to acquire a satellite error of the lost-lock satellite and a propagation error of the satellite signal;
获取终端预置接收机的接收机误差;Obtaining the receiver error of the terminal preset receiver;
根据卫星误差、传播误差及接收机误差获取发射误差。The transmission error is obtained based on satellite error, propagation error, and receiver error.
在某些实施例中,处理器501还用于,获取终端预置接收机通道的码周期;In some embodiments, the processor 501 is further configured to acquire a code period of the terminal preset receiver channel;
当发射误差小于码周期的一半时,则确定发射误差满足第一预设条件,第一预设条件包含于预设条件。When the transmission error is less than half of the code period, it is determined that the transmission error satisfies the first preset condition, and the first preset condition is included in the preset condition.
在某些实施例中,处理器501还用于,当发射误差满足第一预设条件时,获取从失锁卫星发射的导航电文解算的实际码相位时间;In some embodiments, the processor 501 is further configured to: when the transmission error meets the first preset condition, acquire an actual code phase time of the navigation message transmitted from the lost lock satellite;
获取接收机通道的比特周期;Obtaining the bit period of the receiver channel;
根据第一发射时间、码周期、比特周期计算预估码相位时间;Calculating the estimated code phase time according to the first transmission time, the code period, and the bit period;
根据第一发射时间、实际码相位时间和预估码相位时间计算第二发射时间。The second transmission time is calculated based on the first transmission time, the actual code phase time, and the estimated code phase time.
在某些实施例中,处理器501还用于,当发射误差大于码周期的一半时,获取接收机通道的比特周期;In some embodiments, the processor 501 is further configured to: acquire a bit period of the receiver channel when the transmission error is greater than half of the code period;
当发射误差小于比特周期的一半时,则确定发射误差满足第二预设条件,第二预设条件包含于预设条件。 When the transmission error is less than half of the bit period, it is determined that the transmission error satisfies the second preset condition, and the second preset condition is included in the preset condition.
在某些实施例中,处理器501还用于,当发射误差满足第二预设条件时,获取从失锁卫星发射的导航电文解算的实际码相位时间和预设比特内码周期计数对应的实际码周期时间;In some embodiments, the processor 501 is further configured to: when the transmission error meets the second preset condition, acquire the actual code phase time of the navigation message sent from the lost lock satellite, and corresponding to the preset bit inner code period count. Actual code cycle time;
根据第一发射时间和比特周期计算预估码相位时间与预估码周期时间的和;Calculating a sum of the estimated code phase time and the estimated code cycle time according to the first transmission time and the bit period;
根据第一发射时间、实际码周期时间、实际码相位时间及预估码相位时间与预估码周期时间的和计算第二发射时间。The second transmission time is calculated according to the sum of the first transmission time, the actual code period time, the actual code phase time, and the estimated code phase time and the estimated code period time.
在某些实施例中,处理器501还用于,获取终端当前的终端位置信息;In some embodiments, the processor 501 is further configured to acquire current terminal location information of the terminal.
获取失锁卫星的卫星位置信息;Obtaining satellite position information of the lost lock satellite;
根据终端位置信息及卫星位置信息获取距离。The distance is obtained based on the terminal location information and the satellite location information.
在某些实施例中,处理器501还用于,通过至少一种定位装置获取终端位置信息,其中,定位装置包括以下至少一种:惯性导航、视觉传感器或超声波。In some embodiments, the processor 501 is further configured to acquire terminal location information by using at least one positioning device, wherein the positioning device comprises at least one of: inertial navigation, a visual sensor, or an ultrasonic wave.
在某些实施例中,处理器501还用于,根据终端位置信息及卫星位置信息获取几何距离;In some embodiments, the processor 501 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 geometric distance, satellite error, propagation error, and receiver error.
在某些实施例中,处理器501还用于,每隔预设时间获取终端预置的接收机的晶振温度;In some embodiments, the processor 501 is further configured to acquire, at a preset time, a crystal temperature of a receiver preset by the terminal;
获取晶振温度对应的晶振频偏;Obtaining the crystal frequency offset corresponding to the crystal temperature;
获取晶振频偏对应的时间偏差;Obtaining the time deviation corresponding to the crystal frequency offset;
根据时间偏差调整接收机的本地时间,将调整后的本地时间设定为当前时间。Adjust the local time of the receiver according to the time deviation, and set the adjusted local time to the current time.
在某些实施例中,处理器501还用于,获取卫星向终端发送卫星信号的传输时间,以及获取卫星信号的初始发射时间;In some embodiments, 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;
根据传输时间及初始发射时间,调整接收机的本地时间,将调整后的本地时间设定为当前时间。According to the transmission time and the initial transmission time, the local time of the receiver is adjusted, and the adjusted local time is set as the current time.
在某些实施例中,处理器501还用于,根据至少三个伪距进行定位。In some embodiments, the processor 501 is further configured to perform positioning according to at least three pseudoranges.
需要说明的是,该终端的处理器501执行的步骤与前述图2至图4所示实施例中的步骤类似,具体此处不再赘述。It should be noted that the steps performed by the processor 501 of the terminal are similar to the steps in the foregoing embodiment shown in FIG. 2 to FIG. 4 , and details are not described herein again.
本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术 方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。A portion of the technical solution of the present application that contributes in essence or to the prior art or the technology 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. .
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。 The above embodiments are only used to explain the technical solutions of the present application, and are not limited thereto; although the present application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that they can still The technical solutions described in the embodiments are modified, or the equivalents of the technical features are replaced by the equivalents. The modifications and substitutions of the embodiments do not depart from the spirit and scope of the technical solutions of the embodiments of the present application.

Claims (28)

  1. 一种伪距计算方法,其特征在于,包括:A pseudorange calculation method, comprising:
    获取终端本地的当前时间;Get the current time of the terminal local;
    获取所述终端与失锁卫星之间的距离,所述失锁卫星是在未失锁前为所述终端提供定位服务的卫星;Obtaining a distance between the terminal and a lost lock satellite, the satellite that provides positioning service for the terminal before the lock is lost;
    根据所述当前时间及所述距离计算所述失锁卫星向所述终端发送卫星信号的第一发射时间;Calculating, according to the current time and the distance, a first transmission time that the lost-lock satellite transmits a satellite signal to the terminal;
    根据所述第一发射时间和从所述失锁卫星发射的导航电文解算的实际时间计算第二发射时间;Calculating a second transmission time according to the first transmission time and an actual time calculated from a navigation message transmitted by the lost lock satellite;
    根据所述当前时间及所述第二发射时间计算所述终端与所述失锁卫星之间的伪距。Calculating a pseudorange between the terminal and the lost lock satellite according to the current time and the second transmission time.
  2. 根据权利要求1所述的方法,其特征在于,所述根据所述第一发射时间和从所述失锁卫星发射的导航电文解算的实际时间计算第二发射时间之前,所述方法还包括:The method of claim 1 wherein said method further comprises calculating said second transmission time based on said first transmission time and an actual time of solution from said navigational message transmitted by said loss of lock satellite, said method further comprising :
    获取所述第一发射时间的发射误差;Obtaining a transmission error of the first transmission time;
    判断所述发射误差是否满足预设条件;Determining whether the transmission error satisfies a preset condition;
    若是,则执行根据所述第一发射时间和从所述失锁卫星发射的导航电文解算的实际时间计算第二发射时间的步骤。If so, the step of calculating the second transmission time based on the first transmission time and the actual time of the navigation message transmitted from the lost lock satellite is performed.
  3. 根据权利要求2所述的方法,其特征在于,所述获取所述第一发射时间的发射误差包括:The method according to claim 2, wherein the acquiring the transmission error of the first transmission time comprises:
    获取所述失锁卫星的卫星误差及所述卫星信号的传播误差;Obtaining a satellite error of the lost lock satellite and a propagation error of the satellite signal;
    获取所述终端预置接收机的接收机误差;Obtaining a receiver error of the terminal preset receiver;
    根据所述卫星误差、所述传播误差及所述接收机误差获取所述发射误差。The transmission error is obtained based on the satellite error, the propagation error, and the receiver error.
  4. 根据权利要求2所述的方法,其特征在于,所述判断所述发射误差是否满足预设条件包括:The method according to claim 2, wherein the determining whether the transmission error satisfies a preset condition comprises:
    获取所述终端预置接收机通道的码周期;Obtaining a code period of the terminal preset receiver channel;
    当所述发射误差小于所述码周期的一半时,则确定所述发射误差满足第一预设条件,所述第一预设条件包含于所述预设条件。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.
  5. 根据权利要求4所述的方法,其特征在于,所述根据所述第一发射时 间和从所述失锁卫星发射的导航电文解算的实际时间计算第二发射时间包括:The method according to claim 4, wherein said according to said first transmission time Calculating the second transmission time between the actual time calculated by the navigation message transmitted from the lost lock satellite and the second time includes:
    当所述发射误差满足所述第一预设条件时,获取从所述失锁卫星发射的导航电文解算的实际码相位时间;Acquiring the actual code phase time of the navigation message transmitted from the lost lock satellite when the transmission error satisfies the first preset condition;
    获取所述接收机通道的比特周期;Obtaining a bit period of the receiver channel;
    根据所述第一发射时间、所述码周期、所述比特周期计算预估码相位时间;Calculating an estimated code phase time according to the first transmission time, the code period, and the bit period;
    根据所述第一发射时间、所述实际码相位时间和所述预估码相位时间计算所述第二发射时间。The second transmission time is calculated according to the first transmission time, the actual code phase time, and the estimated code phase time.
  6. 根据权利要求4所述的方法,其特征在于,在获取所述终端预置接收机通道的码周期之后,所述方法还包括:The method according to claim 4, wherein after obtaining the code period of the terminal preset receiver channel, the method further comprises:
    当所述发射误差大于所述码周期的一半时,获取所述接收机通道的比特周期;Obtaining a bit period of the receiver channel when the transmission error is greater than half of the code period;
    当所述发射误差小于比特周期的一半时,则确定所述发射误差满足第二预设条件,所述第二预设条件包含于所述预设条件。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.
  7. 根据权利要求6所述的方法,其特征在于,所述根据所述第一发射时间和从所述失锁卫星发射的导航电文解算的实际时间计算第二发射时间包括:The method according to claim 6, wherein 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 comprises:
    当所述发射误差满足所述第二预设条件时,获取从所述失锁卫星发射的导航电文解算的实际码相位时间和预设比特内码周期计数对应的实际码周期时间;And acquiring, when the transmission error meets the second preset condition, an actual code phase time calculated by the navigation message transmitted from the lost lock satellite and an actual code cycle time corresponding to the preset bit inner code cycle count;
    根据所述第一发射时间和所述比特周期计算预估码相位时间与预估码周期时间的和;Calculating a sum of an estimated code phase time and an estimated code cycle time according to the first transmission time and the bit period;
    根据所述第一发射时间、所述实际码周期时间、所述实际码相位时间及预估码相位时间与预估码周期时间的和计算所述第二发射时间。And calculating the second transmission time according to the sum of the first transmission time, the actual code period time, the actual code phase time, and the estimated code phase time and the estimated code period time.
  8. 根据权利要求1所述的方法,其特征在于,所述获取所述终端与失锁卫星之间的距离包括:The method of claim 1 wherein said obtaining a distance between said terminal and a lost lock satellite comprises:
    获取所述终端当前的终端位置信息;Obtaining current terminal location information of the terminal;
    获取所述失锁卫星的卫星位置信息;Obtaining satellite position information of the lost lock satellite;
    根据所述终端位置信息及所述卫星位置信息获取所述距离。And obtaining the distance according to the terminal location information and the satellite location information.
  9. 根据权利要求8所述的方法,其特征在于,所述获取所述终端当前的终端位置信息包括: The method according to claim 8, wherein the obtaining the current terminal location information of the terminal comprises:
    通过至少一种定位装置获取所述终端位置信息,其中,所述定位装置包括以下至少一种:惯性导航、视觉传感器或超声波。The terminal location information is obtained by at least one positioning device, wherein the positioning device comprises at least one of: inertial navigation, a visual sensor or an ultrasound.
  10. 根据权利要求8所述的方法,其特征在于,根据所述终端位置信息及所述卫星位置信息获取所述距离包括:The method according to claim 8, wherein the obtaining the distance according to the terminal location information and the satellite location information comprises:
    根据所述终端位置信息及所述卫星位置信息获取几何距离;Obtaining 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.
  11. 根据权利要求1所述的方法,其特征在于,所述获取终端本地的当前时间之前,所述方法还包括:The method according to claim 1, wherein the method further comprises: before acquiring the current time local to the terminal, the method further comprising:
    每隔预设时间获取所述终端预置的接收机的晶振温度;Acquiring the crystal temperature of the receiver preset by the terminal every preset time;
    获取所述晶振温度对应的晶振频偏;Obtaining a crystal frequency offset corresponding to the crystal temperature;
    获取所述晶振频偏对应的时间偏差;Obtaining a time deviation corresponding to the crystal frequency offset;
    根据所述时间偏差调整所述接收机的本地时间,将调整后的本地时间设定为所述当前时间。Adjusting the local time of the receiver according to the time offset, and setting the adjusted local time as the current time.
  12. 根据权利要求1所述的方法,其特征在于,所述获取终端本地的当前时间之前,所述方法还包括:The method according to claim 1, wherein the method further comprises: before acquiring the current time local to the terminal, the method further comprising:
    获取所述卫星向所述终端发送卫星信号的传输时间,以及获取所述卫星信号的初始发射时间;Obtaining a transmission time of the satellite transmitting a satellite signal to the terminal, and acquiring an initial transmission time of the satellite signal;
    根据所述传输时间及所述初始发射时间,调整所述接收机的本地时间,将调整后的本地时间设定为所述当前时间。And 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.
  13. 根据权利要求1至12中任一项所述的方法,其特征在于,所述根据所述当前时间及所述第二发射时间计算所述终端与所述失锁卫星之间的伪距之后,所述方法还包括:The method according to any one of claims 1 to 12, wherein after calculating the pseudorange between the terminal and the lost lock satellite according to the current time and the second transmission time, The method further includes:
    根据至少三个所述伪距进行定位。Positioning is performed according to at least three of the pseudoranges.
  14. 一种终端,其特征在于,所述终端包括处理器,所述处理器用于,A terminal, wherein the terminal includes a processor, and the processor is configured to:
    获取终端本地的当前时间;Get the current time of the terminal local;
    获取所述终端与失锁卫星之间的距离,所述失锁卫星是在未失锁前为所述终端提供定位服务的卫星;Obtaining a distance between the terminal and a lost lock satellite, the satellite that provides positioning service for the terminal before the lock is lost;
    根据所述当前时间及所述距离计算所述失锁卫星向所述终端发送卫星信 号的第一发射时间;Calculating, according to the current time and the distance, the lost lock satellite to send a satellite letter to the terminal The first launch time of the number;
    根据所述第一发射时间和从所述失锁卫星发射的导航电文解算的实际时间计算第二发射时间;Calculating a second transmission time according to the first transmission time and an actual time calculated from a navigation message transmitted by the lost lock satellite;
    根据所述当前时间及所述第二发射时间计算所述终端与所述失锁卫星之间的伪距。Calculating a pseudorange between the terminal and the lost lock satellite according to the current time and the second transmission time.
  15. 根据权利要求14所述的终端,其特征在于,所述处理器还用于,获取所述第一发射时间的发射误差;The terminal according to claim 14, wherein the processor is further configured to acquire a transmission error of the first transmission time;
    判断所述发射误差是否满足预设条件;Determining whether the transmission error satisfies a preset condition;
    若是,则执行根据所述第一发射时间和从所述失锁卫星发射的导航电文解算的实际时间计算第二发射时间的步骤。If so, the step of calculating the second transmission time based on the first transmission time and the actual time of the navigation message transmitted from the lost lock satellite is performed.
  16. 根据权利要求15所述的终端,其特征在于,所述处理器还用于,获取所述失锁卫星的卫星误差及所述卫星信号的传播误差;The terminal according to claim 15, wherein the processor is further configured to acquire a satellite error of the lost-lock satellite and a propagation error of the satellite signal;
    获取所述终端预置接收机的接收机误差;Obtaining a receiver error of the terminal preset receiver;
    根据所述卫星误差、所述传播误差及所述接收机误差获取所述发射误差。The transmission error is obtained based on the satellite error, the propagation error, and the receiver error.
  17. 根据权利要求15所述的终端,其特征在于,所述处理器还用于,获取所述终端预置接收机通道的码周期;The terminal according to claim 15, wherein the processor is further configured to acquire a code period of the terminal preset receiver channel;
    当所述发射误差小于所述码周期的一半时,则确定所述发射误差满足第一预设条件,所述第一预设条件包含于所述预设条件。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.
  18. 根据权利要求17所述的终端,其特征在于,所述处理器还用于,当所述发射误差满足所述第一预设条件时,获取从所述失锁卫星发射的导航电文解算的实际码相位时间;The terminal according to claim 17, wherein the processor is further configured to: when the transmission error satisfies the first preset condition, acquire a navigation message transmitted from the loss-locking satellite Actual code phase time;
    获取所述接收机通道的比特周期;Obtaining a bit period of the receiver channel;
    根据所述第一发射时间、所述码周期、所述比特周期计算预估码相位时间;Calculating an estimated code phase time according to the first transmission time, the code period, and the bit period;
    根据所述第一发射时间、所述实际码相位时间和所述预估码相位时间计算所述第二发射时间。The second transmission time is calculated according to the first transmission time, the actual code phase time, and the estimated code phase time.
  19. 根据权利要求17所述的终端,其特征在于,所述处理器还用于,当所述发射误差大于所述码周期的一半时,获取所述接收机通道的比特周期;The terminal according to claim 17, wherein 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;
    当所述发射误差小于比特周期的一半时,则确定所述发射误差满足第二预设条件,所述第二预设条件包含于所述预设条件。 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.
  20. 根据权利要求19所述的终端,其特征在于,所述处理器还用于,当所述发射误差满足所述第二预设条件时,获取从所述失锁卫星发射的导航电文解算的实际码相位时间和预设比特内码周期计数对应的实际码周期时间;The terminal according to claim 19, wherein the processor is further configured to: when the transmission error meets the second preset condition, acquire a navigation message transmitted from the lost lock satellite The actual code phase time and the actual code cycle time corresponding to the preset bit inner code cycle count;
    根据所述第一发射时间和所述比特周期计算预估码相位时间与预估码周期时间的和;Calculating a sum of an estimated code phase time and an estimated code cycle time according to the first transmission time and the bit period;
    根据所述第一发射时间、所述实际码周期时间、所述实际码相位时间及预估码相位时间与预估码周期时间的和计算所述第二发射时间。And calculating the second transmission time according to the sum of the first transmission time, the actual code period time, the actual code phase time, and the estimated code phase time and the estimated code period time.
  21. 根据权利要求14所述的终端,其特征在于,所述处理器还用于,获取所述终端当前的终端位置信息;The terminal according to claim 14, wherein the processor is further configured to acquire current terminal location information of the terminal;
    获取所述失锁卫星的卫星位置信息;Obtaining satellite position information of the lost lock satellite;
    根据所述终端位置信息及所述卫星位置信息获取所述距离。And obtaining the distance according to the terminal location information and the satellite location information.
  22. 根据权利要求21所述的终端,其特征在于,所述处理器还用于,通过至少一种定位装置获取所述终端位置信息,其中,所述定位装置包括以下至少一种:惯性导航、视觉传感器或超声波。The terminal according to claim 21, wherein 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: inertial navigation, vision Sensor or ultrasound.
  23. 根据权利要求21所述的终端,其特征在于,所述处理器还用于,根据所述终端位置信息及所述卫星位置信息获取几何距离;The terminal according to claim 21, wherein 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.
  24. 根据权利要求14所述的终端,其特征在于,所述处理器还用于,每隔预设时间获取所述终端预置的接收机的晶振温度;The terminal according to claim 14, wherein the processor is further configured to acquire a crystal temperature of a receiver preset by the terminal every preset time;
    获取所述晶振温度对应的晶振频偏;Obtaining a crystal frequency offset corresponding to the crystal temperature;
    获取所述晶振频偏对应的时间偏差;Obtaining a time deviation corresponding to the crystal frequency offset;
    根据所述时间偏差调整所述接收机的本地时间,将调整后的本地时间设定为所述当前时间。Adjusting the local time of the receiver according to the time offset, and setting the adjusted local time as the current time.
  25. 根据权利要求14所述的终端,其特征在于,所述处理器还用于,获取所述卫星向所述终端发送卫星信号的传输时间,以及获取所述卫星信号的初始发射时间;The terminal according to claim 14, wherein the processor is further configured to acquire a transmission time of the satellite to transmit a satellite signal to the terminal, and acquire an initial transmission time of the satellite signal;
    根据所述传输时间及所述初始发射时间,调整所述接收机的本地时间,将调整后的本地时间设定为所述当前时间。 And 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.
  26. 根据权利要求14至25中任一项所述的终端,其特征在于,所述处理器还用于,根据至少三个所述伪距进行定位。The terminal according to any one of claims 14 to 25, wherein the processor is further configured to perform positioning according to at least three of the pseudoranges.
  27. 一种包含指令的计算机程序产品,其特征在于,当所述计算机程序产品在计算机上运行时,使得计算机执行如权利要求1至13中任意一项所述的伪距计算方法。A computer program product comprising instructions, wherein the computer program product, when run on a computer, causes the computer to perform the pseudorange calculation method according to any one of claims 1 to 13.
  28. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述权利要求1至13中任一所述的伪距计算方法。 A computer readable storage medium, wherein the computer readable storage medium stores instructions that, when run on a computer, cause the computer to perform the pseudorange calculation of any one of claims 1 to 13 method.
PCT/CN2017/094449 2017-07-26 2017-07-26 Pseudorange calculation method and terminal WO2019019044A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/CN2017/094449 WO2019019044A1 (en) 2017-07-26 2017-07-26 Pseudorange calculation method and terminal
CN201780006832.6A CN108513623B (en) 2017-07-26 2017-07-26 Pseudo-range calculation method and terminal

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2017/094449 WO2019019044A1 (en) 2017-07-26 2017-07-26 Pseudorange calculation method and terminal

Publications (1)

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

Family

ID=63375234

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/094449 WO2019019044A1 (en) 2017-07-26 2017-07-26 Pseudorange calculation method and terminal

Country Status (2)

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

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112462398A (en) * 2020-11-18 2021-03-09 北京中捷时代航空科技有限公司 Satellite signal out-of-lock repositioning method and system

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111159618B (en) * 2019-11-25 2024-04-09 南京六九零二科技有限公司 Method for improving PVT calculation speed of Beidou second satellite receiver
CN110907972B (en) * 2019-12-04 2022-02-25 辰芯科技有限公司 Position positioning method, speed positioning method, device and positioning terminal
CN113093250B (en) * 2021-06-04 2021-08-27 腾讯科技(深圳)有限公司 Pseudo-range observation data restoration method, positioning information determination method and device

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 (en) * 2014-01-06 2014-04-23 北京北斗星通导航技术股份有限公司 Beidou navigation satellite system receiver positioning engine and positioning method
CN104678419A (en) * 2015-03-25 2015-06-03 天津七六四通信导航技术有限公司 Quick positioning method of satellite navigation receiver after recapture of lost lock
CN105093242A (en) * 2015-07-24 2015-11-25 北京航天长征飞行器研究所 Rapid capturing and positioning method of satellite receiver after losing lock
CN106199667A (en) * 2016-06-17 2016-12-07 南京理工大学 Fast relocation method in GPS/SINS hypercompact combination navigation system

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 (en) * 2010-12-06 2013-12-04 中国科学院微电子研究所 Quick positioning method applied to global satellite positioning and navigating system
CN102692632A (en) * 2011-03-23 2012-09-26 中国科学院微电子研究所 Method for eliminating ambiguity in satellite positioning system receiver positioning process and device thereof
CN102778683A (en) * 2012-07-09 2012-11-14 北京邮电大学 Beidou receiver and warm start method thereof
CN104753464B (en) * 2013-12-29 2017-06-30 展讯通信(上海)有限公司 The transmitting frequency calibration method and device of temperature-compensating crystal oscillator in a kind of mobile terminal
CN104865587B (en) * 2015-06-15 2017-05-17 中国人民解放军国防科学技术大学 Quick locating method based on GEO constellation coarse location for Beidou receiver

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 (en) * 2014-01-06 2014-04-23 北京北斗星通导航技术股份有限公司 Beidou navigation satellite system receiver positioning engine and positioning method
CN104678419A (en) * 2015-03-25 2015-06-03 天津七六四通信导航技术有限公司 Quick positioning method of satellite navigation receiver after recapture of lost lock
CN105093242A (en) * 2015-07-24 2015-11-25 北京航天长征飞行器研究所 Rapid capturing and positioning method of satellite receiver after losing lock
CN106199667A (en) * 2016-06-17 2016-12-07 南京理工大学 Fast relocation method in GPS/SINS hypercompact combination navigation system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112462398A (en) * 2020-11-18 2021-03-09 北京中捷时代航空科技有限公司 Satellite signal out-of-lock repositioning method and system
CN112462398B (en) * 2020-11-18 2024-02-23 北京中捷时代航空科技有限公司 Method and system for repositioning out-of-lock satellite signals

Also Published As

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

Similar Documents

Publication Publication Date Title
US7987048B2 (en) Method and apparatus for computing position using instantaneous doppler measurements from satellites
US8255160B2 (en) Integrated mobile terminal navigation
EP1851564B1 (en) Method and apparatus for enhanced autonomous gps
EP1877824B1 (en) Transfer of position information to a mobile terminal
US9354321B2 (en) Method for position determination with measurement stitching
US9182493B2 (en) Fine time assistance for global navigation satellite systems
KR100691407B1 (en) Positioning system, information supply device, terminal device, control method of information supply device, and computer readable recording medium recording control program of information supply device
US20100090889A1 (en) Precise orbit determination system and method using gps data and galileo data
US20040257277A1 (en) Method and apparatus for locating position of a satellite signal receiver
US20120172054A1 (en) System and method for cooperative positioning
WO2019019044A1 (en) Pseudorange calculation method and terminal
EP2380036A1 (en) Navigation receiver and method for combined use of a standard rtk system and a global carrier-phase differential positioning system
KR102609054B1 (en) System for estimating position of global navigation satellite system receiver and method thereof
CN113835109B (en) Terminal positioning method and device, electronic equipment, storage medium and program product
KR100938731B1 (en) Self-Positioning System of Two-way Pseudolite
US9989651B2 (en) Geopositioning method with trust index, and associated terminal
KR20230050331A (en) RTK GNSS positioning without base station
JP5670649B2 (en) How to determine the location of a mobile device
KR20190080021A (en) Apparatus for positioning using satellite information and method thereof
US6393291B1 (en) Method and apparatus for deriving a high rate output in a GPS system
WO2018052738A1 (en) Detection of outlier range measurements using spatial displacement data
Pany et al. Performance of a partially coherent ultra-tightly coupled GNSS/INS pedestrian navigation system enabling coherent integration times of several seconds to track GNSS signals down to 1.5 dBHz
RU2379702C1 (en) Method to determine security limit with compensation for computation delays
US11802971B2 (en) Real-time kinematic (RTK) and differential global navigation satellite system (DGNSS) corrections using multiple reference stations
US20220276394A1 (en) Map-aided satellite selection

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