# Satellite-Based Localization of IoT Devices Using Joint Doppler and Angle-of-Arrival Estimation
## 6 Experiment and Results
### Doppler Error Measurements  
To account for realistic Doppler measurements in our emulation, we investigated the Doppler error measurement distribution based on an actual received signal from a LEO satellite. Namely, we obtained the Doppler measurements from NOAA-15. The satellite follows a circular sun-synchronous near-polar orbit with an inclination of 98.7\({}^{\circ}\) and an altitude of 833 km. The satellite completes its orbit 14 times per day. It has an automatic picture transmission (APT) module operating at a very high frequency (VHF) of 137.62 MHz. Furthermore, it has an S-band transmitter that operates at 1702.5 MHz with an omnidirectional antenna. We selected NOAA-15 as it is one of the satellites used in the ARGOS system. The setup diagram of the experiment is shown in Figure 6. We utilized the digital control interface to command the elevation-azimuth controller, which is connected to the antenna rotator, in order to keep track of the passing LEO satellite. The physical connection between the interface and the controller can be seen in Figure 7. There are two motors moving the VHF band antenna to move the antenna in both the azimuth and elevation planes. The top motor is for elevation, and the bottom is for azimuth, as observed inFigure 8: The tracking uses the SGP4 algorithm to predict the real-time position of the satellite, i.e., its elevation and azimuth. Figure 6: Block diagram of measurement setup for Doppler shift frequency measurements. Figure 7: Satellite tracking antenna with digital control interface and elevation–azimuth controller connected to the antenna’s rotator. A spectrogram of the measurements is shown in Figure 9. A software-defined radio (SDR) was used to capture the APT signal from the NOAA satellite. We also attached a GPS disciplined oscillator to the SDR, which provides a very-high-accuracy reference signal as shown in Figure 10. The in-phase and quadrature (IQ) signals were collected, and a low-pass filter was applied to the signal. Then, we applied a discrete short-time Fourier transform (STFT) to the signal, \(s[n]\) as follows,  
\[S_{m}[f]=\sum_{n=-\infty}^{\infty}s[n]g[n-mR]e^{-j2\pi ft} \tag{15}\]  
where \(g(n)\) is the window function of \(M\) length, \(S_{m}[f]\) is the discrete Fourier transform (DFT) of the windowed signal centered at time \(mR\), and \(R\) is the stride size between the successive DFTs. Figure 9: Spectrogram of the actual measurements from the NOAA-15 satellite. The orange dotted line is the estimated Doppler shift frequency. From the STFT of the signal, we could then search for the peak frequency to obtain the Doppler measurements. Next, to compute the measurement offset, we first needed to truncate the Doppler measurement vector and differentiate the truncated vector with respect to time. Then, we smoothed the data by fitting the data to a spline. The frequency offset was computed by taking the average of a few measurements centered at the inflection point. Finally, we computed the empirical PDF of the Doppler measurement error. From the plot in Figure 11, it is shown that the Doppler error can be characterized as a zero-mean Gaussian distribution with a certain standard deviation, \(\sigma_{\mathrm{d}}\). The error distribution is Gaussian when the GPS-disciplined oscillator is utilized, whereas the error distribution is non-Gaussian for free running oscillator. To measure the normality of the Doppler measurements distribution, we utilized a Kolmogorov-Smirnov test at the typical 5% significance level. From the test results, we observe that the null hypothesis was accepted, which means that the data could be considered as drawn from the normal distribution with confidence of 95%. We performed the normality test on the data collected over several passes (spanning over a few days) for the NOAA-15 satellite. Figure 12 shows a few examples of the Doppler measurement  
Figure 11: Comparison of the measured Doppler error distribution using free running (FRO) and GPS-disciplined (GPSDO) oscillators, respectively.