Next Article in Journal
Laboratory Calibration Comparison of Hyperspectral Ocean Color Radiometers in the Frame of the FRM4SOC Phase 2 Project
Previous Article in Journal
Post-Fire Streamflow Prediction: Remote Sensing Insights from Landsat and an Unmanned Aerial Vehicle
Previous Article in Special Issue
LEO ISL-Assisted BDS-3 and LEO Rapid Joint Precise Orbit Determination
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Satellite Formation Flying Determination with Low-Cost GNSS Receivers Raw Data

1
Department of Computer Architecture and Automatic Control, Universidad Complutense de Madrid, 28040 Madrid, Spain
2
Space Research Group, Universidad de Alcala, 28801 Alcalá de Henares, Spain
*
Author to whom correspondence should be addressed.
These authors contributed equally to this work.
Remote Sens. 2025, 17(22), 3691; https://doi.org/10.3390/rs17223691
Submission received: 18 September 2025 / Revised: 6 November 2025 / Accepted: 8 November 2025 / Published: 12 November 2025
(This article belongs to the Special Issue GNSS and Multi-Sensor Integrated Precise Positioning and Applications)

Highlights

What are the main findings?
  • Instrumental errors of low-cost GNSS receivers predominate in orbital conditions due to their design limitations.
  • The condition number analysis demonstrates that trilateration methods are highly sensitive to such errors and that the optimal solution requires using as few satellites as possible.
What is the implication of the main finding?
  • The condition number provides a robust framework to evaluate and compare different estimation methods, highlighting their sensitivity to instrumental errors.
  • Despite the limitations of low-cost GNSS receivers, it is possible to determine the relative positions of spacecraft formations with a margin of error on the order of meters, confirming the feasibility of low-cost satellite formation flying missions.

Abstract

Low-cost missions are ideal for applications that require spacecraft formation flying. The use of GNSS signals provides an economical solution to determine the orbital status of the formation. This paper facilitates the development of such missions by simulating spacecraft orbital formation conditions through the use of software-defined radio to generate the GNSS signals being received by each spacecraft. The simulation environment integrates low-cost commercial GNSSs, one for each member of the formation, to capture the signals generated. The analysis of the recorded raw signals shows that the instrumental error of the receivers is predominant because they have not been designed to work in orbital conditions. In addition to noise, the bias errors introduced must be taken into account by the mathematical trilateration methods, which can be very sensitive to these errors. This paper shows how sensitivity can be quantified using the condition number for matrix inversion. A condition number analysis determines that the optimal solution for trilaterating the orbital position of a spacecraft should use as few GNSS satellites as possible. The paper also introduces how to use the condition number to evaluate different methods for determining the state of the spacecraft formation: the independent trilateration method, the difference method, and the double difference method. The comparison of the methods shows that the difference and double difference methods are more sensitive to instrumental errors, because they are worse conditioned, but can be improved by reducing their order. Despite the limitations shown, at best, errors in the relative positions of the spacecrafts of the order of metres are obtained, demonstrating the feasibility of this type of mission and the usefulness of the condition number analysis method presented.

1. Introduction

Since the earliest space missions, pioneers in space research have identified the ability to accurately determine and control the relative motion of two Spacecraft (SCs) as a critical factor. This problem was tackled in the Gemini 6 and 7 missions, launched in 1965, to carry out the first space rendez-vous manoeuvre between two manned spacecraft [1]. From then on, the scientific community has been studying the potential of Satellite Formation Flying (SFF) in space missions.
SFF allows addressing some of the most interesting challenges in scientific research conducted from space, placing this technology at the forefront of space mission development and providing significant advantages over missions employing large monolithic satellites [2]. The key feature of a formation is the distribution of both sensor and computational units across different satellites, enabling them to work in unison towards a common scientific or technological objective. This distribution offers important advantages such as flexibility and adaptability, redundancy and fault tolerance, as well as reduced development time and costs. Simultaneously, the multitude of possibilities offered by SFF exponentially increases engineering challenges [3,4], requiring the use of advanced techniques for estimation and observability of the positioning of each satellite [5]. The first hurdle in SFF is the determination of the formation state, which involves the precise and constant estimation of the relative positions and velocities of the elements constituting the SFF. The precision required in such missions is typically addressed using expensive, ad hoc-designed measurement systems, as seen in missions like SWARM, PRISMA, and PROBA-3. In [6], a four-year analysis of SWARM mission data is conducted to calibrate orbital determination algorithms, resulting in the in-flight estimation of antenna phase centre offset and variation. In [7], the in-flight results of the PRISMA mission are analysed. PRISMA is specifically designed to qualify autonomous flight units and algorithms for formation flying and rendez-vous, achieving very high levels of precision on the order of centimetres.
In high orbits, where GNSS signals are weak due to multipath effects, low signal-to-noise ratios, and occasionally poor satellite geometry, the Dilution of Precision (DOP) increases, and the spacecraft formation flying (SFF) determination problem is addressed using active sensors. As demonstrated in [8], relative range measurements obtained from inter-satellite transceivers can significantly enhance the accuracy and robustness of formation determination. The DOP values (e.g., HDOP, VDOP, GDOP) are commonly used in GNSS to provide a measure of how the satellite geometry affects the expected positioning accuracy. They give a good first indication of the quality of the satellites’ configuration, assuming ideal measurements. However, DOP values do not capture the sensitivity of the SFF mathematical problem. Instead, the condition number, which will be used in this article, is a metric that can be applied to any system of equations, including the methods presented in this article for determining the SFF.
For missions in low-Earth orbit, on the other hand, it is possible to use passive measurement systems based on GNSS signals. Rad-hard GNSS receivers, qualified for space, can significantly increase mission costs. While this is not a problem for most ambitious missions, it renders the adoption of such receivers unfeasible for the numerous low-cost missions being considered today. The challenge posed by the democratisation of space and the many innovative mission proposals based on SFF requires working with limited budgets, often leading to the integration of Commercial Off-the-Shelf (COTS) hardware not qualified for space use. In this research, this problem has been addressed by tackling the SFF determination using low-cost GNSS receivers. The first objective was to evaluate the performance achievable by COTS hardware under space conditions. A framework based on Software-Defined Radio (SDR), developed in a previous study [9], allows for emulating the orbital environment by generating the GNSS signals that a receiver would receive at each point in the orbit. Figure 1 shows the hardware configuration of the framework.
Using this SDR-based environment, it is evident that the main source of error under these conditions is not atmospheric disturbances but instrumental error, primarily due to characterised hardware latencies and high velocity of the orbiting spacecraft. Therefore, when determining the formation state, the sensitivity of the methods used to perform these measurement errors must be evaluated. The sensitivity of the methods is evaluated by the condition number for matrix inversion of the system of equations that needs to be solved in the trilateration problem. The analysis reveals that some classical methods, such as Differences and Double Differences, suffer from conditioning issues. The conditioning evaluation provides a useful tool for designing new GNSS systems on Earth and on other planets or natural satellites. It complements other types of analyses, such as those presented in [10], where a methodology for optimising a lunar navigation satellite constellation is proposed, taking into account objectives such as surface coverage. In [11], observables from the Global Positioning System (GPS) and Beidou Navigation Satellite System (BDS) constellations are combined to achieve more precise orbital determination.
The data were processed using the Bernese GNSS Software 5.2, a high-precision scientific package developed by the University of Bern for precise orbit and geodetic parameter estimation [12]. The integration of GPS and BDS observations notably enhanced the orbit determination accuracy of the TH02-02 satellites.
In this type of constellation fusion, it would also be highly interesting to analyse the system conditioning as performed in our work. Furthermore, the environment used in this research could also emulate multiple constellations. On the other hand, the use of commercial receivers under space conditions presents several challenges in the design of a low-cost space mission, as measurement errors and instrumental delays need to be efficiently identified and corrected. This problem is not commonly addressed in the scientific literature, as most consulted works assume optimal conditions in their measurement devices. In [13], the antenna phase centres are taken into account for precise orbit determination using the method of Double Differences (DD) and ambiguity resolution. In [14], the accuracy of formation determination is analysed using the DD method with GNSS observables, assuming high precision. In [15], a different estimation technique is implemented, utilising other sensors to improve relative navigation accuracy and implementing specific feedback for relative formation control separate from absolute control. In [16], differentiated GNSS signals are processed separately rather than in combination, using common GNSS satellites solely for the resolution of integer ambiguities in double-difference DD observations, thereby eliminating the need for bias estimation. The analysis considered for determining clock errors in this study follows the methods implemented in [17]. This work implements an iterative least-squares process to optimize GPS observation data using an orbital model of the GPS satellites. Clock errors are considered to enhance the precision of orbital parameter estimation; however, the conditioning of the system to be solved is not addressed.
An important contribution of this work has been the addition of Hardware in the Loop (HIL) to introduce instrumental errors with maximum realism. In [18], artificial intelligence and predictive filters are used for spacecraft position estimation using a vision system. Comparisons are made between the synthetic domain and one with HIL, resulting in errors in the order of centimetres. In [19], the in-orbit verification of antenna phase centre calibrations based on neural networks for a microwave range measurement system is presented. It would be interesting to evaluate the reliability of such techniques against the measurement errors highlighted in our work. Artificial intelligence is expanding into all areas, including space. There is significant reluctance to apply these techniques in space due to their lack of reliability and resource-intensive nature. An environment like the one presented in this paper can allow for the evaluation of the robustness of such techniques against instrumental errors. In [20], a testbed, called the Virginia Tech Formation Flying Testbed, is used, which integrates the general ionosphere electrodynamics model to simulate equatorial plasma bubbles and study the impacts on GNSS signals tracked by Low-Earth Orbit LEO satellites. Such ionospheric effects could also be integrated into the framework developed in our project. An important aspect in the final implementation is the characterisation of sensors. In [21], the objective was to fully characterise the proposed sensor architecture for the HERMES mission, highlighting the available performance for attitude and orbit determination. All results were derived from an HIL environment, providing a rigorous description of the sensing capabilities to ensure performance. The research allows to characterise of low-cost GPS sensor environments, revealing significant limitations in processing, measurement, and documentation that had to be overcome through mathematical handling. The publication [22] proposes a solution for close formation flying of unmanned aerial vehicles using cooperation and relative estimation techniques to achieve extreme accuracy in the position and orientation of the aircraft, thus reducing costs and improving efficiency in aviation. This concept can be extrapolated to a space scenario of SFF, where the SFF is represented as a graph, assuming that the SC correspond to the nodes and their connections represent the relative measurements between the SCs. This experiment can be implemented in the emulator system used in this work since each emulator unit of the SC has the ability to exchange information with the other units. Most of the research discussed above emulates environments that assume the ideal behaviour of the sensors used. In low-cost missions, the GNSS receivers used do not behave ideally. This article shows that a low-cost commercial GPS, working in orbital conditions, introduces quite significant measurement errors. It is therefore necessary to quantify the sensitivity of the algorithm to these errors. This sensitivity analysis can be applied to several of the above-mentioned investigations and to the design of new GNSS constellations, whether for the Earth, the Moon, or Mars.
The framework used to emulate a GNSS constellation and quantify the measurement errors introduced by a COTS GPS is described below. In the Formation Flying Determination section, the trilateration problem is modelled as a non-linear system of equations. The most common approach to address non-linear systems uses linearization around proxi values, which means working with an approximate model. In contrast, in this section, an exact model is proposed, with a linear system of equations subject to a non-linear constraint. This approach has its drawbacks, which will be affronted in the article. The condition number is introduced as a measure of the sensitivity of the algorithm. Models for SFF determination are also generated using the approach of differences and double differences. Finally, in the Experimental Validation section, the behaviours of the presented models are validated using data recorded by a low-cost GPS receiver. In the conclusions, the results obtained with the different methods are compared. In summary, this work bridges the gap between theoretical formation determination methods and their practical implementation using affordable commercial hardware. By integrating Hardware-in-the-Loop emulation of GNSS-based positioning models, it provides a realistic and controlled framework to analyse how measurement errors and system conditioning affect formation determination accuracy. The study not only evaluates the performance limits of COTS receivers under orbital dynamics but also proposes a methodological approach for assessing algorithmic sensitivity through conditioning analysis. These contributions aim to support the design of future low-cost formation flying missions and GNSS systems for Earth and planetary applications.

2. Framework Description

The HIL test bench used in this research is an evolution of the framework described in [9]. It is divided into two blocks: the simulation environment and the scenario under test. Figure 2 represents the conceptual design of the HIL test bench, where spread-spectrum signals, Similarly to those transmitted by the GNSS constellation, are emulated by an SDR transmitter at a power of +10 dBm. The transmitted observables are pseudorange and carrier phase on L1, and simulation times are programmable by the user. When setting up the tests, the input parameters to the system consist of a navigation RINEX (Receiver Independent Exchange Format) file and the SCs (spacecraft) orbits as a Two-Line Element (TLE) file, which describes satellite orbital positions. The reception is performed using a commercial-off-the-shelf (COTS) GPS receiver [23].
The data is stored in a Comma-Separated Values (CSVs) file, and the analysis is done in Python 3.14.0. A system of this kind is composed of a GNSS (Global Navigation Satellite System) generator and receiver with an onboard computer that processes measurements (pseudorange, carrier phase, and emission ephemeris satellite orbital data) while applying real-time estimation and control algorithms. This setup allows for highly complex scenarios at the discretion of the user.
In the validation stage, low-cost GPS receivers are being used to determine the orbital position of the SCs (spacecraft). These receivers do not provide orbital position in space orbits due to the Wassenaar agreement (an international arms control arrangement [24]), but they do provide the measured pseudorange data (the calculated distance between satellites and receiver). By applying relativistic corrections (adjustments for effects due to relativity) and compensating for instrumental errors of the emitters, estimated pseudoranges are obtained, which closely resemble the theoretical values. As shown in Figure 3, the pseudorange estimation exhibits an error on the order of 100 m. These errors are acceptable for a low-cost GPS, as they correspond to a time error of 300 ns (nanoseconds), which represents a demanding temporal resolution for digital instrumentation.
To estimate the orbital position of the SCs, a trilateration algorithm must be applied, which uses as inputs the estimated pseudoranges and the positions of the transmitters of the GPS constellation, as it is shown in Figure 4.

3. Formation Flying Determination

The formation state can be determined using two approaches: either by determining the state of each SC separately or by directly determining the state of the entire group of SCs. First, an analysis of the trilateration problem formulation will be presented. Subsequently, trilateration solutions will be proposed for each of the proposed approaches. Finally, a method will be proposed to analyse the sensitivity of the obtained solutions to measurement errors.

3.1. Trilateration Problem

The trilateration problem consists of determining the 3D position x S C k , y S C k , z S C k of an SC, S C k , based on the distances to several GNSS transmitters, G N i , known as pseudoranges p s G N i S C k , and the positions of these GNSS transmitters ( x G N i , y G N i , z G N i ) . Additionally, the local pseudorange error, δ S C k , is often estimated. The main component of this error is attributed to the receiver clock error, δ t S C k , which introduces an extra range distance, δ S C k = c · δ t S C k , where c is the speed of light. In this article, the local pseudorange error will be estimated instead of the local clock error because in a low-cost GPS receiver there are other sources of error that contribute significantly to the pseudorange measurement. Furthermore, we will later work with the system condition number, and to obtain an acceptable physical interpretation of it, we need all variables to be of the same order of magnitude, which is achieved by working with distances instead of times.

3.2. SCs Trilateration System

From the distances between GNSS constellation transmitters and the receivers of the SCs, an equation can be generated for each pair ( G N i , S C k ) . For each S C k , a system of nonlinear Equation (1) can be constructed, with as many equations as received by GNSS satellites G N i from the constellation.
( x S C k x G N 1 ) 2 + ( y S C k y G N 1 ) 2 + ( z S C k z G N 1 ) 2 = ( p s G N 1 S C k δ S C k ) 2 . . . ( x S C k x G N i ) 2 + ( y S C k y G N i ) 2 + ( z S C k z G N i ) 2 = ( p s G N i S C k δ S C k ) 2
where the p s G N i S C k values are the measured pseudoranges. The unknown to be calculated is the state of S C k , which consists of: the spatial coordinates x S C k , y S C k , and z S C k , and the local pseudorange error, δ S C k .
Following the approach proposed in [25] a new dependent variable r S C k = x S C k 2 + y S C k 2 + z S C k 2 is introduced to transform the nonlinear system of pseudorange equations into a linear form, as shown in Equation (2). This reformulation allows the original quadratic equations to be expressed as a matrix system A · x = b , which is linear in the unknowns [ r S C k , x S C k , y S C k , z S C k , δ S C k ] . The inclusion of the variable r S C k enables an exact linearization that eliminates the need for iterative methods, reduces computational complexity, and avoids convergence issues, while allowing an additional constraint to be imposed to ensure the uniqueness of the solution.
1 2 x G N 1 2 y G N 1 2 z G N 1 + 2 p s G N 1 S C j . . . 1 2 x G N i 2 y G N i 2 z G N i + 2 p s G N i S C j r S C k x S C k y S C k z S C k δ S C k = p s G N 1 S C k 2 x G N 1 2 y G N 1 2 z G N 1 2 . . . p s G N i S C k 2 x G N i 2 y G N i 2 z G N i 2 subject to r S C k = x S C k 2 + y S C k 2 + z S C k 2 δ S C k 2

3.3. Solution of Trilateration System

In the previous model, both the matrix A and the vector b are exclusively constructed from the positions of the transmitters and the pseudoranges estimated from the receivers’ measurements. The solution vector x contains the variables to be determined. In fact, the first variable, r, is linked to the rest through a quadratic constraint. This constraint must be soft, allowing for unmodeled measurement errors to be accommodated. Depending on the number of available transmitters (rows) and the number of variables to be determined (columns), the linear system can be underdetermined, determined, or overdetermined.
  • With 4 independent transmitters, it is an underdetermined system with multiple possible solutions. In this case, the general solution will be a linear combination of a particular solution, x p , and the homogeneous solution, x h (3).
    x = x p + t · x h
    To calculate the value of the parameter t, the system constraint can be applied to the general solution, resulting in a second-degree equation with two possible solutions. One solution corresponds to an orbital altitude higher than the GNSS constellation, and the other solution corresponds to a lower altitude. You only need to select the solution that matches the SC orbit.
  • With 5 independent transmitters, a determined system is obtained, and its solution is trivial.
  • With 6 or more independent transmitters, an overdetermined system is obtained, and a solution can be found using least squares or by the pseudoinverse matrix.

3.4. Condition Number of the System of Equations

Given a non-singular matrix A n × n , the condition number for inversion, denoted as κ ( A ) , is defined as (4).
κ ( A ) = A A 1 ,
where · represents a matrix norm, and A 1 is the inverse of matrix A. The condition number of the matrix of a linear system of equations indicates how sensitive the system’s solution is to small changes in the system. In [26], it is demonstrated that the condition number of the system matrix can be used to calculate an upper bound on the relative error of the solution, as shown in Equation (5).
Δ x x 2 κ ( A ) Δ b b
In the formulated trilateration problem, the input to the system is the vector b , which is calculated from the measured pseudoranges and the positions of the transmitters. If the condition number of the system matrix is high, the system is ill-conditioned. In this situation, the equations are nearly dependent and thus, measurement errors can be amplified, introducing significant errors in the system’s solution. On the other hand, if the condition number is close to 1, the system is well-conditioned. This means that the equations are highly independent, and the errors in the system’s solution will be of the same order as the measurement errors. Therefore, the condition number indicates how measurement errors are translated to the trilateration solution. When redundancy is available, the condition number can be used to select the GNSS transmitters that generate a better-conditioned system. The combination of equations, i.e., transmitters G N i , that produces a lower condition number will result in a system with a solution that is less sensitive to measurement errors or to disturbances. Additionally, this propagation of errors can be very useful for tuning filters that rely on these results, such as Kalman filters [27]. This stage is not included in this article to avoid obscuring the sensitivity of the final solution to the measurement errors. As will be seen in the validation section, for the presented trilateration problem, systems with 4 GPSs can be found to be well-conditioned, but the same does not happen when using 5 or more GPSs. In the 5-equation system, the variable r has much higher values than the rest, as it is essentially the square of the orbital radius of the GNSS constellation. It is possible to reduce the condition number of the system matrix by scaling this component so that all matrix coefficients are of the same order. By dividing the r component by the orbital radius of the GPS constellation, the condition number can be substantially reduced.

3.5. FF Trilateration by Differences

The relative position of two SCs, S C k and S C l , can be calculated by subtracting the equations of the same transmitter, G N i , resulting in Equation (6).
x S C k 2 x S C l 2 + y S C k 2 y S C l 2 + z S C k 2 z S C l 2 δ S C k 2 + δ S C l 2 2 · x G N i · ( x S C k x S C l ) 2 · y G N i · ( y S C k y S C l ) 2 · z G N i · ( z S C k z S C l ) + 2 p s G N i S C k · δ S C k 2 p s G N i S C j · δ S C l = p s G N i S C k 2 p s G N i S C l 2
By introducing the variables that define the state of the FF, x = x S C j x S C k , y = y S C j y S C k , z = z S C j z S C k , and the variable r = x S C k 2 x S C l 2 + y S C k 2 y S C l 2 + z S C k 2 z S C l 2 δ S C k 2 + δ S C l 2 , which captures the nonlinear constraint, a linear system of 6 variables x = [ r , x , y , z , δ S C k , δ S C l ] can be created, as shown in (7).
1 2 x G N 1 2 y G N 1 2 z G N 1 + 2 p s G N 1 S C j 2 p s G N 1 S C k . . . 1 2 x G N i 2 y G N i 2 z G N i + 2 p s G N i S C j 2 p s G N i S C k r x y z δ S C k δ S C l = p s G N 1 S C k 2 p s G N 1 S C l 2 . . . p s G N i S C k 2 p s G N i S C l 2 subject to r = x S C k 2 x S C l 2 + y S C k 2 y S C l 2 + z S C k 2 z S C l 2 δ S C k 2 + δ S C l 2
As will be seen in the validation stage, this system is ill-conditioned. Since it uses so many equations, it is not possible to find a configuration of 6 transmitters with a good condition number. Moreover, in this case, the underdetermined system cannot analytically be solved because the constraint is not a function of the system variables. One option to reduce the number of equations is to use a previous estimation of the state of each SC. Now, the variable r can be calculated in advance, and the pseudoranges can be corrected with the local error of each SC. By applying this idea, a linear system of three equations and three unknowns is obtained, as shown in (8).
2 x G N 1 2 y G N 1 2 z G N 1 . . . 2 x G N i 2 y G N i 2 z G N i x y z = ( p s G N 1 S C k δ S C k ) 2 ( p s G N 1 S C l δ S C l ) 2 r . . . ( p s G N i S C k δ S C k ) 2 ( p s G N i S C l δ S C l ) 2 r where r = x S C k 2 x S C l 2 + y S C k 2 y S C l 2 + z S C k 2 z S C l 2
As will be seen in the validation stage, the condition number of the reduced system will be better than the condition number of the full system, generating better results.

3.6. FF Trilateration by Double Differences

If the redundancy of transmitters is available, it is possible to eliminate the nonlinear term r by calculating the difference of Equation (6) for two different transmitters, G N i and G N j , resulting in Equation (9).
2 · ( x G N i x G N j ) · x 2 · ( y G N i y G N j ) · y 2 · ( z G N i z G N j ) · z + 2 · ( p s G N i S C k p s G N j S C k ) · δ S C k 2 · ( p s G N i S C l p s G N j S C l ) · δ S C l = ( p s G N i S C k ) 2 ( p s G N j S C k ) 2 ( p s G N i S C l ) 2 + ( p s G N j S C l ) 2
By repeating this process for different transmitter pairs, it is possible to construct the system of linear Equation (10), where the acronyms have been shortened ( G : = G N , S : = S C , and p : = p s ).
2 ( x G 1 x G 2 ) 2 ( y G 1 y G 2 ) 2 ( z G 1 z G 2 ) 2 ( p G 1 S k p G 2 S k ) 2 ( p G 1 S l p G 2 S l ) . . . 2 ( x G i x G j ) 2 ( y G i y G j ) 2 ( z G i z G j ) 2 ( p G i S k p G j S k ) 2 ( p G i S l p G j S l ) · x y z δ S C k δ S C l = + p G 1 S k 2 p G 2 S k 2 p G 1 S l 2 + p G 2 S l 2 . . . + p G i S k 2 p G j S k 2 p G i S l 2 + p G j S l 2
In this case, the non-linear constraint disappears, but at least 5 equations are needed. As each equation uses two emitters, at least 6 emitters common to both SCs are needed. As will be seen in the validation stage, this system will be ill-conditioned, due to the high number of equations and the lack of orthogonality of the 6 emitters. As in the previous case, the number of unknowns can be reduced by using the local pseudorange error obtained by trilaterating each SC separately, resulting in (11). The variable vector is reduced to just three components, x = [ x , y , z ] . Now, only three equations are required, and thus, the two SCs must receive signals from at least 4 common transmitters. In this case, the system will be well-conditioned.
2 ( x G 1 x G 2 ) 2 ( y G 1 y G 2 ) 2 ( z G 1 z G 2 ) . . . 2 ( x G i x G j ) 2 ( y G i y G j ) 2 ( z G i z G j ) · x y z = + ( p G 1 S k δ S C k ) 2 ( p G 2 S k δ S C k ) 2 ( p G 1 S l δ S C l ) 2 + ( p G 2 S l δ S C l ) 2 . . . + ( p G i S k δ S C k ) 2 ( p G j S k δ S C k ) 2 ( p G i S l δ S C l ) 2 + ( p G j S l δ S C l ) 2

4. Experimental Validation

The described framework has been used to evaluate the sensitivity of the proposed methods to the measurement errors of the pseudoranges.
The process follows the following steps. The environment at each moment, propagates the orbits of the SCs and emulates the pseudorange signals measured by the GPS receivers of the SCs. The environment injects these signals into the antenna of the GPS receivers of the two SCs at the appropriate time. The on-board computers of the SCs read the pseudoranges measured by GPS receivers and apply the proposed algorithms. Finally, the determined positions of the SCs are compared against the propagated positions to validate the performance of the determination algorithms. The simulation period corresponds to 300 s, since we are limited by the memory of the SDR radio transmitting the GNSS signals.
In the determination stage, the first step is to preprocess the measurements. Based on the measured pseudoranges, the emission time is calculated, and the positions of the GPS transmitters are propagated for those times. The pseudoranges are also corrected. With the corrected pseudoranges and the positions of the GPS transmitters, the trilateration system of equations to be evaluated is built. The condition number is calculated for each of the possible combinations of GPS transmitters. Then, the system of equations is solved for the case with the lowest condition number. Finally, the determined positions are compared with the propagated positions to calculate the residuals and evaluate the goodness of the method.

4.1. SCs Trilateration

Using the signals of 5 GPS transmitters a determined system can be build, which solution is trivial. Figure 5 shows the results obtained when determining the position of SC1 using 5 GPS transmitters.
In Figure 5, the first graph shows the residuals of orbital positions (trilaterated minus propagated) in Radial, Along-Track, Across-Track axes and the local pseudorange error estimation, δ S C 1 . The second graph displays the identification numbers of the GPS transmitters used to construct the trilateration equation system. The third graph shows the condition number of the system matrix. It can be observed that the satellites used for trilateration change throughout the simulation, resulting in occasional losses of satellites. It can be observed that the residuals of the trilaterated position are extremely high, with errors of the order of kilometres. This is due to the high condition number of the system matrix, which is close to 500. As a result, the errors in the pseudorange measurements are amplified when the system is solved, leading to significant errors in the determined positions. These errors are also reflected in the estimate of the local pseudorange error.
In this case, it is possible to work with just 4 GPS satellites and find a solution to the underdetermined system using the constraint r S C j = x S C j 2 + y S C j 2 + z S C j 2 δ S C j 2 . By using only 4 GPS satellites, a highly orthogonal configuration can be found, and the condition numbers is close to 5, two orders of magnitude lower than the previous case. Figure 6 shows the results obtained when determining the position of SC1 using trilateration with 4 GPS satellites. Now, the system is well-conditioned, and the residuals of the trilaterated positions are of the same order as the pseudorange measurement errors. The GPSs used are quite orthogonal, except for some isolated moments when some GPS signal is lost. Now, the scale of the first plot allows to observe how the pseudorange error varies over time, which may be due to local clock drift.
Figure 7 shows the results obtained when determining the position of SC2 using trilateration with 4 GPS satellites. As the system is also well-conditioned, the residuals of the trilaterated positions are of the same order as the pseudorange measurement errors. On the other hand, the local pseudorange error behaves differently compared to SC1 because each GPS receiver has its own local clock error.

4.2. Determination of the Formation Flying by Trilateration of SCs

The simplest way to determine the relative state of the Formation Flying (FF) of two spacecraft (SCs) is to directly subtract the states determined for each SC separately. Despite the errors incurred during individual trilateration of each SC, when the determined positions are subtracted, the errors are significantly reduced. These results are shown in Figure 8, where the first graph shows the error in estimating the relative position of the two spacecrafts and the second graph shows the estimate of the local pseudorange errors.
As the two SCs are in formation during the simulation, most of the time they use the same combination of GPSs, because they receive signals from the same GPS satellites and with similar geometry. Additionally, since they use the same model of GPS receiver, unmodeled instrumental errors are similar in both SCs, although not identical. On the other hand, in a real-world situation, the signal paths from the emitters to the receivers would also be similar for both SCs and therefore would experience similar perturbations.
In the second plot of Figure 8, it can be observed that the estimates of pseudorange errors differ for each SC due to each local clock having its own drift. However, during most of the simulation, the error in the determination of the relative position is below 10 m. Only at the beginning of the simulation, when they use a different combination of GPSs, and when the receiver of SC1 loses some GPSs, larger errors occur. When they do not use the same combination of GPSs, some errors do not cancel out, resulting in errors Similarly to those of individual determinations.

4.3. FF Trilateration by Differences

For this trilateration problem, it is not possible to find a solution in the undetermined case, as the constraint is not a function of the system variables. Therefore, it is necessary to solve the determined case, which requires the use of 6 GPS satellites. The results obtained are shown in Figure 9, where the first graph shows the error in the relative position estimate, the second graph shows the local pseudorange errors, the third graph shows the id-number of GPSs transmitters used, and the forth graph shows the condition number of the system of equations.
This solution, despite cancelling terms in the equations, is numerically quite deficient, resulting in relative position errors of about 500 m. This is due to the use of 6 satellites, which leads to very high condition numbers, close to 5000. The estimates of the local pseudorange errors are even worse, in the order of 10 4 .
By using the individual estimation of the local pseudorange errors as data, the number of unknowns can be reduced to three, thus decreasing the number of equations and satellites required. This way, the problem becomes better conditioned, and better results are obtained, as shown in Figure 10.
In this case, a very good condition number is obtained, of the order of 1. Therefore, the errors in the determination of the relative position are acceptable, of the same order as the errors in the individual determination of the SCs. Although the differences method should have cancelled out errors, this is not evident in the results because, in order to reduce the number of equations, estimated signals that included errors were used.

4.4. FF Trilateration by Double Differences

This method already eliminates the variable r, and therefore it is necessary to solve a system of 5 equations and 5 unknowns. Each equation involves 2 GPSs, which means that at least 6 common GPSs are needed. Figure 11 shows the results obtained.
The results obtained with this solution, despite cancelling multiple terms in the equations, are also quite poor. This is due to the high condition number of the system to be solved, as it involves 5 equations and 6 GPS satellites. The best possible combination of GPSs has a condition number close to 2000, which is lower than that obtained in the method of double differences because one equation is now removed. However, the errors in the estimation of the relative position are worse due to the additional GPS, which leads to a loss of orthogonality. The estimation of the local pseudorange errors is excessively high, of the order of 10 3 .
This system can also be reduced to three equations, using the individual estimation of the pseudorange errors for each SC as input data. By reducing the system to three equations, better results are obtained, as shown in Figure 12.
In this case, we obtain a well-conditioned system, but the condition number is slightly higher than the Reduced Differences method. Therefore, although the errors in the determination of the relative position are acceptable, they are slightly worse than in the Reduced Differences method. Despite cancelling more terms in the equations than the Reduced Differences method, the Double Differences method uses one more GPS satellite. Due to the lack of orthogonality in the GPS constellation, using more than 3 satellites increases the condition number of the system.

5. Conclusions

Hardware-in-the-Loop (HIL) simulation environments are valuable tools for analyzing formation-flying missions and obtaining results that closely represent in-orbit conditions. A GNSS-based simulation environment has been developed to assess the performance of commercial off-the-shelf (COTS) GNSS receivers in space scenarios. Using this environment, it is evident that COTS GNSS receivers introduce measurement errors in the pseudoranges. These errors are primarily attributed to high orbital velocities and the inherent precision limits of the measurement instruments. Other external disturbances encountered in space are comparatively less significant than those present in the atmosphere.
In the HIL experiments presented in this article, only the GPS constellation was used. However, the HIL environment is fully reconfigurable: by providing a multi-constellation RINEX file, it can incorporate observations from various GNSS systems (GPS, Galileo, GLONASS, BeiDou), creating hybrid satellite geometries. This capability would allow the system to trilaterate using several subsets of satellites that offer a more robust and accurate solution.
The solution to the trilateration problem based on GNSS has also been analysed. The problem is modelled as a system of linear equations with a quadratic constraint. Additionally, the use of the condition number is proposed to evaluate the quality of the method. Subsequently, this type of solution has been developed for the FF problem, applying the methods of differences and double differences. The algorithms presented here are deterministic; and the results they provide could feed into non-deterministic algorithms, such as Kalman filters, which would allow solving transients where there are not enough satellites available.
The proposed methods have been evaluated in the GNSS simulation environment, on a scenario with two satellites in a leader-follower formation, using two recently launched Starlink satellite TLEs. The GNSS Simulation environment highlights that under these orbital conditions, COTS GPS receivers used exhibit measurement errors in pseudorange of up to 100 m, which is expected due to the high orbital velocities. The results obtained from evaluating the different methods are summarised in Table 1. This table quantitatively compares how the errors introduced by the commercial GPS receiver propagate through the different algorithms.
From these results, the following conclusions can be drawn:
  • Using as few satellites as possible is essential. Having more than 4 satellites makes it challenging to achieve favorable condition numbers, thereby introducing a significant level of mathematical error. However, this does not mean that the process cannot be repeated with other combinations of 4 satellites. Furthermore, the condition number for each combination could be used to calculate a weighted average of the different estimates.
  • The Difference method applied to the GPS constellation is ill-conditioned, as it involves too many equations/unknowns. It is possible to reduce the condition number by reducing the number of equations/unknowns, determining the SCs separately beforehand. In this situation, errors of the same order as the pseudorange measurement errors can be achieved.
  • The Double Difference method applied to the GPS constellation is also ill-conditioned and does not yield good results. It requires the use of 6 GPSs, and it is challenging for them to be sufficiently orthogonal. It is also possible to reduce the condition number by determining the SCs separately beforehand. With this reduction, a similar accuracy to the pseudorange measurement errors can be achieved.
  • The most accurate method for FF Determination is to determine the two SCs separately and simply subtract their determined positions. In this situation, very well-conditioned systems do not amplify the measurement errors. Additionally, since both SCs are in formation, they receive signals from the same GPSs and use the same combination. Finally, if both SCs use the same model of GPS receiver, they will commit similar errors in the measured pseudoranges. Under these conditions, most errors cancel out, leading to very high precision in position determination. However, in real-world missions, spacecraft may use different GNSS receiver models due to mission limitations or satellite replacement. In such cases, error cancellation might not occur, and the results could worsen. Nevertheless, the local pseudorange error of each receiver would be estimated as part of the unknowns in the system of equations, so most of the errors would not be transferred to the solution.
These results demonstrate that it is feasible to undertake satellite formation flight missions using COTS GPS receivers. To achieve this, it is essential to acknowledge the limitations of accuracy and assess the effectiveness of trilateration algorithms in dealing with measurement errors. Specifically, for the evaluated scenario, errors of the order of meters have been achieved, which is promising and opens the way for future applications of the methods presented here in the feasibility analysis of new formation flight missions.
The mathematical development in the article is valid for all types of orbits, although the numerical results may vary depending on the geometry. The advantage of using the condition number as a quality metric is that it allows us to select the best configuration in more adverse situations; for example, in orbits close to the orbital altitude of the GNSS constellation, it will allow us to avoid the most coplanar (less orthogonal) configurations.

Author Contributions

Conceptualization, methodology, resources and writing, D.F., S.E. and O.R.P.; software, D.F.; validation and formal analysis, S.E.; investigation, D.F.; supervision, O.R.P. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Data Availability Statement

The data used in this article were generated by the authors using a GNSS emulator and commercial GPS receivers and can be supplied upon request.

Acknowledgments

This research has been carried out in the laboratories of the Universidad Complutense de Madrid and the Universidad de Alcalá, for which the authors would like to thank both institutions for the use of their institutional resources.

Conflicts of Interest

The authors declare no conflict of interest.

Abbreviations

The following abbreviations are used in this manuscript:
ADCAnalog to Digital Converter
BDSBeiDou Navigation Satellite System
DACDigital to Analog Converter
DSSSDirect-Sequence Spread Spectrum
ECEFEarth-Centered, Earth-Fixed
ECIEarth-Centered Inertial
FPGAField-Programmable Gate Array
FWFramework
GNSSGlobal Navigation Satellite System
GNCGuidance, Navigation and Control
HILHardware In the Loop
LEOLow Earth Orbit
RFRadio Frequency
RINEXReceiver INdependent EXchange
S/CSpacecraft abbreviated
SDRSignal/Software Defined Radio
SPG4Simplified General Perturbations Satellite Orbit Model 4
TECTotal Electron Content
TLETwo-Line Element
TDITravelling Ionospheric Disturbances

References

  1. Parten, R.P.; Mayer, J.P. Development of the Gemini operational rendezvous plan. J. Spacecr. Rocket. 1968, 5, 1023–1028. [Google Scholar] [CrossRef]
  2. Bandyopadhyay, S.; Foust, R.; Subramanian, G.P.; Chung, S.J.; Hadaegh, F.Y. Review of formation flying and constellation missions using nanosatellites. J. Spacecr. Rocket. 2016, 53, 567–578. [Google Scholar] [CrossRef]
  3. Hadaegh, F.Y.; Chung, S.J.; Manohara, H.M. On Development of 100-Gram–Class Spacecraft for Swarm Applications. IEEE Syst. J. 2016, 10, 673–684. [Google Scholar] [CrossRef]
  4. Gonzalez-de Soto, M.; Emmi, L.; Perez-Ruiz, M.; Aguera, J.; Gonzalez-de Santos, P. Autonomous systems for precise spraying–Evaluation of a robotised patch sprayer. Biosyst. Eng. 2016, 146, 165–182. [Google Scholar] [CrossRef]
  5. Maessen, D.; Gill, E. Relative State Estimation and Observability Analysis for Formation Flying Satellites. J. Guid. Control. Dyn. 2012, 35, 321–326. [Google Scholar] [CrossRef]
  6. Jin, B.; Chen, S.; Li, M.; Dong, Q.; Zhao, L. Precise orbit determination and baseline consistency assessment for Swarm constellation. Adv. Space Res. 2023, 71, 2938–2953. [Google Scholar] [CrossRef]
  7. Tiraplegui, S.; Serrano, D.; Peñin, L.F.; Contreras, R.; Rodríguez, G.; Villa, J.R.; Galano, D.; Rougeot, R.; Mellab, K. Proba-3: Challenges and needs for sub-millimetre autonomous formation flying. In Proceedings of the 8th European Conference for Aeronautics and Aerospace Sciences (EUCASS), Madrid, Spain, 1–4 July 2019. [Google Scholar]
  8. Shoop, T.; Munoz, J.; Gunther, J.; Geller, D.; Smith, T. Formation Design for Optimal Relative Navigation in GPS Denied Environments. J. Astronaut. Sci. 2023, 70, 3. [Google Scholar] [CrossRef]
  9. Forero, D.; Esteban, S.; Rodríguez-Polo, Ó. Framework to Emulate Spacecraft Orbital Positioning Using GNSS Hardware in the Loop. Sensors 2023, 23, 885. [Google Scholar] [CrossRef]
  10. Gil, A.D.A.; Renwick, D.; Cappelletti, C.; Blunt, P. Methodology for optimizing a Constellation of a Lunar Global Navigation System with a multi-objective optimization algorithm. Acta Astronaut. 2023, 204, 348–357. [Google Scholar] [CrossRef]
  11. Zhang, H.; Bing, J.; Defeng, G.; Ying, L.; Kai, S.; Xiaojun, D.; Huang, Z. Precise orbit determination for TH02-02 satellites based on BDS3 and GPS observations. Chin. J. Aeronaut. 2023, 36, 475–485. [Google Scholar] [CrossRef]
  12. Dach, R.; Lutz, S.; Walser, P.; Fridez, P. Bernese GNSS software version 5.2. Astron. Inst. Univ. Bern 2015, 858. [Google Scholar] [CrossRef]
  13. Jin, B.; Li, Y.; Jiang, K.; Li, Z.; Chen, S. Grace-fo antenna phase center modeling and precise orbit determination with single receiver ambiguity resolution. Remote Sens. 2021, 13, 4204. [Google Scholar] [CrossRef]
  14. Kai, D.; Haiyue, L.; Jiangpeng, L.; Yanrong, W.; Dan, W.; Jing, C.; Shilu, S. Determination Technology and Accuracy Analysis of Configuration Parameters of Ground System Dual Satellite Formation Based on Navigation Data. In Advances in Guidance, Navigation and Control: Proceedings of 2022 International Conference on Guidance, Navigation and Control; Springer: Singapore, 2023; pp. 11–19. [Google Scholar]
  15. Thangavel, K.; Servidia, P.; Sabatini, R.; Marzocca, P.; Fayek, H.; Cerruti, S.H.; España, M.; Spiller, D. A Distributed Satellite System for Multibaseline at-InSAR: Constellation of Formations for Maritime Domain Awareness Using Autonomous Orbit Control. Aerospace 2023, 10, 176. [Google Scholar] [CrossRef]
  16. El-Mowafy, A. Undifferenced and uncombined GNSS approach for absolute and relative POD of LEO satellites in formation flying. Technical report. In Proceedings of the Copernicus Meetings, Vienna, Austria, 23–28 April 2023. [Google Scholar]
  17. Patel, J.; Pervan, B. Accurate GPS LNAV parameters and clock biases for ARAIM offline monitoring. IEEE Trans. Aerosp. Electron. Syst. 2023, 59, 4313–4332. [Google Scholar] [CrossRef]
  18. Cassinis, L.P.; Park, T.H.; Stacey, N.; D’Amico, S.; Menicucci, A.; Gill, E.; Ahrns, I.; Sanchez-Gestido, M. Leveraging Neural Network Uncertainty in Adaptive Unscented Kalman Filter for Spacecraft Pose Estimation. Adv. Space Res. 2023, 71, 5061–5082. [Google Scholar] [CrossRef]
  19. Wang, X.; Liu, X.; Xiao, Y.; Mao, Y.; Wang, N.; Wang, W.; Wu, S.; Song, X.; Wang, D.; Zhong, X.; et al. On-Orbit Verification of RL-Based APC Calibrations for Micrometre Level Microwave Ranging System. Mathematics 2023, 11, 942. [Google Scholar] [CrossRef]
  20. Peng, Y.; Scales, W. GNSS-based simulation of spacecraft formation flight: A case study of ionospheric plasma remote sensing. Radiat. Eff. Defects Solids 2020, 175, 998–1001. [Google Scholar] [CrossRef]
  21. Colagrossi, A.; Lavagna, M.; Bertacin, R. An Effective Sensor Architecture for Full-Attitude Determination in the HERMES Nano-Satellites. Sensors 2023, 23, 2393. [Google Scholar] [CrossRef]
  22. Xiong, J.; Xiong, Z.; Cheong, J.W.; Xu, J.; Yu, Y.; Dempster, A.G. Cooperative positioning for low-cost close formation flight based on relative estimation and belief propagation. Aerosp. Sci. Technol. 2020, 106, 106068. [Google Scholar] [CrossRef]
  23. u-blox. NEO-M8 Series—Versatile u-blox M8 GNSS Modules. Available online: https://www.u-blox.com/en/product/neo-m8-series (accessed on 6 November 2025).
  24. The Wassenaar Arrangement. The Wassenaar Arrangement on Export Controls for Conventional Arms and Dual-Use Goods and Technologies. 2025. Available online: https://www.wassenaar.org/ (accessed on 6 November 2025).
  25. Norrdine, A. An Algebraic Solution to the Multilateration Problem. In Proceedings of the 3rd International Conference on Indoor Positioning and Indoor Navigation, Sydney, Australia, 13–15 November 2012. [Google Scholar] [CrossRef]
  26. Higham, D.J. Condition numbers and their condition numbers. Linear Algebra Its Appl. 1995, 214, 193–213. [Google Scholar] [CrossRef]
  27. Esteban, S.; Giron-Sierra, J.M.; Polo, O.R.; Angulo, M. Signal Conditioning for the Kalman Filter: Application to Satellite Attitude Estimation with Magnetometer and Sun Sensors. Sensors 2016, 16, 1817. [Google Scholar] [CrossRef] [PubMed]
Figure 1. Framework to emulate the SFF determination problem using GNSS hardware in the loop.
Figure 1. Framework to emulate the SFF determination problem using GNSS hardware in the loop.
Remotesensing 17 03691 g001
Figure 2. Block diagram of the functional model.
Figure 2. Block diagram of the functional model.
Remotesensing 17 03691 g002
Figure 3. Error of the estimated pseudoranges compared to the theoretical values under the emulated orbital conditions. These errors are primarily due to the measurement accuracy of the low-cost GPS receivers used. Each color represents the error with respect to a different GPS transmitter.
Figure 3. Error of the estimated pseudoranges compared to the theoretical values under the emulated orbital conditions. These errors are primarily due to the measurement accuracy of the low-cost GPS receivers used. Each color represents the error with respect to a different GPS transmitter.
Remotesensing 17 03691 g003
Figure 4. Simulation of the orbits of two Spacecraft (SCs), based on TLEs of Starlink satellites, and the orbits of visible GNSS transmitters of the GPS constellation. The black lines represent the best combination of pseudoranges that can be used to trilaterate the position of SC1. Due to the scale of the graph, SC2 is shown next to SC1, because they are only separated by a distance of about 480 km.
Figure 4. Simulation of the orbits of two Spacecraft (SCs), based on TLEs of Starlink satellites, and the orbits of visible GNSS transmitters of the GPS constellation. The black lines represent the best combination of pseudoranges that can be used to trilaterate the position of SC1. Due to the scale of the graph, SC2 is shown next to SC1, because they are only separated by a distance of about 480 km.
Remotesensing 17 03691 g004
Figure 5. Trilateration of SC1 using 5 GPSs (represented with different colors in the second graph).
Figure 5. Trilateration of SC1 using 5 GPSs (represented with different colors in the second graph).
Remotesensing 17 03691 g005
Figure 6. Trilateration of SC1 using 4 GPS receivers.
Figure 6. Trilateration of SC1 using 4 GPS receivers.
Remotesensing 17 03691 g006
Figure 7. Trilateration of SC2 using 4 GPS receivers.
Figure 7. Trilateration of SC2 using 4 GPS receivers.
Remotesensing 17 03691 g007
Figure 8. Determination of FF state by subtracting the trilateration of individual SCs.
Figure 8. Determination of FF state by subtracting the trilateration of individual SCs.
Remotesensing 17 03691 g008
Figure 9. Determination of the FF state by the method of differences using 6 GPS satellites.
Figure 9. Determination of the FF state by the method of differences using 6 GPS satellites.
Remotesensing 17 03691 g009
Figure 10. Determination of the FF state by the method of differences using 4 GPS satellites.
Figure 10. Determination of the FF state by the method of differences using 4 GPS satellites.
Remotesensing 17 03691 g010
Figure 11. Determination of the FF state by the method of double differences using 6 GPS satellites.
Figure 11. Determination of the FF state by the method of double differences using 6 GPS satellites.
Remotesensing 17 03691 g011
Figure 12. Determination of FF state by the method of double differences using 4 GPS satellites.
Figure 12. Determination of FF state by the method of double differences using 4 GPS satellites.
Remotesensing 17 03691 g012
Table 1. Summary of orbital error and its standard deviation.
Table 1. Summary of orbital error and its standard deviation.
MethodMean Error (m) σ (m)
Individual Trilt. with 5 GPSs1241.406.74
Individual Trilt. with 4 GPSs87.120.25
FF as Subtraction of Indiv. Trilt.3.272.10
FF Differences524.1019.15
FF Reduced Differences79.172.79
FF Double Differences1689.8035.17
FF Reduced Double Differences124.142.29
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Forero, D.; Esteban, S.; Polo, O.R. Satellite Formation Flying Determination with Low-Cost GNSS Receivers Raw Data. Remote Sens. 2025, 17, 3691. https://doi.org/10.3390/rs17223691

AMA Style

Forero D, Esteban S, Polo OR. Satellite Formation Flying Determination with Low-Cost GNSS Receivers Raw Data. Remote Sensing. 2025; 17(22):3691. https://doi.org/10.3390/rs17223691

Chicago/Turabian Style

Forero, David, Segundo Esteban, and Oscar R. Polo. 2025. "Satellite Formation Flying Determination with Low-Cost GNSS Receivers Raw Data" Remote Sensing 17, no. 22: 3691. https://doi.org/10.3390/rs17223691

APA Style

Forero, D., Esteban, S., & Polo, O. R. (2025). Satellite Formation Flying Determination with Low-Cost GNSS Receivers Raw Data. Remote Sensing, 17(22), 3691. https://doi.org/10.3390/rs17223691

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop