## 2 Methods and Infrastructure  
An overview of the experimental infrastructure and methods is presented here. The hardware configuration (as shown in Figure 1) and software algorithms are developed based on the previously established VTFTFB [18]. The previous version of VTFTFB includes a GPS radio frequency (RF) signal simulator (Spirent GSS-8000) system, a multi-constellation multi-frequency GNSS receiver (NovAtel OEM628), a GPS-based navigation and control system, a GPS-based ionospheric remote sensing system, and an STK visualization system. A GPS-based HIL simulation testbed for two-spacecraft formation flight was considered. The GSS-8000 GPS simulator is capable of simulating GPS (L1, L2, and L5) RF signals and emulating ionospheric impacts (e.g., TEC and amplitude scintillation) on GPS signals. In a satellite scenario, the GPS signals received by the satellite antenna are output from the RF simulator and then fed to the OEM628 GNSS receiver through a coaxial cable. The GNSS measurement module in the navigation and control system extracts real time data from the GNSS receiver via an Universal Serial Bus (USB) communication interface. A single-differential carrier phase measurement model [5] is implemented with an extended Kalman filter (EKF) in order to correct the relative states predicted by a dynamic propagator when the measurement and estimation are available. The relative position and velocity between the chief and deputy satellites serve as the input of the controller to compute the required thrust to maneuver the deputy spacecraft given the desired relative orbit. The controller implements the state dependent Riccati equation technique based  
Figure 1: Overall configuration of the multi-constellation version of the Virginia Tech Formation Flying Testbed (VTFTFB). on the Hill-Clohessy-Wiltshire (HCW) relative motion model [19]. Finally a remote control module generates and transfers the motion command to the GPS simulator by TCP/IP to propagate the satellite orbit in the simulation. These iterated tasks form a closed-loop real-time feedback system with a default looping rate of 1 Hz. Note that, only one GNSS receiver (i.e., NovAtel OEM628) was available to track the LEO satellite, which is similar to the circumstance in [13]. Therefore, the chief satellite scenario was simulated first without any active control, and then the deputy satellite was simulated after loading the previously recorded chief data. The ionospheric remote sensing system processes the GNSS data from the simulation to generate TEC, effective amplitude scintillation index (S4), and vertical _Ne_. The TEC processing algorithm is summarized as a flowchart in Figure 2. Pseudorange, carrier-phase, and ephemeris are extracted from the observation and navigation data collected from the OEM628 receiver. After loading the LEO receiver trajectory, pseudorange, and ephemeris data, the raw pseudoranage relative slant TECs are computed given the constellation and frequency combination selections. The raw carrier-phase relative slant TECs are then computed using the LEO receiver trajectory, carrier-phase, and ephemeris. Concurrently, the elevation angles at each time step are calculated as well. Next, the raw pseudoranage relative slant TECs are utilized to level or fit the raw carrier-phase relative slant TECs and produce the fitted relative carrier-phase TEC. A differential code bias (DCB) exists in the fitted relative slant TEC for each PRN. Therefore, a differential linear least-squares method [20] is implemented to estimate the DCB and correct the slant TEC bias for each PRN. In this way, the bias-free slant TECs are obtained. Finally, the vertical TEC (VTEC) are generated using the elevation data, and used to retrieve vertical _Ne_.