GNSS based techniques allow a highly accurate attitude determination when using carrier-phase measurements. This paper describes a technique for attitude determination of a vehicle using GNSS carrier-phase measurements from multiple antennas and baselines.
Trang 1ROBUST ATTITUDE DETERMINATION USING MULTIPLE ANTENNAS GNSS CARRIER-PHASE MEASUREMENT FOR UAV
APPLICATIONS
Nguyen Huu Trung1*, Nguyen Minh Duc1, Thai Trung Kien2
Abstract: GNSS based techniques allow a highly accurate attitude determination
when using carrier-phase measurements This paper describes a technique for attitude determination of a vehicle using GNSS carrier-phase measurements from multiple antennas and baselines Real time attitude determination is required for a number of applications such as UAV controller design This system is essential for real time vehicle navigation, guidance and control applications The attitude determination system is based on RTK differential GNSS algorithm that estimates body frame baselines formed from multiple antennas, solves the ambiguity and attitude iteratively every epoch to give robust solutionand projects them onto a local horizontal plane The Monte Carlo simulations were performed to verify effectiveness of the proposed model
Key words: Attitude determination, UAV, Integer ambiguity, RTK, GNSS
1 INTRODUCTION
In recent years, the use of the GNSS for attitude determination has become well known, as it provides advantages over other methods [1] Attitude determination by differential carrier-phase GNSS has been studied extensively, and has resulted in numerous publications The traditional GNSS attitude system requires at least three
or four satellites to give attitude solution This depends on whether line bias is known and depends on a continuous, integrated carrier-phase measurements from multiple antennas [2] Heading and pitch angles can be determined using only two antennas The attitude determination consisted of two main steps The first step is to calculate the vector between the antennas using differential solution techniques, and then calculate the attitude parameters Calculating the vector can be done by pseudo range or by phase measurements For accurate applications, the vector is calculated using carrier-phase measurements and solving integer ambiguity
The attitude determination system is based on differential algorithms that estimate three or more baselines The attitude information is derived by projecting these baselines onto a local horizontal plane [3] GNSS based attitude system processes code and carrier-phase observations to estimate baselines, which are then used to estimate the attitude angles [4]
Any interruption of signal leads to reinitialize the attitude calculation process This interruption is considered as cycle slip of the calculation A new integer-ambiguity search is initialized in the attitude computation algorithm caused by a cycle slip This is always susceptible to error, especially if the signals are noisy [5]
In this paper, we propose the attitude estimation algorithmby solving the ambiguity iteratively every epochin order to prevent interruption, give robust attitude solution for UAV applications
The rest of the paper is organized as follows In the next section, we present GNSS attitude determination system model Section 3 presents simulation
Trang 2results Concluding remarks and directions for further researches are mentioned
in the last section
2 GNSS ATTITUDE DETERMINATION 2.1 GNSS Attitude Determination principle
An attitude determination system (ADS) is a system that defines the orientation
of a moving vehicle The attitude is defined by three angles including yaw, pitch, roll of the body frame to a system frame typically defined in reference to the horizonal plane [6]
Figure 1 Vector Diagram for attitude determination
The fundamental concept of GNSS Attitude Determination (GAD) is shown in Figure 1 The measurement of the phase of the GNSS signal carrier allows to determine the baselines of the antennas in the body reference frame Baselines areused to calculate the attitude of the vehicle by coordinates transformation
Figure 2 Double difference model
The single or double difference carrier-phase measurement is generally used in attitude determination using the GNSS signal To determine the 3-D attitude, it is
necessary to have m (≥ 4) visible GNSS satellites and m a (≥ 2) baselines or
equivalently m a+1 antennas
Proposed GAD process includes following steps:Get raw measurement data from GNSS receivers; Estimate position of master receiver; Track Ambiguities based-on GNSS carrier-phase measurement; Estimate baselinesusing integer ambiguity resolution; Attitude estimation using coordinate transformation The
Trang 3process is iterated every data epoch to give robust solution These steps are described as follows
2.2 GNSS carrier-phase measurement
Since the carrier-phase measurement have higher resolution than that of the code phase measurement, it can be used for the attitude determination of vehicles with multiple antennas confuguration The attitude of a vehicle is determined by difference carrier-phase measurement The double difference technique has been used for attitude determination because it can remove receiver clock bias and other common errors except for the integer ambiguity and measurement noise [7]
In general, the carrier-phase measurement model is as follows:
( )
where the subscript k indicates the k-th receiver (for base, denote b, for rover, denote r), the superscript i indicates the i-th satellite, λ is the wavelength, ( ) is
the true range between the receiver antenna k and GNSS satellite i, c is the speed of
light, is receiver clock error from GNSS time, ( ) is the satellite clock offset from GNSS time, ( ) is ionospheric delay error, ( ) is tropospheric delay error, ( ) is delay error due to satellite ephemerides error, ( ) is the carrier-phase integer ambiguity and represents other errors such as multipath, inter channel receiver biases, thermal noise , = ( ), ( )= ( )( ) are phases at initial time
The phase‐range is expressed as:
The single and double carrier-phase difference is modeled as shown in Figure 2:
∇∆ ( ) = ∆ ( )− ∆ ( ) (4) Given that the common clock is used in the system, the satellite clock error ( )can be removed by a single difference as:
Due to the short baselines used, common mode error terms
∆ ( ) , ∆ ( ) , ∆ ( ) between satellites and receivers can be eliminated or greatly reduced, we have:
However, the receiver clock error still exists To eliminate the receiver clock error, the second or double-difference is formed by subtraction of the first difference for one satellite to another:
Trang 4Where: ∇∆ ( ) = ∆ ( )− ∆ ( ) (9) Attitude determination that uses carrier-phase difference technique between antennas forms baselines A baseline is a vector ⃗ between a couple of antennas (base antenna and rover antenna) The distance between antennas is small while the distance to satellites is large (20 km) Therefore, the carrier-phase single-difference for a baseline in terms of length is:
Whereθ( ) is the angle between the baseline and the unit vector ⃗( )directsfrom
the baseantennatowards GNSS satellite i; λ is the wavelength and d is the
baselinelength Since GNSS receiverscanonlymeasure the fractional portion of one carrier-phase cycle, ∆ can be expressed as:
In (51), ( ) represents the unknown number of integer cycles from the satellite
to the base antenna and ̅( ) is actual phase difference measurement If this integer can be calculated, we can calculate the coordinates of baseline, then we can determine the attitude of vehicle
The single-difference carrier-phase measurement equation is expressed as:
∆ ( )− ∆ ( ) + ∆ = cosθ( )
and pitch, respectively; Unit satellite vector
⃗( ) = ( ( ) ( ); ( ) ( ); ( )), ( ), ( ) are the yaw and pitch, respectively
The double-difference carrier-phase measurement equation is expressed as:
∇∆ ( )− ∇∆ ( ) = ⃗ ⃗( )− ⃗( ) = ⃗( )− ⃗( ) cosθ( )
∇∆ ( )− ∇∆ ( ) = ⃗( ) − ⃗ ( ) ( ) + ( ) cos ( ( )− ) (13) Where ⃗( )− ⃗( ) = ⃗( )− ⃗( ) ( ( ) ( ); ( ) ( ); ( ))
is the differencevectorbetween the satellite i and j; ( ), ( ) are the yaw and pitch, respectively; θ( )is the included angle between the baselinevector and the satellite ( ⃗( )− ⃗( )) vector, ∇∆ ( ), ∇∆ ( ) are the integral and decimal part of the double-differencecarrier-phase measurement, respectively
2.3 Integer ambiguity resolution
For a short baseline, the double-difference carrier-phase measurement equation (13) is rewritten as:
∇∆ ( ) = ⃗( )− ⃗( ) ⃗ + ∇∆ ( )+ ( ) (14) Where ( ) is anunmodelederror Assume M satellites are in view simultaneously, satellite M is the reference satellite M-1 double-difference
carrier-phase measurement equations can be established for every baseline:
Trang 5⎢
⎢
⋮
⎥
⎥
⎤
=
⋮
⃗ +
⋮
+
( ) ( )
⋮ (( ) )
(15)
The carrier-phase double-difference measurement is presented in matrix form as:
Denote body frame coordinate as NED (North-East-Down), for each baseline
=
(17)
H is the geometry matrix consists of the transpose of the line-of-sight (LOS)
vector to the i-th satellite [8] Each row corresponds to the i-th entry in the
double-differenced carrier-phasemeasurement ∇∆ ( ), and the i-th entry in the
double-differenced integer ambiguity vector ∇∆ Once the integer ambiguities are solved for each satellite, the baseline vector can be found by using the following weighted least square solution as:
where R is the matrix of measurement noise covariance
The main difficulty in using carrier-phase measurements is the resolution of the
unknown integer number of cycles, the phase ambiguity N N must be solved first
by an ambiguity resolution method
In dynamic applications such as UAVs, it is important to determine the correct set of ambiguities in the shortest period of time and with a minimum of computations Hence, we use LAMBDA (Least-square AMBguity Decorrelation Adjustment) [9] algorithm for searching in integer space LAMBDA algorithm resolves the IA problem by minimizing a quadratic cost function of the weighted ambiguities error iteratively The weighting matrix is chosen to be the inverse of the covariance matrix The integer nature of the ambiguities is considered as a constrained optimization problem:
Where and are float estimates of the ambiguity and its covariance matrix respectively LAMBDA algorithm is described as schematic below [6]:
Figure 3 LAMBDA algorithm
Trang 6Since the baseline is short, the integer search can be done very efficiently because there are only a few possibilities for the integer ambiguities [10]
2.4 The coordinate transformation
The attitude determination system which is based-on carrier-phase measurement estimates three or more body frame baselines and projects them onto a local horizontal plane The attitude is measured in North-East-Down coordinate while the input parameters in Earth-Centered-Earth-Fixed (ECEF) coordinate The rotation matrix of the ECEF coordinates to the local coordinates is expressed as:
=
Where and are the geodetic latitude and the longitude of the receiver position By using the and the receiver position in the ECEF coordinates, the position in the ECEF coordinates can be transformed to the position in the local coordinates as:
3 SIMULATION RESULTS
An attitude determination system for simulation based on multiple antennas GNSS carrier-phase measurement method consists of two configuration The first configuration for fixed-wing UAVs uses four antennas to receive the GNSS signals placed on the middle of the tail, on the wings and on the nose as shown in Figure 4 and the second configuration uses four antenna with antenna places as shown in Figure 5 for quadrotor UAVs
The simulationparameters and the calculated baselines between antennas as shown on the Table 1
Table 1 Simulation parameters
Antenna configuration
Fixed-wing UAVs
Quadrotor UAVs
Carrier-phase
C/A code/ Carrier-phase
Prime distance between antennas
(d)
d3=1.5206d
d23=d13=2.236d
d1=d2=d
d3=1.414d
d23=d13=d
Trang 7The attitude solution is derived from unaided, single-epoch, single-frequency GNSS observations at L1 frequency The simulation collected GPS-L1 data for
500 epochs at 1Hz sampling We consider the single-frequency case because it is
of interest for many aerospace applications, where limits on weight and power consumption must often be respected
Using multiple baselines and after the optimal integer ambiguity set is known for all the baselines, the attitude angles are obtained The simulation results are presented in Figure 6 (a-b), Figure 7 (a-b) The performance is good with high accuracy shown in Table 2 As represented in Table 2 and in Figure 6, 7, the yaw angle gives the best performance because of the influence of the Up coordinate which is more effected by noise than the East and North coordinates in both pitch and roll angles
Table 2 Standard errors of attitude determination simulation for Fixed-wing
UAVs by code-phase and carrier-phase measurement
Test Epochs Attitude Fixed-wing UAVs, Std Errors (degree)
1 100 Yaw; Roll; Pitch 0.165; 0.329; 0.242 0.0041; 0.0077;
0.0058
2 200 Yaw; Roll; Pitch 0.391; 0.406; 0.787 0.0042; 0.0084;
0.0066
3 300 Yaw; Roll; Pitch 0.448; 0.599; 0.630 0.0044; 0.0094;
0.0070
4 400 Yaw; Roll; Pitch 0.419; 0.648; 0.812 0.0046; 0.0100;
0.0071
5 500 Yaw; Roll; Pitch 0.386; 0.600; 0.750 0.0048; 0.0108;
0.0071
Figure 4 Four-antenna configuration in multiple antennas GNSS carrier-phase
measurement method for fixed-wing UAVs
Trang 8Figure 5 Four-antenna configuration in multiple antennas GNSS carrier-phase
measurement method for quadrotor UAVs
(a)
50 100 150 200 250 300 350 400 450 500 550 50.73
51.16
51.59
52.02
52.45
Mean=38.5068 Std=0.3568
Epoch
50 100 150 200 250 300 350 400 450 500 550 24.17
25.16
26.15
27.14
28.13
Mean=13.0827 Std=0.9109
Epoch
50 100 150 200 250 300 350 400 450 500 550 -40.04
-39.47
-38.91
-38.35
-37.79
Mean=-51.9820 Std=0.5906
Epoch
Trang 9(b)
Figure 6 Fixed-wing configuration, Single epoch, GPS-L1,
code-phase measurement (a), carrier-phase measurement (b), d=5m
(a)
50 100 150 200 250 300 350 400 450 500 550 50.93
50.94
50.95
50.96
50.97
Mean=37.9511 Std=0.0051
Epoch
50 100 150 200 250 300 350 400 450 500 550 24.64
24.65
24.67
24.68
24.70
Mean=11.6691 Std=0.0116
Epoch
50 100 150 200 250 300 350 400 450 500 550 -40.15
-40.14
-40.12
-40.11
-40.10
Mean=-53.1234 Std=0.0072
Epoch
50.73
51.16
51.59
52.02
52.45
Mean=38.5529 Std=0.3717
Epoch
24.17
25.16
26.15
27.14
28.13
Mean=13.1919 Std=0.9661
Epoch
-40.04
-39.47
-38.91
-38.35
-37.79
Mean=-52.1095 Std=0.5746
Epoch
Trang 10(b)
Figure 7 Quadrotor configuration, Single epoch, GPS-L1, code-phase
measurement (a), carrier-phase measurement (b), d=5m
4 CONCLUSIONS
This paper has presented a system model and algorithm for attitude
determination of a vehicle using simultaneous GNSS carrier-phase measurements
from multiple antennas This system which uses multiple antennas for attitude
determination is a high-bandwidth, accurate means of determining three-axis
attitude for guidance and control applications The results of this ongoing research
have shown that it is possible to achieve reality and reliability and a certain attitude
solution precision based-on MATLAB simulations
In the next research, we increase the robustness of GNSS system by coupling it
with an INS system by robust filter to minimize the maximum error of a sensor
signal due to any possible disturbance, without making assumptions about the
interferences in the system for such applications that work in rugged environment
Acknowledgement: The authors would like to thank the Ministry of Science and
Technology has supported under the project number ĐT.ĐL.01/02-2016
51.75
51.76
51.76
51.77
51.78
Mean=38.7647 Std=0.0053
Epoch
26.25
26.26
26.28
26.30
26.31
Mean=13.2821 Std=0.0115
Epoch
-39.10
-39.09
-39.07
-39.06
-39.05
Mean=-52.0753 Std=0.0075
Epoch