Satellite receiver PPS signal correction method and device, satellite receiver, computer readable medium and computer program product
By obtaining the effective time difference of the navigation constellation signal in the satellite receiver, and using the weighted moving average method to calculate the compensation count value to correct the PPS signal, the problems of high cost and low accuracy of PPS signal correction in satellite receivers are solved, and high-precision signal correction under invalid time intervals is achieved.
Patent Information
- Application Number
- CN202511445908.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-10-11
- Publication Date
- 2025-11-14
- Estimated Expiration
- 2045-10-11
AI Technical Summary
Existing PPS signal correction methods for satellite receivers are costly and inefficient, and cannot guarantee the accuracy and continuity of PPS signals, especially under external interference.
By obtaining the effective point receiver clock error of the effective time of the navigation constellation signal, the real-time count mean is calculated using the weighted moving average method to determine the effective compensation count value, and the PPS signal is corrected based on the count correction value at the invalid time, thus avoiding reliance on hardware improvements or real-time uploads from the ground control station.
Ensuring PPS signal accuracy within 9ns during invalid moments reduces calibration costs, improves signal accuracy, and ensures the normal operation of on-orbit satellite subsystem payload missions.
Smart Images

Figure CN120949266A_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the technical field of PPS signal correction, specifically relating to a PPS signal correction method, apparatus, electronic device, computer-readable medium, and computer program product for a satellite receiver. Background Technology
[0002] GNSS (Global Navigation Satellite System) is a space-based radio navigation and positioning system that provides users with all-weather, three-dimensional coordinates, velocity, and time information at any location on the Earth's surface or in near-Earth space. GNSS mainly consists of a navigation constellation, ground control stations, and operational satellites. The navigation constellation generates navigation signals and broadcasts them to the operational satellites, while also receiving signals from the ground control stations to control itself.
[0003] Satellite local time synchronization counting refers to the counting of time synchronization between various subsystems of a working satellite by the receivers installed on the satellites through the received navigation constellation signals. The systems rely on the PPS (Pulse Per Second) signal output by the receivers and the corresponding timestamps to obtain a unified time with nanosecond (ns) level accuracy.
[0004] Generally, a GNSS navigation constellation has its own time system based on observations from atomic clocks at ground control stations and atomic clocks (or crystal oscillators) installed on the constellation. Simultaneously, the receivers on the operational satellites also have clocks installed, known as operational satellite receiver clocks. When the navigation constellation signals transmitted by the constellation are captured by the operational satellite receivers, the time read through the constellation's time system is the GNSS local time, while the time read through the operational satellite receiver clock is the receiver time. The receiver time is usually not synchronized with the GNSS local time; the difference between the two is defined as the receiver clock error. This receiver clock error directly affects the accuracy of the PPS signal output by the operational satellite receiver.
[0005] For operational satellite receivers, the navigation constellation signals they receive are easily affected by the external environment. In scenarios where signals are limited by obstructions or electromagnetic interference, the degraded or interrupted signal quality can cause discontinuous timestamps and time rollbacks in the data of various devices in the operational satellite subsystem. In particular, when there is suppressive or deceptive interference in the L-band, the operational satellite receiver cannot receive the navigation constellation signal and therefore cannot locate itself. In this case, the receiver clock error will gradually increase under the influence of interference, and the error of the output PPS signal will also gradually increase accordingly.
[0006] To ensure the normal operation of the satellite subsystem payload, the accuracy and continuity of the output PPS signal must be guaranteed under any environment. Currently, mainstream PPS signal correction methods generally include: adding a clock calibration function to the satellite receiver, using a high-precision atomic clock in the satellite receiver, and uploading clock difference information in real time via a ground control station. However, adding a clock calibration function or using a high-precision atomic clock often increases the design size and cost of the satellite receiver. Furthermore, uploading clock difference information in real time via a ground control station inherently introduces a time delay and cannot guarantee the real-time performance of PPS correction. Therefore, a novel PPS signal correction method is urgently needed. Summary of the Invention
[0007] The main objective of this application is to provide a method, apparatus, device, computer-readable medium, and computer program product for PPS signal correction of a satellite receiver, in order to solve the problems of high cost and low efficiency of existing PPS signal correction methods for operational satellites.
[0008] To address the aforementioned technical problems, in a first aspect, this application provides a method for correcting the PPS signal of a satellite receiver, comprising: receiving a navigation constellation signal; determining whether the satellite receiver's positioning is valid, and identifying the valid and invalid times of the satellite receiver; acquiring the valid point receiver clock error corresponding to the valid time of the satellite receiver, and correcting and outputting the PPS signal of the satellite receiver based on the valid point receiver clock error; acquiring the real-time average count value corresponding to the valid point receiver clock error, and determining the effective compensation count value of the satellite receiver based on the real-time average count value; responding to the invalid time of the satellite receiver, determining the count correction value under the invalid time based on the effective compensation count value; and correcting and outputting the PPS signal of the satellite receiver based on the count correction value.
[0009] Further, the average real-time count corresponding to the valid point receiver clock bias is obtained, and the effective compensation count value of the satellite receiver is determined based on the average real-time count value, including: obtaining the real-time count value corresponding to the valid point receiver clock bias under several consecutive valid time periods, wherein the last time period among the several consecutive valid time periods is located before the first invalid time period; determining the average real-time count value from the i-th real-time count value to the (i+k)-th real-time count value, wherein 1≤i≤i+k; and determining the effective compensation count value based on the average real-time count value.
[0010] Furthermore, the mean of the real-time clock difference is obtained using the weighted moving average method.
[0011] Further, in response to an invalid time of the satellite receiver, based on the valid compensation count value, a count correction value is determined for the invalid time, including: in response to the first invalid time, obtaining the floor value of the valid compensation count value and setting the floor value of the valid compensation count value as the count correction value for the first invalid time; in response to the second invalid time, obtaining the floor value of the valid compensation count value and setting the floor value of the valid compensation count value as the count correction value for the second invalid time; obtaining the average of the floor value of the valid compensation count value and the floor value of the valid compensation count value, and obtaining the difference between the average value and the valid compensation count value; if the difference is greater than 0, obtaining the floor value of the average value and setting the floor value of the average value as the count correction value for the third invalid time; if the difference is less than or equal to 0, obtaining the floor value of the average value and setting the floor value of the average value as the count correction value for the third invalid time.
[0012] Further, after the step of setting the floor value of the average to be the count correction value at the third invalid time, or after the step of setting the floor value of the average to be the count correction value at the third invalid time, the method further includes: in response to any j-th invalid time, obtaining the average of all count correction values corresponding to the 1st invalid time to the (j-1)th invalid time, where j≥4; obtaining the count verification difference between the average of the count correction values and the effective compensation count value; if the count verification difference is greater than 0, obtaining the floor value of the average of the count correction values and setting the floor value to be the count correction value at the j-th invalid time; if the count verification difference is less than or equal to 0, obtaining the floor value of the average of the count correction values and setting the floor value to be the count correction value at the j-th invalid time.
[0013] Further, determining whether the satellite receiver positioning is valid and identifying the valid and invalid times of the satellite receiver includes: responding to the navigation constellation signal, performing PVT positioning calculation to obtain the PVT positioning calculation result; determining the real-time receiver clock bias based on the time information of the PVT positioning calculation result; obtaining the clock bias verification difference between the real-time receiver clock bias and the preset clock bias threshold of the satellite receiver; determining whether the clock bias verification difference is greater than 0, and determining whether the satellite receiver positioning is valid based on the determination result; if the clock bias verification difference is less than or equal to 0, determining that the satellite receiver positioning is valid, and determining the reception time of the navigation constellation signal as a valid time; if the clock bias verification difference is greater than 0, determining that the satellite receiver positioning is invalid, and determining the reception time of the navigation constellation signal as an invalid time.
[0014] Secondly, this application also provides a PPS signal correction device for a satellite receiver, comprising: a receiving module configured to receive navigation constellation signals; a judging module configured to judge whether the satellite receiver positioning is valid and determine the valid time and invalid time of the satellite receiver; a first correction module configured to acquire the valid point receiver clock error corresponding to the valid time of the satellite receiver, and correct and output the PPS signal of the satellite receiver based on the valid point receiver clock error; a first determining module configured to acquire the real-time count average corresponding to the valid point receiver clock error, and determine the valid compensation count value of the satellite receiver based on the real-time count average; a second determining module configured to, in response to the invalid time of the satellite receiver, determine the count correction value under the invalid time based on the valid compensation count value; and a second correction module configured to correct and output the PPS signal of the satellite receiver based on the count correction value.
[0015] Thirdly, this application provides a satellite receiver, including a radio frequency front-end processing unit and a baseband digital signal processing unit, wherein the baseband digital signal processing unit is configured to implement the steps of the PPS signal correction method of the satellite receiver as described in the first aspect.
[0016] Furthermore, the radio frequency front-end processing unit includes a satellite antenna, a low-noise power amplifier, and a radio frequency circuit that are connected in sequence. The navigation constellation signal is transmitted to the baseband digital signal processing unit after being processed by the radio frequency front-end processing unit. The baseband digital signal processing unit includes a satellite baseband and a satellite processor that are connected in sequence. The satellite processor is configured to generate a receiver clock bias, and the satellite baseband is configured to correct the receiver clock bias and output the PPS signal of the satellite receiver.
[0017] Fourthly, this application provides a computer-readable medium on which a program or instructions are stored, which, when executed by a processor, implement the steps of the PPS signal correction method for a satellite receiver as described in the first aspect.
[0018] Fifthly, this application provides a computer program product, which includes a computer program that, when executed by a processor, implements the steps of the PPS signal correction method for a satellite receiver as described in the first aspect.
[0019] Compared with the prior art, this application has the following advantages:
[0020] The effective compensation count value of the working satellite receiver at the effective time is obtained. This effective compensation count value is used as reference information for the invalid time, and the count correction value at the invalid time is determined based on this reference information. The PPS signal output by the working satellite receiver at the invalid time is then corrected based on the count correction value. This ensures that the accuracy of the PPS signal output at the invalid time is controlled within 9ns, which greatly reduces the correction cost of the PPS signal and improves the accuracy of the PPS signal, thereby ensuring the normal operation of the payload tasks of each subsystem in the on-orbit satellite in GNSS. Attached Figure Description
[0021] Figure 1 A schematic diagram illustrating the working principle of a satellite receiver in an existing GNSS system;
[0022] Figure 2 This is a flowchart illustrating the PPS signal correction method for a satellite receiver according to an embodiment of this application.
[0023] Figure 3 This is a flowchart illustrating step S120 in an embodiment of this application.
[0024] Figure 4 This is a flowchart illustrating step S140 in an embodiment of this application;
[0025] Figure 5 This is a timing diagram of the PPS signal correction method for a satellite receiver according to an embodiment of this application;
[0026] Figure 6 This is a flowchart illustrating step S150 in an embodiment of this application.
[0027] Figure 7 This is a flowchart illustrating another aspect of step S150 in an embodiment of this application.
[0028] Figure 8 This is a schematic diagram of the structure of the PPS signal correction device for a satellite receiver according to an embodiment of this application;
[0029] Figure 9 This is a schematic diagram of the structure of a satellite receiver according to an embodiment of this application. Detailed Implementation
[0030] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. However, the embodiments described below are only some embodiments of this application, and not all embodiments. All other embodiments obtained by those skilled in the art based on the embodiments of this application without creative effort are within the protection scope of this application. Unless obvious from the context or otherwise, the same reference numerals in the figures represent the same structures or operations.
[0031] As indicated in this application and claims, unless the context clearly indicates otherwise, the words "a," "an," "an," and / or "the" are not specifically singular and may include plural forms. Generally speaking, the terms "comprising" and "including" only indicate the inclusion of explicitly identified steps and elements, which do not constitute an exclusive list, and the method or apparatus may also include other steps or elements.
[0032] Flowcharts are used in this application to illustrate the operations performed by the system according to embodiments of this application. It should be understood that the preceding or following operations are not necessarily performed in exact order. Instead, various steps can be processed in reverse order or simultaneously. Furthermore, other operations may be added to these processes, or one or more steps may be removed from these processes.
[0033] Please see Figure 1 In a Global Navigation Satellite System (GNSS), a navigation constellation transmits a signal at a certain time ts(t), which is called the transmission time of the navigation constellation signal. This signal is received by a working satellite receiver at time tr(t), which is called the receiver time. For ease of description, the term "working satellite" in this application refers to any orbiting satellite in the GNSS system other than the navigation constellation.
[0034] It is understandable that the transmission time ts(t) of the navigation constellation signal is observed on the time axis T1 with the clock on the navigation constellation as the reference, and the receiver time tr(t) is observed on the time axis T2 with the clock installed on the working satellite receiver as the reference. The navigation constellation also has a time system based on the combined observations of the atomic clock of the ground control station and the clock on the navigation constellation. The time observed on the time axis T3 with this time system as the reference is called the GNSS local time tlocal. The transmission time ts(t) and the receiver time tr(t) of the navigation constellation signal are both functions of the GNSS local time tlocal.
[0035] It should be noted that, generally speaking, both time axes T1 and T2 have a lead or lag relative to time axis T3. Taking the lead as an example, the lead of time axis T1 relative to time axis T3 is denoted as δts(t), and the lead of time axis T2 relative to time axis T3 is denoted as δtr(t). Both of these lead values are functions of the GNSS local time tlocal. If we set the receiver time tr(t) to t0 on time axis T3, and since the actual propagation time required for the navigation constellation signal to travel from transmission to reception by the working satellite receiver is τ, then the transmission time ts(t) of the navigation constellation signal on time axis T3 corresponds to (t0-τ). Accordingly, the following relationship can be obtained:
[0036] tr(t0)=t0 + δtr(t0) (1)
[0037] ts(t0-τ)=t0-τ + δts(t0-τ) (2)
[0038] In the above relationships, equation (1) represents the conversion relationship between time axes T2 and T3, and equation (2) represents the conversion relationship between time axes T1 and T3. δts(t0-τ) in equation (2) is called the navigation constellation clock bias, which can be corrected using correction parameters in the navigation constellation signal; therefore, its value is usually considered known. δtr(t0) in equation (1) is called the receiver clock bias. When time axis T1 has a lead relative to time axis T3, the value of this receiver clock bias is positive; otherwise, it is negative. The value of the receiver clock bias is usually unknown, and the receiver clock bias affects the accuracy of the PPS signal output by the working satellite receiver.
[0039] Please see Figure 2 This application proposes a method for correcting the PPS signal of a satellite receiver, comprising:
[0040] Step S110: Receive navigation constellation signals;
[0041] Step S120: Determine whether the satellite receiver positioning is valid, and determine the valid and invalid times of the satellite receiver;
[0042] Step S130: Obtain the valid point receiver clock error corresponding to the valid time of the satellite receiver; based on the valid point receiver clock error, correct and output the PPS signal of the satellite receiver.
[0043] Step S140: Obtain the real-time average count value corresponding to the clock error of the valid point receiver, and determine the effective compensation count value of the satellite receiver based on the real-time average count value.
[0044] Step S150: In response to an invalid moment in the satellite receiver, determine the count correction value for the invalid moment based on the valid compensation count value;
[0045] Step S160: Based on the count correction value, correct and output the PPS signal of the satellite receiver.
[0046] This application proposes a method for correcting the PPS signal of a satellite receiver. Compared to traditional methods that increase the design size and cost of the working satellite receiver by adding a clock correction function or using a high-precision atomic clock through hardware improvements, and compared to the lag and delay caused by real-time uploading of clock bias information by the ground control station in traditional methods, this application obtains the real-time average count value corresponding to the effective point receiver clock bias at the effective time of the navigation constellation signal. Based on the real-time average count value, it determines the effective compensation count value of the receiver, uses the effective compensation count value as prior information for the invalid time of the satellite, determines the count correction value under the invalid time based on the prior information, and corrects the PPS signal under the invalid time based on the count correction value. This avoids dependence on hardware and ground control stations, and the PPS signal correction can be completed only on the working satellite receiver. This greatly reduces the clock bias correction cost of the receiver and improves the accuracy of the PPS signal output by the working satellite receiver, thereby ensuring the normal operation of the payload tasks of each subsystem during the on-orbit operation of the working satellite. It is applicable to on-orbit working satellites in various GNSS systems.
[0047] The steps S110 to S160 described above will be explained in detail below with reference to specific embodiments.
[0048] In some embodiments, in step S110, the navigation constellation signal mainly includes three parts: carrier wave, ranging code, and navigation messages.
[0049] Please see Figure 3 In some embodiments, step S120 further includes the following steps:
[0050] Step S121: In response to the navigation constellation signal, perform PVT positioning calculation to obtain the PVT positioning calculation result;
[0051] Step S122: Determine the real-time receiver clock error based on the time information of the PVT positioning solution;
[0052] Step S123: Obtain the clock error verification difference between the real-time receiver clock error and the preset clock error threshold of the satellite receiver;
[0053] Step S124: Determine whether the clock error verification difference is greater than 0, and determine whether the satellite receiver's positioning is valid based on the determination result;
[0054] Step S125: If the clock error verification difference is less than or equal to 0, the satellite receiver's positioning is determined to be valid, and the reception time of the navigation constellation signal is determined to be valid.
[0055] Step S126: If the clock error verification difference is greater than 0, determine that the satellite receiver's positioning is invalid and determine that the navigation constellation signal reception time is invalid.
[0056] Specifically, in step S120, after receiving the navigation constellation signal, the satellite receiver performs real-time PVT (Position, Velocity, Time) calculation based on the navigation constellation signal. The PVT calculation mainly involves measuring based on the ranging code and the position of the navigation constellation, and performing atmospheric delay correction, thereby determining the position, velocity, and time information of the working satellite in three-dimensional space based on the Doppler frequency shift calculation.
[0057] In some embodiments, in step S122, the time information in the PVT positioning solution includes the transmission time ts(t) of the navigation constellation signal, the reception time tr(t) of the navigation constellation signal, and the propagation time τ of the navigation constellation signal from the navigation constellation to the working satellite receiver. Then, the working satellite receiver can further calculate the real-time receiver clock bias δre(t) according to the aforementioned equations (1) and (2). The real-time receiver clock bias δre(t) is defined as the absolute value of the receiver clock bias, which satisfies the condition that it is always greater than or equal to 0.
[0058] In some embodiments, the working satellite receiver is provided with a preset clock bias threshold δth, which is set to 1×10 in this application. -6 s (i.e. 1us); obtain the clock error verification difference between the real-time receiver clock error δre(t) and the preset clock error threshold δth, i.e. δre(t) - δth, and determine whether δre(t) - δth is greater than 0, thereby determining whether the positioning of the working satellite receiver is effective based on the judgment result.
[0059] Specifically, if δre(t) – δth ≤ 0, that is, δre(t) ≤ 1 × 10 -6 At this point, the receiver positioning is valid, thus determining the reception time tr(t) of the navigation constellation signal as the valid moment; if δre(t) – δth>0, that is, δre(t>1×10 -6 At this point, the receiver positioning is invalid, thus determining that the reception time tr(t) of the navigation constellation signal is an invalid moment.
[0060] Understandably, when the working satellite receiver can receive navigation constellation signals normally and perform PVT positioning calculations, it corrects the PPS signal based on the calculated real-time receiver clock bias δre(t), thereby ensuring the output accuracy of the PPS signal. However, when the navigation constellation signal is affected by external interference or other abnormal factors, causing the working satellite receiver to be unable to locate, the calculated position, velocity, and time information will largely be erroneous, thus failing to guarantee the accuracy of the corresponding real-time receiver clock bias δre(t) and the PPS signal.
[0061] Please see Figure 4 In some embodiments, step S140 further includes the following steps:
[0062] Step S141: Obtain the real-time count value corresponding to the receiver clock difference of several valid points under several consecutive valid times, wherein the last time of several consecutive valid times is located before the first invalid time.
[0063] Step S142: Determine the average real-time count from the i-th real-time count value to the (i+k)-th real-time count value, where 1≤i≤i+k;
[0064] Step S143: Determine the effective compensation count value based on the real-time count average.
[0065] The following will be combined with the appendix Figure 5 The specific contents of steps S110 to S140 above are described in detail.
[0066] It is understandable that the PPS signal represents the number of periodic pulse signals output by the working satellite receiver per second (i.e., the output frequency of the pulse signal). In this application, the pulse signal output frequency is set to 62MHz, so the corresponding pulse width is 1s / 62MHz ≈ 16.13ns. For the effective point receiver clock error δva, since its value satisfies δva ≤ δth = 1 × 10⁻⁶, ... -6 The PPS signal is corrected using the principle of "refund for overpayment and compensation for underpayment". Specifically: if the effective point receiver clock error δva = 1 × 10 -7s = 100ns indicates that the working satellite receiver time tr(t) leads the GNSS local time tlocal by 100ns. That is, for one second of the GNSS local time tlocal, the working satellite receiver time tr(t) is 100ns ahead. This extra 100ns needs to be divided by the pulse width 16.13ns to obtain the PPS signal count correction value, which is 100ns / 16.13ns ≈ 6. Therefore, 6 counts are subtracted from the original PPS signal count. Similarly, if the effective point receiver clock difference δva = -6 × 10⁻⁷s = 600ns, it indicates that the working satellite receiver time tr(t) lags the GNSS local time tlocal by 600ns. The PPS signal count correction value is 600ns / 16.13ns ≈ 37, thus 37 counts are added to the original PPS signal count. This configuration ensures the output accuracy of the PPS signal when the working satellite receiver is positioned correctly.
[0067] In some embodiments, prior information about the working satellite receiver at invalid times is obtained by preprocessing the real-time count values corresponding to the clock errors δva of the aforementioned valid point receivers. Specifically, the navigation constellation continuously broadcasts navigation constellation signals to the working satellites. The working satellite receivers from the 1st second to the 62nd second (from the receiver time tr(t) as the observation perspective) are considered to have valid positioning times, while the working satellite receivers are considered to have invalid positioning times starting from the 63rd second. The working satellite receivers continuously acquire the clock errors δva of the valid point receivers corresponding to the 1st to the 62nd second. At the same time, the working satellite receivers also use a weighted moving average method to calculate the real-time count average Clkave from the real-time count value corresponding to the clock error δva of the i-th valid point receiver to the real-time count value corresponding to the clock error δva of the (i+k)-th valid point receiver, where 1≤i≤i+k.
[0068] Please see Figure 5 In some embodiments, the process of calculating the real-time count mean Clkave using a weighted moving average method is as follows: Let k=59, then the working satellite receiver determines the real-time count mean Clkave with a 60-second time window. The effective point receiver clock differences δva from the 1st second to the 60th second are δt_1, δt_2, δt_3...δt_60, respectively, and the corresponding real-time count values are clk_1, clk_2, clk_3...clk_60. The working satellite receiver assigns a corresponding weight w1, w2, w3...w60 to each real-time count value, and the weight w increases as the real-time count value is later in the time sequence. Thus, the real-time count mean Clkave from the 1st to the 60th second is obtained according to the weighted average algorithm, that is:
[0069] (3)
[0070] As the satellite receiver continuously receives navigation constellation signals, the range of selected real-time count values shifts accordingly over time. Therefore, for any consecutive 60-second time window within the first 62 seconds, the average real-time count, Clkave, can be calculated, i.e.:
[0071] (4)
[0072] Furthermore, the working satellite receiver uses the average real-time count Clkave over the last valid moment and the preceding 59 seconds as a basis to determine the effective compensation count value Clkcom, and corrects the pulse count of the PPS signal. In some embodiments, if the average real-time clock difference Clkave calculated by the weighted average method for seconds 3 to 62 is 5.3, then the corresponding effective compensation count value Clkcom is 5.3, and this effective compensation count value Clkcom is used as prior information for the working satellite receiver at subsequent invalid moments.
[0073] Please see Figure 6 In some embodiments, step S150 further includes the following steps:
[0074] Step S151: In response to the first invalid time, obtain the floor value of the valid compensation count value and set the floor value of the valid compensation count value to the count correction value of the first invalid time.
[0075] Step S152: In response to the second invalid time, obtain the rounded-up value of the valid compensation count value, and set the rounded-up value of the valid compensation count value to the count correction value at the second invalid time.
[0076] Step S153: Obtain the average of the rounded-up value of the effective compensation count and the rounded-down value of the effective compensation count, and obtain the difference between the average value and the effective compensation count;
[0077] Step S154: If the difference is greater than 0, obtain the floor value of the average value and set the floor value of the average value as the count correction value for the third invalid time.
[0078] Step S155: If the difference is less than or equal to 0, obtain the rounded-up value of the average value and set the rounded-up value of the average value as the count correction value for the third invalid time.
[0079] In some embodiments, if the starting time of the 63rd second is set as the invalid positioning time of the working satellite receiver, then the 63rd second is set as the first invalid time, the 64th second is set as the second invalid time, and so on.
[0080] Please see Figure 5 In some embodiments, the count correction value at the first invalid time step is defined as B, then B = floor(Clkcom) = floor(5.3) = 5, and the count correction value at the second invalid time step is defined as C, then C = ceil(Clkcom) = ceil(5.3) = 6. It can be understood that the floor() function returns the largest integer less than or equal to any real number, and the ceil() function returns the smallest integer greater than or equal to any real number.
[0081] In some embodiments, the average value D of the count correction value B at the first invalid time and the count correction value C at the second invalid time is further obtained, then D = (B + C) / 2 = (5 + 6) / 2 = 5.5, and the difference Δ = 5.5 - 5.3 = 0.2 between the average value D and the effective compensation count value Clkcom is obtained. The count correction value at the third invalid time is defined as E. Since the difference Δ = 0.2 > 0, then E = floor(5.5) = 5.
[0082] In this application, the effective compensation count value Clkcom is used as prior information, and its corresponding rounded up and rounded down values are used as the count correction values for the first invalid time and the second invalid time, respectively. The average value of the rounded up and rounded down values corresponding to the effective compensation count value is calculated, and the relationship between the average value and the effective compensation count value Clkcom is determined. Based on the relationship, the rounded up or rounded down value of the average value is further set as the count correction value for the third invalid time.
[0083] Please see Figure 7 In some embodiments, after step S154 or step S155, the following step is further included:
[0084] Step S156: In response to any j-th invalid time, obtain the average value of all count correction values corresponding to the 1st invalid time to the (j-1)th invalid time, where j≥4;
[0085] Step S157: Obtain the count verification difference between the average value of the count correction value and the effective compensation count value;
[0086] Step S158: If the count verification difference is greater than 0, obtain the floor value of the average value of the count correction value, and set the floor value as the count correction value at the j-th invalid time.
[0087] Step S159: If the count verification difference is less than or equal to 0, obtain the rounded value of the average value of the count correction value, and set the rounded value as the count correction value at the j-th invalid time.
[0088] Please see Figure 5 In some embodiments, in response to the fourth invalid time, the average of the count correction value B at the first invalid time, the count correction value C at the second invalid time, and the count correction value E at the third invalid time is obtained, and this average value is set as F. Then, F = (B + C + E) / 3 = (5 + 6 + 5) / 3 ≈ 5.333. Further, the count verification difference Clkdiffer between the average value F and the effective compensation count value Clkcom is obtained, i.e., Clkdiffer = F - Clkcom = 5.333 - 5.3 = 0.033. Since the count verification difference Clkdiffer = 0.033 > 0, the floor value of the average value F is obtained, and this floor value is set as G. Then, G = floor(5.333) = 5, and the floor value G is set as the count correction value at the fourth invalid time.
[0089] Similarly, in response to the fifth invalid time, the average of all count correction values corresponding to the first to fourth invalid time is obtained, and this average is set as H. Then, H = (B + C + E + G) / 4 = (5 + 6 + 5 + 5) / 4 ≈ 5.25. Further, the count verification difference Clkdiffer between this average H and the effective compensation count value Clkcom is obtained, i.e., Clkdiffer = H - Clkcom = 5.25 - 5.3 = -0.05. Since the count verification difference Clkdiffer = -0.05 < 0, the floor value of this average H is obtained, and this floor value is set as I. Then, I = ceil(5.25) = 6, and the floor value I is set as the count correction value of the fourth invalid time.
[0090] In this application, for any invalid time starting from the fourth invalid time, the count correction value at that invalid time can be determined according to the above method.
[0091] It is understood that the letters A, B, C, D, etc. used in the embodiments of this application do not represent limitations on the aforementioned count correction values and average values. If necessary, other symbols or markings may be used for representation. For ease of understanding, the correspondence between the count correction values and judgment values starting from the first invalid time in this application is summarized in Table 1.
[0092] Table 1. Correspondence between count correction values and judgment values starting from the first invalid time.
[0093]
[0094] In summary, the PPS signal correction method for a satellite receiver proposed in this application has the following beneficial technical effects: At invalid times, the satellite receiver can only rely on the effective compensation count value Clkcom obtained at effective times as reference information for the count correction value. However, since the effective compensation count value Clkcom obtained by the weighted moving average method is a floating-point value (e.g., 5.3), limited by the data processing capabilities of the working satellite receiver, this floating-point value cannot be directly used for PPS signal correction; only integer values can be used for correction. Therefore, this application obtains an integer count correction value at any invalid time by executing the aforementioned pre-set method within the working satellite receiver, and ensures that the average value of the count correction values at all invalid times fluctuates within a very small range around the effective compensation count value Clkcom. This ensures the overall effectiveness of the count correction value at invalid times, thereby improving the accuracy of the PPS signal output by the working satellite receiver and significantly reducing the PPS signal correction cost.
[0095] The PPS signal correction method of the working satellite receiver in this application has been verified by the ground control station. When the positioning invalid time lasts for 30 minutes, the output accuracy of PPS can still be maintained within 2ns, and the receiver clock error remains stable. Therefore, this method can ensure the normal operation of the payload tasks of each subsystem of the working satellite and can be considered applicable to all GNSS working satellites in orbit.
[0096] Please see Figure 8 Another embodiment of this application provides a PPS signal correction device 200 for a satellite receiver. The device 200 mainly includes: a receiving module 210 configured to receive navigation constellation signals; a judging module 220 configured to judge whether the satellite receiver positioning is valid and determine the valid time and invalid time of the satellite receiver; a first correction module 230 configured to obtain the valid point receiver clock error corresponding to the valid time of the satellite receiver, and correct and output the PPS signal of the satellite receiver based on the valid point receiver clock error; a first determination module 240 configured to obtain the real-time count average corresponding to the valid point receiver clock error, and determine the valid compensation count value of the satellite receiver based on the real-time count average; a second determination module 250 configured to determine the count correction value under the invalid time based on the valid compensation count value in response to the invalid time of the satellite receiver; and a second correction module 260 configured to correct and output the PPS signal of the satellite receiver based on the count correction value.
[0097] For details of other operations performed by each module in this embodiment, please refer to the foregoing embodiments, which will not be elaborated here.
[0098] This application proposes a correction device for PPS signals of a satellite receiver. By acquiring the effective compensation count value at the valid positioning time of the receiver, using the effective compensation count value as reference information at the invalid positioning time of the receiver, and determining the count correction value at any invalid time, the PPS signal is corrected based on the count correction value. This avoids reliance on hardware and ground control stations, and the correction of PPS signals can be completed only on the working satellite receiver, which greatly reduces the correction cost of PPS signals and improves the accuracy of PPS signals.
[0099] The PPS signal correction device for a satellite receiver in this embodiment can be a device, or it can be a component, integrated circuit, or chip in a terminal. The PPS signal correction device for a satellite receiver in this embodiment can be a chip, including FPGA (Field Programmable Gate Array), MCU (Microcontroller Unit), etc., but this embodiment does not specifically limit the specific implementation.
[0100] Please see Figure 9 This application also provides a satellite receiver 300, including a radio frequency front-end processing unit 310 and a baseband digital signal processing unit 320. The baseband digital signal processing unit 320 is configured to implement the various processes of the above-described embodiment of the PPS signal correction method for the satellite receiver, and can achieve the same technical effect. To avoid repetition, it will not be described in detail here.
[0101] In some embodiments, the radio frequency front-end processing unit 310 includes a satellite antenna 311, a low-noise power amplifier 312, and a radio frequency circuit 313 connected in sequence. The navigation constellation signal is transmitted to the baseband digital signal processing unit 320 after being processed by the radio frequency front-end processing unit 310. Specifically, after the navigation constellation signal is received by the satellite antenna 311, it reaches the low-noise power amplifier 312. After signal processing such as filtering and amplification by the low-noise power amplifier 312, it is output to the radio frequency circuit 313. The radio frequency circuit 313 downconverts the high-frequency radio frequency signal to a fixed lower-frequency intermediate frequency signal through frequency conversion and mixing operations, and transmits the intermediate frequency signal to the satellite baseband 321. The specific composition, structure, and function of the satellite antenna 311, the low-noise power amplifier 312, and the radio frequency circuit 313 are all common knowledge in the art and will not be described in detail here.
[0102] In some embodiments, the baseband digital signal processing unit 320 includes a satellite baseband 321 and a satellite processor 322 connected in communication. The satellite processor 322 is configured to generate a receiver clock bias, and the satellite baseband 321 is configured to correct and output a PPS signal of the satellite receiver 300 based on the receiver clock bias.
[0103] Specifically, data transmission between the satellite baseband 321 and the satellite processor 322 is completed through the EMIF (External Memory Interface) bus: The satellite processor 322 first sends a satellite signal acquisition request to the satellite baseband 321. The satellite baseband 321 acquires and tracks the navigation constellation according to the assigned channel and satellite number. After successful tracking, the satellite baseband 321 transmits the ranging code information and navigation message information in the navigation constellation signal to the satellite processor 322. The satellite processor 322 performs PVT calculation based on the above information to obtain the position, velocity and time information of the working satellite. At the same time, it returns the receiver clock bias to the satellite baseband 321. The satellite baseband 321 then corrects the PPS signal according to the receiver clock bias and transmits the corrected PPS signal to each subsystem of the satellite through hardware pins.
[0104] This application also provides a computer-readable medium storing a program or instructions. When the program or instructions are executed by a processor, they implement the various processes of the above-described PPS signal correction method embodiment for a satellite receiver and achieve the same technical effect. To avoid repetition, further details are omitted here.
[0105] This application also provides at least one computer program product tangibly stored on a non-transitory computer-readable storage medium. The computer program product includes a computer program that, when executed by a processor, implements the various processes of the above-described satellite receiver PPS signal correction method embodiment and achieves the same technical effect. To avoid repetition, further details are omitted here.
[0106] Embodiments of the subject matter described in this specification can be implemented as one or more computer programs, i.e., one or more modules of computer program instructions encoded on a tangible, non-transitory program carrier for execution by a data processing apparatus or for controlling the operation of a data processing apparatus. Alternatively or additionally, the program instructions may be encoded on artificially generated propagation signals, such as machine-generated electrical, optical, or electromagnetic signals, which are generated to encode information and transmit it to a suitable receiving device for execution by the data processing apparatus.
[0107] When the PPS signal correction method for the satellite receiver of this application is implemented as a computer program, it can also be stored as an article of manufacture in a computer-readable storage medium. For example, a computer-readable storage medium may include, but is not limited to, magnetic storage devices (e.g., hard disks, floppy disks, magnetic stripes), optical discs (e.g., compact discs (CDs), digital multifunction discs (DVDs)), smart cards, and flash memory devices (e.g., electrically erasable programmable read-only memory (EEPROM), cards, sticks, key drives). Furthermore, the various storage media described herein can represent one or more devices and / or other machine-readable media used for storing information. The term "machine-readable medium" may include, but is not limited to, wireless channels and various other media (and / or storage media) capable of storing, containing, and / or carrying code and / or instructions and / or data.
[0108] For those skilled in the art, the above disclosure is merely illustrative and does not constitute a limitation of this application. Although not explicitly stated herein, those skilled in the art may make various modifications, improvements, and corrections to this application. Such modifications, improvements, and corrections are suggested in this application and therefore remain within the spirit and scope of the exemplary embodiments of this application.
[0109] In some embodiments, numbers describing the quantity of components and attributes are used. It should be understood that such numbers used in the description of embodiments are modified in some examples with the terms "approximately," "approximately," or "generally." Unless otherwise stated, "approximately," "approximately," or "generally" indicates that the numbers are allowed to vary by ±20%. Accordingly, in some embodiments, the numerical parameters used in the specification and claims are approximate values, which may be changed depending on the characteristics required by individual embodiments. In some embodiments, numerical parameters should take into account specified significant digits and employ a general method of digit reservation. Although the numerical ranges and parameters used to confirm their breadth of scope in some embodiments of this application are approximate values, in specific embodiments, such values are set as precisely as feasible.
[0110] Although this application has been described with reference to specific embodiments, those skilled in the art should recognize that the above embodiments are only used to illustrate this application, and various equivalent changes or substitutions can be made without departing from the spirit of this application. Therefore, any changes or modifications to the above embodiments within the scope of the essential spirit of this application will fall within the scope of this application.
Claims
1. A method for PPS signal correction in a satellite receiver, characterized in that, include: Receive navigation constellation signals; Determine whether the satellite receiver's positioning is valid, and determine the valid and invalid times of the satellite receiver. When the satellite receiver's positioning is valid, the receiving time is determined to be the valid time of the satellite receiver; when the satellite receiver's positioning is invalid, the receiving time is determined to be the invalid time of the satellite receiver. Obtain the valid point receiver clock error corresponding to the valid time of the satellite receiver, and based on the valid point receiver clock error, correct and output the PPS signal of the satellite receiver; Obtain the real-time average count value corresponding to the clock error of the effective point receiver, and determine the effective compensation count value of the satellite receiver based on the real-time average count value; In response to the invalid time of the satellite receiver, a count correction value for the invalid time is determined based on the valid compensation count value; Based on the count correction value, the PPS signal of the satellite receiver is corrected and output.
2. The PPS signal correction method for a satellite receiver according to claim 1, characterized in that, The step of obtaining the real-time average count value corresponding to the clock bias of the effective point receiver, and determining the effective compensation count value of the satellite receiver based on the real-time average count value, includes: Obtain the real-time count values corresponding to the receiver clock differences of several valid points under several consecutive valid times, wherein the last time of several consecutive valid times is located before the first invalid time; Determine the average real-time count from the i-th real-time count value to the (i+k)-th real-time count value, where 1 ≤ i ≤ i+k; The effective compensation count value is determined based on the real-time average count.
3. The PPS signal correction method for a satellite receiver according to claim 2, characterized in that, The real-time count mean is obtained using a weighted moving average method.
4. The PPS signal correction method for a satellite receiver according to claim 2, characterized in that, In response to the invalid time of the satellite receiver, determining the count correction value at the invalid time based on the valid compensation count value includes: In response to the first invalid time, the floor value of the valid compensation count is obtained, and the floor value of the valid compensation count is set to the count correction value of the first invalid time. In response to the second invalid time, the rounded-up value of the valid compensation count value is obtained, and the rounded-up value of the valid compensation count value is set as the count correction value for the second invalid time. Obtain the average of the rounded-up value and the rounded-down value of the effective compensation count, and obtain the difference between the average value and the effective compensation count; If the difference is greater than 0, obtain the floor value of the average value, and set the floor value of the average value as the count correction value of the third invalid time. If the difference is less than or equal to 0, obtain the floor value of the average value, and set the floor value of the average value as the count correction value of the third invalid time.
5. The PPS signal correction method for a satellite receiver according to claim 4, characterized in that, After the step of setting the floor value of the average value to the count correction value of the third invalid time, or after the step of setting the floor value of the average value to the count correction value of the third invalid time, the method further includes: In response to any j-th invalid time, the average value of all count correction values corresponding to the 1st invalid time to the (j-1)th invalid time is obtained, where j≥4; Obtain the count verification difference between the average value of the count correction value and the effective compensated count value; If the count verification difference is greater than 0, obtain the floor value of the average value of the count correction value, and set the floor value as the count correction value at the j-th invalid time. If the count verification difference is less than or equal to 0, obtain the floor value of the average of the count correction values, and set the floor value as the count correction value at the j-th invalid time.
6. The PPS signal correction method for a satellite receiver according to any one of claims 1-5, characterized in that, The step of determining whether the satellite receiver's positioning is valid, and determining the valid and invalid times of the satellite receiver, includes: In response to the navigation constellation signal, PVT positioning calculation is performed to obtain the result of the PVT positioning calculation; Based on the time information of the PVT positioning solution, the real-time receiver clock error is determined; Obtain the clock error verification difference between the real-time receiver clock error and the preset clock error threshold of the satellite receiver; Determine whether the clock error verification difference is greater than 0, and determine whether the positioning of the satellite receiver is valid based on the determination result; If the clock error verification difference is less than or equal to 0, the positioning of the satellite receiver is determined to be valid, and the reception time of the navigation constellation signal is determined to be the valid time. If the clock error verification difference is greater than 0, the positioning of the satellite receiver is determined to be invalid, and the reception time of the navigation constellation signal is determined to be the invalid time.
7. A PPS signal correction device for a satellite receiver, characterized in that, include: The receiving module is configured to receive navigation constellation signals; The judgment module is configured to determine whether the satellite receiver positioning is valid, and to determine the valid time and invalid time of the satellite receiver. When the satellite receiver positioning is valid, the receiving time is determined to be the valid time of the satellite receiver. When the satellite receiver positioning is invalid, the receiving time is determined to be the invalid time of the satellite receiver. The first correction module is configured to obtain the valid point receiver clock error corresponding to the valid time of the satellite receiver, and correct and output the PPS signal of the satellite receiver based on the valid point receiver clock error; The first determining module is configured to obtain the real-time average count value corresponding to the clock difference of the effective point receiver, and determine the effective compensation count value of the satellite receiver based on the real-time average count value. The second determining module is configured to, in response to the invalid time of the satellite receiver, determine the count correction value at the invalid time based on the valid compensation count value; The second correction module is configured to correct and output the PPS signal of the satellite receiver based on the count correction value.
8. A satellite receiver, comprising a radio frequency front-end processing unit and a baseband digital signal processing unit, characterized in that, The baseband digital signal processing unit is configured to implement the method as described in any one of claims 1-6.
9. The satellite receiver according to claim 8, characterized in that, The radio frequency front-end processing unit includes a satellite antenna, a low-noise power amplifier, and a radio frequency circuit that are connected in sequence. The navigation constellation signal is transmitted to the baseband digital signal processing unit after being processed by the radio frequency front-end processing unit. The baseband digital signal processing unit includes a satellite baseband and a satellite processor connected in communication. The satellite processor is configured to generate the receiver clock bias, and the satellite baseband is configured to correct and output the PPS signal of the satellite receiver based on the receiver clock bias.
10. A computer-readable medium, characterized in that, A program or instructions are stored on the computer-readable medium, which, when executed by a processor, implement the method as described in any one of claims 1-6.
11. A computer program product, the computer program product comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the method as described in any one of claims 1-6.
Citation Information
Patent Citations
Method and system for determining clock corrections
CN103370635A
Satellite receiver time service control method with steady-state error compensation
CN105591708A
Real-time high-precision local time correction method of satellite receiver
CN110646816A
Method for effectively improving time service reliability and continuity
CN110837221A
Satellite time service method and device, electronic equipment and storage medium
CN112698563A
Cited By
Low earth orbit satellite space-time reference protection method and system and computer program product
CN121142590A