Precise Onboard Real-Time Orbit Determination with a Low-Cost Single-Frequency GPS/BDS Receiver

The low-cost single-frequency GNSS receiver is one of the most economical and affordable tools for the onboard real-time navigation of numerous remote sensing small/micro satellites. We concentrate on the algorithm and experiments of onboard real-time orbit determination (RTOD) based on a single-frequency GPS/BDS receiver. Through various experiments of processing the real single-frequency GPS/BDS measurements from the Yaogan-30 (YG30) series and FengYun-3C (FY3C) satellites of China, some critical aspects of the onboard RTOD are investigated, such as the optimal force models setting, the effect of different measurements, and the impact of GPS/BDS fusion. The results demonstrate that a gravity model truncated to 55 × 55 order/degree for YG30 and 45 × 45 for FY3C and compensated with an optimal stochastic modeling of empirical accelerations, which minimize the onboard computational load and only result in a slight loss of orbit accuracy, is sufficient to obtain high-precision real-time orbit results. Under the optimal force models, the real-time orbit accuracy of 0.4–0.7 m for position and 0.4–0.7 mm/s for velocity is achievable with the carrier-phase-based solution, while an inferior real-time orbit accuracy of 0.8–1.6 m for position and 0.9–1.7 mm/s for velocity is achieved with the pseudo-range-based solution. Furthermore, although the GPS/BDS fusion only makes little change to the orbit accuracy, it increases the number of visible GNSS satellites significantly, and thus enhances the geometric distribution of GNSS satellites that help suppress the local orbit errors and improves the reliability and availability of the onboard RTOD, especially in some anomalous arcs where only a few GPS satellites are trackable.


Introduction
Since the first GPS receiver flying onboard Landsat-4 in 1982 [1], GPS has become the most effective real-time navigation technique for space missions on low Earth orbit (LEO). With the dual-frequency GPS receivers, the onboard real-time navigation can obtain the 3-dimensional (3D) real-time orbit accuracy of 0.3-0.5 m level for many LEO satellites when using dual-frequency carrier-phase measurements and GPS broadcast ephemeris [2,3], while the post precise orbit accuracies are up to 2-5 cm if the precise GPS orbit and clock products are used [4,5]. However, expensive and energy-consuming dual-frequency GPS receivers are not always available onboard all LEO missions, especially for numerous low-cost remote sensing small/micro satellites [6]. For these low-cost small/micro satellites as well as those only requiring meter or sub-meter level orbit accuracy, the low-cost single-frequency GPS receiver is a was launched on 23 September 2013 and developed by the Meteorological Administration/National Satellite Meteorological Center (CMA/NSMC) of China. It was equipped with a GNSS Occultation Sounder (GNOS) instrument onboard which can provide dual-frequency GPS/BDS pseudo-range and carrier-phase observations [21], but only single-frequency GPS/BDS pseudo-range and carrier-phase measurements are employed in our experiments. Based on these real single-frequency GPS/BDS data, we will explore the optimal force models for the onboard RTOD, which should keep the balance between the real-time computational load and accuracy. The different solutions based on pseudo-range and carrier-phase measurements will be compared in detail and the real-time orbit accuracy will be analyzed in-depth. Furthermore, the effect of the GPS/BDS fusion on solutions will be investigated from several aspects including the geometry of GNSS satellites, the estimation of system bias, real-time orbit accuracy, filter convergence and reliability of the onboard RTOD. The onboard RTOD algorithm is implemented in the prototype software named SATPODS (Space-borne GNSS AuTonomous Precise Orbit Determination Software), which is use to perform all experiments. In order to assess the real-time orbit accuracy of the proposed onboard RTOD algorithm, the post precise orbits will be used as reference, which are generated by the PANDA (Positioning and Navigation Data Analyst) software [22].
In the following, the dynamical models of LEO satellites and the construction of state propagation equation will be introduced first. Secondly, GNSS measurements, the pseudo-range-based and carrier-phase-based solutions and the corresponding estimated parameters and observation equations will be elaborated in detail. Afterward, the parameter estimation by extend Kalman filter will be presented briefly. Then, a series of experiments will be shown, discussed and analyzed in detail to assess the effect of different force models, different measurement types and different GPS/BDS fusion on solutions. Finally, the conclusion is made.

Algorithm
The onboard RTOD algorithm is elaborated from three aspects including the dynamical models, GNSS measurements and parameter estimation. The extend Kalman filter is used to estimate the unknown parameters, thus the following description is mainly related to the construction of state propagation equations, the formation of observation equations, and the linearization of Kalman filter.

Dynamical Models
For the onboard RTOD, besides the measurements from the GNSS receiver, the dynamics of LEO satellites has to be considered. The motion equation of a LEO satellite can be expressed as: ..
r, e, p where r, . r, .. r are the position, velocity and acceleration vectors in a geocentric inertial coordinate frame, respectively, e = (e R , e T , e N ) denotes the empirical accelerations in radial, tangential and normal directions, which account for those un-modeled forces, and p represents the dynamical parameters in force models and mainly consists of the atmospheric drag coefficient C d and the solar radiation pressure coefficient C r . The first part on the right side of Equation (1) is the central gravity of the Earth, and g(·) represents other accelerations that include the non-spherical gravity of the Earth, the lunisolar gravitational perturbation, atmospheric drag, solar radiation pressure, ocean tide, and so on. However, concerning the computation workload of onboard space-borne processers and the required real-time orbit accuracy, including full perturbations in the onboard RTOD processing is not necessary, and some force models must be simplified or can be neglected. Strategies on the dynamical models setting will be given below. The impact of force models, especially the gravity model and the empirical accelerations, will be discussed in the experiments. All parameters in the dynamical models to be estimated, p, can be included in a state vector X = r, . r, e, p . Based on motion Equation (1), the differential equation of the state vector is obtained: r, e, p −e/τ 0 where a first-order Gauss-Markov model and a random walk model are used to express the state propagation of the empirical accelerations e and the dynamical parameters p, τ is the correlation time, both u e and u p are the white noise, and σ 2 is the power spectral density of u e . τ and σ 2 are essential stochastic parameters to adjust the fitness of force models to measurements. From Equation (2), the discrete state propagation equation can be derived out easily: where X k denotes the state vector at epoch t k , W k is considered as the white noise, and Φ(·) represents the implicit state transition function. In general, it is difficult to derive out the explicit expression of Φ(·) because of the high non-linearity of the motion equation, but it can be computed by the numerical integration. More details of the state propagation equation are well documented in the literature [23,24].

GNSS Measurements
The single-frequency GNSS receiver onboard LEO satellites could produce the single-frequency pseudo-range and carrier-phase data. The LEO satellites fly on the orbits above the troposphere, so the GNSS observations are not affected by the tropospheric delays. Therefore, the single-frequency pseudo-range C 1 and carrier-phase L 1 measurements can be expressed as: where r s is the position of GNSS satellite in the Earth-fixed system, T denotes the transformation matrix from the inertial system, in which the LEO satellite orbit is determined, to the Earth-fixed system, δ R and δ S represent the clock offsets of the receiver and GNSS satellite, respectively. λ 1 and N 1 are the wavelength and ambiguity of the single-frequency carrier-phase (GPS L1, BDS B1), respectively, and I denotes the ionospheric error. ε C 1 and ε L 1 represent the noises of these two measurements, which include the multipath error. For some LEO satellites, such as the YG30 series satellites, only pseudo-range data is available for the onboard RTOD. The solution only using single-frequency pseudo-range measurements is abbreviated as "pseudo-range-based solution". In this solution, the state vector is expanded to X = r, . r, e, p, h , which includes the receiver clock parameters h. The clock parameters h involve the clock offset δ R , the clock rate . δ R and the bias η between GPS and BDS system if the GPS/BDS data is fused. The bias η mainly accounts for the difference in receiver hardware delays between GPS and BDS signals [25], as well as the difference in system times between GPS and BDS [26]. Theoretically, in order to realize the fusion of GPS and BDS, the bias η, which is of high stability, should be precisely calibrated [27]. However, the onboard RTOD processing is completed on the micro-processor onboard LEO satellites, so precisely calibrated parameter on the ground will not be available for the onboard GPS/BDS receiver. The alternative method to deal with the bias is to estimate it with a reasonable stochastic model in the Kalman filter. Due to the affection of the error of GNSS broadcast ephemeris, the residual ionospheric error, the measurement noises and other uncorrectable errors, the estimated value of the bias in the onboard RTOD will show certain fluctuations, and thus the bias η is modeled by a random walk process, instead by a constant. Meanwhile, the random walk process is also used to Remote Sens. 2019, 11, 1391 5 of 23 describe the state propagation of clock offset δ R and clock rate . δ R parameters. Therefore, the discrete formulation of the state equation of h can be derived out as: where u 1 , u 2 and u 3 are all the white noise, Φ h is the state transition matrix, h k represents the clock parameters at the epoch t k , ∆t = t k − t k−1 denotes the interval between two epochs, and u k is treated as the white noise. The estimation of the bias η will be discussed in-depth in the experiments. The position r S and clock offset δ S of GNSS satellite are computed by using real-time broadcast ephemeris, which are marked as (r * , δ * ). Then, the observation equation for the pseudo-range-based solution is formed as: where p(·) denotes the related function between the pseudo-range measurements C 1 and the state vector X. It should be noted that, the ionospheric error I is usually computed by the Klobuchar model with an altitude dependent scale factor [28]. For some LEO satellites, both the single-frequency carrier-phase and pseudo-range data are available and the onboard space-borne processers have enough computational capacity to process carrier-phase data, these two types of measurements can be all used for the onboard RTOD. The solution using both carrier-phase and pseudo-range measurements is called "carrier-phase-based solution" in this paper. A study into the error sources for the onboard RTOD revealed that, the orbit and clock offset errors of the GNSS broadcast ephemeris in the line-of-sight (LOS) are the main factor that limits the real-time orbit accuracy, but they could be reflected in the carrier-phase observation equation, and the total LOS error and ambiguity can be estimated as a coupled parameter, named pseudo-ambiguity, and then the real-time orbit accuracy can be improved effectively due to the absorption of the LOS error by the pseudo-ambiguity. The detail of pseudo-ambiguity has been well descripted in the literature [3]. With the single-frequency pseudo-range and carrier-phase measurements (C 1 , L 1 ), the combination, known as Group and Phase Ionospheric Correction (GRAPHIC) L H , can be treated as an ionosphere-free phase measurement but with a higher noise, and then the observation equation of L H is: where dρ is the range error in the line-of-sight (LOS) caused by the orbit error of the GNSS broadcast ephemeris, dδ is the clock offset error of GNSS satellite, dρ − cdδ is the total LOS error caused by the GNSS broadcast ephemeris, and thus the pseudo-ambiguity is defined as: Obviously, for the carrier-phase-based solution, the state vector should be expanded to X = r, . r, e, p, h, b , where b = (B 1 , B 2 , . . . , B n ) represents the n pseudo-ambiguity parameters where n is the number of tracked GNSS satellites. With the standalone receiver and GNSS broadcast ephemeris, the true ambiguity is affected by several errors, including the predominant LOS error caused by broadcast ephemeris, the un-calibrated phase delay, the measurement noises, and so on, so it cannot be estimated precisely. Actually, it is not necessary to fix the ambiguity, because the introduction of the pseudo-ambiguity, with a reasonable stochastic model, is to absorb the LOS errors and then improve the real-time orbit accuracy [3]. On the basis of the characteristic of the LOS error, a random walk process is used to express the state propagation of the pseudo-ambiguity parameters. So, the differential equation and the discrete state propagation of the pseudo-ambiguity parameters can be derived out easily: where, u b is a white noise, b k represents the pseudo-ambiguity parameters at the epoch t k . µ k is considered as white noise, too. The observation equation is formed as: where l(·) denotes the related function between the carrier-phase measurements L H and the state vector X.

Parameter Estimation
An extended Kalman filter is used to estimate all unknown parameters in the dynamical model and observation equation. The filter state is either X = r, . r, e, p, h for the pseudo-range-based solution or X = r, . r, e, p, h for the carrier-phase-based solution. The dynamical equation of Kalman filter can be set up directly by combining the state propagation equations of these to-be-estimated parameters, such as Equations (3), (5), and (8). The observation equation of Kalman filter is either pseudo-range Equation (6) or carrier-phase Equation (9). Obviously, for the pseudo-range-based and carrier-phase-based solutions, the filter equations are different, due to the different used measurements and to-be-estimated parameters.
In any case, the unified formula of Kalman filter and its linearization can be derived out: where, Y k is the measurement vector, Φ(·) and H(·) represent the dynamical and observation functions, respectively, and w k is the process noise, which is usually treated as the white noise but with different variance for different to-be-estimated parameters. The linearization is based on the nominal filter state X * k−1 at the epoch t k−1 , which usually adopts the estimated stateX k−1 to reduce the linearization error. X * k = Φ X * k−1 is the one-step predicted state from epoch t k−1 → t k . φ k,k−1 = ∂X k /∂X k−1 is the state transition matrix. Both X * k and φ k,k−1 are computed by numerical integration. x k = X k − X * k is the estimated correction of the filter state X k relative to the predicted state X * k . H X * k is the computed measurements and y k = Y k − H X * k is the prior residuals equal to the observed measurements minus computed measurements. h k is the design matrix, also known as observation matrix and v k is the observation error. The detailed proceeding of the extended Kalman filter is documented in the literatures [23,24].

Experiments
The above onboard RTOD algorithm is implemented in the prototype software named SATPODS. Thanks to the YG30 series and FY3C satellites, the real single-frequency GPS/BDS data from the space-borne GNSS receivers is available for the experiments. Following the introduction about the employed datasets and comparison between the onboard RTOD and post POD strategies, the reference orbits used for real-time orbit accuracy assessment will be analyzed in detail. Then various experiments will be conducted to assess the effects of different force models, different measurement types and different GPS/BDS fusion on the onboard RTOD solutions.

Datasets and Orbit Determination Strategies
The real single-frequency GPS/BDS data, which covers two sessions, from 2017/340 to 2017/345 and from 2015/69 and 2015/75, respectively, for the YG30/SAT1-SAT6 satellites and FY3C satellite, are processed in the experiments. It should be noted that the GNSS data of SAT5 and SAT6 satellites on day 2017/345 is not complete, and only the data at the first few hours are available. The GNSS receivers onboard the YG30/SAT1-SAT6 satellites only provide single-frequency pseudo-range measurements, so only the single-frequency GPS/BDS data from the FY3C satellite, including both carrier-phase and pseudo-range measurements, is tested, even if the data is from the dual-frequency GNSS receiver. The SATPODS software is capable of processing both single-frequency pseudo-range and carrier-phase measurements and simulating the onboard operational scenarios as realistically as possible. In order to assess the real-time orbit accuracies of SATPODS, the orbit results generated by the precise orbit determination (POD) software PANDA are used as reference.
The algorithm of the onboard RTOD is different from that of the post POD. The strategies employed by the two algorithms are shown in Table 1. The difference between the onboard RTOD and post POD exists in many aspects. Firstly, only the GPS/BDS broadcast ephemeris is available, and the pseudo-ambiguities will be estimated instead of the true constant ambiguities for the onboard RTOD. Then, the dynamical models are set as complete and precise as possible to get high-precision orbit results for the post POD. In contrast, the dynamical models of the onboard RTOD are simplified to the maximum extent in order to reduce the computational load, at the same time without notable loss of orbit accuracy. Similarly, compared to complex precession and nutation models and precise Earth orientation parameter (EOP) products used in the post POD, only simplified models and rapid predicted EOP products are applied for the transformation of coordinate systems for the onboard RTOD. Of course, the most striking difference is that the onboard RTOD always uses the EKF filter, and processes data in real-time mode, while the post POD uses the least square estimator in batch mode.

Reference Orbits
It is necessary to assess the post orbit accuracy firstly before using the post POD orbits of PANDA as reference. For the FY3C satellite with dual-frequency GPS/BDS receiver, the post POD orbits are generated by processing dual-frequency carrier-phase and pseudo-range measurements. Figure 1 shows the root mean square (RMS) statistics of the radial (R), along-track (A), cross (C), 1-dimensional (1D) and 3-dimensional (3D) orbit differences in the middle 5h-overlap arc between two 30 h POD arcs, and the daily RMS statistics of the difference between the post POD orbits and the external precise orbit products released by CMA/NSMC [5]. As can be observed from sub-graph (a), the 1D and 3D overlap differences are about 0.5-2.0 cm and 1.5-3.0 cm, respectively. Sub-graph (b) illustrates the 1D and 3D orbit differences from the external precise orbit products are about 1.0-2.0 cm and 2.5-3.5 cm, respectively, except for a poor performance on day 2015/74 due to less tracked GPS satellites over the arc of 16-24 h. Obviously, the post orbit accuracy of FY3C satellite is at the centimeter level (2-4 cm), so the post POD orbits can be treated as reference to assess the real-time orbit accuracy of SATPODS. The daily RMS statistics of the R/A/C/1D/3D orbit difference from external precise orbit products.
For the YG30/SAT1−SAT6 satellites, it is difficult to obtain high-precision post POD orbits with accuracies at the centimeter level, because the space-borne GPS/BDS receivers only provide single-frequency pseudo-range data. It seems impossible to assess the absolute accuracy of the post POD orbits, due to lack of external precise orbit products. The RMS statistics of the overlap orbit differences of the YG30/SAT1−SAT6 satellites are all shown in sub-graph (a) and (b) of Figure 2. As a comparison, the RMSs of overlap and external orbit differences of the FY3C satellite are also illustrated in sub-graph (c) and (d), where the precise orbits are generated by using only single-frequency pseudo-range measurements. As can be observed from sub-graphs (c) and (d), the RMSs of 1D and 3D overlap orbit differences of the FY3C satellite are about 4−7 cm and 7−11 cm, respectively, and those of 1D and 3D external orbit differences 5−8 cm and 12−14 cm, respectively. Sub-graphs (a) and (b) illustrate the RMSs of overlap orbit differences of SAT1-SAT6 satellites are all of similar magnitude, and the 1D and 3D differences are about 7−11 cm and 10−20 cm, respectively. It may be possible to give an external accuracy indicator for the YG30 series satellites by applying an RMS ratio parameter of FY3C satellite. The FY3C RMS ratio is defined as the ratio of the RMS of the external orbit differences over the RMS of the overlap orbit differences. If the YG30 series satellites are assumed to have the same RMS ratio of the FY3C satellite, then the RMSs of the "external" orbit differences of the YG30 series satellites are inferred from the RMSs of the overlap orbit differences, even if the external orbits of STA1−SAT6 satellites don't exist.
(a)  For the YG30/SAT1-SAT6 satellites, it is difficult to obtain high-precision post POD orbits with accuracies at the centimeter level, because the space-borne GPS/BDS receivers only provide single-frequency pseudo-range data. It seems impossible to assess the absolute accuracy of the post POD orbits, due to lack of external precise orbit products. The RMS statistics of the overlap orbit differences of the YG30/SAT1-SAT6 satellites are all shown in sub-graph (a) and (b) of Figure 2. As a comparison, the RMSs of overlap and external orbit differences of the FY3C satellite are also illustrated in sub-graph (c) and (d), where the precise orbits are generated by using only single-frequency pseudo-range measurements. As can be observed from sub-graphs (c) and (d), the RMSs of 1D and 3D overlap orbit differences of the FY3C satellite are about 4-7 cm and 7-11 cm, respectively, and those of 1D and 3D external orbit differences 5-8 cm and 12-14 cm, respectively. Sub-graphs (a) and (b) illustrate the RMSs of overlap orbit differences of SAT1-SAT6 satellites are all of similar magnitude, and the 1D and 3D differences are about 7-11 cm and 10-20 cm, respectively. It may be possible to give an external accuracy indicator for the YG30 series satellites by applying an RMS ratio parameter of FY3C satellite. The FY3C RMS ratio is defined as the ratio of the RMS of the external orbit differences over the RMS of the overlap orbit differences. If the YG30 series satellites are assumed to have the same RMS ratio of the FY3C satellite, then the RMSs of the "external" orbit differences of the YG30 series satellites are inferred from the RMSs of the overlap orbit differences, even if the external orbits of STA1-SAT6 satellites don't exist. respectively. It may be possible to give an external accuracy indicator for the YG30 series satellites by applying an RMS ratio parameter of FY3C satellite. The FY3C RMS ratio is defined as the ratio of the RMS of the external orbit differences over the RMS of the overlap orbit differences. If the YG30 series satellites are assumed to have the same RMS ratio of the FY3C satellite, then the RMSs of the "external" orbit differences of the YG30 series satellites are inferred from the RMSs of the overlap orbit differences, even if the external orbits of STA1−SAT6 satellites don't exist.  Table 2 summarizes the overall statistics of the overlap and external orbit difference of the FY3C satellites. The RMS of the 3D overlap orbit differences is 8.9 cm, while that of the corresponding external orbit differences is 13.2 cm. It illustrates that the true orbit external accuracy is worse than the internal overlap accuracy. Moreover, it is reasonable to believe that, the post orbit accuracy of the FY3C satellite is at about 10−15 cm level if only using single-frequency pseudo-range measurements. The ratios of the external over the overlap statistics values are respectively 1.35, 1.59 and 1.33 in the R/A/C directions, and the 1D and 3D ratios are both 1.49. Applying these ratios, the RMSs of the "external" orbit differences of the YG30/SAT1−SAT6 satellites in R/A/C/1D/3D directions are obtained, which are listed in Table 2, too. The inferred "external" orbit accuracies are about 10−15 cm and 15−26 cm in terms of 1D and 3D orbit differences, respectively. It may be concluded that the true post orbit accuracies of the YG30/SAT1−SAT6 satellites are at about 20−25 cm level if only using single-frequency pseudo-range measurements. Compared to the FY3C satellite, the inferior post POD orbits are achieved for the YG30/SAT1−SAT6 satellites. The reason of the poor POD performance is probably that the pseudo-range measurement noises of the single-frequency GPS/BDS receiver onboard the YG30/SAT1−SAT6 satellites are higher than that of the dual-frequency GPS/BDS receiver onboard the FY3C satellite. Figure 3 presents the RMS statistics of single-frequency pseudo-range residuals after POD processing. The pseudo-range residuals of the FY3C satellites are at about 0.3−0.7 m level, while those of the YG30/SAT1−SAT6 satellites are about 0.8−1.8 m.   Table 2 summarizes the overall statistics of the overlap and external orbit difference of the FY3C satellites. The RMS of the 3D overlap orbit differences is 8.9 cm, while that of the corresponding external orbit differences is 13.2 cm. It illustrates that the true orbit external accuracy is worse than the internal overlap accuracy. Moreover, it is reasonable to believe that, the post orbit accuracy of the FY3C satellite is at about 10-15 cm level if only using single-frequency pseudo-range measurements. The ratios of the external over the overlap statistics values are respectively 1.35, 1.59 and 1.33 in the R/A/C directions, and the 1D and 3D ratios are both 1.49. Applying these ratios, the RMSs of the "external" orbit differences of the YG30/SAT1-SAT6 satellites in R/A/C/1D/3D directions are obtained, which are listed in Table 2, too. The inferred "external" orbit accuracies are about 10-15 cm and 15-26 cm in terms of 1D and 3D orbit differences, respectively. It may be concluded that the true post orbit accuracies of the YG30/SAT1-SAT6 satellites are at about 20-25 cm level if only using single-frequency pseudo-range measurements. Compared to the FY3C satellite, the inferior post POD orbits are achieved for the YG30/SAT1-SAT6 satellites. The reason of the poor POD performance is probably that the pseudo-range measurement noises of the single-frequency GPS/BDS receiver onboard the YG30/SAT1-SAT6 satellites are higher than that of the dual-frequency GPS/BDS receiver onboard the FY3C satellite. Figure 3 presents the RMS statistics of single-frequency pseudo-range residuals after POD processing. The pseudo-range residuals of the FY3C satellites are at about 0.3-0.7 m level, while those of the YG30/SAT1-SAT6 satellites are about 0.8-1.8 m.  In summary, the reference orbits of the FY3C satellite are generated by using dual-frequency carrier-phase and pseudo-range measurements, and the orbit accuracy is at 2−4 cm level. The reference orbits of the YG30/SAT1−SAT6 satellites are generated by processing single-frequency pseudo-range measurements and the orbit accuracies are at 20−25 cm level.

Force Model Trade-off
Among all perturbations on the LEO satellite orbits, the gravity of the Earth is absolutely a dominant factor for the overall computational load and real-time orbit accuracy. An Earth gravity model of high order/degree is required to obtain high-precision real-time orbit results, but this would lead to unacceptable onboard computing requirements. Therefore, it is necessary to truncate the Earth gravity model that reduces the onboard computational load and prevents notable loss of orbit accuracy at the same time. In addition, the empirical accelerations are estimated with a first-order Gauss-Markov model to compensate the inaccuracy of the force models. The correlated time τ and the power spectral density 2 σ of the process noise in the first-order Gauss-Markov model are essential stochastic parameters to make the force models fit with the measurements. Therefore, several tests with different sizes of gravity models and different stochastic parameters , which are abbreviated respectively as "M1", "M2", "M3" and "M4". In these four sets of parameters, the one resulting in the best orbit accuracy is marked as "M" for each truncated gravity model. It should be noted that, both GPS and BDS measurements are used in the tests. Figure 4 shows the real-time orbit accuracies in terms of the 3D position for the FY3C satellite C02 C04 C06 C08 C10 C12 C14 G02 G04 G06 G08 G10 G12 G14 G16 G18 G20 G22 G24 G26 G28 G30 G32 0.  In summary, the reference orbits of the FY3C satellite are generated by using dual-frequency carrier-phase and pseudo-range measurements, and the orbit accuracy is at 2-4 cm level. The reference orbits of the YG30/SAT1-SAT6 satellites are generated by processing single-frequency pseudo-range measurements and the orbit accuracies are at 20-25 cm level.

Force Model Trade-off
Among all perturbations on the LEO satellite orbits, the gravity of the Earth is absolutely a dominant factor for the overall computational load and real-time orbit accuracy. An Earth gravity model of high order/degree is required to obtain high-precision real-time orbit results, but this would lead to unacceptable onboard computing requirements. Therefore, it is necessary to truncate the Earth gravity model that reduces the onboard computational load and prevents notable loss of orbit accuracy at the same time. In addition, the empirical accelerations are estimated with a first-order Gauss-Markov model to compensate the inaccuracy of the force models. The correlated time τ and the power spectral density σ 2 of the process noise in the first-order Gauss-Markov model are essential stochastic parameters to make the force models fit with the measurements. Therefore, several tests with different sizes of gravity models and different stochastic parameters τ, σ 2 are conducted to assess the impact of force models with different qualities on orbit determination accuracy, and to identify a reasonable force model for the FY3C and YG30/SAT1-SAT6 satellites. The EGM2008 gravity model is used in the tests. The order/degree of the model varies from 5 × 5 to 100 × 100 in an increase of 5 orders and degrees, and thus there are 18 truncated models tested. At the same time, 4 sets of stochastic parameters τ, σ 2 are employed for each truncated gravity model, namely (1) τ = 1 s, σ 2 = 1 × 10 −14 m 2 /s 5 ; (2) τ = 30 s, σ 2 = 1 × 10 −16 m 2 /s 5 ; (3) τ = 60 s, σ 2 = 1 × 10 −18 m 2 /s 5 ; (4) τ = 900 s, σ 2 = 1 × 10 −20 m 2 /s 5 , which are abbreviated respectively as "M1", "M2", "M3" and "M4". In these four sets of parameters, the one resulting in the best orbit accuracy is marked as "M" for each truncated gravity model. It should be noted that, both GPS and BDS measurements are used in the tests. Figure 4 shows the real-time orbit accuracies in terms of the 3D position for the FY3C satellite under the force models of different settings, and sub-graphs (a) and (b) are corresponding to the carrier-phase-based and pseudo-range-based solutions, respectively. In the bottom panel of sub-graph (a), each curve represents a set of stochastic parameters τ, σ 2 and 18 truncated gravity models, and 4 curves correspond to M1, M2, M3 and M4. As can be seen, if the size of the gravity model is 15 × 15 or 20 × 20, the optimal stochastic parameters resulting in the best real-time orbit accuracy are M2. When the size is more than 35 × 35, the optimal setting is M3. The real-time orbit accuracies under different sizes of gravity models with the corresponding optimal stochastic parameters setting are listed in the top panel. As can be observed clearly, when the size increases from 5 × 5 to 45 × 45, the real-time orbit accuracy is improved from 2.730 m to 0.527 m monotonically. If the size increases from 45 × 45 to 100 × 100, the real-time orbit accuracy varies from 0.527 m to 0.513 m, where the accuracy is only marginally improved by 1.4 cm. Obviously, it is not worthy to achieve this slight accuracy improvement of less than 2.0 cm with the greatly increased onboard computational load caused by the large size of the gravity model. Therefore, 45 × 45 is the minimal order and degree, namely the most time-saving size, to get a reasonable orbit result without sacrificing the real-time orbit accuracy notably (≤ 2 cm). Sub-graph (b) is similar to (a), where 45 × 45 is the optimal size and M3 is the optimal stochastic parameters setting, too. As a whole, the gravity model of 45 × 45 together with the stochastic parameters of M3 are the optimal force model setting for the FY3C satellite, which results in the superior real-time orbit accuracies of 0.527 m and 0.847 m for the carrier-phase-based and pseudo-range-based solutions, respectively.   The real-time orbit accuracies of the YG30/SAT1−SAT6 satellites under different sizes of the gravity model are shown in Figure 5. For each size, only the orbit accuracy corresponding to the optimal stochastic parameters setting M is presented here. Similarly, for the YG30/SAT1-SAT6 satellites, the increase of the size after 55 × 55 only improves the orbit accuracy by less than 2.0 cm, so the most reasonable size of the gravity model is 55 × 55. Moreover, with the size of 55 × 55, the optimal stochastic parameters setting is all M3. With the optimal force models, the real-time 3D orbit accuracies of 1.143 m, 1.140 m, 1.144 m, 1.171 m, 1.1200 m and 1.197 m are achieved for the SAT1−SAT6 satellites, respectively. Compared to the FY3C satellite, a slightly bigger size of the gravity model is required for the YG30 series satellites. The reason for the difference is that the YG30 satellites are at a lower altitude of about 600 km compared to the FY3C at 836 km, which 15   The real-time orbit accuracies of the YG30/SAT1-SAT6 satellites under different sizes of the gravity model are shown in Figure 5. For each size, only the orbit accuracy corresponding to the optimal stochastic parameters setting M is presented here. Similarly, for the YG30/SAT1-SAT6 satellites, the increase of the size after 55 × 55 only improves the orbit accuracy by less than 2.0 cm, so the most reasonable size of the gravity model is 55 × 55. Moreover, with the size of 55 × 55, the optimal stochastic parameters setting is all M3. With the optimal force models, the real-time 3D orbit accuracies of 1.143 m, 1.140 m, 1.144 m, 1.171 m, 1.1200 m and 1.197 m are achieved for the SAT1-SAT6 satellites, respectively. Compared to the FY3C satellite, a slightly bigger size of the gravity model is required for the YG30 series satellites. The reason for the difference is that the YG30 satellites are at a lower altitude of about 600 km compared to the FY3C at 836 km, which would require higher order/degree of the gravity model to account for the stronger gravity perturbation. In the following experiments, the gravity model is truncated to 45 × 45 and 55 × 55 for the FY3C and YG30 series satellites, respectively, and the stochastic parameters of empirical accelerations are all set as M3: τ = 60 s, σ 2 = 1 × 10 −18 m 2 /s 5 .

Effect of Measurements Type
As described above, for the single-frequency GPS/BDS receiver, two solutions with different types of measurements can be obtained: (1) the pseudo-range-based solution, namely only using the single-frequency GPS/BDS pseudo-range measurement (C1), which is abbreviated as "GPS+BDS_C1"; (2) the carrier-phase-based solution, namely using the GRAPHIC combination (LH) and pseudo-range measurement (C1), which is shortened as "GPS+BDS_LH+C1". The daily position and velocity accuracy statistics of the GPS+BDS_C1 and GPS+BDS_LH+C1 solutions for the

Effect of Measurements Type
As described above, for the single-frequency GPS/BDS receiver, two solutions with different types of measurements can be obtained: (1) the pseudo-range-based solution, namely only using the single-frequency GPS/BDS pseudo-range measurement (C1), which is abbreviated as "GPS+BDS_C1"; (2) the carrier-phase-based solution, namely using the GRAPHIC combination (LH) and pseudo-range measurement (C1), which is shortened as "GPS+BDS_LH+C1". The daily position and velocity accuracy statistics of the GPS+BDS_C1 and GPS+BDS_LH+C1 solutions for the FY3C satellite on day 2015/69-75 are shown in Figure 6 Figure 7, and also their arithmetic mean and standard deviation statistics. As can be seen firstly, the variation magnitudes of the R/A/C/3D position and velocity errors of the carrier-phase-based solution are all notably smaller compared to those of the pseudo-range-based solution. Comparing the R/A/C error curves of these two solutions further, it can be observed that the R/A position and velocity errors of the pseudo-range-based solution all contains a notable overall deviation from the zero-axis, which indicates the real-time orbit results are affected by the systematic errors significantly. In the pseudo-range-based solution, the systematic errors include the residual ionospheric delay, broadcast ephemeris errors, group delay variation, phase center variation, and so on. According to the statistics, the arithmetic mean of the R/A position and velocity errors of the pseudo-range-based solution are −0.435 m, 0.368 m, −0.390 mm/s and 0.316 mm/s, respectively, while those of the carrier-phase-based solution are reduced to −0.071 m, −0.064 m, 0.041 mm/s and 0.073 mm/s dramatically, which means there is no obvious systematic error residua in the carrier-phase-based solution. The reason for the notably reduced systematic error in the carrier-phase-based solution is that the used GRAPHIC combination eliminates the first-order ionospheric error and the estimated pseudo-ambiguity could absorb the LOS error caused by the GNSS broadcast ephemeris or other error sources. In conclusion, a notably superior orbit results can be achieved if using the carrier-phase measurements, compared to the solution only using pseudo-range measurements. systematic error residua in the carrier-phase-based solution. The reason for the notably reduced systematic error in the carrier-phase-based solution is that the used GRAPHIC combination eliminates the first-order ionospheric error and the estimated pseudo-ambiguity could absorb the LOS error caused by the GNSS broadcast ephemeris or other error sources. In conclusion, a notably superior orbit results can be achieved if using the carrier-phase measurements, compared to the solution only using pseudo-range measurements.  Table 3. For the FY3C satellite, the real-time orbit accuracy is 0.527 m for position and 0.479 mm/s for velocity with the carrier-phase-based solution and 0.847 m for position and 0.764 mm/s for velocity with the pseudo-range-based solution, respectively. Compared with the FY3C satellite, the inferior real-time orbit accuracy is achieved for the YG30/SAT1-SAT6 satellites, which is about 1.1-1.2 m for position and 1.2-1.3 mm/s for velocity. The reason of the poor performance is probably that the pseudo-range measurements from the single-frequency GNSS receiver onboard the YG30/SAT1-SAT6 satellites have a ranging noise higher than that from the dual-frequency GNSS receiver onboard the FY3C satellite. Furthermore, the reference orbit accuracies of YG30/SAT1-SAT6 satellites are at 20-25 cm level, which are not sufficiently precise and perhaps also lead to worse real-time orbit accuracy assessment. and 1.2−1.3 mm/s for velocity. The reason of the poor performance is probably that the pseudo-range measurements from the single-frequency GNSS receiver onboard the YG30/SAT1−SAT6 satellites have a ranging noise higher than that from the dual-frequency GNSS receiver onboard the FY3C satellite. Furthermore, the reference orbit accuracies of YG30/SAT1−SAT6 satellites are at 20−25 cm level, which are not sufficiently precise and perhaps also lead to worse real-time orbit accuracy assessment.

Impact of GPS/BDS Fusion
The most direct impact of the GPS/BDS fusion is to make more GNSS satellites observed to enhance the observation geometric condition of LEO satellite orbit determination. The number of tracked GNSS satellites by the FY3C and YG30/SAT1-SAT6 satellites for GPS/BDS fusion solutions are shown in Figure 9, where the SAT1 satellite represents all YG30 series satellites due to their similar orbit configurations. There are four types of GPS/BDS combinations to be compared in total: (1) BDS alone; (2) GPS alone; (3) GPS and BDS IGSO/MEO fusion, which is shorted as "GPS + BDSN", where BDSN means the BDS GEO satellites are not included; (4) GPS and BDS fusion, which is marked as "GPS + BDS". For the YG30 series satellites, the sub-satellite points distribute at the latitude range of ± 35 • , due to their low inclination angles of about 35 • . Only the BDS-2 regional navigation system is available for the FY3C and YG30 series satellites, so only in the Asia/Pacific region more than 4 BDS satellites can be tracked, and the numbers of tracked GNSS satellites in other regions are always less than 4. GPS is available for the global navigation service, thus in most places of the world more than 4 GPS satellites can be tracked. Compared to GPS-alone system, the GPS+BDSN and GPS+BDS combinations increase the number of tracked GNSS satellites notably, especially in the Asia/Pacific region where GEO/IGSO satellites of BDS are tracked. According to the statistics, the FY3C and YG30 series satellites can track an average of 8.4 and 10.7 GNSS satellites, while the average numbers of tracked GNSS satellites increase to 11.4 and 12.7, respectively, if the BDS satellites are added. The position dilution of precision (PDOP) can directly describe the observation geometry of LEO satellites. Table 4 summarizes the PDOP statistics of the FY3C and YG30/SAT1-SAT6 satellites under four GPS/BDS combinations. As can be observed clearly, the observation geometry is poor if only BDS is used and improves significantly if GPS is available, while the geometry improves further with the GPS/BDS fusion.    In order to realize the fusion of GPS and BDS data, the bias η between the GPS and BDS system is estimated as an unknown parameter in the onboard RTOD algorithm, which is modeled by a random walk process. Figure 10 shows the estimated bias sequences for the FY3C and YG30/SAT1 satellites. Since BDS is a regional system for the experiment times, there are apparently two scenarios. In the first one, no BDS satellites are trackable, and in the second one, both GPS and BDS satellites are trackable. Comparing the middle and bottom panels, it can be observed that, for the arcs without BDS satellites, the bias varies drastically, because no BDS observations are available to measure the bias. According to the statistics, the standard deviations (STD) of the estimated biases are up to 7.0 ns and 24.1 ns for the FY3C and YG30/SAT1 satellites, respectively. Obviously, the arcs without BDS satellites occur periodically, when the LEO satellites fly over the no-Asia/Pacific regions as shown in Figure 9. However, it should be noted that the inaccurate estimation of η on these arcs has no effect on the real-time orbit accuracy, because no BDS observations are used for the estimation of orbit parameters. On the other hand, considering the arcs with BDS satellites, as shown in the top panel, the variation amplitude of estimated bias reduces greatly where the STDs are only 3.8 ns and 7.9 ns for the FY3C and YG30/SAT1 satellites, respectively. It indicates that the system bias has been calibrated in the form of the estimated parameters with a certain precision on the arcs with GPS/BDS fusion. Of course, inevitably, the real-time estimation of η is affected by the error of GNSS broadcast ephemeris, the residual ionospheric error, the measurement noises and other uncorrectable errors, so the random jittering appears in the sequences of estimated bias. Compared to the FY3C satellite, the bias for YG30/SAT1 shows more notable variation. The reason of the poor performance is probably that the pseudo-range measurements noises of the YG30/SAT1 satellite are higher than those of the FY3C satellite. Furthermore, the YG30/SAT1 satellite at a lower altitude of 600 km is more susceptible to the ionospheric delays than the FY3C satellite at a higher altitude of 836 km, so the residual ionospheric error will be more obvious after the correction by Klobuchar model. After all, the calibration precision of several nanoseconds is enough for the onboard RTOD with the accuracy of sub-meter~meter level.
The real-time orbit accuracies of the FY3C and YG30/SAT1-SAT6 satellites under different types of GPS/BDS combinations are shown in Figure 11, where "All" represents the overall statistics of the whole interval. For the FY3C satellites, if only using BDS measurements, the real-time orbit accuracy is respectively about 1. respectively. It indicates that the system bias has been calibrated in the form of the estimated parameters with a certain precision on the arcs with GPS/BDS fusion. Of course, inevitably, the real-time estimation of η is affected by the error of GNSS broadcast ephemeris, the residual ionospheric error, the measurement noises and other uncorrectable errors, so the random jittering appears in the sequences of estimated bias. Compared to the FY3C satellite, the bias for YG30/SAT1 shows more notable variation. The reason of the poor performance is probably that the pseudo-range measurements noises of the YG30/SAT1 satellite are higher than those of the FY3C satellite. Furthermore, the YG30/SAT1 satellite at a lower altitude of 600 km is more susceptible to the ionospheric delays than the FY3C satellite at a higher altitude of 836 km, so the residual ionospheric error will be more obvious after the correction by Klobuchar model. After all, the calibration precision of several nanoseconds is enough for the onboard RTOD with the accuracy of sub-meter ~ meter level. It should be noted that the GPS/BDS combination is of important significance from other aspects. Firstly, the fusion of GPS/BDS data could speed up the convergence of the Kalman filter, as shown in the sub-graph (a) of Figure 12. For the FY3C satellite, if only using BDS measurements, the filter is in the state of prediction at most epochs due to less than 4 tracked BDS satellites for most of the time, so it costs a long time to achieve convergence. If only using GPS measurements, the filter needs about 1.2 h for the position error to converge to less than 1.0 m, while the convergent time decreases to about 0.7 h for the GPS + BDSN and GPS + BDS solutions. More importantly, the main advantage of the GPS/BDS fusion is not reduced convergence time, but the improved reliability of the onboard RTOD. Sub-graph (b) of Figure 12 shows the position errors of the GPS-alone and GPS/BDS solutions and the corresponding number of the tracked GPS and BDS satellites on day 2017/74, where there is an anomalous arc covering 16-24 h. In this abnormal arc, the space-borne GPS/BDS receiver is in an unstable state and cannot track the GPS satellites continuously. As can be observed clearly, if only using GPS measurements, the position error varies drastically to 3.2 m, while the position error is reduced to less than 1.5 m dramatically when the BDS satellites are included. Obviously, the inclusion of BDS satellites could make more GNSS satellites observed to suppress the local orbit error in some anomalous arc where GPS satellites are in a bad tracking. Although the anomalous arcs may not occur often, it can be generally concluded that the GPS/BDS fusion guarantees the orbit accuracy, improves the reliability and availability of onboard RTOD. fusion could not contribute to accuracy improvement notably. The similar conclusion can be obtained from the real-time orbit accuracies comparison of the YG30/SAT1−SAT6 satellites with different GPS/BDS combinations. As can be seen from sub-graphs (c) and (d), for the YG30/SAT1−SAT6 satellites, the real-time orbit accuracy is about 3.0−10.0 m for position and 3.0−10.0 mm/s for velocity with the BDS-alone system, and that of the GPS-alone solution is about 1.1−1.2 m for position and 1.2−1.3 mm/s for velocity, while the GPS + BDSN and GPS + BDS fusions only improve or reduce the orbit accuracy by 1.0−3.0 cm, which could be negligible, too. It should be noted that the GPS/BDS combination is of important significance from other aspects. Firstly, the fusion of GPS/BDS data could speed up the convergence of the Kalman filter, as shown in the sub-graph (a) of Figure 12. For the FY3C satellite, if only using BDS measurements, the filter is in the state of prediction at most epochs due to less than 4 tracked BDS satellites for most of the time, so it costs a long time to achieve convergence. If only using GPS measurements, the filter needs about 1.2 h for the position error to converge to less than 1.0 m, while the convergent time decreases to about 0.7 h for the GPS + BDSN and GPS + BDS solutions. More importantly, the main advantage of the GPS/BDS fusion is not reduced convergence time, but the improved reliability of the onboard RTOD. Sub-graph (b) of Figure 12 shows the position errors of the GPS-alone and GPS/BDS solutions and the corresponding number of the tracked GPS and BDS satellites on day 2017/74, where there is an anomalous arc covering 16−24 h. In this abnormal arc, the space-borne GPS/BDS receiver is in an unstable state and cannot track the GPS satellites continuously. As can be observed clearly, if only using GPS measurements, the position error varies drastically to 3.2 m, while the position error is reduced to less than 1.5 m dramatically when the BDS satellites are included. Obviously, the inclusion of BDS satellites could make more GNSS satellites observed to suppress the local orbit error in some anomalous arc where GPS satellites are in a bad tracking. Although the anomalous arcs may not occur often, it can be generally concluded that the GPS/BDS fusion guarantees the orbit accuracy, improves the reliability and availability of onboard RTOD.

Conclusions
We have studied the onboard RTOD algorithm only using single-frequency GPS/BDS pseudo-range and carrier-phase measurements. The effects of different force models, different measurements and different GPS/BDS fusions are analyzed in detail through the experiments of processing single-frequency GPS/BDS data from the FY3C and YG30 series satellites. The

Conclusions
We have studied the onboard RTOD algorithm only using single-frequency GPS/BDS pseudo-range and carrier-phase measurements. The effects of different force models, different measurements and different GPS/BDS fusions are analyzed in detail through the experiments of processing single-frequency GPS/BDS data from the FY3C and YG30 series satellites. The experiments demonstrate that, with an Earth gravity model of higher order and degree, higher real-time orbit accuracy can be achievable, while the corresponding computation would be more time-consuming, therefore, an appropriate size needs to be determined to save the computational load and avoid the notable loss of orbit accuracy at the same time. This leads to the use of order/degree 45 × 45 for the FY3C satellite and 55 × 55 for the YG30 series satellites. The different stochastic model settings of empirical accelerations will result in vastly different real-time orbit results, so a reasonable stochastic model is essential to get the best real-time orbit accuracy. Under the optimal force model, different measurements also lead to different real-time orbit accuracies. If using the single-frequency carrier-phase and pseudo-range measurements, a real-time orbit accuracy of 0.4-0.7 m for position and 0.4-0.7 mm/s for velocity is achieved for the FY3C satellite, which is notably superior to those of the solution only using pseudo-range measurements, where the real-time orbit accuracy is 0.7-1.0 m for position and 0.7-0.9 mm/s for velocity, respectively. For the YG30 series satellites, only the single-frequency pseudo-range measurements are available, the real-time orbit accuracy is about 0.8-1.6 m for position and 0.9-1.7 mm/s for velocity, respectively. No matter pseudo-range-based or carrier-phase-based solution, the different combination of GPS/BDS has different influence on onboard RTOD. If only using BDS measurements, the orbit accuracy is up to several meters due to only few tracked BDS regional navigation satellites and the large orbit and clock errors in the broadcast ephemeris. Of course, this poor performance will be improved if the BDS global navigation satellites are tracked in the near future. The GPS-alone solution could obtain a superior orbit results, but only slight accuracy improvement or even degradation is obtained when BDS satellites are included, even if the GPS/BDS fusion makes more GNSS satellites observed compared to GPS-alone system. However, the GPS/BDS fusion solution could speed up the convergence of Kalman filter effectively. Furthermore, the main advantage of the GPS/BDS fusion is to make up for the lack of tracked GPS satellites, suppress the local orbit errors and improve the reliability and availability of onboard RTOD, especially in some abnormal arcs.
For small/micro satellite missions with low-cost single-frequency GPS/BDS receivers, the design of the onboard RTOD algorithm depends on the computational capacity of onboard micro-processers and the availability of GPS/BDS data from the receiver. If the onboard micro-processer has enough computational capability and the receiver could provide carrier-phase and pseudo-range measurements, the carrier-phase-based solution with more complex force models can be adopted, and then a real-time orbit accuracy of 0.4-0.7 m level is achievable. However, if only the pseudo-range measurements are available for some missions, such as the YG30 series satellites, the pseudo-range-based solution with simpler force models might be the only alternative, and thus only the inferior orbit accuracy at the 0.8-1.6 m level is obtained. Moreover, from the view of reliability, the GPS/BDS fusion can lead to more reliable real-time orbit results, if both GPS and BDS satellites are tracked. In conclusion, robust and real-time orbit results with accuracies at the sub-meter to meter level are feasible for onboard RTOD with a low-cost single-frequency GPS/BDS receiver, which is of important significance for small/micro satellites. A stable and accurate onboard RTOD algorithm and software has been developed in this paper, which will be an alternative choice for more space missions in the future.
Author Contributions: In this study, X.G. and L.G. designed the algorithm, performed experiments and wrote this paper. F.W. and W.Z. designed the software, performed experiments, analyzed data and edited the manuscript. J.S., M.G. and H.S. supervised its analysis and edited the manuscript.