CN114791613A - Ephemeris forecasting method and device - Google Patents

Ephemeris forecasting method and device Download PDF

Info

Publication number
CN114791613A
CN114791613A CN202110097826.4A CN202110097826A CN114791613A CN 114791613 A CN114791613 A CN 114791613A CN 202110097826 A CN202110097826 A CN 202110097826A CN 114791613 A CN114791613 A CN 114791613A
Authority
CN
China
Prior art keywords
satellite
clock
orbit
difference
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110097826.4A
Other languages
Chinese (zh)
Inventor
肖洋
黄国胜
郭永峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202110097826.4A priority Critical patent/CN114791613A/en
Priority to PCT/CN2021/140947 priority patent/WO2022156481A1/en
Publication of CN114791613A publication Critical patent/CN114791613A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/01Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/13Receivers
    • G01S19/24Acquisition or tracking or demodulation of signals transmitted by the system
    • G01S19/27Acquisition or tracking or demodulation of signals transmitted by the system creating, predicting or correcting ephemeris or almanac data within the receiver
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/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

Landscapes

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

Abstract

The embodiment of the application discloses an ephemeris forecasting method and an ephemeris forecasting device, which relate to the technical field of satellite navigation and are used for reducing the broadcast data volume of ephemeris parameters, and the method can comprise the following steps: the server acquires EOP data and historical ephemeris data in a preset time period; according to the EOP data and the historical ephemeris data, satellite orbit prediction and satellite clock error prediction are carried out, and a predicted orbit and a predicted clock error of a future preset time period are obtained; after the predicted orbits are fitted into orbit parameters, encoding the orbit parameters of the satellites belonging to the same orbit plane to obtain orbit parameter codes of each orbit plane; after the forecast clock error is fitted into the clock error parameter, the clock error parameter is coded to obtain the clock error parameter code; and sending ephemeris parameter codes to the terminal equipment, wherein the ephemeris parameter codes comprise clock error parameter codes and orbit parameter codes of each orbit plane.

Description

Ephemeris forecasting method and device
Technical Field
The present application relates to the field of satellite navigation technologies, and in particular, to a method and an apparatus for ephemeris forecasting.
Background
Currently, terminal positioning needs to be performed using a Global Navigation Satellite System (GNSS). Specifically, the terminal device obtains the forecast orbit and the forecast clock error from the server in a network request mode, and then performs positioning according to the forecast orbit and the forecast clock error.
In the process of broadcasting the ephemeris parameters, the server broadcasts the ephemeris parameters, that is, the server transmits the predicted orbit and the predicted clock error to the terminal device in the form of the ephemeris parameters. The data volume of the broadcast ephemeris parameters is large, so that the data volume of the parameter broadcast is large.
Disclosure of Invention
The embodiment of the application provides an ephemeris forecasting method and device, which can effectively reduce the data volume of ephemeris parameter broadcasting.
In a first aspect, an embodiment of the present application provides an ephemeris forecasting method, which is applied to a server, and the method includes: acquiring EOP data and historical ephemeris data in a preset time period; according to the EOP data and the historical ephemeris data, satellite orbit prediction and satellite clock error prediction are carried out, and a predicted orbit and a predicted clock error of a future preset time period are obtained; after the predicted orbits are fit into orbit parameters, encoding the orbit parameters of the satellites belonging to the same orbit plane to obtain orbit parameter codes of each orbit plane; after the forecast clock error is fitted into the clock error parameter, the clock error parameter is coded to obtain the clock error parameter code; and sending ephemeris parameter codes to the terminal equipment, wherein the ephemeris parameter codes comprise clock error parameter codes and orbit parameter codes of each orbit plane.
Based on the technical scheme, after the server performs fitting on the forecast orbit segments into orbit parameters, the orbit parameters are encoded based on the orbit surfaces to obtain orbit parameter codes of each orbit surface, and finally the orbit parameter codes are broadcasted in an ephemeris parameter coding mode, so that the parameter broadcasting data volume is effectively reduced.
In some possible implementations of the first aspect, the process of performing satellite orbit prediction and satellite clock error prediction according to the EOP data and the historical ephemeris data to obtain a predicted orbit and a predicted clock error in a future preset time period may include:
satellite orbit prediction is carried out according to the satellite orbit data and the EOP data, and a predicted orbit of a future preset time period is obtained;
forecasting clock errors according to the satellite clock error data to obtain forecast clock errors of a future preset time period;
wherein the historical ephemeris data includes satellite orbit data and satellite clock error data.
In some possible implementations of the first aspect, the step of performing satellite orbit prediction according to the satellite orbit data and the EOP data to obtain a predicted orbit in a future preset time period may include:
according to the EOP data, converting satellite position information under the earth fixation system in the satellite orbit data into satellite position information under an inertial system;
determining a target sunlight pressure model used by each satellite in the satellite orbit data according to the corresponding relation between the satellite type and the sunlight pressure model;
establishing a satellite motion equation and a variation equation of each satellite based on a target sunlight pressure model of each satellite and satellite position information under an inertial system;
obtaining a reference orbit position and a state transition matrix of each satellite at each moment by using a numerical integration mode based on a satellite motion equation and a variation equation of each satellite;
obtaining a satellite orbit state parameter of each satellite at a reference moment in a least square integral solution mode based on the satellite orbit data, the reference orbit position and the state transition matrix;
obtaining a satellite orbit of a future preset time period in a numerical integration mode according to the satellite orbit state parameters at the reference moment and the satellite dynamic model;
and according to the EOP data, converting the satellite orbit of the future preset time period from an inertial system to a geostationary system to obtain a forecast orbit of the future preset time period.
In the satellite orbit forecasting process, different sunlight pressure models are used for different types of satellites, and the satellite orbit forecasting precision is improved.
In some possible implementations of the first aspect, the correspondence between the satellite type and the solar light pressure model may include:
the sunlight pressure model corresponding to the GPS satellite or the GLNOSS satellite is as follows: an ECOM5 parametric model;
the solar light pressure model corresponding to the Galileo satellite is as follows: a box-wing initial light pressure model and an ECOM5 parametric model;
the sunlight pressure model corresponding to the Beidou GEO satellite is as follows: an initial light pressure model, an ECOM5 parameter model and a periodic empirical acceleration parameter;
the sunlight pressure model corresponding to the QZSS satellite is as follows: initial light pressure model and ECOM5 parametric model.
In some possible implementations of the first aspect, the satellite trajectory data may include two consecutive days of precision orbit production. Here, the optimal fitting duration is set to two days, so that the satellite orbit dynamics parameters are estimated more accurately, and the satellite orbit prediction accuracy is further improved.
In some possible implementations of the first aspect, the step of performing clock error prediction according to satellite clock error data to obtain a predicted clock error of a future preset time period may include:
based on the broadcast ephemeris clock error data, correcting the reference deviation of the precise ephemeris clock error data to obtain corrected precise ephemeris clock error data, wherein the satellite clock error data comprises the broadcast ephemeris clock error data and the precise ephemeris clock error data;
fitting to obtain the single-day clock speed of each satellite according to the single-day clock difference data in the corrected precise ephemeris clock difference data of each satellite;
obtaining a clock speed time sequence of each satellite based on the clock speed of each satellite in a single day;
according to the clock speed time sequence of each satellite, fitting to obtain the clock speed change rate of each satellite;
and obtaining the forecast clock error of each satellite in a future preset time period according to the clock error initial value, the clock speed and the clock speed change rate of each satellite.
In the satellite clock error forecasting process, the broadcast ephemeris clock error data is used for correcting the reference deviation of the precise ephemeris clock error data, and then the corrected precise ephemeris clock error data is used for forecasting the clock error, so that the reliability and the precision of the satellite clock error forecasting can be further improved.
In some possible implementation manners of the first aspect, the step of correcting the reference bias of the ephemeris data based on the ephemeris data may include:
subtracting the broadcast ephemeris clock difference sequence and the precise ephemeris clock difference sequence of the same epoch to obtain a difference sequence of each epoch, wherein the broadcast ephemeris clock difference data comprises the broadcast ephemeris clock difference sequences of each epoch, and the precise ephemeris clock difference data comprises the precise ephemeris clock difference sequences of each epoch;
determining the mean and standard deviation of each difference sequence;
for each difference sequence, removing difference points which do not meet preset conditions in the difference sequence according to the average value and the standard deviation to obtain a target difference sequence;
calculating a reference deviation according to the target difference sequence;
and (4) subtracting the precise ephemeris clock error data from the reference deviation to obtain the corrected precise ephemeris clock error data.
In the implementation mode, the precision ephemeris clock error data is corrected based on the broadcast ephemeris data, so that the precision of the precision ephemeris clock error data is improved, and the precision and the reliability of subsequent clock error prediction are improved.
In some possible implementation manners of the first aspect, the removing, according to the average value and the standard deviation, a difference point in the difference sequence that does not meet a preset condition to obtain the target difference sequence may include:
based on the average value and the standard deviation, judging whether each difference point in the difference value sequence meets the requirement
Figure BDA0002914962930000031
Wherein x is a difference point in the difference sequence, mu is a mean value of the difference sequence, and delta is a standard deviation of the difference sequence;
if so, determining that the difference points do not accord with the preset conditions, and removing the difference points which do not accord with the preset conditions to obtain a difference sequence after the difference points are removed;
determining the average value and standard deviation of the difference sequence after the difference points are removed, taking the difference sequence after the difference points are removed as the difference sequence, and returning the difference sequence based on the average value and the standard deviationStandard deviation, judging whether each difference point in the difference value sequence satisfies the requirement
Figure BDA0002914962930000032
Until no difference point in the difference sequence meets the preset condition, taking the difference sequence without the difference point meeting the preset condition as a target difference sequence.
In some possible implementations of the first aspect, the fitting to obtain the clock rate change rate of each satellite according to the clock rate time series of each satellite may include:
for each satellite, fitting the clock speed time sequence by using a sliding window;
in the sliding process of the sliding window, when the number of the clock speeds in the sliding window is greater than or equal to the preset number, forecasting the clock speed at the next moment according to the clock speed in the sliding window at the current moment and a fitting result obtained by the last fitting;
when the difference value between the forecast clock speed at the next moment and the clock speed to be added into the sliding window is smaller than or equal to a first preset threshold value, adding the clock speed to be added into the sliding window, and fitting according to the clock speed in the sliding window to obtain the change rate of the current clock speed and obtain a fitting residual error;
if the fitting residual is less than or equal to a second preset threshold, taking the current clock speed change rate as the clock speed change rate;
if the fitting residual is larger than a second preset threshold, the sliding window is reset and then continues to slide forwards until the clock speed time sequence is traversed or the fitting residual is smaller than or equal to the second preset threshold;
and when the difference value between the clock speed at the next moment and the clock speed to be added into the sliding window is greater than a first preset threshold value, resetting the sliding window and continuing to slide forwards until the clock speed time sequence is traversed or the fitting residual error is less than or equal to a second preset threshold value.
In the implementation mode, in the process of fitting the clock speed time sequence by using the sliding window, the abnormal condition in the fitting process is detected and removed by comparing the size between the fitting residual error and the second preset threshold value and comparing the size between the clock speed to be added into the window and the clock speed of the next moment of fitting prediction, so that the accuracy of the clock speed change rate is further improved, and the accuracy and the reliability of clock difference prediction are further improved.
In a second aspect, an embodiment of the present application provides an ephemeris forecasting system, where the system includes a terminal device and a server.
Wherein the server may be configured to implement the method of any of the first aspect above.
The terminal device can be used for receiving ephemeris parameter coding from the server; decoding the ephemeris parameter codes to obtain orbit parameters and clock error parameters; determining the position, the speed and the clock error of the visible GNSS satellite according to the orbit parameter and the clock error parameter; the current position and/or current velocity is determined from the position, velocity and clock offset of the visible GNSS satellites.
In a third aspect, an embodiment of the present application provides an ephemeris forecasting method, which is applied to a server, and the method includes: acquiring EOP data and historical ephemeris data in a preset time period; performing satellite orbit prediction and satellite clock error prediction according to the EOP data and the historical ephemeris data to obtain a predicted orbit and a predicted clock error of a future preset time period; fitting the forecast clock error into a clock error parameter; fitting the forecast orbit into polynomial coefficients by using a polynomial model; the clock difference parameter and the polynomial coefficients are transmitted to the terminal device.
The server side of the embodiment of the application uses the polynomial model to fit the forecast orbit into the polynomial coefficient, and performs parameter broadcasting in the form of the polynomial coefficient, so that the computation amount of the terminal equipment in the process of technical GNSS satellite position and speed is reduced.
In some possible implementations of the third aspect, fitting the prediction orbit to a polynomial coefficient using a polynomial model as described above, includes:
sampling the forecast orbit of each satellite at equal intervals to obtain the forecast orbit sampled by each satellite;
segmenting the sampled forecast orbit of each satellite;
and fitting each section of the forecast orbit of each satellite according to the base function and the order of the base function, determining a coefficient of the base function, and taking the coefficient of the base function as a polynomial coefficient, wherein the polynomial coefficient model comprises the base function.
In some possible implementations of the third aspect, the basis functions of the polynomial model are:
T 0 (x)=1,T 1 (x)=x,T n (x)=2xT n-1 (x)-T n-2 (x) And n is 2 or more.
Wherein n represents the order of the basis function.
In some possible implementations of the third aspect, the performing the satellite orbit prediction and the satellite clock error prediction according to the EOP data and the historical ephemeris data to obtain the predicted orbit and the predicted clock error in the future preset time period may include:
satellite orbit prediction is carried out according to the satellite orbit data and the EOP data, and a predicted orbit of a future preset time period is obtained;
forecasting the clock error according to the satellite clock error data to obtain the forecast clock error of a future preset time period;
wherein the historical ephemeris data includes satellite orbit data and satellite clock error data.
In some possible implementations of the third aspect, the above process of performing satellite orbit prediction according to the satellite orbit data and the EOP data to obtain a predicted orbit in a future preset time period may include:
according to the EOP data, converting satellite position information under an earth fixed system in the satellite orbit data into satellite position information under an inertial system;
determining a target sunlight pressure model used by each satellite in the satellite orbit data according to the corresponding relation between the satellite type and the sunlight pressure model;
establishing a satellite motion equation and a variation equation of each satellite based on a target sunlight pressure model of each satellite and satellite position information under an inertial system;
based on a satellite motion equation and a variation equation of each satellite, obtaining a reference orbit position and a state transition matrix of each satellite at each moment by using a numerical integration mode;
obtaining a satellite orbit state parameter of each satellite at a reference moment in a least square integral solution mode based on the satellite orbit data, the reference orbit position and the state transition matrix;
obtaining a satellite orbit of a future preset time period in a numerical integration mode according to the satellite orbit state parameters at the reference moment and the satellite dynamic model;
and according to the EOP data, converting the satellite orbit of the future preset time period from an inertial system to a geostationary system to obtain a forecast orbit of the future preset time period.
In the satellite orbit forecasting process, different sunlight pressure models are used for different types of satellites, and the satellite orbit forecasting precision is improved.
In some possible implementations of the third aspect, the correspondence between the satellite type and the solar light pressure model may include:
the sunlight pressure model corresponding to the GPS satellite or the GLNOSS satellite is as follows: ECOM5 parametric model;
the sunlight pressure model corresponding to the Galileo satellite is as follows: a box-wing initial light pressure model and an ECOM5 parameter model;
the sunlight pressure model corresponding to the Beidou GEO satellite is as follows: an initial light pressure model, an ECOM5 parametric model, and a periodic empirical acceleration parameter;
the sunlight pressure model corresponding to the QZSS satellite is as follows: initial light pressure model and ECOM5 parametric model.
In some possible implementations of the third aspect, the satellite trajectory data includes two consecutive days of precision orbit products. Here, the optimal fitting time duration is set to two days, so that the satellite orbit dynamic parameters are estimated more accurately, and the satellite orbit prediction accuracy is further improved.
In some possible implementations of the third aspect, the above process of performing clock difference prediction according to satellite clock difference data to obtain a predicted clock difference of a future preset time period may include:
based on the broadcast ephemeris clock error data, correcting the reference deviation of the precise ephemeris clock error data to obtain corrected precise ephemeris clock error data, wherein the satellite clock error data comprises the broadcast ephemeris clock error data and the precise ephemeris clock error data;
fitting to obtain the single-day clock speed of each satellite according to the single-day clock difference data in the corrected precise ephemeris clock difference data of each satellite;
obtaining a clock speed time sequence of each satellite based on the single-day clock speed of each satellite;
according to the clock speed time sequence of each satellite, fitting to obtain the clock speed change rate of each satellite;
and obtaining the forecast clock error of each satellite in a preset time period according to the clock error initial value, the clock speed and the clock speed change rate of each satellite.
In the satellite clock error forecasting process, the broadcast ephemeris clock error data is used for correcting the reference deviation of the precise ephemeris clock error data, and then the corrected precise ephemeris clock error data is used for forecasting the clock error, so that the reliability and the precision of the satellite clock error forecasting can be further improved.
In some possible implementations of the third aspect, the step of correcting the reference offset of the ephemeris clock error data based on the ephemeris clock error data may include:
subtracting the broadcast ephemeris clock difference sequence and the precise ephemeris clock difference sequence of the same epoch to obtain a difference sequence of each epoch, wherein the broadcast ephemeris clock difference data comprises the broadcast ephemeris clock difference sequences of each epoch, and the precise ephemeris clock difference data comprises the precise ephemeris clock difference sequences of each epoch;
determining the mean and standard deviation of each difference sequence;
for each difference sequence, removing difference points which do not meet preset conditions in the difference sequence according to the average value and the standard deviation to obtain a target difference sequence;
calculating a reference deviation according to the target difference sequence;
and (4) subtracting the precise ephemeris clock error data from the reference deviation to obtain the corrected precise ephemeris clock error data.
In the implementation mode, the precision ephemeris clock error data is corrected based on the broadcast ephemeris data, so that the precision of the precision ephemeris clock error data is improved, and the precision and the reliability of subsequent clock error prediction are improved.
In some possible implementation manners of the third aspect, the removing, according to the average value and the standard deviation, a difference point in the difference sequence that does not meet a preset condition to obtain the target difference sequence may include:
based on the average value and the standard deviation, judging whether each difference point in the difference value sequence meets the requirement
Figure BDA0002914962930000051
Wherein, x is a difference point in the difference sequence, mu is the mean value of the difference sequence, and delta is the standard deviation of the difference sequence;
if so, determining that the difference points do not accord with the preset conditions, and removing the difference points which do not accord with the preset conditions to obtain a difference sequence after the difference points are removed;
after the average value and the standard deviation of the difference value sequence after the difference value points are removed are determined, the difference value sequence after the difference value points are removed is used as the difference value sequence, and whether each difference value point in the difference value sequence meets the requirement or not is judged based on the average value and the standard deviation
Figure BDA0002914962930000061
Until no difference point in the difference sequence meets the preset condition, taking the difference sequence without the difference point meeting the preset condition as a target difference sequence.
In some possible implementations of the third aspect, the fitting to obtain the clock rate change rate of each satellite according to the clock rate time series of each satellite may include:
for each satellite, fitting the clock speed time sequence by using a sliding window;
in the sliding process of the sliding window, when the number of the clock speeds in the sliding window is greater than or equal to the preset number, forecasting the clock speed at the next moment according to the clock speed in the sliding window at the current moment and a fitting result obtained by the last fitting;
when the difference value between the forecast clock speed at the next moment and the clock speed to be added into the sliding window is smaller than or equal to a first preset threshold value, adding the clock speed to be added into the sliding window, and fitting according to the clock speed in the sliding window to obtain the change rate of the current clock speed and obtain a fitting residual error;
if the fitting residual is less than or equal to a second preset threshold, taking the current clock speed change rate as the clock speed change rate;
if the fitting residual is larger than a second preset threshold, the sliding window is reset and then continues to slide forwards until the clock speed time sequence is traversed or the fitting residual is smaller than or equal to the second preset threshold;
and when the difference value between the clock speed at the next moment and the clock speed to be added into the sliding window is greater than a first preset threshold value, resetting the sliding window and continuing to slide forwards until the clock speed time sequence is traversed or the fitting residual error is less than or equal to a second preset threshold value.
In the implementation mode, in the process of fitting the clock speed time sequence by using the sliding window, the abnormal condition in the fitting process is detected and removed by comparing the size between the fitting residual error and the second preset threshold value and comparing the size between the clock speed to be added into the window and the clock speed of the next moment of fitting prediction, so that the accuracy of the clock speed change rate is further improved, and the accuracy and the reliability of clock difference prediction are further improved.
In a fourth aspect, an embodiment of the present application provides an ephemeris forecasting method, which is applied to a terminal device, and the method includes: receiving polynomial coefficients and clock error parameters from a server; determining the position and the speed of the visible GNSS satellite according to the polynomial coefficient; determining the clock error of the visible GNSS satellite according to the clock error parameter; the current position and/or velocity is determined from the position, velocity and clock offset of the visible GNSS satellites.
According to the embodiment of the application, the polynomial coefficient is synthesized by the polynomial model to the forecast orbit, so that the operation amount of the terminal equipment in the positioning process is effectively reduced, and further the power consumption of the GNSS in the positioning process is reduced.
In some possible implementations of the fourth aspect, the determining the position and the velocity of the visible GNSS satellites according to the polynomial coefficients may include:
determining the position of the visible GNSS satellite according to the polynomial coefficient and the basis function of the polynomial model;
the velocity of the visible GNSS satellites is determined based on the polynomial coefficients and the basis function derivatives of the polynomial model.
Illustratively, the basis functions of the above polynomial model are:
T 0 (x)=1,T 1 (x)=x,T n (x)=2xT n-1 (x)-T n-2 (x) And n is 2 or more.
Wherein n represents the order of the basis function;
based on the basis functions, the positions of the GNSS satellites are:
Figure BDA0002914962930000062
wherein x (t), y (t), and z (t) represent the three-dimensional positions of the satellites.
The derivative of the basis function is:
F 0 (x)=0,F 1 (x)=1,F n (x)=2T n-1 (x)+2xF n-1 (x)-F n-2 (x) And n is greater than or equal to 2.
Based on the derivatives of the basis functions, the velocity of the GNSS satellites is:
Figure BDA0002914962930000071
in a fifth aspect, an embodiment of the present application provides an ephemeris forecasting system, which may include a server and a terminal device.
Wherein the server may be configured to implement the method according to any one of the third aspect. The terminal device may be configured to implement the method of any of the fourth aspect above.
In a sixth aspect, embodiments of the present application provide a server, including a memory, a processor, and a computer program stored in the memory and executable on the processor, where the processor implements the method according to any one of the first aspect or the third aspect when executing the computer program.
In a seventh aspect, an embodiment of the present application provides a terminal device, which includes a memory, a processor, and a computer program stored in the memory and executable on the processor, and when the processor executes the computer program, the method as in any one of the above fourth aspects is implemented.
In an eighth aspect, embodiments of the present application provide a computer-readable storage medium, in which a computer program is stored, and the computer program, when executed by a processor, implements the method according to any one of the first, third or fourth aspects.
In a ninth aspect, embodiments of the present application provide a chip system, where the chip system includes a processor, the processor is coupled with a memory, and the processor executes a computer program stored in the memory to implement the method according to any one of the first, third, or fourth aspects. The chip system can be a single chip or a chip module consisting of a plurality of chips.
In a tenth aspect, embodiments of the present application provide a computer program product, which, when run on an electronic device, causes the electronic device to perform the method of any one of the first, third or fourth aspects.
It is to be understood that the beneficial effects of the second to tenth aspects can be seen from the description of the first aspect, and are not repeated herein.
Drawings
Fig. 1 is a schematic diagram of a standard AGNSS system according to an embodiment of the present application;
fig. 2 is a schematic block diagram of an architecture of a PGNSS system according to an embodiment of the present application;
FIG. 3 is a schematic block diagram of a system architecture of an ephemeris forecast scheme provided by an embodiment of the present application;
fig. 4 is a block diagram schematically illustrating a structure of the terminal device 31 according to the embodiment of the present application;
FIG. 5 is a schematic flow chart illustrating an ephemeris forecasting method according to an embodiment of the present application;
fig. 6 is a schematic block diagram of a satellite orbit prediction process provided in an embodiment of the present application;
fig. 7 is a schematic block diagram of a satellite clock error prediction process according to an embodiment of the present application;
FIG. 8 is a schematic block diagram illustrating a process for correcting a reference bias of ephemeris data according to an embodiment of the present application;
FIG. 9 is a clock speed time series for a portion of 235 days from a satellite according to an embodiment of the present application;
FIG. 10 is a schematic diagram of orbital ephemeris parameter encoding based on orbital planes;
FIG. 11 is a schematic block diagram illustrating another flow chart of a method for ephemeris forecast provided by an embodiment of the application;
FIG. 12 is a block diagram illustrating an exemplary ephemeris forecasting apparatus according to an embodiment of the disclosure;
FIG. 13 is a block diagram that schematically illustrates another example of an ephemeris forecasting apparatus that may be implemented in accordance with an embodiment of the invention;
FIG. 14 is a block diagram illustrating another example of an ephemeris forecasting apparatus according to an embodiment of the disclosure.
Detailed Description
With the wide application of terminal devices such as mobile phones, smart wearable devices, tablet computers, and car machines, Location Based Services (LBS) also gain more and more attention. When using LBS, the terminal device needs to perform positioning first to determine the current location.
The terminal device is generally located based on a Global Navigation Satellite System (GNSS). Specifically, when the terminal device initiates a positioning request, a set of complete ephemeris is demodulated from a satellite navigation signal by using a built-in GNSS chip, and then positioning is completed based on the complete ephemeris.
Currently, when a terminal device performs positioning based on GNSS, if the Time To First Fix (TTFF) is too long, user experience may be affected. In order to reduce TTFF and improve user experience, Assisted GNSS (AGNSS) technology is proposed. The AGNSS technology can be classified into a standard AGNSS service and an Ephemeris extension (Extended Ephemeris) service. In the following, a standard AGNSS and a Predicted GNSS (PGNSS) will be exemplarily described.
(1) Standard AGNSS. Referring to fig. 1, a schematic diagram of a standard AGNSS system according to an embodiment of the present application is shown. As shown in fig. 1, the system may include a terminal device 11, a data switching center 12, an AGNSS server 13, a GNSS observation station 14, and a GNSS satellite 15.
The GNSS observation station 14 is configured to acquire GNSS signals of the GNSS satellites 15, and demodulate broadcast ephemeris parameters from the GNSS signals in real time; and then sends the demodulated broadcast ephemeris parameters to the AGNSS server 13.
The AGNSS server 13 is configured to receive the broadcast ephemeris parameters sent by the GNSS observation station 14, and store the broadcast ephemeris parameters. In addition, the AGNSS server 13 is further configured to, after receiving the positioning request of the terminal device 11, send the broadcast ephemeris parameters to the terminal device 11 in response to the positioning request.
The terminal device 11 is configured to initiate a location request and send the location request to the AGNSS service 13 through the data switching center 12. In addition, the terminal device 11 is further configured to receive the broadcast ephemeris parameters returned by the AGNSS server 13, and perform positioning based on the broadcast ephemeris parameters.
Illustratively, the terminal positioning process based on the standard GNSS system includes:
in each positioning process, the terminal device 11 sends a positioning request to the AGNSS server 13 through the network, where the positioning request is used to acquire the broadcast ephemeris parameters. After receiving the positioning request from the terminal device 11, the AGNSS server 13 sends the broadcast ephemeris parameters corresponding to the positioning request to the terminal device 11 through the network.
The terminal device 11 receives the broadcast ephemeris parameters returned by the AGNSS server 13 through the network, and calculates the positions and the speeds of all visible GNSS satellites by using a built-in GNSS chip based on the broadcast ephemeris parameters; and then determining the current position and/or the current speed based on the position and the speed of the GNSS satellite and the GNSS observation data. That is, the terminal device may determine the current location, the current speed, or both the current location and the current speed based on the GNSS.
(2) PGNSS. Referring to fig. 2, a block diagram schematically illustrates an architecture of a PGNSS system according to an embodiment of the present application. As shown in fig. 2, the system may include a terminal device 21, a data switching center 22, a PGNSS server 23, a data source server 24, and a GNSS satellite 25.
The data switching center 22 is used for transmitting data. The data source server 24 is used to store data sources, which may be, but are not limited to, ephemeris data, broadcast ephemeris data, or raw carrier-phase observations. The PGNSS server 23 is configured to obtain a data source stored on the data source server 24 and generate ephemeris data based on the data source.
The terminal device 21 is configured to obtain the ephemeris data generated by the PGNSS server 23, and determine a current location and/or a current speed of the terminal device based on the ephemeris data.
Exemplarily, the terminal location procedure based on the PGNSS system includes:
after acquiring the data source, the PGNSS server 23 performs modeling based on the data source to obtain a satellite orbit prediction model and a satellite clock error prediction model; then, forecasting the satellite orbit based on the satellite orbit forecasting model to obtain a forecasting orbit, and forecasting the satellite clock error based on the satellite clock error forecasting model to obtain a forecasting clock error; the predicted orbit and the predicted clock error are fitted to the broadcast ephemeris parameters and transmitted to the terminal device 21.
After the terminal device 21 acquires the broadcast ephemeris parameters, the broadcast ephemeris parameters may be periodically injected into the GNSS chip, so as to calculate the position, the speed, and the clock error of the visible GNSS satellite by using the GNSS chip and the broadcast ephemeris parameters, and determine the current position and/or the current speed based on the position, the speed, and the clock error of the visible GNSS satellite, the pseudorange, the carrier phase observed quantity, and the like.
In the above mentioned standards AGNSS and PGNSS, the server broadcasts the ephemeris parameters, that is, the server transmits the predicted orbit and the predicted clock error to the terminal device in the form of the ephemeris parameters. The data volume of the broadcast ephemeris parameters is large, so that the data volume of the parameter broadcast is large.
In order to reduce the amount of parameter broadcast data in ephemeris forecast, the embodiment of the present application provides an ephemeris parameter broadcast scheme based on an orbital plane. In the ephemeris parameter broadcasting scheme based on the orbital plane, the server obtains ephemeris parameter codes of the same orbital plane by coding ephemeris parameters of satellites belonging to the same orbital plane, and transmits the predicted orbit and the predicted clock error to the terminal device in the form of the ephemeris parameter codes.
The technical solutions provided in the embodiments of the present application will be described in detail below. In the following description, for purposes of explanation and not limitation, specific details are set forth such as particular system structures, techniques, etc. in order to provide a thorough understanding of the embodiments of the present application.
Referring to fig. 3, a schematic block diagram of a system architecture of an ephemeris forecast scheme provided in the embodiment of the present application is shown. As shown in fig. 3, the system may include a terminal device 31 and a server 33, the terminal device 31 and the server 33 being connected via a network 32.
The terminal device 31 is a device with a wireless transceiving function, and may be a handheld terminal device, a vehicle-mounted terminal, an intelligent wearable device, or other computing devices. Exemplarily, the terminal device is a portable terminal device such as a mobile phone or a tablet computer; it may also be an Augmented Reality (AR) device, a Virtual Reality (VR) device, an ultra-mobile personal computer (UMPC), or the like. The embodiment of the present application does not limit the specific type of the terminal device 31. Fig. 3 exemplarily shows that the terminal device 31 is a handset.
The specific structure may be different depending on the type of the terminal device 31. Referring to the block diagram of the structure of the terminal device 31 provided in the embodiment of the present application shown in fig. 4, the terminal device 31 may include, but is not limited to, a processor 311, a GNSS chip 312, and a memory 313, and the GNSS chip 312 and the memory 313 are both communicatively connected to the processor 311. Of course, the terminal device 31 further includes a GNSS antenna for transceiving GNSS signals.
Processor 311 may include one or more processing units. For example, the processor 311 may include an Application Processor (AP), a modem processor, a controller, a baseband processor, and the like. The different processing units may be separate devices or may be integrated into one or more processors.
The controller may be, among other things, a neural center and a command center of the terminal equipment 31. The controller can generate an operation control signal according to the instruction operation code and the timing signal to complete the control of instruction fetching and instruction execution.
The memory 313 may be used to store computer-executable program code, which includes instructions. The processor 311 executes various functional applications of the terminal device 31 and data processing by executing instructions stored in the memory 313. The memory 313 may include a program storage area and a data storage area. Wherein the storage program area may store an operating system, an application program required for at least one function, and the like. The storage data area may store data created during use of the terminal device 31, and the like. For example, after receiving the broadcast ephemeris parameters from the server, the terminal device 31 stores the broadcast ephemeris parameters in the storage data area, and periodically reads the broadcast ephemeris parameters from the storage data area to inject them into the GNSS chip 312.
In addition, the memory 313 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one of a magnetic disk storage device, a flash memory device, a Universal Flash Storage (UFS), and the like.
The terminal device 31 may implement receiving and sending of GNSS signals, and GNSS positioning and/or pacing through the GNSS antenna and the GNSS chip 312.
In an embodiment of the present application, the GNSS may include a Global Positioning System (GPS), a global navigation satellite system (GLONASS), a beidou satellite navigation system (BDS), a quasi-zenith satellite system (QZSS) and/or a Satellite Based Augmentation System (SBAS).
It is to be understood that the illustrated structure of the embodiment of the present application does not constitute a specific limitation to the terminal device 31. In other embodiments of the present application, the terminal device 31 may include more or fewer components than shown, or some components may be combined, some components may be split, or a different arrangement of components. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.
Illustratively, when the terminal device 31 is a smart wearable device, the smart wearable device may be a smart bracelet, a smart watch, smart glasses, or the like. At this time, the terminal device 31 may further include a sensor, a display screen, and the like, and the sensor may include a photoelectric sensor and a physiological sensor.
Illustratively, when the terminal device 31 is a mobile phone, the terminal device 31 may further include a charging management module, a power management module, a battery, a mobile communication module, an audio module, a speaker, a receiver, a microphone, an earphone interface, a sensor module, a key, a motor, an indicator, a camera, a display screen, a Subscriber Identity Module (SIM) card interface, and the like.
The server 32 may comprise one or more servers, typically the server 32 comprises primarily a PGNSS server.
In specific application, the server 32 is configured to obtain a data source, perform satellite orbit prediction and satellite clock error prediction based on the data source, convert the predicted orbit and the predicted clock error into certain parameters, and transmit the parameters to the terminal device 31.
The terminal device 31 is configured to acquire the predicted orbit and the predicted clock error from the server 32 in a network request manner, calculate the position, the speed, and the like of the visible GNSS satellite by using the GNSS chip according to the predicted orbit and the predicted clock error, and determine the current position and/or the current speed of the terminal device based on the position, the speed, and the like of the GNSS satellite.
The embodiment of the application can be suitable for scenes of navigation positioning and/or speed measurement. For example, the terminal device 31 is an in-vehicle terminal, and the in-vehicle terminal uses GNSS to perform vehicle positioning and vehicle speed measurement. For another example, the terminal device 31 is a mobile phone, and the application program of the mobile phone uses LBS to recommend a product to the user. The embodiment of the present application does not limit the application scenarios.
After describing the system structure and application scenarios that may be related to the embodiments of the present application, the following will explain the technical solutions of the embodiments of the present application in detail with reference to the accompanying drawings.
Referring to fig. 5, a flowchart of an ephemeris forecasting method provided in the embodiment of the present application is schematically shown. As shown in fig. 5, the process may include the following steps:
step S501, the server acquires EOP data and historical ephemeris data in a preset time period.
It should be noted that the historical ephemeris data may include ephemeris data, real-time broadcast ephemeris data, and raw carrier phase observations. The historical ephemeris data may refer to a data source in PGNSS.
Typically, the historical ephemeris data includes satellite orbit data and satellite clock error data. The satellite orbit data comprises satellite position information of each satellite at each moment, and the satellite clock error data comprises satellite clock error information of each satellite at each moment. Satellite orbit data and Earth Orientation Parameters (EOP) data may be used for satellite orbit prediction, the EOP data being obtained externally by a server. The satellite clock error data can be used for satellite clock error prediction.
For example, when the historical ephemeris data includes precision ephemeris data, the precision ephemeris data may include a precision orbit product and a precision clock error product. The precise orbit product and the EOP file are used for satellite orbit prediction, and the precise clock error product is used for satellite clock error prediction.
In a specific application, the server may download a precision orbit product and a precision clock error product from a File Transfer Protocol (FTP) server of an International GNSS Service (IGS), and download an EOP File from an International Earth Rotation Service (IERS) server.
The preset time period may be set according to actual needs, for example, the preset time period is 2 days, that is, the server obtains historical ephemeris data for 2 days.
When the server acquires the satellite orbit data, the server can acquire the satellite orbit data of one or more days and forecast the satellite orbit according to the satellite orbit data of one or more days. Optionally, the optimal fitting duration may be set to two days in the embodiment of the present application, so as to estimate the satellite orbit dynamics parameters more accurately and improve the satellite orbit prediction accuracy. That is, the server acquires satellite orbit data for two consecutive days, and performs satellite orbit prediction using the satellite orbit data for two consecutive days, which has higher satellite orbit prediction accuracy than satellite orbit prediction using satellite orbit data for one day or at least three days.
Step S502, the server carries out satellite orbit prediction and satellite clock error prediction according to the EOP data and the historical ephemeris data to obtain the predicted orbit and the predicted clock error of a future preset time period.
It is understood that the server may use the EOP data and the satellite orbit data in the historical ephemeris data to perform satellite orbit predictions, and use the satellite clock error data in the historical ephemeris data to perform satellite clock error predictions.
It should be noted that the future preset time period may be set according to actual needs, for example, the future preset time period may be 7 to 28 days, that is, the server may forecast the satellite orbit and the satellite clock error within 7 to 28 days in the future.
The following describes the satellite orbit prediction process and the satellite clock error prediction process, respectively.
In some embodiments, in order to improve the satellite orbit prediction accuracy, the present application provides an improved satellite orbit prediction process, which may use different solar light pressure models for different types of satellites. The satellite orbit prediction process can refer to the schematic block diagram of the satellite orbit prediction process shown in fig. 6, and as shown in fig. 6, the process can include the following steps:
step S601, the server converts the satellite position information in the earth fixation system into the satellite position information in the inertial system based on the EOP data.
The satellite orbit data includes satellite position information under the earth fixation system. The satellite orbit data may be a precision orbit product.
It should be noted that, in order to estimate the satellite orbit dynamics parameters more accurately, the server may perform satellite orbit prediction based on satellite orbit data of two consecutive days, that is, the optimal fitting estimation duration is set to two days.
Step S602, the server determines a target sunlight pressure model corresponding to each satellite in the satellite orbit data according to the corresponding relation between the satellite type and the sunlight pressure model.
It should be noted that, the correspondence between the satellite type and the solar light pressure model is preset, that is, the solar light pressure model used by each type of satellite is predetermined.
For example, the correspondence relationship between the satellite type and the solar light pressure model may be as shown in table 1 below.
TABLE 1
Figure BDA0002914962930000111
Figure BDA0002914962930000121
According to the above table 1, when the satellite type of a certain satellite is a GPS satellite or a GLONASS satellite, the target sunlight pressure model of the certain satellite is: ECOM5 parametric model. Similarly, when the satellite type of a certain satellite is a QZSS satellite, the target light pressure model of the certain satellite is: an initial light pressure model and an ECOM5 parametric model.
It is understood that the satellite orbit data includes three-dimensional position information of each satellite at each time, and the satellite orbit data includes identification information of each satellite, which may be a satellite number, for example. The server determines the satellite type of each satellite in the satellite orbit data according to identification information such as the satellite number in the satellite orbit data; and determining a target sunlight pressure model corresponding to each satellite according to a preset corresponding relation between the satellite type and the sunlight pressure model based on the satellite type of each satellite.
In comparison, for different types of satellites, different sunlight pressure models are used, and satellite orbit prediction accuracy can be improved.
And S603, the server establishes a satellite motion equation and a variation equation of each satellite according to the target sunlight pressure model of each satellite and the satellite position information under the inertial system.
It can be understood that, for a single satellite, the server establishes the satellite motion equation and the variation equation of the satellite according to the target sunlight pressure model of the satellite and the satellite position information under the inertial system of the satellite.
And step S604, the server obtains the reference orbit position, the speed and the state transition matrix of each satellite at each moment in a numerical integration mode based on the motion equation and the variation equation of each satellite.
In the process of obtaining the reference track position, the speed and the state transition matrix at each moment by the server through a numerical integration mode, the reference track position, the speed and the state transition matrix at the current moment need to be obtained based on information such as the reference track position, the speed and the state transition matrix at the previous moment.
And step S605, the server obtains the satellite orbit state parameters of each satellite at the reference time in a least square integral solution mode based on the satellite orbit data, the reference orbit position and the state transition matrix. The reference time satellite orbit state parameters may include, but are not limited to, reference time satellite positions, velocities, kinetic model parameters, and empirical force parameters.
And S606, the server obtains the satellite orbit in the future preset time period in a numerical integration mode according to the satellite orbit state parameters at the reference time and the satellite dynamic model. At this time, the obtained satellite orbit of the future preset time period is the satellite orbit under the inertial system.
Step S607, the server converts the satellite orbit of the future preset time period under the inertial system to the earth-fixed system according to the EOP data, so as to obtain the predicted orbit of the future preset time period.
In a specific application, the server may convert the satellite orbit of the inertial system obtained in step S606 to the earth-fixed system according to the EOP forecast value in the EOP data.
Therefore, in the satellite orbit prediction process, different sunlight pressure models are used for different types of satellites, and the satellite orbit prediction precision is improved. Further, the optimal fitting time length is set to two days, so that the satellite orbit dynamic parameters can be estimated more accurately, and the satellite orbit prediction precision is further improved.
Of course, in other embodiments, the satellite orbit prediction may be performed by using an existing satellite orbit prediction method.
That is to say, for the satellite orbit prediction process, the server may adopt the improved satellite orbit prediction process proposed in the embodiment of the present application, or may adopt the existing satellite orbit prediction process.
Similarly, for the satellite clock error forecasting process, the server may adopt the improved satellite clock error forecasting process proposed by the embodiment of the present application, or may adopt the existing satellite clock error forecasting process. The improved satellite clock error prediction process proposed by the embodiment of the present application is shown in fig. 7.
Referring to fig. 7, a schematic block diagram of a satellite clock error forecasting process provided in the embodiment of the present application may include the following steps:
step S701, the server corrects the reference deviation of the precise ephemeris clock error data based on the broadcast ephemeris clock error data to obtain corrected precise ephemeris clock error data, and the satellite clock error data comprises the broadcast ephemeris clock error data and the precise ephemeris clock error data.
Note that the clock offset of the atomic clock mounted on the GNSS satellite is generally described by using a first-order polynomial or a second-order polynomial. Illustratively, the broadcast ephemeris clock difference may be as shown in equation (1) below.
Figure BDA0002914962930000131
Wherein clk n (t) is the satellite clock difference at time t.
Figure BDA0002914962930000132
Is an initial time t 0 The clock error of (a) is calculated,
Figure BDA0002914962930000133
is an initial time t 0 The clock speed of (2) is set,
Figure BDA0002914962930000134
at an initial time t 0 The clock drift of (2). ε (t) is the uncertainty component of the random variation.
The ephemeris clock error data may be expressed as the following equation (2).
Figure BDA0002914962930000135
Wherein b (t) is a reference deviation.
In comparison, the ephemeris data has higher accuracy than the broadcast ephemeris data, and a prediction clock error with higher accuracy can be generated based on the ephemeris data. However, the precision clock error has a time-varying reference deviation b (t) from the broadcast ephemeris clock error. The reference deviation b (t) is different from the ephemeris clock error data from different sources.
The reference deviation b (t) affects the accuracy of the clock error prediction, and in order to further improve the accuracy of the satellite clock error prediction, the ephemeris data may be corrected before the ephemeris data is used for the satellite clock error prediction, and then the corrected ephemeris data may be used for the satellite clock error prediction.
In some embodiments, referring to the schematic block diagram of the reference bias correction process for ephemeris data shown in fig. 8, the correction process may include the following steps:
step S801, the server performs subtraction on the broadcast ephemeris clock difference sequence and the precision ephemeris clock difference sequence of the same epoch to obtain a difference sequence of each epoch, where the broadcast ephemeris clock difference data includes the broadcast ephemeris clock difference sequence of each epoch, and the precision ephemeris clock difference data includes the precision ephemeris clock difference sequence of each epoch.
Illustratively, the GPS broadcast ephemeris clock error and precision clock error in a certain epoch correspond to 32 clock error sequences (i.e. 32 stars), respectively, where the broadcast ephemeris clock error sequence is:
Figure BDA0002914962930000136
the ephemeris clock difference sequence is:
Figure BDA0002914962930000137
at this time, the difference is made between the broadcast ephemeris clock difference sequence and the precise ephemeris clock difference sequence in the epoch, and the difference sequence in the epoch is obtained as:
Figure BDA0002914962930000138
it will be appreciated that there is one sequence of difference values for each epoch.
Step S802, the server determines the average value and standard deviation of each difference sequence.
Specifically, after obtaining the difference sequence for each epoch, the average value and the standard deviation of the difference sequence are calculated for each difference sequence.
Illustratively, the sequence of difference values for a epoch is:
Figure BDA0002914962930000139
the average value is:
Figure BDA0002914962930000141
the standard deviation is:
Figure BDA0002914962930000142
and step S803, aiming at each difference sequence, the server removes the difference points which do not accord with the preset conditions in the difference sequence according to the average value and the standard deviation to obtain a target difference sequence.
In some embodiments, the abnormal difference values in the difference value sequence can be removed through 3sigma in an iterative mode. Specifically, for each difference sequence, it is determined whether or not each difference point in the difference sequence satisfies the average value and the standard deviation
Figure BDA0002914962930000143
Wherein x is a difference point in the difference sequence, mu is a mean value of the difference sequence, and delta is a standard deviation of the difference sequence.
It is understood that a plurality of difference points exist in the difference sequence, and whether each difference point in the difference sequence satisfies the criterion difference and the average value of the difference sequence is judged based on the criterion difference and the average value of the difference sequence
Figure BDA0002914962930000144
If a certain difference point is satisfied
Figure BDA0002914962930000145
Determining that the difference point does not accord with the preset condition, considering the difference point as an abnormal difference point, and removing the difference point. And judging each difference point according to the difference points to obtain a difference sequence after the difference points are eliminated.
And after the abnormal difference value eliminating process of the first round is finished, based on the difference value sequence after the difference value points are eliminated, performing the abnormal difference value eliminating process of the next round.
In the next round of abnormal difference value elimination process, the server calculates the average value and the standard deviation of the difference value sequence after the difference value points are eliminated, and judges whether each difference value point in the difference value sequence after the difference value points are eliminated meets the requirement or not according to the average value and the standard deviation
Figure BDA0002914962930000146
And if so, rejecting the corresponding difference point. And judging each difference point according to the difference value sequence, and obtaining the difference value sequence after the difference value points are eliminated again.
And (4) iterating the abnormal difference value eliminating process until no difference value point in a certain difference value sequence is eliminated, wherein the difference value sequence is a target difference value sequence.
In the iteration process, after the first round of abnormal difference value elimination process is carried out, the difference value sequence after the difference value points are eliminated is regarded as the difference value sequence, and whether each difference value point in the difference value sequence meets the requirement or not is judged based on the average value and the standard deviation
Figure BDA0002914962930000147
And (4) until no difference point in the difference sequence meets the preset condition, taking the difference sequence without the difference point meeting the preset condition as a target difference sequence.
For example, a sequence of difference values is
Figure BDA0002914962930000148
There are 32 difference points in the difference sequence.
Firstly, the average value and standard deviation of the difference value sequence are calculated, and whether the 32 difference value points meet the requirements or not is judged respectively
Figure BDA0002914962930000149
At this time, it is assumed that there are 2 difference points satisfying
Figure BDA00029149629300001410
And considering the 2 difference points as abnormal difference points, and eliminating the 2 abnormal difference points to obtain a difference sequence after eliminating the difference points. Here, the difference sequence after the elimination of the difference points includes 30 difference points. And finishing the first round of abnormal difference point elimination process.
And then, carrying out the next round of abnormal difference point elimination process. At this time, the average value and the standard deviation of the difference sequence including 30 difference points are calculated, and based on the average value and the standard deviation, whether the 30 difference points satisfy or not is judged, respectively
Figure BDA00029149629300001411
At this time, assume that there are 1 difference pointSatisfy the requirement of
Figure BDA00029149629300001412
And considering the 1 difference point as an abnormal difference point, and eliminating the abnormal difference point to obtain a difference sequence after eliminating the difference point, wherein the difference sequence after eliminating the difference point comprises 29 difference points.
And then, carrying out the next round of abnormal difference point elimination process. At this time, the average and standard deviation of the difference sequence including 29 difference points are calculated, and based on the average and standard deviation, it is determined whether the 29 difference points satisfy respectively
Figure BDA0002914962930000151
At this time, it is assumed that 1 difference point satisfies
Figure BDA0002914962930000152
The 1 difference point is considered as an abnormal difference point, and the abnormal difference point is eliminated, so as to obtain a difference sequence after eliminating the difference point, wherein the difference sequence after eliminating the difference point comprises 28 difference points.
And then, carrying out the next round of abnormal difference point elimination process. At this time, the average and standard deviation of the difference sequence including 28 difference points are calculated, and based on the average and standard deviation, it is determined whether the 28 difference points satisfy respectively
Figure BDA0002914962930000153
At this time, it is assumed that there is no difference point satisfied
Figure BDA0002914962930000154
I.e., the difference points that have not been eliminated, the difference sequence including 28 difference points is taken as the target difference sequence.
It should be noted that, in practical application, only one round of abnormal difference point elimination process may be performed.
And step S804, the server calculates the reference deviation according to the target difference sequence.
Illustratively, the reference deviation is calculated by the following equation (3).
Figure BDA0002914962930000155
N represents the number of clock difference differences included in the target difference sequence, for example, after multiple rounds of outlier point culling, 28 difference points still remain in the target sequence, that is, the target sequence includes 28 difference points, where N is 28.
Step S805, the server performs subtraction on the ephemeris clock error data and the reference deviation to obtain corrected ephemeris clock error data.
Specifically, the server may subtract the reference deviation from the ephemeris clock error data in the satellite clock error data to obtain the corrected ephemeris clock error data.
It should be noted that, by correcting the ephemeris data based on the ephemeris data, the accuracy and reliability of the satellite clock error prediction can be further improved.
And S702, the server fits the single-day clock rate of each satellite according to the single-day clock rate data in the corrected precise ephemeris clock rate data of each satellite.
It can be understood that the corrected ephemeris clock error data includes clock error data of one or more days of each satellite, and based on the clock error data of one day of each satellite, single-day fitting is performed on each satellite to obtain the clock speed of one day.
In some embodiments, the server may perform gross error detection on the single-day clock error data in the corrected ephemeris clock error data to obtain the gross error detected ephemeris clock error data.
In the coarse error detection, if a in the time sequence of the original clock error 0 Item or a 1 And when the item jumps, the original clock difference time sequence is processed in a segmented mode, and meanwhile, the gross error is eliminated, so that the satellite clock difference data after the gross error detection is obtained. The original clock error time sequence refers to the corrected precision ephemeris clock error data, a 0 The term refers to the clock error, a 1 The term refers to the clock speed.
In the embodiment of the present application, the coarse detection method may be any method, for example, the coarse detection method may be median detection.
It should be noted that in other embodiments, the server may not perform gross error detection on the clock error data. But in comparison, the gross error detection can eliminate the gross error in the clock error data, so that the subsequent clock error prediction precision is higher.
After the gross error detection, the server takes the precise ephemeris clock error data after the gross error detection as an observation value, and establishes a first-order polynomial model or a second-order polynomial model of each satellite. Illustratively, the observation equation of a certain satellite is shown in the following equation (4).
Figure BDA0002914962930000156
Wherein, a 0 Is the clock error, a 1 Which refers to the clock speed.
And the server performs single-day fitting on the clock error by using a least square method based on the single-day clock error data of each satellite, and calculates the clock error model coefficient of each satellite every day. For example, taking the above equation (4) as an example, the clock difference is fitted for a single day to obtain the clock difference model coefficient a of each satellite for each day 0 And a 1
It can be understood that if gross error detection is not performed, the single-day clock speed of each satellite is fitted by directly using the corrected precise ephemeris clock error data as the observed value.
And step S703, the server obtains the clock speed time sequence of each satellite based on the clock speed of each satellite in a single day.
It can be understood that the server can obtain the clock error model coefficient a of each satellite for multiple days based on the satellite clock error data of each satellite for each day 0 And a 1 . Illustratively, fig. 9 shows a clock speed time series of 235 days for a portion of the satellites.
And step S704, the server fits to obtain the clock speed change rate of each satellite according to the clock speed time sequence of each satellite.
In some embodiments, for each satellite, a sliding window may be used to fit the clock speed time sequence, that is, the sliding window is used to slide in the clock speed time sequence, and during the sliding of the sliding window, whenever the number of clock speeds in the sliding window is greater than or equal to a preset number, the predicted clock speed at the next time is forecasted according to the clock speed in the sliding window at the current time and the fitting result obtained from the previous fitting.
And then, judging whether the difference value between the forecast clock speed at the next moment and the clock speed to be added into the sliding window is smaller than or equal to a first preset threshold value, if the difference value between the forecast clock speed and the clock speed to be added into the sliding window is smaller than or equal to the first preset threshold value, enabling the clock speed to be added into the sliding window to participate in the next fitting process of the clock speed change rate, namely, after the clock speed to be added into the sliding window is added into the sliding window, fitting is carried out according to the clock speed in the sliding window, and the clock speed change rate and the fitting residual error of the current fitting are obtained.
It should be noted that the clock speed to be added to the sliding window is the real clock speed of the next time. For example, the clock speed time sequence of a certain satellite comprises 5 clock speeds, and the 5 clock speeds are b in sequence according to the time sequence 1 、b 2 、b 3 、b 4 、b 5 I.e. in a clock speed time sequence, t 1 The corresponding clock speed value is b 1 ,t 2 The corresponding clock speed value is b 2 ,t 3 The corresponding clock speed value is b 3 ,t 4 The corresponding clock speed value is b 4 ,t 5 The corresponding clock speed value is b 5 . At t 4 At the time, the clock speed contained in the sliding window is b 1 、b 2 、b 3 、b 4 According to the clock speed in the sliding window at that time, forecast t 5 (i.e. next moment) of the predicted clock speed, which is B 5 . At this time, the clock speed to be added to the sliding window is b 5 Calculating t 5 Forecast clock speed of time B 5 And true clock speed b 5 And judging whether the difference is less than or equal to a first preset threshold value or not.
Let t be 5 Forecast clock speed of time B 5 He ZhenReal clock speed b 5 The difference between the two is less than or equal to a first preset threshold value, b is determined 5 Is added to the sliding window, at which the clock speed contained in the sliding window is b 1 、b 2 、b 3 、b 4 And b 5 According to b in the sliding window at that moment 1 、b 2 、b 3 、b 4 And b 5 And fitting to obtain the current clock speed change rate and the fitting residual error of the current fitting.
And after the current clock speed change rate and the fitting residual error are obtained, further judging whether the fitting residual error is smaller than or equal to a second preset threshold value, and if the fitting residual error is smaller than or equal to the second preset threshold value, taking the current clock speed change rate as the clock speed change rate of the satellite. Otherwise, if the fitting residual is greater than a second preset threshold, the gross error or a is considered to occur 1 And item jump, namely, after the sliding window is reset, the sliding window continues to slide forwards, and in the sliding process, fitting and judgment are carried out according to the process until the clock speed time sequence is traversed or the fitting residual error is less than or equal to a second preset threshold value.
If the difference between the predicted clock speed and the clock speed to be added into the sliding window is greater than a first preset threshold, the sliding window is reset and sliding continues forward until the clock speed time series is traversed or the fitting residual is less than or equal to a second preset threshold.
The first preset threshold, the second preset threshold, and the preset number may be set according to actual needs, and are not limited herein.
For example, the size of the sliding window is 5, that is, the number of clock speeds that can be accommodated in the sliding window is set to 5 in advance. In addition, when the number of the clock speeds in the sliding window is more than or equal to 3, fitting and forecasting are started according to the clock speeds in the sliding window, namely the preset number is 3, and when the number of the clock speeds in the sliding window is more than or equal to 3, fitting and forecasting are started according to the clock speeds in the sliding window.
Suppose that the clock speed time series for a certain satellite includes 100 clock speeds, i.e., t 1 、t 2 、t 3 、…、t 100 The clock speed value corresponding to each time is b 1 、b 2 、b 3 、…、b 100 . At the initial moment, the number of the clock speeds in the sliding window is 0, namely no clock speed is in the sliding window; the sliding window continues to slide forwards, and whether the number of clock speeds contained in the sliding window is greater than or equal to 3 is judged; at a certain moment, b is included in the sliding window 5 、b 6 、b 7 、b 8 And b 9 A total of 5 clock speed values, in this case, according to b 5 、b 6 、b 7 、b 8 And b 9 The next time (i.e. t) is predicted from the 5 clock speed values 10 ) Forecast clock speed B 10
Then, the forecast clock speed B is calculated 10 And true clock speed b 10 The difference between the two values is judged, whether the difference is less than or equal to a first preset threshold value is judged, if the difference is less than or equal to the first preset threshold value, the real clock speed b of the next moment is calculated 11 Add to the sliding window. At this time, since the maximum clock speed of the sliding window is 5, it is necessary to remove one clock speed value and then adjust the clock speed b of the next time 10 Into the sliding window. Suppose b is to be 10 After the sliding window is added, the clock speed value contained in the sliding window is b 6 、b 7 、b 8 、b 9 And b 10 And fitting according to the clock speed value in the sliding window at the moment to obtain the clock speed change rate and the fitting residual error. Then, whether the fitting residual of the current fitting is smaller than or equal to a second preset threshold value is further judged.
If the clock speed B is forecasted 10 And true clock speed b 10 If the difference value between the first and second preset threshold values is greater than the first preset threshold value, resetting the sliding window means that the number of the clock speeds in the sliding window is cleared, that is, the reset sliding window does not include the clock speed. After resetting the sliding window, the sliding window continues to slide forward according to the sliding step length, and in the sliding process, whether the number of the clock speeds in the sliding window is larger than or equal to 3 is continuously judged, if the number of the clock speeds in the sliding window at a certain moment is larger than or equal to 3, according to the clock speed in the sliding window at the moment, under fitting forecastForecasting the clock speed at a moment, forecasting the difference between the clock speed and the real clock speed, and judging the size of the difference and a first preset threshold value. And circulating the steps until the clock speed time sequence is traversed, or the fitting residual error of the clock speed change rate fitting process at a certain time is less than or equal to a second preset threshold value.
Therefore, the clock speed change rate is fitted based on the clock speed time sequence, and the abnormal detection is carried out on the clock speed and the fitting residual error of the fitting forecast through the sliding window, so that the accuracy of the clock speed change rate is improved, and the precision and the reliability of the satellite clock error forecast are improved.
Of course, in other embodiments, existing clock rate fits may be used.
Step S705, the server obtains the predicted clock difference of each satellite in the future preset time period according to the clock difference initial value, the clock speed and the clock speed change rate of each satellite.
In specific application, the server fits the clock rate change rate based on the clock rate time sequence of each satellite, and then the satellite clock difference a according to the reference time 0 The clock rate and the clock rate change rate obtained by fitting (namely the clock rate initial value) are used as parameters to carry out satellite clock rate prediction to obtain the predicted clock rate of each satellite in a future preset time period.
Therefore, the improved satellite clock error forecasting process provided by the embodiment of the application can further improve the precision and reliability of satellite clock error forecasting.
Step S503, after the server fits the forecast orbit into orbit parameters, the orbit parameters of the satellites belonging to the same orbit plane are encoded to obtain the orbit parameter code of each orbit plane.
Step S504, after the server fits the forecast clock error into the clock error parameter, the clock error parameter is coded to obtain the clock error parameter code.
In specific application, aiming at the forecast clock error, the server fits the forecast clock error into a clock error parameter, and then codes the clock error parameter to obtain a clock error parameter code.
For the predicted orbit, in order to send the predicted orbit to the terminal device, the server may perform piecewise fitting on the satellite predicted orbit by using a set of kepler orbit parameters to obtain orbit parameters of each segment of the predicted orbit.
The process of the server fitting the forecast tracks to the track parameters may be as follows:
firstly, the server samples the forecast orbit at equal intervals to obtain the satellite position of each sampling point. The sampling interval can be set according to actual needs, for example, the sampling interval can be 5 minutes, that is, the server samples every 5 minutes, and at this time, it is assumed that the initial sampling point is T 0 ,T 0 The forecast orbit position corresponding to the moment is (x) 0 ,y 0 ,z 0 ) The next sampling point is T 1 ,T 1 =T 0 +5,T 1 The forecast track position corresponding to the time is (x) 1 ,y 1 ,z 1 ) And the like in sequence until the sampling is completed. And after sampling is finished, obtaining a plurality of sampling points and the forecast track position corresponding to each sampling point.
And then, the server segments the plurality of sampling points according to time to obtain a segmentation result. Illustratively, segmentation was performed using 4 hours, and the segmentation results obtained from sampling at 5 minute intervals are shown in table 2.
TABLE 2
Time Value of X coordinate Y coordinate value Z coordinate value
T 0 X 0 Y 0 Z 0
T 1 X 1 Y 1 Z 1
T 48 X 48 Y 48 Z 48
As shown in Table 2 above, the total time is 240 minutes in 4 hours, and the samples are taken every 5 minutes, so there are 49 sampling points, T 0 、T 1 、…、T 48 ,T 0 The forecast orbit position corresponding to the moment is (x) 0 ,y 0 ,z 0 ),T 48 The forecast orbit position corresponding to the moment is (x) 48 ,y 48 ,z 48 )。
After sampling and segmenting the prediction orbits, a 16-parameter broadcast ephemeris model or an 18-parameter broadcast ephemeris model can be adopted to fit each segment of prediction orbit to obtain broadcast ephemeris parameters corresponding to each segment of prediction orbit. Fitting algorithms such as a least square method and the like can be adopted in the fitting process. For example, a 16 parameter broadcast ephemeris model may be as shown in Table 3 below.
TABLE 3
Figure BDA0002914962930000181
It should be noted that, after the server fits the forecast orbit segments into the orbit parameters, the orbit parameters can be directly sent to the terminal device. However, the data volume of the orbital ephemeris parameters is large, and directly sending the orbital ephemeris parameters to the terminal device results in a large data volume for parameter distribution.
In order to reduce the amount of parameter broadcast data without increasing the complexity of coding, embodiments of the present application provide an orbit plane-based ephemeris parameter broadcast method, where orbital ephemeris parameters belonging to the same orbit plane are coded to obtain an orbit ephemeris parameter code for each orbit plane. The orbit ephemeris parameters of the satellites in the same orbit plane have stronger consistency, so the orbit ephemeris parameters in the same orbit plane can be coded.
Specifically, the server determines satellites belonging to the same orbital plane, and then encodes orbit parameters corresponding to the satellites belonging to the same orbital plane to obtain orbit ephemeris parameter codes of the orbital plane. For example, referring to the schematic diagram of the orbital plane-based ephemeris parameter encoding method shown in fig. 10, as shown in fig. 10, after encoding the original broadcast ephemeris parameters of the orbital plane 1, the ephemeris parameter encoding 1 of the orbital plane 1 is obtained, and similarly, after encoding the original broadcast ephemeris parameters of the orbital plane N, the ephemeris parameter encoding N of the orbital plane N is obtained. The original broadcast ephemeris parameters are ephemeris parameters obtained by the server by using kepler orbit parameters to perform segmented fitting on the forecast orbit.
After obtaining the ephemeris parameter encoding 1, …, ephemeris parameter encoding N, the server sends the ephemeris parameter encoding 1, …, ephemeris parameter encoding N to the terminal device instead of sending the original broadcast ephemeris parameters to the terminal device. In this way, the amount of ephemeris parameter dissemination data can be reduced. Illustratively, table 4 below shows a comparison of data volume broadcast based on raw broadcast ephemeris parameters and broadcast based on the orbital plane.
TABLE 4
Broadcasting mode Data volume per week per kb for a single constellation
Broadcast based on raw broadcast ephemeris parameters 54.35
Broadcasting based on orbital planes 44.92
As can be seen from table 4 above, the data amount of the broadcast mode based on the orbital plane is smaller than that of the broadcast mode based on the original broadcast ephemeris parameters.
It should be noted that, when the original ephemeris parameters of the same orbital plane are encoded, the original ephemeris parameters of one of the satellites may be normally encoded, and then the ephemeris parameters of other satellites of the same orbital plane are incrementally encoded based on the ephemeris parameters of the normally encoded satellite, so as to finally obtain the ephemeris parameter code of the orbital plane.
For example, the orbital plane 1 includes 3 satellites, one of the 3 satellites is selected as a target satellite, and the original ephemeris parameters of the target satellite are normally encoded to obtain the orbit ephemeris parameter code of the target satellite. And for two satellites except the target satellite, performing incremental coding based on the ephemeris parameter coding of the target satellite.
Step S505, the server sends ephemeris parameter codes to the terminal device, where the ephemeris parameter codes include clock error parameter codes and orbit parameter codes of each orbit plane.
It is understood that the terminal device may obtain the forecast orbit and the forecast clock error from the server by means of a network request. After the server receives the request of the terminal device, the clock correction parameter code and the track parameter code of each track plane may be transmitted to the terminal device in response to the request. After acquiring the ephemeris parameter codes, the terminal equipment decodes the orbit parameter codes to obtain orbit ephemeris parameters of each satellite, calculates the positions, the speeds and the clock errors of all visible GNSS satellites based on the orbit ephemeris parameters and the clock error parameters, and finally determines the current position and/or the current speed according to the positions, the speeds, the observed quantities and the like of the visible GNSS satellites.
Therefore, after the forecast orbit segments are fitted into the orbit ephemeris parameters, the orbit ephemeris parameters are encoded based on the orbit surfaces to obtain the orbit ephemeris parameter codes of each orbit surface, and the parameter broadcast data volume can be effectively reduced.
Furthermore, the embodiment of the application also provides an improved satellite orbit forecasting process, and the satellite orbit forecasting precision is improved.
Furthermore, the embodiment of the application also provides an improved satellite clock error forecasting process, and the precision and the reliability of satellite clock error forecasting are improved.
In some embodiments, the present application provides another ephemeris forecast solution. Referring to fig. 11, there is provided another schematic flow chart of an ephemeris forecasting method according to an embodiment of the present application, where the ephemeris forecasting method may include the following steps:
step S1101, the server acquires EOP data and historical ephemeris data in a preset time period.
Step S1102, the server performs satellite orbit prediction and satellite clock error prediction according to the EOP data and the historical ephemeris data to obtain a predicted orbit and a predicted clock error of a future preset time period.
It should be noted that, the relevant introduction of step S1101 and step S1102 may refer to step S501 and step S502 above, and is not described herein again.
When the server predicts the satellite orbit, the server can use the existing satellite orbit prediction mode to perform satellite orbit prediction, and can also use the improved satellite orbit prediction mode provided by the embodiment of the application to perform satellite orbit prediction.
When the server predicts the satellite clock error, the server can use the existing satellite clock error prediction mode to carry out satellite clock error prediction, and can also use the improved satellite clock error prediction mode provided by the embodiment of the application to carry out clock error prediction. For the improved satellite orbit prediction process, see fig. 6 and related contents above, and for the improved satellite clock error prediction process, see fig. 7 and related contents above, which are not described herein again.
Step S1103, the server uses the polynomial model to fit the forecast orbit into a polynomial coefficient, and fits the forecast clock error into a clock error parameter.
It should be noted that the polynomial model includes a basis function and coefficients of the basis function. For example, the polynomial model is a chebyshev polynomial model whose basis functions are:
T 0 (x)=1,T 1 (x)=x,T n (x)=2xT n-1 (x)-T n-2 (x) N is 2 or more (5)
Wherein n represents the order of the basis function.
The GNSS satellite positions may be represented using basis functions. For example, the satellite position may be given by the above equation (5):
Figure BDA0002914962930000201
wherein x (t), y (t), and z (t) represent the three-dimensional position of the satellite.
The process by which the server fits the forecast tracks to polynomial coefficients using a polynomial may include:
firstly, the server performs equal-interval sampling and segmentation on the forecast track to obtain a segmentation result. The introduction of sampling and segmentation can be referred to the related contents in step S503 above, and will not be described herein again.
Then, after the server selects a proper order n of the basis function, the satellite position of each sampling point is represented by the basis function, so that the basis function coefficient corresponding to the satellite position of each sampling point is determined.
For example, a forecast trackThe segmentation results of (2) are shown in Table 2, and T is represented by the above formula (6) 0 、T 1 、…、T 48 Forecasting track positions corresponding to the moments, and determining T coordinate value based on X coordinate value, Y coordinate value and Z coordinate value corresponding to each moment 0 、T 1 、…、T 48 The basis function coefficients corresponding to the time instants.
In addition, the server fits the forecast clock offset to the clock offset parameters.
Step S1104, the server sends the polynomial coefficient and the clock difference parameter to the terminal device.
It is understood that the terminal device may obtain the forecast orbit and the forecast clock error from the server by means of a network request. After the server receives the request of the terminal device, the polynomial coefficients and the clock difference parameters may be transmitted to the terminal device in response to the request.
Specifically, the terminal device receives the polynomial coefficient and the clock difference parameter from the generator, and after acquiring the polynomial coefficient, the terminal device may calculate the satellite clock difference of the visible GNSS satellite according to the clock difference parameter, calculate the position of the GNSS satellite according to the basis function and the polynomial coefficient, and calculate the velocity of the GNSS satellite according to the polynomial coefficient and the basis function derivative.
Among these, the derivative of the basis function may be exemplified by:
F 0 (x)=0,F 1 (x)=1,F n (x)=2T n-1 (x)+2xF n-1 (x)-F n-2 (x) N is greater than or equal to 2 (7)
Using the derivative of the basis function shown in equation (7), the GNSS satellite velocity can be calculated as shown in equation (8) below:
Figure BDA0002914962930000211
it should be noted that, by using a polynomial model to fit the prediction orbit into a polynomial coefficient, the computation amount, the computation time and the power consumption of the GNSS chip in the terminal device positioning process can be reduced.
Specifically, when the server uses kepler parameters to fit the predicted orbit segments into the broadcast ephemeris parameters, the terminal device receives the broadcast ephemeris parameters from the server, and then calculates the positions and velocities of all visible GNSS satellites based on the broadcast ephemeris parameters. On one hand, in the process that the terminal device calculates the position and the speed of a single GNSS satellite based on the broadcast ephemeris parameters, many complex floating point operations are involved, and further the operation amount is large, and many resources of a processor are occupied. On the other hand, in each current positioning epoch, the number of visible GNSS satellites is up to 50 or more. The more the number of visible GNSS satellites is, the more the calculation amount is. For example, if the terminal device positions once per second, the terminal device needs to perform the GNSS satellite position calculation process and the speed calculation process 50 times per second, which is very large in computation amount and high in power consumption.
That is, the terminal device calculates the position and the speed of the GNSS satellite based on the broadcast ephemeris parameters, and the calculation amount is large, the calculation time is long, and the power consumption of the GNSS chip is high.
In the embodiment of the application, the prediction orbit is segmented and fitted into the polynomial coefficients by using the polynomial model, after the terminal equipment receives the polynomial coefficients, the position of the GNSS satellite can be calculated only according to the polynomial coefficients and the basis functions, the satellite speed can be calculated according to the polynomial coefficients and the basis function derivatives, fewer floating point operations are involved in the calculation process, the operation amount is reduced, the operation time consumption is reduced, and the power consumption of the GNSS chip is further reduced.
In addition, in the process of performing the piecewise fitting on the forecast orbit, the fitting error becomes larger as the fitting time length increases. To ensure accuracy, in existing AGNSS and PGNSS schemes, the length of time for each set of broadcast ephemeris parameters is typically 4 hours.
In the embodiment of the application, the prediction orbit is piecewise fitted through the polynomial model, and when the order n of the basis function is 18, the validity period of each group of parameters can be as long as 12 hours under the same precision condition, which means that the GNSS chip can adopt a lower parameter updating frequency.
Therefore, for one side of the terminal device, the polynomial coefficient is synthesized to the forecast orbit through the polynomial model, so that the computation amount of the terminal device in the positioning process is effectively reduced, and the power consumption of the GNSS positioning process is further reduced.
Furthermore, the embodiment of the application also provides an improved satellite orbit forecasting process, and the satellite orbit forecasting precision is improved.
Furthermore, the embodiment of the application also provides an improved satellite clock error forecasting process, and the precision and the reliability of satellite clock error forecasting are improved.
It should be understood that, the sequence numbers of the steps in the foregoing embodiments do not imply an execution sequence, and the execution sequence of each process should be determined by functions and internal logic of the process, and should not constitute any limitation to the implementation process of the embodiments of the present application.
In the embodiment of the present application, the terminal and the server may be divided into the functional modules according to the method example, for example, each functional module may be divided for each function, or two or more functions may be integrated into one processing module. The integrated module can be realized in a hardware mode, and can also be realized in a software functional module mode. It should be noted that, in the embodiment of the present application, the division of the module is schematic, and is only one logic function division, and there may be another division manner in actual implementation. The following description will be given by taking the case of dividing each function module corresponding to each function:
referring to fig. 12, a schematic block diagram of an ephemeris forecasting apparatus provided in the embodiment of the present application, which may be applied to a server, and the ephemeris forecasting apparatus may include:
the first obtaining module 121 is configured to obtain EOP data and historical ephemeris data in a preset time period.
The first forecasting module 122 is configured to perform satellite orbit forecasting and satellite clock error forecasting according to the EOP data and the historical ephemeris data, so as to obtain a forecasted orbit and a forecasted clock error in a future preset time period.
The orbit parameter coding module 123 is configured to code the orbit parameters of the satellites belonging to the same orbit plane after the predicted orbit is fit into the orbit parameters, so as to obtain an orbit parameter code of each orbit plane;
the clock error parameter coding module 124 is configured to code the clock error parameters after the predicted clock error is fit to the clock error parameters, so as to obtain clock error parameter codes;
a first sending module 125, configured to send ephemeris parameter codes to the terminal device, where the ephemeris parameter codes include clock difference parameter codes and orbit parameter codes of each orbit plane.
In some possible implementations, the first forecasting module 122 specifically includes:
the first orbit prediction unit is used for performing satellite orbit prediction according to the satellite orbit data and the EOP data to obtain a predicted orbit of a future preset time period;
the first clock error forecasting unit is used for forecasting clock errors according to the satellite clock error data to obtain the forecast clock errors of the future preset time period;
wherein the historical ephemeris data includes satellite orbit data and satellite clock error data.
In some possible implementations, the first track forecast unit is specifically configured to: according to the EOP data, converting satellite position information under an earth fixed system in the satellite orbit data into satellite position information under an inertial system; determining a target sunlight pressure model used by each satellite in the satellite orbit data according to the corresponding relation between the satellite type and the sunlight pressure model; establishing a satellite motion equation and a variation equation of each satellite based on a target sunlight pressure model of each satellite and satellite position information under an inertial system; obtaining a reference orbit position and a state transition matrix of each satellite at each moment by using a numerical integration mode based on a satellite motion equation and a variation equation of each satellite; obtaining a satellite orbit state parameter of each satellite at a reference moment in a least square integral solution mode based on the satellite orbit data, the reference orbit position and the state transition matrix; obtaining a satellite orbit of a future preset time period in a numerical integration mode according to the satellite orbit state parameters at the reference moment and the satellite dynamic model; and according to the EOP data, converting the satellite orbit of the future preset time period from an inertial system to a geostationary system to obtain a forecast orbit of the future preset time period.
In some possible implementations, the correspondence between the satellite type and the solar light pressure model may include: the sunlight pressure model corresponding to the GPS satellite or the GLNOSS satellite is as follows: an ECOM5 parametric model; the solar light pressure model corresponding to the Galileo satellite is as follows: a box-wing initial light pressure model and an ECOM5 parametric model; the sunlight pressure model corresponding to the Beidou GEO satellite is as follows: an initial light pressure model, an ECOM5 parameter model and a periodic empirical acceleration parameter; the sunlight pressure model corresponding to the QZSS satellite is as follows: initial light pressure model and ECOM5 parametric model.
In some possible implementations, the satellite trajectory data may include two consecutive days of precision orbit production.
In some possible implementations, the first clock error prediction unit is specifically configured to: based on the broadcast ephemeris clock error data, correcting the reference deviation of the precise ephemeris clock error data to obtain corrected precise ephemeris clock error data, wherein the satellite clock error data comprises the broadcast ephemeris clock error data and the precise ephemeris clock error data; fitting to obtain the single-day clock speed of each satellite according to the single-day clock difference data in the corrected precise ephemeris clock difference data of each satellite; obtaining a clock speed time sequence of each satellite based on the clock speed of each satellite in a single day; according to the clock speed time sequence of each satellite, fitting to obtain the clock speed change rate of each satellite; and obtaining the forecast clock error of each satellite in a future preset time period according to the clock error initial value, the clock speed and the clock speed change rate of each satellite.
In some possible implementations, the first clock error prediction unit is specifically configured to: subtracting the broadcast ephemeris clock difference sequence and the precise ephemeris clock difference sequence of the same epoch to obtain a difference sequence of each epoch, wherein the broadcast ephemeris clock difference data comprises the broadcast ephemeris clock difference sequences of each epoch, and the precise ephemeris clock difference data comprises the precise ephemeris clock difference sequences of each epoch; determining the mean and standard deviation of each difference sequence; for each difference sequence, removing difference points which do not meet preset conditions in the difference sequence according to the average value and the standard deviation to obtain a target difference sequence; calculating a reference deviation according to the target difference sequence; and (4) subtracting the precision ephemeris clock error data from the reference deviation to obtain the corrected precision ephemeris clock error data.
In some possible implementations, the first clock error prediction unit is specifically configured to: based on the average value and the standard deviation, judging whether each difference point in the difference value sequence meets the requirement
Figure BDA0002914962930000231
Wherein, x is a difference point in the difference sequence, mu is the mean value of the difference sequence, and delta is the standard deviation of the difference sequence; if so, determining that the difference points do not accord with the preset conditions, and removing the difference points which do not accord with the preset conditions to obtain a difference sequence after the difference points are removed; after the average value and the standard deviation of the difference value sequence after the difference value points are removed are determined, the difference value sequence after the difference value points are removed is used as the difference value sequence, and whether each difference value point in the difference value sequence meets the requirement or not is judged based on the average value and the standard deviation
Figure BDA0002914962930000232
And (4) until no difference point in the difference sequence meets the preset condition, taking the difference sequence without the difference point meeting the preset condition as a target difference sequence.
In some possible implementations, the first clock error prediction unit is specifically configured to: for each satellite, fitting the clock speed time sequence by using a sliding window; in the sliding process of the sliding window, when the number of the clock speeds in the sliding window is greater than or equal to the preset number, forecasting the clock speed of the next moment according to the clock speed in the sliding window at the current moment and a fitting result obtained by the last fitting; when the difference value between the forecast clock speed at the next moment and the clock speed to be added into the sliding window is smaller than or equal to a first preset threshold value, adding the clock speed to be added into the sliding window, and fitting according to the clock speed in the sliding window to obtain the change rate of the current clock speed and obtain a fitting residual error; if the fitting residual is less than or equal to a second preset threshold, taking the current clock speed change rate as the clock speed change rate; if the fitting residual is larger than a second preset threshold, the sliding window is reset and then continues to slide forwards until the clock speed time sequence is traversed or the fitting residual is smaller than or equal to the second preset threshold; and when the difference value between the clock speed at the next moment and the clock speed to be added into the sliding window is greater than a first preset threshold value, resetting the sliding window and continuing to slide forwards until the clock speed time sequence is traversed or the fitting residual error is less than or equal to a second preset threshold value.
The ephemeris forecasting device has a function of implementing the ephemeris forecasting method, and the function may be implemented by hardware, or may be implemented by hardware executing corresponding software, where the hardware or the software includes one or more modules corresponding to the function, and the modules may be software and/or hardware.
It should be noted that, for the information interaction, execution process, and other contents between the above-mentioned devices/modules, the specific functions and technical effects thereof are based on the same concept as those of the embodiment of the method of the present application, and reference may be made to the part of the embodiment of the method specifically, and details are not described here.
Referring to fig. 13, there is shown a schematic block diagram of another structure of an ephemeris forecasting apparatus provided in the embodiment of the present application, where the ephemeris forecasting apparatus may be applied to a server, and the ephemeris forecasting apparatus may include:
and a second obtaining module 131, configured to obtain the EOP data and historical ephemeris data in a preset time period.
And a second forecasting module 132, configured to perform satellite orbit forecasting and satellite clock error forecasting according to the EOP data and the historical ephemeris data, so as to obtain a forecasted orbit and a forecasted clock error in a future preset time period.
A clock error fitting module 133 for fitting the forecast clock error into clock error parameters.
A polynomial fitting module 134 for fitting the prediction orbit to polynomial coefficients using a polynomial model.
A second sending module 135, configured to send the clock difference parameter and the polynomial coefficient to the terminal device.
In some possible implementations, the polynomial fitting module 134 is specifically configured to: sampling the forecast orbit of each satellite at equal intervals to obtain the forecast orbit sampled by each satellite; segmenting the sampled forecast orbit of each satellite; and fitting each section of the forecast orbit of each satellite according to the base function and the order of the base function, determining a coefficient of the base function, and taking the coefficient of the base function as a polynomial coefficient, wherein the polynomial coefficient model comprises the base function.
In some possible implementations, the basis functions of the polynomial model are: t is a unit of 0 (x)=1,T 1 (x)=x,T n (x)=2xT n-1 (x)-T n-2 (x) And n is greater than or equal to 2, wherein n represents the order of the basis function.
In some possible implementations, the second forecasting module 132 includes:
the second orbit prediction unit is used for performing satellite orbit prediction according to the satellite orbit data and the EOP data to obtain a predicted orbit of a future preset time period;
the second clock error forecasting unit is used for forecasting the clock error according to the satellite clock error data to obtain the forecast clock error of a future preset time period;
the ephemeris data includes satellite orbit data and satellite clock error data.
In some possible implementations, the second track forecast unit is specifically configured to: according to the EOP data, converting satellite position information under the earth fixation system in the satellite orbit data into satellite position information under an inertial system; determining a target sunlight pressure model used by each satellite in the satellite orbit data according to the corresponding relation between the satellite type and the sunlight pressure model; establishing a satellite motion equation and a variation equation of each satellite based on a target sunlight pressure model of each satellite and satellite position information under an inertial system; based on a satellite motion equation and a variation equation of each satellite, obtaining a reference orbit position and a state transition matrix of each satellite at each moment by using a numerical integration mode; obtaining satellite orbit state parameters of each satellite at a reference moment by a least square integral solution mode based on the satellite orbit data, the reference orbit position and the state transition matrix; obtaining a satellite orbit of a future preset time period in a numerical integration mode according to the satellite orbit state parameters at the reference moment and the satellite dynamic model; and according to the EOP data, converting the satellite orbit of the future preset time period from an inertial system to a geostationary system to obtain a forecast orbit of the future preset time period.
In some possible implementations, the correspondence between the satellite type and the solar light pressure model may include: the sunlight pressure model corresponding to the GPS satellite or the GLNOSS satellite is as follows: an ECOM5 parametric model; the sunlight pressure model corresponding to the Galileo satellite is as follows: a box-wing initial light pressure model and an ECOM5 parameter model; the sunlight pressure model corresponding to the Beidou GEO satellite is as follows: an initial light pressure model, an ECOM5 parametric model, and a periodic empirical acceleration parameter; the sunlight pressure model corresponding to the QZSS satellite is as follows: an initial light pressure model and an ECOM5 parametric model.
In some possible implementations, the satellite trajectory data includes two consecutive days of precision orbit production.
In some possible implementations, the second clock error prediction unit is specifically configured to: correcting the reference deviation of the precise ephemeris clock error data based on the broadcast ephemeris clock error data to obtain corrected precise ephemeris clock error data, wherein the satellite clock error data comprises the broadcast ephemeris clock error data and the precise ephemeris clock error data; fitting to obtain the single-day clock speed of each satellite according to the single-day clock difference data in the corrected precise ephemeris clock difference data of each satellite; obtaining a clock speed time sequence of each satellite based on the single-day clock speed of each satellite; according to the clock speed time sequence of each satellite, fitting to obtain the clock speed change rate of each satellite; and obtaining the forecast clock error of each satellite in a future preset time period according to the clock error initial value, the clock speed and the clock speed change rate of each satellite.
In some possible implementations, the second clock error prediction unit is specifically configured to: the method comprises the steps of subtracting a broadcast ephemeris clock difference sequence and a precision ephemeris clock difference sequence of the same epoch to obtain a difference sequence of each epoch, wherein the broadcast ephemeris clock difference data comprises the broadcast ephemeris clock difference sequences of each epoch, and the precision ephemeris clock difference data comprises the precision ephemeris clock difference sequences of each epoch; determining the mean and standard deviation of each difference sequence; for each difference sequence, removing difference points which do not meet preset conditions in the difference sequence according to the average value and the standard deviation to obtain a target difference sequence; calculating a reference deviation according to the target difference sequence; and (4) subtracting the precision ephemeris clock error data from the reference deviation to obtain the corrected precision ephemeris clock error data.
In some possible implementations, the second clock error prediction unit is specifically configured to: judging whether each difference point in the difference value sequence meets the requirement or not based on the average value and the standard deviation
Figure BDA0002914962930000251
Wherein, x is a difference point in the difference sequence, mu is the mean value of the difference sequence, and delta is the standard deviation of the difference sequence; if so, determining that the difference points do not accord with the preset conditions, and removing the difference points which do not accord with the preset conditions to obtain a difference sequence after the difference points are removed; determining the average value and standard deviation of the difference sequence after eliminating the difference points, taking the difference sequence after eliminating the difference points as the difference sequence, and returning to judge whether each difference point in the difference sequence meets the requirements based on the average value and the standard deviation
Figure BDA0002914962930000252
Until no difference point in the difference sequence meets the preset condition, taking the difference sequence without the difference point meeting the preset condition as a target difference sequence.
In some possible implementations, the second clock error prediction unit is specifically configured to: for each satellite, fitting the clock speed time sequence by using a sliding window; in the sliding process of the sliding window, when the number of the clock speeds in the sliding window is greater than or equal to the preset number, forecasting the clock speed at the next moment according to the clock speed in the sliding window at the current moment and a fitting result obtained by the last fitting; when the difference value between the forecast clock speed at the next moment and the clock speed to be added into the sliding window is smaller than or equal to a first preset threshold value, adding the clock speed to be added into the sliding window, and fitting according to the clock speed in the sliding window to obtain the change rate of the current clock speed and obtain a fitting residual error; if the fitting residual is less than or equal to a second preset threshold, taking the current clock speed change rate as the clock speed change rate; if the fitting residual is larger than a second preset threshold, the sliding window is reset and then continues to slide forwards until the clock speed time sequence is traversed or the fitting residual is smaller than or equal to the second preset threshold; and when the difference value between the clock speed at the next moment and the clock speed to be added into the sliding window is greater than a first preset threshold value, resetting the sliding window and continuing to slide forwards until the clock speed time sequence is traversed or the fitting residual error is less than or equal to a second preset threshold value.
The ephemeris forecasting device has a function of implementing the ephemeris forecasting method, and the function may be implemented by hardware, or may be implemented by hardware executing corresponding software, where the hardware or the software includes one or more modules corresponding to the function, and the modules may be software and/or hardware.
It should be noted that, for the information interaction, execution process, and other contents between the above-mentioned devices/modules, the specific functions and technical effects thereof are based on the same concept as those of the embodiment of the method of the present application, and reference may be made to the part of the embodiment of the method specifically, and details are not described here.
Referring to fig. 14, there is shown a schematic block diagram of another structure of an ephemeris forecasting apparatus provided in the embodiment of the present application, where the ephemeris forecasting apparatus may be applied to a terminal device, and the ephemeris forecasting apparatus may include:
and a receiving module 141, configured to receive the polynomial coefficient and the clock difference parameter from the server.
And a first determining module 142, configured to determine the position and velocity of the visible GNSS satellites according to the polynomial coefficients.
A second determining module 143, configured to determine a clock offset of the visible GNSS satellite according to the clock offset parameter;
a third determining module 144, configured to determine the current position and/or velocity according to the position, velocity and clock error of the visible GNSS satellites.
In some possible implementations, the first determining module 142 is specifically configured to:
determining the position of the visible GNSS satellite according to the polynomial coefficient and the basis function of the polynomial model;
the velocity of the visible GNSS satellites is determined based on the polynomial coefficients and the basis function derivatives of the polynomial model.
Wherein, the basis function of the polynomial model is:
T 0 (x)=1,T 1 (x)=x,T n (x)=2xT n-1 (x)-T n-2 (x) And n is 2 or more.
Wherein n represents the order of the basis function;
based on the basis functions, the positions of the GNSS satellites are:
Figure BDA0002914962930000261
wherein x (t), y (t), and z (t) represent the three-dimensional position of the satellite.
The derivative of the basis function is:
F 0 (x)=0,F 1 (x)=1,F n (x)=2T n-1 (x)+2xF n-1 (x)-F n-2 (x) And n is greater than or equal to 2.
Based on the derivatives of the basis functions, the velocity of the GNSS satellites is:
Figure BDA0002914962930000262
the ephemeris forecasting device has a function of implementing the ephemeris forecasting method, and the function may be implemented by hardware, or may be implemented by hardware executing corresponding software, where the hardware or the software includes one or more modules corresponding to the function, and the modules may be software and/or hardware.
It should be noted that, for the information interaction, execution process, and other contents between the above devices/modules, the specific functions and technical effects of the embodiments of the method of the present application are based on the same concept, and specific reference may be made to the section of the embodiments of the method, and details are not described herein again.
The terminal device provided in the embodiment of the present application may include a memory, a processor, and a computer program stored in the memory and executable on the processor, where the processor executes the computer program to implement the method in any one of the embodiments of the ephemeris forecast method on the terminal device side as described above.
Embodiments of the present application provide a server, which includes a memory, a processor, and a computer program stored in the memory and executable on the processor, and the processor executes the computer program to implement the method according to any one of the above embodiments of the server-side ephemeris forecast method.
The embodiment of the present application further provides an ephemeris forecasting system, where the system includes a server and a terminal device, where the server is configured to implement the method in any one of the embodiments of the ephemeris forecasting method on the server side. The terminal device is configured to implement the method according to any one of the embodiments of the ephemeris forecast method on the side of the terminal device as described above.
The embodiments of the present application further provide a computer-readable storage medium, where a computer program is stored, and when the computer program is executed by a processor, the computer program implements the steps that can be implemented in the above method embodiments.
The embodiments of the present application provide a computer program product, which when running on an electronic device, enables the electronic device to implement the steps in the above method embodiments when executed.
Embodiments of the present application further provide a chip system, where the chip system includes a processor, where the processor is coupled to a memory, and the processor executes a computer program stored in the memory to implement the methods described in the above method embodiments. The chip system can be a single chip or a chip module consisting of a plurality of chips.
In the above embodiments, the descriptions of the respective embodiments have respective emphasis, and reference may be made to the related descriptions of other embodiments for parts that are not described or illustrated in a certain embodiment. It should be understood that, the sequence numbers of the steps in the foregoing embodiments do not imply an execution sequence, and the execution sequence of each process should be determined by its function and inherent logic, and should not constitute any limitation to the implementation process of the embodiments of the present application. Furthermore, in the description of the present application and the appended claims, the terms "first," "second," "third," and the like are used for distinguishing between descriptions and not necessarily for describing or implying relative importance. Reference throughout this specification to "one embodiment" or "some embodiments," or the like, means that a particular feature, structure, or characteristic described in connection with the embodiment is included in one or more embodiments of the present application. Thus, appearances of the phrases "in one embodiment," "in some embodiments," "in other embodiments," or the like, in various places throughout this specification are not necessarily all referring to the same embodiment, but rather mean "one or more but not all embodiments" unless specifically stated otherwise.
Finally, it should be noted that: the above description is only an embodiment of the present application, but the scope of the present application is not limited thereto, and any changes or substitutions within the technical scope of the present disclosure should be covered by the scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.

Claims (24)

1. An ephemeris forecasting method, applied to a server, the method comprising:
acquiring earth orientation parameter EOP data and historical ephemeris data in a preset time period;
performing satellite orbit prediction and satellite clock error prediction according to the EOP data and the historical ephemeris data to obtain a predicted orbit and a predicted clock error of a future preset time period;
after fitting the forecast orbit into orbit parameters, encoding the orbit parameters of the satellites belonging to the same orbit plane to obtain an orbit parameter code of each orbit plane;
after the forecast clock error is fitted into a clock error parameter, the clock error parameter is coded to obtain a clock error parameter code;
and sending ephemeris parameter codes to terminal equipment, wherein the ephemeris parameter codes comprise the clock difference parameter codes and the orbit parameter codes of each orbit surface.
2. The method according to claim 1, wherein the performing satellite orbit prediction and satellite clock error prediction according to the EOP data and the historical ephemeris data to obtain a predicted orbit and a predicted clock error for a future preset time period comprises:
forecasting the satellite orbit according to the satellite orbit data and the EOP data to obtain the forecast orbit of the future preset time period;
forecasting clock errors according to the satellite clock error data to obtain the forecasted clock errors of the future preset time period;
wherein the historical ephemeris data includes the satellite orbit data and the satellite clock error data.
3. A method according to claim 2, wherein said performing satellite orbit predictions from satellite orbit data and said EOP data to obtain said predicted orbit for said future predetermined time period comprises:
according to the EOP data, converting satellite position information under a geostationary system in the satellite orbit data into satellite position information under an inertial system;
determining a target sunlight pressure model used by each satellite in the satellite orbit data according to the corresponding relation between the satellite type and the sunlight pressure model;
establishing a satellite motion equation and a variation equation of each satellite based on the target sunlight pressure model of each satellite and the satellite position information under the inertial system;
obtaining a reference orbit position and a state transition matrix of each satellite at each moment by using a numerical integration mode based on the satellite motion equation and the variation equation of each satellite;
obtaining satellite orbit state parameters of each satellite at the reference time by means of least square integral solution based on the satellite orbit data, the reference orbit position and the state transition matrix;
obtaining the satellite orbit of each satellite in the future preset time period in a numerical integration mode according to the satellite orbit state parameters of each satellite at the reference moment and the satellite dynamic model of each satellite;
and according to the EOP data, converting the satellite orbit of each satellite in the future preset time period from an inertial system to a geostationary system to obtain the forecast orbit of each satellite in the future preset time period.
4. The method of claim 3, wherein the correspondence between the satellite type and the solar light pressure model comprises:
the sunlight pressure model corresponding to the GPS satellite or the GLNOSS satellite is as follows: an ECOM5 parametric model;
the solar light pressure model corresponding to the Galileo satellite is as follows: a box-wing initial light pressure model and an ECOM5 parametric model;
the sunlight pressure model corresponding to the Beidou GEO satellite is as follows: an initial light pressure model, an ECOM5 parameter model and a periodic empirical acceleration parameter;
the sunlight pressure model corresponding to the QZSS satellite is as follows: initial light pressure model and ECOM5 parametric model.
5. A method according to any one of claims 2 to 4, wherein the satellite trajectory data comprises two consecutive days of precision orbit production.
6. The method according to any one of claims 2 to 5, wherein said performing clock error prediction according to satellite clock error data to obtain said predicted clock error of said future predetermined time period comprises:
correcting the reference deviation of the precise ephemeris clock error data based on the broadcast ephemeris clock error data to obtain corrected precise ephemeris clock error data, wherein the satellite clock error data comprises the broadcast ephemeris clock error data and the precise ephemeris clock error data;
fitting to obtain the single-day clock speed of each satellite according to the single-day clock difference data in the corrected precise ephemeris clock difference data of each satellite;
obtaining a clock speed time sequence of each satellite based on the single-day clock speed of each satellite;
according to the clock speed time sequence of each satellite, fitting to obtain the clock speed change rate of each satellite;
and obtaining the forecast clock error of each satellite in the future preset time period according to the clock error initial value, the clock speed and the clock speed change rate of each satellite.
7. The method of claim 6, wherein the step of correcting the reference bias for the ephemeris data based on the ephemeris clock error data to obtain corrected ephemeris clock error data comprises:
the method comprises the steps of subtracting a broadcast ephemeris clock difference sequence and a precision ephemeris clock difference sequence of the same epoch to obtain a difference sequence of each epoch, wherein the broadcast ephemeris clock difference data comprises the broadcast ephemeris clock difference sequences of each epoch, and the precision ephemeris clock difference data comprises the precision ephemeris clock difference sequences of each epoch;
determining the mean and standard deviation of each of the sequences of differences;
for each difference sequence, removing difference points which do not accord with preset conditions in the difference sequence according to the average value and the standard deviation to obtain a target difference sequence;
calculating a reference deviation according to the target difference sequence;
and subtracting the precise ephemeris clock error data from the reference deviation to obtain the corrected precise ephemeris clock error data.
8. The method according to claim 7, wherein the removing, according to the average value and the standard deviation, difference points in the difference sequence that do not meet a preset condition to obtain a target difference sequence comprises:
determining whether each difference point in the difference sequence satisfies the criterion based on the mean and the standard deviation
Figure FDA0002914962920000021
Wherein x is a difference point in the difference sequence, mu is a mean value of the difference sequence, and delta is a standard deviation of the difference sequence;
if so, determining that the difference point does not accord with the preset condition, removing the difference point which does not accord with the preset condition, and obtaining a difference sequence after the difference point is removed;
determining the average value and the standard deviation of the difference sequence after the difference points are removed, taking the difference sequence after the difference points are removed as the difference sequence, and returning to judge whether each difference point in the difference sequence meets the requirement or not based on the average value and the standard deviation
Figure FDA0002914962920000022
And taking the difference sequence without the difference point meeting the preset condition as the target difference sequence until no difference point in the difference sequence meets the preset condition.
9. The method according to any one of claims 6 to 8, wherein the fitting to obtain the clock speed change rate of each satellite according to the clock speed time series of each satellite comprises:
for each satellite, fitting the clock speed time sequence by using a sliding window;
in the sliding process of the sliding window, when the number of the clock speeds in the sliding window is greater than or equal to the preset number, forecasting the clock speed at the next moment according to the clock speed in the sliding window at the current moment and a fitting result obtained by the last fitting;
when the difference value between the forecast clock speed of the next moment and the clock speed to be added into the sliding window is smaller than or equal to a first preset threshold value, adding the clock speed to be added into the sliding window, and fitting according to the clock speed in the sliding window to obtain the change rate of the current clock speed and obtain a fitting residual error;
if the fitting residual is less than or equal to a second preset threshold, taking the current clock speed change rate as the clock speed change rate;
if the fitting residual is larger than the second preset threshold, resetting a sliding window and then continuing to slide forwards until the clock speed time sequence is traversed or the fitting residual is smaller than or equal to the second preset threshold;
and when the difference value between the clock speed of the next moment and the clock speed of the sliding window to be added is greater than the first preset threshold value, resetting the sliding window and continuing to slide forwards until the clock speed time sequence is traversed or the fitting residual error is less than or equal to the second preset threshold value.
10. An ephemeris forecasting method, applied to a server, the method comprising:
acquiring EOP data and historical ephemeris data in a preset time period;
performing satellite orbit prediction and satellite clock error prediction according to the EOP data and the historical ephemeris data to obtain a predicted orbit and a predicted clock error of a future preset time period;
fitting the predicted clock error to a clock error parameter;
fitting the forecast trajectory to polynomial coefficients using a polynomial model;
and sending the clock difference parameter and the polynomial coefficient to terminal equipment.
11. The method of claim 10, wherein fitting the prediction orbit to a polynomial coefficient using a polynomial model comprises:
sampling the forecast orbit of each satellite at equal intervals to obtain the forecast orbit sampled by each satellite;
segmenting the sampled forecast orbit for each satellite;
and fitting each section of forecast orbit of each satellite according to a basis function and the order of the basis function, determining a basis function coefficient, and taking the basis function coefficient as the polynomial coefficient, wherein the polynomial coefficient model comprises the basis function.
12. The method according to claim 10 or 11, wherein the performing satellite orbit prediction and satellite clock error prediction according to the EOP data and the historical ephemeris data to obtain a predicted orbit and a predicted clock error of a future preset time period comprises:
forecasting the satellite orbit according to the satellite orbit data and the EOP data to obtain the forecast orbit of the future preset time period;
forecasting clock errors according to the satellite clock error data to obtain the forecast clock errors of the future preset time period;
wherein the historical ephemeris data includes the satellite orbit data and the satellite clock error data.
13. A method according to claim 12, wherein said performing satellite orbit predictions from satellite orbit data and said EOP data, resulting in said predicted orbit for said future predetermined time period, comprises:
according to the EOP data, converting satellite position information under a geostationary system in the satellite orbit data into satellite position information under an inertial system;
determining a target sunlight pressure model used by each satellite in the satellite orbit data according to the corresponding relation between the satellite type and the sunlight pressure model;
establishing a satellite motion equation and a variation equation of each satellite based on the target sunlight pressure model of each satellite and the satellite position information under the inertial system;
based on the satellite motion equation and the variation equation of each satellite, obtaining a reference orbit position and a state transition matrix of each satellite at each moment by using a numerical integration mode;
obtaining a satellite orbit state parameter of each satellite at a reference moment in a least square integral solution mode based on the satellite orbit data, the reference orbit position and the state transition matrix;
obtaining the satellite orbit of the future preset time period in a numerical integration mode according to the satellite orbit state parameters at the reference moment and a satellite dynamic model;
and converting the satellite orbit of the future preset time period from an inertial system to a geostationary system according to the EOP data to obtain a forecast orbit of the future preset time period.
14. The method of claim 13, wherein the correspondence between the satellite type and the solar light pressure model comprises:
the sunlight pressure model corresponding to the GPS satellite or the GLNOSS satellite is as follows: an ECOM5 parametric model;
the sunlight pressure model corresponding to the Galileo satellite is as follows: a box-wing initial light pressure model and an ECOM5 parametric model;
the sunlight pressure model corresponding to the Beidou GEO satellite is as follows: an initial light pressure model, an ECOM5 parameter model and a periodic empirical acceleration parameter;
the sunlight pressure model corresponding to the QZSS satellite is as follows: an initial light pressure model and an ECOM5 parametric model.
15. A method according to any one of claims 12 to 14, wherein the satellite orbit data comprises two consecutive days of precision orbit product.
16. The method according to any one of claims 12 to 15, wherein performing a clock error prediction based on satellite clock error data to obtain the predicted clock error for the future predetermined time period comprises:
correcting the reference deviation of the precise ephemeris clock error data based on the broadcast ephemeris clock error data to obtain the corrected precise ephemeris clock error data, wherein the satellite clock error data comprises the broadcast ephemeris clock error data and the precise ephemeris clock error data;
fitting to obtain the single-day clock speed of each satellite according to the single-day clock difference data in the corrected precise ephemeris clock difference data of each satellite;
obtaining a clock speed time sequence of each satellite based on the single-day clock speed of each satellite;
according to the clock speed time sequence of each satellite, fitting to obtain the clock speed change rate of each satellite;
and obtaining the forecast clock error of each satellite in the future preset time period according to the clock error initial value, the clock speed and the clock speed change rate of each satellite.
17. The method of claim 16, wherein correcting the reference bias for the ephemeris data based on the ephemeris clock error data to obtain corrected ephemeris clock error data comprises:
subtracting the broadcast ephemeris clock difference sequence and the precise ephemeris clock difference sequence of the same epoch to obtain a difference sequence of each epoch, wherein the broadcast ephemeris clock difference data comprises the broadcast ephemeris clock difference sequences of each epoch, and the precise ephemeris clock difference data comprises the precise ephemeris clock difference sequences of each epoch;
determining a mean and a standard deviation for each of the sequences of difference values;
for each difference sequence, removing difference points which do not accord with preset conditions in the difference sequence according to the average value and the standard deviation to obtain a target difference sequence;
calculating a reference deviation according to the target difference sequence;
and subtracting the precision ephemeris clock error data from the reference deviation to obtain the corrected precision ephemeris clock error data.
18. The method according to claim 17, wherein said removing, according to the average value and the standard deviation, difference points in the difference sequence that do not meet a preset condition to obtain a target difference sequence comprises:
based on the average value and the standard deviation, judging whether each difference point in the difference value sequence meets the requirement
Figure FDA0002914962920000041
Wherein x is in the difference sequenceMu is the mean value of the difference sequence, and delta is the standard deviation of the difference sequence;
if so, determining that the difference points do not accord with the preset condition, removing the difference points which do not accord with the preset condition to obtain a difference sequence after the difference points are removed;
determining the average value and the standard deviation of the difference sequence after the difference points are removed, taking the difference sequence after the difference points are removed as the difference sequence, and returning to judge whether each difference point in the difference sequence meets the requirement on the basis of the average value and the standard deviation
Figure FDA0002914962920000051
Until no difference point in the difference sequence meets the preset condition, taking the difference sequence without the difference point meeting the preset condition as the target difference sequence.
19. The method according to any one of claims 16 to 18, wherein the fitting to obtain the clock speed change rate of each satellite according to the clock speed time series of each satellite comprises:
for each satellite, fitting the clock speed time sequence by using a sliding window;
in the sliding process of the sliding window, when the number of the clock speeds in the sliding window is greater than or equal to the preset number, forecasting the clock speed at the next moment according to the clock speed in the sliding window at the current moment and a fitting result obtained by the last fitting;
when the difference value between the forecast clock speed at the next moment and the clock speed to be added into the sliding window is smaller than or equal to a first preset threshold value, adding the clock speed to be added into the sliding window, and fitting according to the clock speed in the sliding window to obtain the change rate of the current clock speed and obtain a fitting residual error;
if the fitting residual is less than or equal to a second preset threshold, taking the current clock speed change rate as the clock speed change rate;
if the fitting residual is larger than the second preset threshold, resetting a sliding window and then continuing to slide forwards until the clock speed time sequence is traversed or the fitting residual is smaller than or equal to the first preset threshold;
and when the difference value between the clock speed of the next moment and the clock speed of the sliding window to be added is greater than the first preset threshold value, resetting the sliding window and continuing to slide forwards until the clock speed time sequence is traversed or the fitting residual error is less than or equal to the first preset threshold value.
20. An ephemeris forecasting method, applied to a terminal device, the method comprising:
receiving polynomial coefficients and clock error parameters from a server;
determining the position and the speed of the visible GNSS satellite according to the polynomial coefficient;
determining the clock error of the visible GNSS satellite according to the clock error parameter;
and determining the current position and/or speed according to the position, the speed and the clock error of the visible GNSS satellite.
21. The method of claim 20 wherein determining the position and velocity of GNSS satellites in view based on the polynomial coefficients comprises:
determining the position of the visible GNSS satellite according to the polynomial coefficient and the basis function of the polynomial model;
and determining the velocity of the visible GNSS satellite according to the polynomial coefficient and the derivative of the basis function of the polynomial model.
22. A server comprising a memory, a processor and a computer program stored in the memory and executable on the processor, wherein the processor implements the method of any one of claims 1 to 9 or 10 to 19 when executing the computer program.
23. A terminal device comprising a memory, a processor and a computer program stored in the memory and executable on the processor, characterized in that the processor implements the method according to any of claims 20 to 21 when executing the computer program.
24. A computer-readable storage medium, in which a computer program is stored which, when being executed by a processor, carries out the method according to any one of claims 1 to 9 or 10 to 19 or 20 to 21.
CN202110097826.4A 2021-01-25 2021-01-25 Ephemeris forecasting method and device Pending CN114791613A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202110097826.4A CN114791613A (en) 2021-01-25 2021-01-25 Ephemeris forecasting method and device
PCT/CN2021/140947 WO2022156481A1 (en) 2021-01-25 2021-12-23 Ephemeris forecasting method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110097826.4A CN114791613A (en) 2021-01-25 2021-01-25 Ephemeris forecasting method and device

Publications (1)

Publication Number Publication Date
CN114791613A true CN114791613A (en) 2022-07-26

Family

ID=82459859

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110097826.4A Pending CN114791613A (en) 2021-01-25 2021-01-25 Ephemeris forecasting method and device

Country Status (2)

Country Link
CN (1) CN114791613A (en)
WO (1) WO2022156481A1 (en)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116208221B (en) * 2022-09-07 2023-11-21 北京航天驭星科技有限公司 Ultra-low orbit satellite ground station data transmission tracking method and related equipment
CN115792978B (en) * 2023-02-17 2023-04-28 中国科学院国家授时中心 Low orbit satellite clock error forecasting method based on relativistic effect
CN116679323B (en) * 2023-04-03 2024-01-23 中国人民解放军32021部队 Navigation satellite overseas fault diagnosis method
CN116401535B (en) * 2023-06-05 2023-09-22 中国电建集团西北勘测设计研究院有限公司 Time sequence data coarse and fine recognition method and system based on difference method
CN116449400B (en) * 2023-06-19 2023-08-29 武汉大学 Real-time satellite clock error evaluation method and system for Beidou No. three PPP service
CN116483874B (en) * 2023-06-25 2023-12-05 北京奇虎科技有限公司 Service query method, device, equipment and storage medium
CN116520376B (en) * 2023-07-05 2023-09-08 中国科学院空天信息创新研究院 Clock-assisted high-orbit Beidou receiver positioning and resolving method
CN117518210A (en) * 2023-07-10 2024-02-06 北京路凯智行科技有限公司 Terminal for mine satellite navigation and positioning
CN117368946B (en) * 2023-10-19 2024-05-28 齐鲁空天信息研究院 Satellite broadcast ephemeris comprehensive method and system based on multi-reference station real-time data stream
CN117388881B (en) * 2023-12-12 2024-03-05 中国科学院国家授时中心 Method and system for tracing satellite-borne atomic clock of low-orbit satellite to UTC (k)
CN117955554B (en) * 2024-03-27 2024-06-14 中国科学院国家授时中心 Low-orbit satellite real-time clock difference determining method and system based on forecast splicing

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7839324B2 (en) * 2007-02-12 2010-11-23 Sirf Technology, Inc. Efficient ephemeris coding
CN109387859B (en) * 2017-08-14 2023-05-30 千寻位置网络有限公司 Method and apparatus for generating long-term satellite orbit and clock bias based on ground tracking station
CN108089214B (en) * 2017-12-20 2021-06-15 北京卫星导航中心 Satellite positioning method and satellite positioning system
CN108761508A (en) * 2018-03-09 2018-11-06 羲和时空(武汉)网络科技有限公司 A kind of satellite position restores with satellite clock correction and track clock error correction number representation method
CN109061677B (en) * 2018-06-28 2020-08-25 上海卫星工程研究所 Method for satellite-based navigation enhancement by using low-earth orbit satellite
CN109765585A (en) * 2019-02-26 2019-05-17 和芯星通(上海)科技有限公司 A kind of satellite ephemeris prediction technique, satellite positioning method and device, storage medium
CN113740891A (en) * 2020-05-29 2021-12-03 华为技术有限公司 Method for determining position and speed of terminal equipment by using navigation satellite and electronic device

Also Published As

Publication number Publication date
WO2022156481A1 (en) 2022-07-28

Similar Documents

Publication Publication Date Title
CN114791613A (en) Ephemeris forecasting method and device
CN114791614A (en) Clock error forecasting method and device
CN111045034B (en) GNSS multi-system real-time precise time transfer method and system based on broadcast ephemeris
US7839331B2 (en) Satellite clock prediction
CA2667785C (en) Method and apparatus for position determination with extended sps orbit information
US7839324B2 (en) Efficient ephemeris coding
CN112327340B (en) Terminal positioning accuracy evaluation method, device, equipment and medium
CA2823697A1 (en) Method and system for determining clock corrections
WO2015194527A1 (en) Conversion device and program
CN113740891A (en) Method for determining position and speed of terminal equipment by using navigation satellite and electronic device
CN111352137B (en) Multimode GNSS asynchronous RTK positioning method considering broadcast ephemeris error
CN108513623B (en) Pseudo-range calculation method and terminal
US9910159B2 (en) Method and apparatus for providing a compact extended ephemeris package for GNSS processing
CN117388881B (en) Method and system for tracing satellite-borne atomic clock of low-orbit satellite to UTC (k)
CN113325446A (en) Multi-mode common-frequency GNSS carrier phase time transfer method and system
CN111381253A (en) System for estimating position of global navigation satellite system receiver and method thereof
CN108254762B (en) Pseudo-range differential positioning method and system
Bisnath et al. Innovation: Examining precise point positioning now and in the future
CN115308779B (en) Ephemeris forecasting method and ephemeris forecasting device
CN111123319B (en) Satellite positioning device, satellite signal receiver and terminal equipment
CN114047527A (en) Pseudo-range signal transmission method, pseudo-range signal transmission device, storage medium, and electronic device
CN113179480A (en) Method and device for locating a vehicle
CN116893433B (en) Method and device for realizing tracking station observation value prediction
EP4099061A1 (en) Method for generating and providing a precise positioning solution of a mobile receiver in a gnss system by a central computation unit and a software product and its dissemination
CN115436982A (en) Positioning method, device, equipment and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination