Roll Angle Measurement for a Spinning Vehicle Based on GPS Signals Received by a Single-Patch Antenna

Roll angle measurement is an essential technology in the trajectory correction projectiles. In this paper, an algorithm to detect the roll angle and rotational speed of a spinning vehicle is studied by using a GPS (Global Positioning System) receiver with a single side-mounted antenna. A Frequency-Locked Loop (FLL) assisted Phase-Locked Loop (PLL) is designed to obtain the attitude information from GPS signals, and the optimal parameters of this system are discussed when different rotational speeds are considered. The error estimation of this method and signal-to-noise ratio analysis of GPS signals are also studied. Finally, experiments on the rotary table were carried out to verify the proposed method. The experimental results showed that the proposed algorithm can detect the roll angle in a precision of within 5 degrees.


Introduction
For some guided spinning projectiles, it is essential to measure the roll angle and rotational speed in real time when it is in the air, because the control surfaces must be correctly actuated to maintain a right trajectory to the target. There are various sensors to detect the roll angle of a spinning projectile in which magnetic and inertial sensors are widely applied, but with some defects. The French-German Research Institute of Saint-Louis have attempted to correct the path of an air-defense projectile using two embedded magnetometers. However, the distortions caused by a ferromagnetic body and changeable geomagnetic environment cannot be modeled and figured out easily to improve the precision of angular information [1]. Park and Kim [2] presented a roll angle estimation algorithm using pitch and yaw rate gyroscopes as well as the Extended Kalman Filter (EKF), which works only under low spinning speed. Moreover, it is difficult to estimate rotational information with a low-cost MEMS (Micro-electromechanical Systems) gyroscope which has a low-dynamic range, because ordinary inertial sensors cannot work properly under the harsh conditions of gun-lunching projectiles [3].
In addition to magnetometers and inertial sensors, roll information can also be determined by GPS [4][5][6]. There are several kinds of GPS-based attitude determining methods, such as the carrier phase-based [7,8], amplitude-based [9,10], and SNR (Signal-to-noise ratio)-based methods, for coarse attitude determination [11]. GPS receivers on guided projectiles normally provide the guidance computer with information of position and velocity. However, it is difficult to obtain position and velocity using receivers with a side-mounted single antenna. Shen and Li [12] proposed a method to track the discontinuous signal received by a single-patch antenna mounted on the side of a spinning vehicle and got the real-time position of it, which enables a GPS receiver to locate and get both the roll angle and roll rate of a spinning vehicle, at the same time. Therefore, the functions of location and roll angle detection can be realized by the study of GPS-based roll angle measurement with only a receiver, which is of great significance in practice for the miniaturization and low cost of projectiles.
Some institutions and corporations have carried out in-depth research, such as Interstate Electronics Corporation [13], May Flower [14], and Honeywell [15]. There is a technology called Advanced Spinning Vehicle Navigation (ASVN), developed by Rockwell Collins, which utilizes the amplitude and phase modulation of GPS signals caused by vehicle rotation to obtain the roll angle of a spinning vehicle. The received signals are used to detect a projectile's spinning parameters by adding a rotation-demodulating module prior to the correlation of the GPS signals [16][17][18]. Alexander and Redhead [13] proposed a method for determining the rotational attitude of a spinning vehicle by the value of one-millisecond accumulation results in the tracking process of the receiver. However, all of these works lack profound analysis in theory, and do not give a set of specific parameters to be realized, as well as not mentioning the parameter optimization method.
Based on the existing research, we explain and analyze the mechanism of drawing the angular information from the satellite signals received by a single side-mounted antenna, seeking a way to improve the precision of roll angle and rotational speed by means of the signal communication processing method, namely, the phase-locked loops.
Firstly, the formation mechanism and extraction method of roll modulation signals, which are amplitude modulated signals encoded with rotation information, are analyzed. Then the roll angle detection method based on Frequency-Locked Loop (FLL)-assisted Phase-Locked Loop (PLL) is described and the specific parameters are studied and optimized. Lastly, experiments are carried out to verify the proposed method. The experimental results show that the proposed method can work properly with acceptable precision.

Analysis of Modulation Process
Before obtaining the roll angle from GPS signals, it is necessary to clarify the modulation process during antenna rotation, in order to figure out the true roll angle from the phases of roll modulation signals.

The Models of Antenna and Spinning Vehicle
The microstrip antenna has been extensively applied to GNSS (Global Navigation Satellite System) receivers for its low cost and low profile [19]. In this paper, a microstrip single-patch antenna is taken as an example to analyze its radiation pattern and the effect of rotation on the amplitude of received signals. A local spherical coordinate system is set up at the center of the microstrip antenna, as shown in Figure 1a,b. The figure shows a typical normalized radiation pattern for the microstrip antenna. vehicle and got the real-time position of it, which enables a GPS receiver to locate and get both the roll angle and roll rate of a spinning vehicle, at the same time. Therefore, the functions of location and roll angle detection can be realized by the study of GPS-based roll angle measurement with only a receiver, which is of great significance in practice for the miniaturization and low cost of projectiles. Some institutions and corporations have carried out in-depth research, such as Interstate Electronics Corporation [13], May Flower [14], and Honeywell [15]. There is a technology called Advanced Spinning Vehicle Navigation (ASVN), developed by Rockwell Collins, which utilizes the amplitude and phase modulation of GPS signals caused by vehicle rotation to obtain the roll angle of a spinning vehicle. The received signals are used to detect a projectile's spinning parameters by adding a rotation-demodulating module prior to the correlation of the GPS signals [16][17][18]. Alexander and Redhead [13] proposed a method for determining the rotational attitude of a spinning vehicle by the value of one-millisecond accumulation results in the tracking process of the receiver. However, all of these works lack profound analysis in theory, and do not give a set of specific parameters to be realized, as well as not mentioning the parameter optimization method.
Based on the existing research, we explain and analyze the mechanism of drawing the angular information from the satellite signals received by a single side-mounted antenna, seeking a way to improve the precision of roll angle and rotational speed by means of the signal communication processing method, namely, the phase-locked loops.
Firstly, the formation mechanism and extraction method of roll modulation signals, which are amplitude modulated signals encoded with rotation information, are analyzed. Then the roll angle detection method based on Frequency-Locked Loop (FLL)-assisted Phase-Locked Loop (PLL) is described and the specific parameters are studied and optimized. Lastly, experiments are carried out to verify the proposed method. The experimental results show that the proposed method can work properly with acceptable precision.

Analysis of Modulation Process
Before obtaining the roll angle from GPS signals, it is necessary to clarify the modulation process during antenna rotation, in order to figure out the true roll angle from the phases of roll modulation signals.

The Models of Antenna and Spinning Vehicle
The microstrip antenna has been extensively applied to GNSS (Global Navigation Satellite System) receivers for its low cost and low profile [19]. In this paper, a microstrip single-patch antenna is taken as an example to analyze its radiation pattern and the effect of rotation on the amplitude of received signals. A local spherical coordinate system is set up at the center of the microstrip antenna, as shown in Figure 1a,b. The figure shows a typical normalized radiation pattern for the microstrip antenna.   According to transmission line theory [20], the normalized far-field radiation pattern of a microstrip antenna can be expressed as: where k 0 is the wave number, k 0 = 2π/λ, λ is the length of the wave, L e = L + 2∆L is the effective length of the antenna, L is the length of the antenna, ∆L is the length of radiating slots, W is the width, h is the thickness of the antenna. Therefore, the radiation pattern of E surface (ϕ = 0) is given by: The radiation pattern of H surface (ϕ = π/2) is given by: The relationship between the radiation pattern and the power of the receiver signals P R (θ,ϕ) can be expressed as follows: where λ is the wavelength of signal, d is the transmission distance, P T is the power of transmitting signals, G R and G T are the gain of receiving and transmitting antenna respectively, η A is the efficiency of antenna, D(θ,ϕ) is the directivity of the receiving antenna, which can be represented as: Therefore, we can conclude from (4)-(6) that power of the receiver signals received by a single-patch microstrip antenna changes in the form of a sine wave in H surface, and the radiation pattern in Figure 1b also indicates the same results. To thoroughly analyze the relationship between the amplitude of receiver signals and the radiation pattern of the microstrip antenna during rotation, a schematic diagram of the spinning vehicle is presented in Figure 2.
As shown in Figure 2, the antenna, denoted by a black rectangle, is mounted on the surface of a cylindrical vehicle, and the body frame of the vehicle is defined as ox 1 y 1 z 1 , ox 1 along the spinning axis, oy 1 pointing to the phase center of the antenna, and oz 1 completing the right-handed reference frame. The spherical radiation coordinate system of the antenna is defined as oxyz, which shares the same origin and axes with body frame ox 1 y 1 z 1 . The only difference between the antenna coordinate system in Figures 1 and 2 is that the origin of the coordinate system in Figure 2 is at the center of the vehicle, not the center of the antenna. However, θ in Figure 2 can be approximately equal to the azimuth angle θ in Figure 1, because the diameter of the vehicle is short enough to be ignored, as compared to the distance between the vehicle and the satellite, while ϕ in Figures 1 and 2, it is totally the same. So, the radiation pattern of the antenna can still be represented by (1) and (2) with angles (θ,ϕ) in Figure 2. the same. So, the radiation pattern of the antenna can still be represented by (1) and (2) with angles (θ,φ) in Figure 2. As we can see from Figure 2, the i-th satellite is denoted by Si. The oa, ob and oc are the projections of the satellite's line-of-sight (LOS) vector on y1oz1, x1oz1, and x1oy1 surfaces, respectively. α is the roll angle in surface y1oz1 and β is the elevation angle in surface x1oz1. When the vehicle rotates in the air, α changes periodically from 0 to 360 degrees. To facilitate analysis of the spinning vehicle, (θ,φ) is replaced by (α,β). Figure 3 shows the variation of normalized amplitude received by a rotating antenna at different angles of β.  So, the power of receiver signals changes in the form of a sine wave, when a vehicle with a single-patch antenna mounted on the side of it, rotates. And the information of the roll angle is also modulated on the variation map of the power of receiver signals, which are called roll modulation signals.

Coordinate Transformations in Roll Angle Measurement
However, α is not the real roll angle that we want. It is related to the true roll angle. To obtain the true roll angle, several coordinate systems are set up on the body of a simplified cylinder vehicle, as shown in Figure 4, in which the single-patch antenna denoted by a black rectangle is mounted on As we can see from Figure 2, the i-th satellite is denoted by S i . The oa, ob and oc are the projections of the satellite's line-of-sight (LOS) vector on y 1 oz 1 , x 1 oz 1 , and x 1 oy 1 surfaces, respectively. α is the roll angle in surface y 1 oz 1 and β is the elevation angle in surface x 1 oz 1 . When the vehicle rotates in the air, α changes periodically from 0 to 360 degrees. To facilitate analysis of the spinning vehicle, (θ,ϕ) is replaced by (α,β). Figure 3 shows the variation of normalized amplitude received by a rotating antenna at different angles of β. the same. So, the radiation pattern of the antenna can still be represented by (1) and (2) with angles (θ,φ) in Figure 2. As we can see from Figure 2, the i-th satellite is denoted by Si. The oa, ob and oc are the projections of the satellite's line-of-sight (LOS) vector on y1oz1, x1oz1, and x1oy1 surfaces, respectively. α is the roll angle in surface y1oz1 and β is the elevation angle in surface x1oz1. When the vehicle rotates in the air, α changes periodically from 0 to 360 degrees. To facilitate analysis of the spinning vehicle, (θ,φ) is replaced by (α,β). Figure 3 shows the variation of normalized amplitude received by a rotating antenna at different angles of β.  So, the power of receiver signals changes in the form of a sine wave, when a vehicle with a single-patch antenna mounted on the side of it, rotates. And the information of the roll angle is also modulated on the variation map of the power of receiver signals, which are called roll modulation signals.

Coordinate Transformations in Roll Angle Measurement
However, α is not the real roll angle that we want. It is related to the true roll angle. To obtain the true roll angle, several coordinate systems are set up on the body of a simplified cylinder vehicle, as shown in Figure 4, in which the single-patch antenna denoted by a black rectangle is mounted on So, the power of receiver signals changes in the form of a sine wave, when a vehicle with a single-patch antenna mounted on the side of it, rotates. And the information of the roll angle is also modulated on the variation map of the power of receiver signals, which are called roll modulation signals.

Coordinate Transformations in Roll Angle Measurement
However, α is not the real roll angle that we want. It is related to the true roll angle. To obtain the true roll angle, several coordinate systems are set up on the body of a simplified cylinder vehicle, as shown in Figure 4, in which the single-patch antenna denoted by a black rectangle is mounted on the surface of a cylinder vehicle. OX b Y b Z b is a right-handed body coordinate system with origin O. The X-axis (denoted by X b ) pointing forward, is the spinning axis of the vehicle. Z-axis (denoted by Z b ) points to the phase center of the single-patch antenna, and Y-axis (denoted by Y b ) is orthogonal to the surface of a cylinder vehicle. OXbYbZb is a right-handed body coordinate system with origin O. The X-axis (denoted by Xb) pointing forward, is the spinning axis of the vehicle. Z-axis (denoted by Zb) points to the phase center of the single-patch antenna, and Y-axis (denoted by Yb) is orthogonal to Z-and X-axes with the usual right-hand rule. OXrYrZr is a reference coordinate system, and it shares the same origin with the body coordinate system. The X-axis (denoted by Xr) points forward and it overlaps with Xb. The Y-axis (denoted by Yr) is parallel to the horizon, and the Z-axis (denoted by Zr) is pointing downward to comply with the right-hand rule.
The body frame spins with the vehicle, while the reference coordinate system is rigidly attached to the spin axis, but not the rest of the vehicle body. The roll angle γ is between the OZb and OZr axis. αi is the angle between OZb axis and the projection of LOS on the OYiZi surface, which is the phase we are going to obtain from the roll modulation signals. Therefore, the roll angle γ can be described as: where Ψi can be obtained by the LOS vector in a reference coordinate system, and it differs in circumstances of different satellites and attitudes of the vehicle. The true roll angles detected from different satellites signals should be approximately equal. The roll angles obtained from various satellite signals could be averaged to get a more accurate estimation. To obtain Ψi, the positions of the satellite and vehicle in ECEF (Earth-Centered Earth-Fixed) and geodetic coordinate systems, as well as the attitude of the vehicle, such as yaw and pitch angles, must be known. The definition of ECEF and vehicle-carried NED (North-East-Down) coordinate systems are identical to Cai et al. [21]. Ψi is obtained by the following procedures.
1. Get the LOS vector from ECEF positions of the i-th satellite and the vehicle, which are obtained by GPS receiver.
where i s P is the i-th satellite position, Pv is the vehicle position in the ECEF coordinate system. 2. Transform the LOS vector from the ECEF coordinate system to the vehicle-carried NED coordinate system.
where Rn/e is the rotation matrix from the ECEF frame to the vehicle-carried NED frame, which is given by Therefore, the roll angle γ can be described as: where Ψ i can be obtained by the LOS vector in a reference coordinate system, and it differs in circumstances of different satellites and attitudes of the vehicle. The true roll angles detected from different satellites signals should be approximately equal. The roll angles obtained from various satellite signals could be averaged to get a more accurate estimation.
To obtain Ψ i , the positions of the satellite and vehicle in ECEF (Earth-Centered Earth-Fixed) and geodetic coordinate systems, as well as the attitude of the vehicle, such as yaw and pitch angles, must be known. The definition of ECEF and vehicle-carried NED (North-East-Down) coordinate systems are identical to Cai et al. [21]. Ψ i is obtained by the following procedures.

1.
Get the LOS vector from ECEF positions of the i-th satellite and the vehicle, which are obtained by GPS receiver.
where P i s is the i-th satellite position, P v is the vehicle position in the ECEF coordinate system.

2.
Transform the LOS vector from the ECEF coordinate system to the vehicle-carried NED coordinate system.
where R n/e is the rotation matrix from the ECEF frame to the vehicle-carried NED frame, which is given by − sin ϕ geo cos λ geo − sin ϕ geo sin λ geo cos ϕ geo − sin λ geo cos λ geo 0 − cos ϕ geo cos λ geo − cos ϕ geo sin λ geo − sin ϕ geo    (10) where φ geo and λ geo are the geodetic longitude and latitude position of the vehicle respectively. 3.
Then transform LOS vector from vehicle-carried NED frame to the reference coordinate system OX r Y r Z r which is set up in Figure 4.
where R r/n is the rotation matrix from the vehicle-carried NED frame to the reference coordinate system, which is given by: where Ψ ref and θ ref are the yaw and pitch angle of the vehicle respectively.

4.
Lastly, Ψ i is obtained by the arctangent value of the LOS vector in the reference coordinate system.

Analysis of Roll Modulation Signals
After analyzing the coordinate transformations, we have to construct roll modulation signals, as shown in Figure 3, to get relative roll angle α, so that we can obtain the true roll angle from it. In this paper, a magnitude extraction method has been put up, wherein the theoretical derivation and SNR features are also studied. Figure 5 shows the block diagram of a GPS receiver with a roll angle detection module. In a receiver, the power of the i-th satellite's signal is centralized in the correlation results Ip(n) and Qp(n) after processed by RF (Radio Frequency) front-end and baseband processing [22]. The correlation results of the i-th satellite's signals can be represented by:

The Extraction Method of Roll Modulation Signals
where a (i) (α,β) is the amplitude of receiver signals received by a rotating antenna at the vehicle attitude of (α,β), ω e is the angular frequency difference, θ e is the phase difference between local carrier signal produced by carrier NCO (Numerically Controlled Oscillator) and the input satellite signal, t 0 is the initial time point of the coherent integration, and T carr is the integration time in the carrier tracking loop of receiver, n I and n Q are the noises of each path. R (i) (δ) is the self-correlation function of C/A codes. When the code errors do not exist, R (i) (δ) reaches the highest value, where R (i) (0) = 1. The magnitude extraction equation of roll modulation signals can be expressed as follows when the noises nI and nQ are ignored: where fe = ωe/2π, sinc(feTcarr) is the correlation loss caused by frequency error, data code D(n) = ±1 is omitted in the absolute value. Integration time is usually one millisecond in the receiver, Ip and Qp are also called the one-millisecond accumulation values.
Equation (16) cannot represent the relationship between the roll modulation signals and the relative roll angle αi directly. To better understand their connections, ˆ( ) p n r can be rewritten as: (17) where ωr = i   , is the angular frequency of antenna rotation; ωrt + αr = αi is the relative roll angle; is the amplitude of the roll modulation signals, and According to (10), it is obvious that the code error δ and the frequency error fe can influence the amplitude of roll modulation signals directly. If the carrier and code tracking loops in GPS receiver are stable during rotation, R (i) (δ) and |sinc(feTcarr)| can be considered as constants, and the variation of roll modulation signals only depends on the amplitude a (i) (α,β), which is directly related to the power of receiver signals.

SNR Analysis of the Roll Modulation Signals
The premise for (16) to be established is that the signal-to-noise ratio (SNR) of one millisecond values have to be high enough. And it is essential for a PLL to track the roll modulation signals with high precision, which requires high SNR as well. Thus, the SNR of roll modulation signals is studied in this section.
The power of receiver signals can be reduced during antenna rotation and results in attenuation of the power of satellite signals. As shown in Figure 6, it is the normalized average power of received satellite signals in one second at different spin rates with initial relative roll angles α0. The magnitude extraction equation of roll modulation signals can be expressed as follows when the noises n I and n Q are ignored: where f e = ω e /2π, sinc(f e T carr ) is the correlation loss caused by frequency error, data code D(n) = ±1 is omitted in the absolute value. Integration time is usually one millisecond in the receiver, I p and Q p are also called the one-millisecond accumulation values.
Equation (16) cannot represent the relationship between the roll modulation signals and the relative roll angle α i directly. To better understand their connections, r p (n) can be rewritten as: where ω r = . α i , is the angular frequency of antenna rotation; ω r t + α r = α i is the relative roll angle; min R (i) (δ)|sinc( f e T carr )|/2 is the amplitude of the roll modulation signals, and D = 2π 0 a (i) (α, β)R (i) (δ)|sinc( f e T carr )|dα/2π is the direct current (DC) component. According to (10), it is obvious that the code error δ and the frequency error f e can influence the amplitude of roll modulation signals directly. If the carrier and code tracking loops in GPS receiver are stable during rotation, R (i) (δ) and |sinc(f e T carr )| can be considered as constants, and the variation of roll modulation signals only depends on the amplitude a (i) (α,β), which is directly related to the power of receiver signals.

SNR Analysis of the Roll Modulation Signals
The premise for (16) to be established is that the signal-to-noise ratio (SNR) of one millisecond values have to be high enough. And it is essential for a PLL to track the roll modulation signals with high precision, which requires high SNR as well. Thus, the SNR of roll modulation signals is studied in this section.
The power of receiver signals can be reduced during antenna rotation and results in attenuation of the power of satellite signals. As shown in Figure 6, it is the normalized average power of received satellite signals in one second at different spin rates with initial relative roll angles α 0 . As we can see from Figure 6, the average power of receiver signals differs when the spin rates and initial angles change. Considering the background of this technology, the spin rate of a spinning vehicle usually exceeds 3 r/s. So, the average power of received satellite signals is approximately equal to the middle value between the maximum and minimum power of the receiver signals. Generally, the maximum and minimum gain of a patch antenna is about 0 dB and −12 dB respectively. While, conversely, the minimum power of received signals is normally 10 times smaller than the maximum power and can be ignored in the average processing. Thus, the average power of receiver signals can be approximately equal to the value of half of the maximum power, which means there is an attenuation of 3 dB in the power compared to the static situation.
In addition to the power attenuation received by the antenna, there is an attenuation in the tracking process. According to (16), the power of roll modulation signals depends on the carrier and code tracking errors at the same time. As for the frequency error fe, it can only be influenced by the disappearance of satellite signals when the signals are blocked from satellites during rotation, while the code NCO is hardly affected [12]. The block of signals can induce fluctuations on the carrier NCO, which results in the increase of frequency error fe. The fluctuation induced attenuation can be expressed as: where fe is the carrier frequency error in static situation, fflu is the fluctuation induced frequency error during rotation. Figure 7 shows the attenuation caused by fluctuation at different static frequency errors. After the tracking process, there is a square loss LSQ at the magnitude extraction process, expressed as: As we can see from Figure 6, the average power of receiver signals differs when the spin rates and initial angles change. Considering the background of this technology, the spin rate of a spinning vehicle usually exceeds 3 r/s. So, the average power of received satellite signals is approximately equal to the middle value between the maximum and minimum power of the receiver signals. Generally, the maximum and minimum gain of a patch antenna is about 0 dB and −12 dB respectively. While, conversely, the minimum power of received signals is normally 10 times smaller than the maximum power and can be ignored in the average processing. Thus, the average power of receiver signals can be approximately equal to the value of half of the maximum power, which means there is an attenuation of 3 dB in the power compared to the static situation.
In addition to the power attenuation received by the antenna, there is an attenuation in the tracking process. According to (16), the power of roll modulation signals depends on the carrier and code tracking errors at the same time. As for the frequency error f e , it can only be influenced by the disappearance of satellite signals when the signals are blocked from satellites during rotation, while the code NCO is hardly affected [12]. The block of signals can induce fluctuations on the carrier NCO, which results in the increase of frequency error f e . The fluctuation induced attenuation can be expressed as: ∆ where f e is the carrier frequency error in static situation, f flu is the fluctuation induced frequency error during rotation. Figure 7 shows the attenuation caused by fluctuation at different static frequency errors. As we can see from Figure 6, the average power of receiver signals differs when the spin rates and initial angles change. Considering the background of this technology, the spin rate of a spinning vehicle usually exceeds 3 r/s. So, the average power of received satellite signals is approximately equal to the middle value between the maximum and minimum power of the receiver signals. Generally, the maximum and minimum gain of a patch antenna is about 0 dB and −12 dB respectively. While, conversely, the minimum power of received signals is normally 10 times smaller than the maximum power and can be ignored in the average processing. Thus, the average power of receiver signals can be approximately equal to the value of half of the maximum power, which means there is an attenuation of 3 dB in the power compared to the static situation.
In addition to the power attenuation received by the antenna, there is an attenuation in the tracking process. According to (16), the power of roll modulation signals depends on the carrier and code tracking errors at the same time. As for the frequency error fe, it can only be influenced by the disappearance of satellite signals when the signals are blocked from satellites during rotation, while the code NCO is hardly affected [12]. The block of signals can induce fluctuations on the carrier NCO, which results in the increase of frequency error fe. The fluctuation induced attenuation can be expressed as: where fe is the carrier frequency error in static situation, fflu is the fluctuation induced frequency error during rotation. Figure 7 shows the attenuation caused by fluctuation at different static frequency errors. After the tracking process, there is a square loss LSQ at the magnitude extraction process, expressed as: After the tracking process, there is a square loss L SQ at the magnitude extraction process, expressed as: where SNR roll is the SNR of roll modulation signals, which can be defined as [23]: where E(.) and V(.) represent the expectation and variance respectively. SNR corr is the SNR of correlation results, which is defined as SNR corr = r p (n) 2 /σ 2 n , σ 2 n is the variance of I p (n) or Q p (n). Figure 8 shows the relationship between squaring loss and SNR of correlation results.
where E(.) and V(.) represent the expectation and variance respectively. SNRcorr is the SNR of correlation results, which is defined as   As we analyzed above, the power attenuation caused by rotation mainly comes from antenna rotation, frequency error and square loss of magnitude extraction. The overall SNR of roll modulation signals can be represented as: where SNRstatic is the SNR of correlation results in static situation, Protation is the power attenuation caused by rotation, equals to 3 dB. Using this formula, we can compute the SNR of roll modulation signals and estimate the tracking errors of PLL, which will be introduced in the following sections.

Design of Roll Angle Detection Module
Referring to the signal communication processing method, a Frequency-Locked Loop (FLL) assisted Phase-Locked Loop (PLL)-based Costas loop is applied to track the roll modulation signals. The measurements of the tracking loops are the phases and frequencies of roll modulation signals, which correspond to the relative angles and rotational speeds of a spinning vehicle. The theoretical analysis, simulations and error analysis of the loops have also been carried out. Figure 9 shows a block diagram of the proposed roll angle detection module. The FLL-assisted PLL based Costas loop contributes the most to the module. FLL-assisted PLL combines the advantages of both tracking loops, which means it can track the phases of input signals precisely under high dynamic stress [24]. A second-order PLL with first-order FLL assisted filter is selected, because both loops are insensitive to constant velocity, while the roll angle measurements here focus on a constant rotational speed with tiny signal dynamic stress to the roll modulation signals. The loop filter is as shown in Figure 10, and there are four parameters that need to be determined. They are damping ratio ξ, the natural frequency of PLL ωnp, the natural frequency of FLL ωnf, and the integration time Troll. Ωe is the frequency error, and Φe is the phase error between the roll modulation signals and local replicas. As we analyzed above, the power attenuation caused by rotation mainly comes from antenna rotation, frequency error and square loss of magnitude extraction. The overall SNR of roll modulation signals can be represented as:

Design of Tracking Loops
where SNR static is the SNR of correlation results in static situation, P rotation is the power attenuation caused by rotation, equals to 3 dB. Using this formula, we can compute the SNR of roll modulation signals and estimate the tracking errors of PLL, which will be introduced in the following sections.

Design of Roll Angle Detection Module
Referring to the signal communication processing method, a Frequency-Locked Loop (FLL) assisted Phase-Locked Loop (PLL)-based Costas loop is applied to track the roll modulation signals. The measurements of the tracking loops are the phases and frequencies of roll modulation signals, which correspond to the relative angles and rotational speeds of a spinning vehicle. The theoretical analysis, simulations and error analysis of the loops have also been carried out. Figure 9 shows a block diagram of the proposed roll angle detection module. The FLL-assisted PLL based Costas loop contributes the most to the module. FLL-assisted PLL combines the advantages of both tracking loops, which means it can track the phases of input signals precisely under high dynamic stress [24]. A second-order PLL with first-order FLL assisted filter is selected, because both loops are insensitive to constant velocity, while the roll angle measurements here focus on a constant rotational speed with tiny signal dynamic stress to the roll modulation signals. The loop filter is as shown in Figure 10, and there are four parameters that need to be determined. They are damping ratio ξ, the natural frequency of PLL ω np , the natural frequency of FLL ω nf , and the integration time T roll . Ω e is the frequency error, and Φ e is the phase error between the roll modulation signals and local replicas.  In the stable tracking state, PLL plays a more important role than FLL, because it has lower noise bandwidth and makes a more accurate estimate of the phases of input signals. Figure 11 shows the block diagram of a linear PLL in S-domain. According to Figures 10 and 11

Design of Tracking Loops
respectively. The noise bandwidth BPLL of PLL can be calculated from ξ and ωnp by:  In the stable tracking state, PLL plays a more important role than FLL, because it has lower noise bandwidth and makes a more accurate estimate of the phases of input signals. Figure 11 shows the block diagram of a linear PLL in S-domain. According to Figures 10 and 11 respectively. The noise bandwidth BPLL of PLL can be calculated from ξ and ωnp by: In the stable tracking state, PLL plays a more important role than FLL, because it has lower noise bandwidth and makes a more accurate estimate of the phases of input signals. Figure 11 shows the block diagram of a linear PLL in S-domain.  In the stable tracking state, PLL plays a more important role than FLL, because it has lower noise bandwidth and makes a more accurate estimate of the phases of input signals. Figure 11 shows the block diagram of a linear PLL in S-domain. According to Figures 10 and 11 respectively. The noise bandwidth BPLL of PLL can be calculated from ξ and ωnp by: According to Figures 10 and 11, the transfer function of the PLL's loop filter and the second-order PLL is given by: respectively. The noise bandwidth B PLL of PLL can be calculated from ξ and ω np by: The amplitude-frequency responses and step responses of PLL are simulated with different parameters, which are shown in Figure 12.
The amplitude-frequency responses and step responses of PLL are simulated with different parameters, which are shown in Figure 12. As seen from Figure 12a,b, the damping ratio ξ and noise bandwidth BPLL both determine the cut-off, settling the time and overshoot characteristics of PLL. The larger the damping ratio and the noise bandwidth is, the smaller the settling time and overshoot would be, and the cut-off frequency of PLL could also be increased, leading to a reduction of tracking accuracy. While the frequency of the input signal is between 3 to 300 Hz, the 3 dB attenuation frequency of PLL has to be less than 3 Hz to guarantee the filtering performance when the PLL is used to track the input signals with minimum frequency. In that case, the parameters of PLL must be BPLL ≤ 0.5 Hz, ξ ≤ 0.7.
The transfer function and noise bandwidth BFLL of first-order FLL can be expressed as follows: The amplitude-frequency responses and step responses of FLL with different parameters are shown in Figure 13.  As seen from Figure 12a,b, the damping ratio ξ and noise bandwidth B PLL both determine the cut-off, settling the time and overshoot characteristics of PLL. The larger the damping ratio and the noise bandwidth is, the smaller the settling time and overshoot would be, and the cut-off frequency of PLL could also be increased, leading to a reduction of tracking accuracy. While the frequency of the input signal is between 3 to 300 Hz, the 3 dB attenuation frequency of PLL has to be less than 3 Hz to guarantee the filtering performance when the PLL is used to track the input signals with minimum frequency. In that case, the parameters of PLL must be B PLL ≤ 0.5 Hz, ξ ≤ 0.7.
The transfer function and noise bandwidth B FLL of first-order FLL can be expressed as follows: The amplitude-frequency responses and step responses of FLL with different parameters are shown in Figure 13.
The amplitude-frequency responses and step responses of PLL are simulated with different parameters, which are shown in Figure 12. As seen from Figure 12a,b, the damping ratio ξ and noise bandwidth BPLL both determine the cut-off, settling the time and overshoot characteristics of PLL. The larger the damping ratio and the noise bandwidth is, the smaller the settling time and overshoot would be, and the cut-off frequency of PLL could also be increased, leading to a reduction of tracking accuracy. While the frequency of the input signal is between 3 to 300 Hz, the 3 dB attenuation frequency of PLL has to be less than 3 Hz to guarantee the filtering performance when the PLL is used to track the input signals with minimum frequency. In that case, the parameters of PLL must be BPLL ≤ 0.5 Hz, ξ ≤ 0.7.
The transfer function and noise bandwidth BFLL of first-order FLL can be expressed as follows: The amplitude-frequency responses and step responses of FLL with different parameters are shown in Figure 13.  As shown in Figure 13a,b, the responses pattern of FLL with different parameters is similar to that of PLL. The larger the bandwidth is, the greater the 3 dB attenuation frequency and the shorter the settling time would be. In order to enable the FLL to track the input signals with all possible frequencies, the frequency at −3 dB point must be less than 3 Hz when it is used to track the input signals with a minimum frequency, where the bandwidth is set to about 0.3 Hz in that case. The function of FLL in the combined tracking loop is to lock the frequency of input signals as quickly as possible, and help pull the loop into the phase-locking state. When the frequency of input signals increases, the bandwidth of FLL can be appropriately enlarged to shorten the settling time and make it faster to track the frequency of input signals.

Parameter Optimization of Tracking Loops
In addition to the noise bandwidth and damping ratio, the integration time T roll of the integrate and dump process in the roll angle detection module, also has great influence on the tracking loops. As shown in Figure 9, the integrate and dump process works as a low-pass filter to filter out high-frequency noises in i r (n) and q r (n). When the integration time is not large enough, the discriminators could suffer, due to residual errors caused by high-frequency components of i r (n) and q r (n) which eventually lead to a reduction of the tracking accuracy. After the integration process, I r (n) and Q r (n) can be represented as: sin Ω e t(n) where Ω e is the frequency error, Ω 0 is the sum of frequencies, Φ e is the phase error and Φ is the sum of phases between the roll modulation signals and local replicas. Generally, Ω 0 can be taken as high-frequency components of I r (n) and Q r (n) that can be removed by the integration process, as long as the integration time is more than 5 times the period of input signals. In that case, the longest integration time could reach 1.67 s at 3 Hz, which is barely possible to achieve, because the integration time cannot be too long, due to the limitation of real-time performance and pull-in ranges of the frequency discriminators [22]. The high-frequency components of I r (n) and Q r (n) must be eliminated by other methods, except for extending the integration time. One method to solve this problem is to set the integration time equal to integer multiple of the period of input signals. The formula derivation of this method is given by: sin c(Ω 0 T roll ) = sin c(2n f r T) = sin c(2n) = sin(2nπ)/2nπ = 0 (29) where Ω 0 = 2f r , T roll = n/f r = nT, (n = 1, 2, . . . ), at the circumstances that the frequency of the input signals f r has been locked by FLL.
To verify the theoretical analysis and figure out the optimal parameter settings, simulations have been carried out. The typical simulation results are shown in Figures 14-16 As we can see from Figures 14-16, when the integration time Troll is half of the period (Troll = (2n − 1) T/2, n = 1, 2, 3…), the phase errors of tracking results appear to be larger. When the integration time Troll is integer multiple of the period (Troll = nT, n = 1, 2, 3…), the phase errors appear to be the slightest. And when the integration time is more than 5 times larger than the period of input signals (Troll ≥ 5T), it has little effect on the tracking precision, which exactly proves our analysis.
When the frequency of the roll modulation signals changes during the tracking process, and the period of the input signals becomes longer than the original integration time, the tracking accuracy As we can see from Figures 14-16, when the integration time Troll is half of the period (Troll = (2n − 1) T/2, n = 1, 2, 3…), the phase errors of tracking results appear to be larger. When the integration time Troll is integer multiple of the period (Troll = nT, n = 1, 2, 3…), the phase errors appear to be the slightest. And when the integration time is more than 5 times larger than the period of input signals (Troll ≥ 5T), it has little effect on the tracking precision, which exactly proves our analysis.
When the frequency of the roll modulation signals changes during the tracking process, and the period of the input signals becomes longer than the original integration time, the tracking accuracy As we can see from Figures 14-16, when the integration time Troll is half of the period (Troll = (2n − 1) T/2, n = 1, 2, 3…), the phase errors of tracking results appear to be larger. When the integration time Troll is integer multiple of the period (Troll = nT, n = 1, 2, 3…), the phase errors appear to be the slightest. And when the integration time is more than 5 times larger than the period of input signals (Troll ≥ 5T), it has little effect on the tracking precision, which exactly proves our analysis.
When the frequency of the roll modulation signals changes during the tracking process, and the period of the input signals becomes longer than the original integration time, the tracking accuracy As we can see from Figures 14-16, when the integration time T roll is half of the period (T roll = (2n − 1) T/2, n = 1, 2, 3 . . . ), the phase errors of tracking results appear to be larger. When the integration time T roll is integer multiple of the period (T roll = nT, n = 1, 2, 3 . . . ), the phase errors appear to be the slightest. And when the integration time is more than 5 times larger than the period of input signals (T roll ≥ 5T), it has little effect on the tracking precision, which exactly proves our analysis.
When the frequency of the roll modulation signals changes during the tracking process, and the period of the input signals becomes longer than the original integration time, the tracking accuracy would be worse, or even, the loop could be unlocked. In order to track the frequency-varying signals smoothly and facilitate the parameter settings at different frequencies, a series of fixed parameter settings in different frequency bands are set up. We divide the rotational speeds from 3 r/s to 300 r/s into four groups with division points of 4 r/s, 10 r/s and 40 r/s respectively. The integration times of the first three groups are the maximum periods of the rotational speeds in each group. For they are longer than the other periods in their own group so that the residual errors can be minimized, while the loop is used to track the signals with frequencies of their own group. The integration time of the last group (40 ≤ f r < 300 r/s) is greater than the longest period of their group, for a fixed integration time of 50 ms is sufficient to meet the acquirements of accuracy and real-time performance at the same time. The optimal choices of other parameters in each group are obtained from extensive simulations with theoretical guidance in the last section. The simulation results in Figures 14-16 showed the most appropriate parameter settings that have been discovered, which can satisfy the reasonable settling time and overshoot simultaneously.
The overall optimal parameter settings at different frequencies of FLL-assisted PLL are given in Table 1. The corresponding performance index of the tracking loops is shown in Table 2, where the pull-in ranges of the loops are calculated with respect to a four-quadrant arctangent discriminator. With the presented parameter settings, we can use FLL-assisted PLL to track the roll modulation signals in high precision with reasonable settling time and overshoot. The real-time performance of tracking loops and the flexibility of parameter adjustments can also be ensured at the same time.

Error Analysis of Tracking Loops
For a pure PLL, the dominant sources of phase errors are phase jitter and dynamic stress error. The signal-to-noise ratio at the input of PLL is SNR i , with the bandwidth of B i . For there is no data modulation on the roll modulation signals, the square of the RMS phase jitter σ i 2 at the input of PLL can be represented as [25]: The RMS phase jitter σ 0 2 at the output of PLL is given by: Comparing (30) and (31), the SNR at the output of PLL can be defined as: For most cases, the bandwidth of PLL B PLL is much narrower than B i , so we can conclude from (32) that the PLL can improve the SNR at its output. Experimental results have shown that for second-order loops, when SNR o ≥ 4 (6 dB), a stable operation is generally possible [25]. For example, in this paper, the sampling rate of roll modulation signals is 1000 Hz and the bandwidth of it is approximately B i = 3 Hz. When B PLL is set to 0.5 Hz, the SNR of roll modulation signals must be SNR i ≥ 1.33 (1.25 dB), so that a stable operation of PLL is possible.
For a second-order PLL, the dynamic stress error can be expressed as [22]: where d 2 α/dt 2 is the phase acceleration of the roll modulation signals (deg/s 2 ). So, the overall error of PLL is given by: Figure 17 shows the theoretical predictions of the phase jitter at different SNRs of input signals. The bandwidth of input signal is 3 Hz, and the bandwidth of PLL is set to B PLL = 0.5 Hz. For most cases, the bandwidth of PLL BPLL is much narrower than Bi, so we can conclude from (32) that the PLL can improve the SNR at its output. Experimental results have shown that for second-order loops, when SNRo ≥ 4 (6 dB), a stable operation is generally possible [25]. For example, in this paper, the sampling rate of roll modulation signals is 1000 Hz and the bandwidth of it is approximately Bi = 3 Hz. When BPLL is set to 0.5 Hz, the SNR of roll modulation signals must be SNRi ≥ 1.33 (1.25 dB), so that a stable operation of PLL is possible.
For a second-order PLL, the dynamic stress error can be expressed as [22]: where d 2 α/dt 2 is the phase acceleration of the roll modulation signals (deg/s 2 ). So, the overall error of PLL is given by: Figure 17 shows the theoretical predictions of the phase jitter at different SNRs of input signals. The bandwidth of input signal is 3 Hz, and the bandwidth of PLL is set to BPLL = 0.5 Hz. As we can see from Figure 17, if the phase jitter of PLL is required to be within 10 degrees, the SNR of the roll modulation signals must be larger than 5.5 (7.4 dB) to ensure the tracking accuracy.
For FLL, the dominant sources of frequency errors show frequency jitter, due to thermal noise and dynamic stress error. The thermal noise of FLL in Hz is given by: where F = 1 at a high carrier-to-noise ratio (C/N0), F = 2 when working near the threshold. The relationship between C/N0 and SNR of input signals is C/N0 = SNR · Bi. For a first-order FLL, the dynamic stress error in Hz can be expressed as: According to the rule of thumb for tracking threshold, the 3-sigma jitter of FLL shall not exceed one fourth of the pull-in range of FLL discriminator. Therefore, when the four-quadrant arctangent discriminator is selected, the pull-in range of the discriminator is 1/Troll, and the tracking threshold of FLL can be described as: As we can see from Figure 17, if the phase jitter of PLL is required to be within 10 degrees, the SNR of the roll modulation signals must be larger than 5.5 (7.4 dB) to ensure the tracking accuracy.
For FLL, the dominant sources of frequency errors show frequency jitter, due to thermal noise and dynamic stress error. The thermal noise of FLL in Hz is given by: where F = 1 at a high carrier-to-noise ratio (C/N 0 ), F = 2 when working near the threshold.
The relationship between C/N 0 and SNR of input signals is C/N 0 = SNR · B i . For a first-order FLL, the dynamic stress error in Hz can be expressed as: According to the rule of thumb for tracking threshold, the 3-sigma jitter of FLL shall not exceed one fourth of the pull-in range of FLL discriminator. Therefore, when the four-quadrant arctangent discriminator is selected, the pull-in range of the discriminator is 1/T roll , and the tracking threshold of FLL can be described as:

Experiment Validation
For the purpose of validating the efficiency and precision of the proposed roll angle detection method, experiments were carried out. An intermediate frequency (IF) signal acquisition system was designed to collect satellite signals received by a single-patch antenna installed on a spinning vehicle. The L1 radio frequency signal is down-converted to the IF signal, sampled and stored in a flash memory unit, which can be processed by an SDR (Software Defined Radio) receiver on PC to obtain the roll modulation signals and test the roll angle detection module. The GNSS SDR software receiver we used was initiated by the Danish GPS Center at Aalborg University and was improved by the GNSS Laboratory at University of Colorado. A Hall Effect sensor was also installed on the spinning vehicle to record the zero-phase point of the roll angle as measurement datum to determine the measurement accuracy of the roll angle measurements. An Analog-to-Digital Converter (ADC) was designed to collect the output of the Hall Effect sensor as well. Figure 18 shows a block diagram of the IF acquisition system. The signals from a single-patch antenna were processed in the RF front-end, and then the digital baseband signals were processed in the FPGA (Field-programmable Gate Array) signal processor and saved in the flash memory.

Experiment Validation
For the purpose of validating the efficiency and precision of the proposed roll angle detection method, experiments were carried out. An intermediate frequency (IF) signal acquisition system was designed to collect satellite signals received by a single-patch antenna installed on a spinning vehicle. The L1 radio frequency signal is down-converted to the IF signal, sampled and stored in a flash memory unit, which can be processed by an SDR (Software Defined Radio) receiver on PC to obtain the roll modulation signals and test the roll angle detection module. The GNSS SDR software receiver we used was initiated by the Danish GPS Center at Aalborg University and was improved by the GNSS Laboratory at University of Colorado. A Hall Effect sensor was also installed on the spinning vehicle to record the zero-phase point of the roll angle as measurement datum to determine the measurement accuracy of the roll angle measurements. An Analog-to-Digital Converter (ADC) was designed to collect the output of the Hall Effect sensor as well. Figure 18 shows a block diagram of the IF acquisition system. The signals from a single-patch antenna were processed in the RF front-end, and then the digital baseband signals were processed in the FPGA (Field-programmable Gate Array) signal processor and saved in the flash memory. The electrical level of the Hall Effect sensor was recorded by an ADC circuit board with a sampling rate of 100 Hz, which was implemented on the LPC2148 microcontroller with a 10-bit successive approximation analog to digital converter, which is manufactured by NXP Semiconductor (Philips, Eindhoven, Netherlands). The sampling date was stored in a flash memory and read by PC via RS422 after the experiment. The block diagram of the ADC system is shown in Figure 19.  The electrical level of the Hall Effect sensor was recorded by an ADC circuit board with a sampling rate of 100 Hz, which was implemented on the LPC2148 microcontroller with a 10-bit successive approximation analog to digital converter, which is manufactured by NXP Semiconductor (Philips, Eindhoven, Netherlands). The sampling date was stored in a flash memory and read by PC via RS422 after the experiment. The block diagram of the ADC system is shown in Figure 19.

Experiment Validation
For the purpose of validating the efficiency and precision of the proposed roll angle detection method, experiments were carried out. An intermediate frequency (IF) signal acquisition system was designed to collect satellite signals received by a single-patch antenna installed on a spinning vehicle. The L1 radio frequency signal is down-converted to the IF signal, sampled and stored in a flash memory unit, which can be processed by an SDR (Software Defined Radio) receiver on PC to obtain the roll modulation signals and test the roll angle detection module. The GNSS SDR software receiver we used was initiated by the Danish GPS Center at Aalborg University and was improved by the GNSS Laboratory at University of Colorado. A Hall Effect sensor was also installed on the spinning vehicle to record the zero-phase point of the roll angle as measurement datum to determine the measurement accuracy of the roll angle measurements. An Analog-to-Digital Converter (ADC) was designed to collect the output of the Hall Effect sensor as well. Figure 18 shows a block diagram of the IF acquisition system. The signals from a single-patch antenna were processed in the RF front-end, and then the digital baseband signals were processed in the FPGA (Field-programmable Gate Array) signal processor and saved in the flash memory. The electrical level of the Hall Effect sensor was recorded by an ADC circuit board with a sampling rate of 100 Hz, which was implemented on the LPC2148 microcontroller with a 10-bit successive approximation analog to digital converter, which is manufactured by NXP Semiconductor (Philips, Eindhoven, Netherlands). The sampling date was stored in a flash memory and read by PC via RS422 after the experiment. The block diagram of the ADC system is shown in Figure 19. Figure 19. Block diagram of the Analog-to-Digital Converter (ADC) system. Figure 19. Block diagram of the Analog-to-Digital Converter (ADC) system.

Experiment Description
The installation of the experimental devices is shown in Figure 20. The intermediate frequency acquisition system, ADC system, Hall Effect sensor, and the single patch antenna spun with the vehicle together. When the Hall Effect sensor is activated by the magnet, it produces a low-level pulse as a zero-phase mark point. The magnet is settled below the spinning part of the rotary machine when the center of the antenna is facing the ground, it activates the Hall Effect sensor. The patch antenna was inserted into the vehicle by cutting off the side surface of it, and we adjusted the radiation characteristics of the antenna by integral design with the vehicle, so that the antenna has similar radiation characteristics to the unmounted patch antennas.

Experiment Description
The installation of the experimental devices is shown in Figure 20. The intermediate frequency acquisition system, ADC system, Hall Effect sensor, and the single patch antenna spun with the vehicle together. When the Hall Effect sensor is activated by the magnet, it produces a low-level pulse as a zero-phase mark point. The magnet is settled below the spinning part of the rotary machine when the center of the antenna is facing the ground, it activates the Hall Effect sensor. The patch antenna was inserted into the vehicle by cutting off the side surface of it, and we adjusted the radiation characteristics of the antenna by integral design with the vehicle, so that the antenna has similar radiation characteristics to the unmounted patch antennas. The experimental procedure was as follows: (1) Initialize the Flash of both systems with PC via the serial port. Send signals to start the IF acquisition system (t0) and the ADC system (t1) and record their start time; (2) Ensure the antenna's boresight is oriented to the zenith and record 90 s of IF data in static situation, record the start time (t2) and the end time (t3) as well; (3) Turn on the rotary machine, the antenna and Hall effect sensor rotates with the vehicle for 120 s with three different speeds listed in Table 3 and record the start time (t3) and end time (t4); (4) Connect the serial port, stop IF signals acquisition system (t5) and the ADC system (t6), record the end time of both recording systems, and read the data of them.

Tracking Results
Three experiments with different rotational speeds were conducted. The spin rates are 3.8 r/s, 6.4 r/s, and 7.5 r/s respectively. The collected IF signals were processed by two different modules, including the receiver module and the roll angle detection module. The collected signals were processed by an SDR receiver. The carrier tracking loop of the receiver is a second-order FLL-assisted third-order PLL, and the code phase errors were detected by a non-coherent discriminator. The processing results of the carrier and code tracking loops, including carrier NCOs, The experimental procedure was as follows: (1) Initialize the Flash of both systems with PC via the serial port. Send signals to start the IF acquisition system (t 0 ) and the ADC system (t 1 ) and record their start time; (2) Ensure the antenna's boresight is oriented to the zenith and record 90 s of IF data in static situation, record the start time (t 2 ) and the end time (t 3 ) as well; (3) Turn on the rotary machine, the antenna and Hall effect sensor rotates with the vehicle for 120 s with three different speeds listed in Table 3 and record the start time (t 3 ) and end time (t 4 ); (4) Connect the serial port, stop IF signals acquisition system (t 5 ) and the ADC system (t 6 ), record the end time of both recording systems, and read the data of them.

Tracking Results
Three experiments with different rotational speeds were conducted. The spin rates are 3.8 r/s, 6.4 r/s, and 7.5 r/s respectively. The collected IF signals were processed by two different modules, including the receiver module and the roll angle detection module. The collected signals were processed by an SDR receiver. The carrier tracking loop of the receiver is a second-order FLL-assisted third-order PLL, and the code phase errors were detected by a non-coherent discriminator.
The processing results of the carrier and code tracking loops, including carrier NCOs, code NCOs, one-millisecond accumulation values, and the carrier-to-noise ratios (C/N 0 ) are shown in Figure 21. As we can see from Figure 21, the carrier-to-noise ratios of the satellite signals are about 40 dB·Hz, which can be considered as strong signals. The carrier and code tracking loops can also work properly during antenna rotation and obtain the one-millisecond accumulation values constantly. code NCOs, one-millisecond accumulation values, and the carrier-to-noise ratios (C/N0) are shown in Figure 21. As we can see from Figure 21, the carrier-to-noise ratios of the satellite signals are about 40 dB·Hz, which can be considered as strong signals. The carrier and code tracking loops can also work properly during antenna rotation and obtain the one-millisecond accumulation values constantly. The one-millisecond accumulation values were then used to construct the roll modulation signals with Equation (16), and they were processed by the roll angle detection module to get roll angle. Figure 22 consists of three groups of panels and shows the tracking results of the roll angle detection module. In each panel group, the top left panel depicts the tracking process of FLL-assisted PLL. The top right panel in each group shows the tracking results of the frequency of the input signal. The phase and frequency discriminators outputs are shown at the bottom of each group. In our experiments, the spin rate was started from 0 to a designated rate and then held. To ensure the tracking accuracy and stability of loops, the signals processed in the roll angle detection module was selected with a constant spin rate. The one-millisecond accumulation values were then used to construct the roll modulation signals with Equation (16), and they were processed by the roll angle detection module to get roll angle. Figure 22 consists of three groups of panels and shows the tracking results of the roll angle detection module. In each panel group, the top left panel depicts the tracking process of FLL-assisted PLL. The top right panel in each group shows the tracking results of the frequency of the input signal. The phase and frequency discriminators outputs are shown at the bottom of each group. In our experiments, the spin rate was started from 0 to a designated rate and then held. To ensure the tracking accuracy and stability of loops, the signals processed in the roll angle detection module was selected with a constant spin rate. As shown in Figure 22, the tracking loops are fully capable of tracking the roll modulation signals, despite the roll modulation signals appearing to be a little different from the ideal sine waves. As we analyzed before, the roll modulation signals are directly related to the gain of the antenna. The gain pattern of the antenna we used in the experiments is not exactly the same as the sine wave, so the roll modulation signals seem to be different. To improve the measurement accuracy and tracking stability, the gain pattern of the antenna used to detect roll angle should be designed to match the sine function as much as possible.

Roll Angle Detection Results
The detected roll angle is compared to the Hall Effect sensor measurements, as shown in Figure 23, on the left. The deviations of estimated roll angles are shown in Figure 23, on the right. And the overall standard deviations of the roll angle estimation errors are shown in Table 3. As shown in Figure 22, the tracking loops are fully capable of tracking the roll modulation signals, despite the roll modulation signals appearing to be a little different from the ideal sine waves. As we analyzed before, the roll modulation signals are directly related to the gain of the antenna. The gain pattern of the antenna we used in the experiments is not exactly the same as the sine wave, so the roll modulation signals seem to be different. To improve the measurement accuracy and tracking stability, the gain pattern of the antenna used to detect roll angle should be designed to match the sine function as much as possible.

Roll Angle Detection Results
The detected roll angle is compared to the Hall Effect sensor measurements, as shown in Figure 23, on the left. The deviations of estimated roll angles are shown in Figure 23, on the right. And the overall standard deviations of the roll angle estimation errors are shown in Table 3. As shown in Figure 22, the tracking loops are fully capable of tracking the roll modulation signals, despite the roll modulation signals appearing to be a little different from the ideal sine waves. As we analyzed before, the roll modulation signals are directly related to the gain of the antenna. The gain pattern of the antenna we used in the experiments is not exactly the same as the sine wave, so the roll modulation signals seem to be different. To improve the measurement accuracy and tracking stability, the gain pattern of the antenna used to detect roll angle should be designed to match the sine function as much as possible.

Roll Angle Detection Results
The detected roll angle is compared to the Hall Effect sensor measurements, as shown in Figure 23, on the left. The deviations of estimated roll angles are shown in Figure 23, on the right. And the overall standard deviations of the roll angle estimation errors are shown in Table 3. As we can see from Table 3, the average standard deviation of roll angle measurements is 3.3°, which meets the requirements of practical usage. However, it is noticeable that the errors increase as the spin rate rises. It is due to the increase of dynamic stress caused by the instability of motor at high spin rates, which worsens the tracking performance of the second-order phase-locked loops.

Conclusions
We have achieved roll angle measurement through satellite signals, which are received by a side-mounted single-patch antenna on a spinning vehicle. First, the formation mechanism of roll modulation signals and the coordinate transformations to get real roll angle were analyzed. Then the roll modulation signals were obtained using one-millisecond accumulation values in the GPS receiver as well as analyzing the signal-to-noise ratio. The roll angle detection method based on FLL-assisted PLL was proposed. A first-order FLL assisted second-order PLL was selected and the optimum choices of each parameter were also analyzed. Finally, experiments were conducted to verify the feasibility and accuracy of the roll angle detection method. The experimental results showed that the method can detect the roll angle of a spinning vehicle at a precision of 5 degrees or lower. Further work, including the roll angle measurement experiments at high spin rates and the improvement of tracking accuracy under high dynamic stress, will be investigated.