Improving Vehicle Heading Angle Accuracy Based on Dual-Antenna GNSS/INS/Barometer Integration Using Adaptive Kalman Filter

High-accuracy heading angle is significant for estimating autonomous vehicle attitude. By integrating GNSS (Global Navigation Satellite System) dual antennas, INS (Inertial Navigation System), and a barometer, a GNSS/INS/Barometer fusion method is proposed to improve vehicle heading angle accuracy. An adaptive Kalman filter (AKF) is designed to fuse the INS error and the GNSS measurement. A random sample consensus (RANSAC) method is proposed to improve the initial heading angle accuracy applied to the INS update. The GNSS heading angle obtained by a dual-antenna orientation algorithm is additionally augmented to the measurement variable. Furthermore, the kinematic constraint of zero velocity in the lateral and vertical directions of vehicle movement is used to enhance the accuracy of the measurement model. The heading errors in the open and occluded environment are 0.5418° (RMS) and 0.636° (RMS), which represent reductions of 37.62% and 47.37% compared to the extended Kalman filter (EKF) method, respectively. The experimental results demonstrate that the proposed method effectively improves the vehicle heading angle accuracy.


Introduction
With the advancement of vehicle intelligence, real-time attitude based on available measurements plays a vital role in reliable path planning, decision making, and controls in autonomous vehicles [1].Considering the actual conditions of the vehicle in motion, the estimation of vehicle attitude is mainly determined by the accuracy of the heading angle [2].A variety of sensors can be utilized to measure the heading angle, such as GNSS (Global Navigation Satellite System), INS (Inertial Navigation System), magnetometers, vision sensors, laser radar, wireless signals, and so on [3][4][5][6][7][8][9][10][11].In the above-mentioned methods, the integration of GNSS/INS is one of the most common approaches in the field of automotives [12].
However, some essential state variables, such as heading (error), are not well observed in some specific driving scenarios while fusing GNSS and INS data [13].For a lowcost inertial measurement unit (IMU), this phenomenon is even more pronounced [14].Therefore, in order to improve the accuracy of the heading angle and increase the robustness of the system, it is necessary to add other sensors and adopt innovative algorithms.
GNSS velocity measurements can be accurate because a GNSS receiver determines velocity based on the Doppler shift of GNSS carrier waves or by differencing consecutive Sensors 2024, 24, 1034 2 of 16 GNSS carrier wave measurements [15].Therefore, two GNSS receivers were utilized to measure the velocity of a vehicle and calculate the vehicle heading angle based on kinematic relationships [16].At the same time, increasing the number of GNSS receivers results in an increase in costs.As technology evolves, dual-antenna GNSS receivers, utilizing baseline orientation to determine heading angles, are widely applied for integration with an IMU [17,18].A wheel speed sensor (WSS) is another option to replace the second GNSS receiver because it can measure the speed of individual wheels.But velocities from WSSs need to be converted to the local navigation frame (n-frame) with the aid of an IMU [19].It is also practical to use a magnetometer as an additional sensor to measure the heading angle.To reject the magnetic disturbances from other components, a new stochastic filter was designed and integrated into a Kalman filter framework [20].To suppress the divergence of the heading angle, an effective approach is the kinematic model-based method, which is a simple vehicle model that correlates the vehicle's longitudinal and lateral velocities with longitudinal and lateral accelerations and the heading rate [21].A steering constraint based on a kinematic model was designed to enhance the heading angle estimation accuracy of land vehicles [22].However, this method is only applicable to stationary or low-speed states.Inspired by vehicle kinematics, a novel method of heading angle estimation based on Zero-Heading angle-Variation-Constraint and Sequential-Adaptive Unscented Kalman Filter algorithms is proposed for solving the problem of heading angle unobservability and the instability of the filtering [23].Owing to the presence of heading angular outputs from dual-antenna GNSS and INS systems, the mounting angle errors will reduce the heading angle accuracy [24].GNSS antennas usually have a regular shape, and the mounting angle can be measured using optical methods.But this method requires specialized equipment to be prepared in advance.Heading angle misalignment between a dual-antenna GNSS and a vehicle frame was also estimated using a robust regression method [13].The influence of random noise and outliers was effectively suppressed through this algorithm in the heading angle measurement.For mounting angle errors between the IMU frame and the vehicle frame, the dead reckoning method in a straightforward Kalman filter was a conventional and proven method.But formal experiments require a period of time for filter convergence [25,26].A novel model was proposed to associate the INS heading angle error with the position and velocity by a lever arm [27].However, experimental validation was set up only for large angular errors.To address smaller error angles, an error-state Kalman filter using vehicle velocity and non-holonomic constraints was developed to estimate IMU mounting angles [28].
Inspired by [18], a dual-antenna GNSS receiver is added to this study to improve the vehicle heading angle accuracy and supply the initial heading.The barometer that calculates elevation changes by obtaining the difference in air pressure values at different locations is one of the common sensors in consumer-grade devices.However, integrated GNSS/INS/Barometer navigation in vehicles has been under-explored.Based upon the foregoing, the main contributions of this study are summarized as follows: 1.
A random sample consensus (RANSAC) method is applied to improve the initial heading angle accuracy and to ensure the initial attitude accuracy of the INS.

2.
GNSS heading angle obtained by a dual-antenna orientation algorithm is added as a measurement variable in the integrated navigation system based on an adaptive Kalman filter (AKF) in addition to position and velocity.Furthermore, velocity and position errors caused by the lever arm are corrected.The kinematic constraint of zero velocity in the lateral and vertical directions of vehicle movement is used to enhance the accuracy of the measurement model.

3.
A barometer is added to the traditional GNSS/INS integrated navigation system to enhance the reliability of the system.When none of the GNSS receiver data are available, the barometer and INS data are used to ensure a short-time accuracy.
The remainder of this paper is organized as follows: The Section 2 describes the basic concepts, the dual-antenna orientation algorithm, and the fusion process using AKF.The Section 3 introduces the experimental platform and analyzes the error of the experimental results in the open and occluded environment.The Section 4 summarizes this work.

Methodology Design
The architecture of the GNSS/INS/Barometer integration is illustrated in Figure 1.ω b ib represents the angular velocity of the IMU body with respect to inertial space in IMU body axes measured by the gyroscopes.f b ib represents the specific force of the IMU body with respect to inertial space in the IMU.v n and p n are the three-dimensional velocity and position.ψ and h represent the heading angle and elevation.The remainder of this paper is organized as follows: The Section 2 describes the basic concepts, the dual-antenna orientation algorithm, and the fusion process using AKF.The Section 3 introduces the experimental platform and analyzes the error of the experimental results in the open and occluded environment.The Section 4 summarizes this work.

Methodology Design
The architecture of the GNSS/INS/Barometer integration is illustrated in Figure 1.* G represents values measured by GNSS.δ represents the error value.
To ensure the accuracy of the vehicle heading angle output by the proposed algorithm, the heading angle mounting error is corrected by an error-state Kalman filter using kinematic constraints.Due to the rectangular body of the intelligent automobile and the presence of the antenna-limiting holes, the calibration of the GNSS antenna can be performed with millimeter accuracy using a scale at the time of installation.

Reference Coordinate System for Integrated Navigation System
Integrated navigation requires a set of unified coordinate systems to accurately represent the state of the vehicle.The common coordinate systems are Earth-Centered Earth-Fixed (e-frame), local navigation frame (n-frame), and body frame (b-frame).In the nframe, the x-axis, y-axis, and z-axis point east, north, and up, respectively.The b-frame is the right-handed 3D Cartesian frame rigidly connected to the vehicle with the x-axis, yaxis, and z-axis in the vehicle's right, front, and up directions, respectively.The diagram of the coordinate system is shown in Figure 2. * G represents values measured by GNSS.δ represents the error value.
To ensure the accuracy of the vehicle heading angle output by the proposed algorithm, the heading angle mounting error is corrected by an error-state Kalman filter using kinematic constraints.Due to the rectangular body of the intelligent automobile and the presence of the antenna-limiting holes, the calibration of the GNSS antenna can be performed with millimeter accuracy using a scale at the time of installation.

Reference Coordinate System for Integrated Navigation System
Integrated navigation requires a set of unified coordinate systems to accurately represent the state of the vehicle.The common coordinate systems are Earth-Centered Earth-Fixed (e-frame), local navigation frame (n-frame), and body frame (b-frame).In the n-frame, the x-axis, y-axis, and z-axis point east, north, and up, respectively.The b-frame is the right-handed 3D Cartesian frame rigidly connected to the vehicle with the x-axis, y-axis, and z-axis in the vehicle's right, front, and up directions, respectively.The diagram of the coordinate system is shown in Figure 2.
To establish the connection between the n-frame and b-frame, three Euler angles (roll, pitch, and heading) are used to construct the coordinate transformation matrix.In the nframe, the matrix C b n is obtained by rotating the z-x-y axes (heading-pitch-roll) sequentially.The coordinate transformation matrix C b n is expressed as where ϕ, θ, and ψ are the roll, pitch, and heading angles, respectively.

RANSAC Algorithm
For consumer-grade IMUs, initial alignment does not obtain a heading angle.Therefore, an accurate initial heading angle from the GNSS is critical for attitude updates.
The initial heading angle is modeled as where A RANSAC method is applied to estimate initial ψ .To tackle the abnormal values in GNSS measurements, all data are divided into inliers and outliers based on a threshold ε [29]: where d means the distance from the point to the line formed by the chosen two points.
After iteration, the model containing the most inliers is chosen as the true value model.

INS Error-State Model Development 2.2.1. RANSAC Algorithm
For consumer-grade IMUs, initial alignment does not obtain a heading angle.Therefore, an accurate initial heading angle from the GNSS is critical for attitude updates.
The initial heading angle is modeled as where ψ initial_G is measured by GNSS, ψ initial is the true value, and χ represents measurement noise.
A RANSAC method is applied to estimate ψ initial .To tackle the abnormal values in GNSS measurements, all data are divided into inliers and outliers based on a threshold ε [29]: where d means the distance from the point to the line formed by the chosen two points.
After iteration, the model containing the most inliers is chosen as the true value model.

INS Error-State Model
According to the mechanical choreography of inertial navigation, the non-linear error model is linearized.The error model can be expressed as [30] .
where α is the misalignment angle and α = [δϕ δθ δψ] T , δv n is the velocity error in the n- , and the other elements in the M pv 3×3 and M pp 3×3 are zero.
Generally, the gyro constant drift ε b and accelerometer constant bias ∇ b are described by random constants as follows [12]: The system-state vector of the INS/GNSS integrated system is defined as The low-cost IMU in this work cannot measure the rotation rate of the Earth due to its insufficient accuracy.Moreover, the error caused by the change in g is minimal.Based on the chosen system state and the above-mentioned reasons, we can obtain the error-state equation through combining ( 4)-( 9) [18] .
where −ω n in × and f n × denote the 3 × 3 skew-symmetric matrix of −ω n in and f n .

Dual-Antenna Orientation Algorithm
The dual-antenna GNSS receiver defines the vehicle heading by calculating the baseline orientation.Thus, the primary aim of the algorithm is to form the baseline vectors by difference.For satellite i in Figure 2, the distance equations using the carrier wave can be expressed as [15] Sensors 2024, 24 A transformation of the equation gives where l r represents the identity direction vector between the antenna and the satellite, b main,slave represents the baseline vector, and ∆∇ represents the double difference operator.The Least-squares Ambiguity Decorrelation Adjustment (LAMBDA) algorithm is utilized to solve for integer ambiguity [31].The least squares method is used to obtain the baseline vector.

Measurement Model 2.4.1. Initial Measurement Model
In order to develop the measurement model, the heading angle, velocity, and position from the GNSS receiver are imported into the measurement error equation.The measurement model can be expressed as where ψ G , v n G and p n G are measured by GNSS, and ψ I , v n I and p n I are measured by INS.

The Lever Arm Correction Algorithm
Since the origin of the measured position and velocity by GNSS is located at the phase center of the main antenna and the origin of the INS measurements is located at the IMU, the spatial distance between the main antenna and the IMU (referred to as the lever arm) should be taken into account.
The IMU is located at the b-frame origin; GNSS velocity can be corrected by [32] where v n G is the velocity at the origin of the n-frame, v n G ′ is the velocity prior to correction, ω T (the placement can be seen in Figure 2).The GNSS position can be corrected by [32] where p n G is the position at the origin of the n-frame, and p n G ′ is the position prior to correction.

Corrected Measurement Model Using the Kinematic Constraint
Considering the actual conditions of the vehicle in motion, the vehicle is moving normally without skidding and jumping.The kinematic constraint, which refers to zero velocity in the lateral and vertical directions of vehicle movement, is utilized to improve the accuracy of the measurement model: Using the corrected GNSS data, the measurement equation can eventually be expressed as where H 11 (3,3) = 1, and the other elements in the H 11 are zero.
where δψ G , δv n G , and δp n G are the measurement noises, which correspond to the onedimensional heading error, three-dimensional velocity error vector, and three-dimensional position error vector of the GNSS receiver, respectively.

Corrected Measurement Model for Special Scenarios
When the GNSS receiver can fix positions but the dual-antenna orientation algorithm fails, the measurement model can be changed to When the GNSS does not receive the signal and cannot fix positions, none of the GNSS receiver data are available, so the barometer and INS data are used to ensure short-time accuracy.
The barometer/INS measurement model can be expressed as where H 15×15 (6,6) = 1, and the other elements in the H 15×15 are zero.υ(t) indicates barometer measurement noise.

AKF Design
Based on the models developed in Sections 2.2 and 2.4, an AKF is designed for sensor data fusion.The discretization of a linearized system in continuous time leads to [33] x where Φ k/k−1 ≈ I + F(t k−1 )T s , T s is the discrete interval time.
AKF update is mainly divided into two parts: prediction and correction.The prediction part is divided into one-step state prediction and MSE (mean square error) matrix prediction.The formulas are as follows [34]: The prediction residual is defined by The prediction residual is constructed by a two-segment adaptive factor [35]: where α k is the adaptive factor, V k =∥ Vk ∥ / trace P Vk , P Vk is the prediction residual covariance matrix, ∥ * ∥, and trace( * ) represents the least-squares norm and the trace of the matrix, respectively.c is the empirical threshold.
In the correction part, Kalman gain is calculated first, followed by state estimation and MSE matrix estimation.The formulas are as follows.

Experiment Platform
Figure 3 shows the experimental vehicle platform equipped with an integrated navigation receiver (UMPOLA V18D, UniStrong, Beijing, China) consisting of a GNSS receiver, an IMU module, and a barometer.The characteristics of the three modules are listed in Table 1.In order to obtain data from the different modules at the same time, all information is collected using NAVITEST engineering software version 1.0.0.1 and stored on the PC.
The positioning antenna (master antenna) is located at the rear limit hole of the vehicle and the directional antenna (slave antenna) is located at the front limit hole.The two antennas are 1.0 m apart.
Figure 3 shows the experimental vehicle platform equipped with an integrated navigation receiver (UMPOLA V18D, UniStrong, Beijing, China) consisting of a GNSS receiver, an IMU module, and a barometer.The characteristics of the three modules are listed in Table 1.In order to obtain data from the different modules at the same time, all information is collected using NAVITEST engineering software version 1.0.0.1 and stored on the PC.

Open and Occluded Environment Experiment
The playground of Beijing Forestry University has both straight and curved paths and is not obstructed by tall buildings and trees, so it can intuitively and clearly reflect the performance of the proposed algorithm.The open environment experimental data were obtained by the vehicle traveling one lap counterclockwise around the fifth track of the playground.Considering the inevitability of the occlusion problem, the occluded environment experiments at the east campus were added to the heading angle estimation experiments.The trajectory of the occluded environment experiment included sharp curves, a ninety-degree turn, and a straight line, and these roads verified the sensitivity of the algorithm.The experimental scenario and trajectory of the open and occluded environment are depicted in Figure 4.
In order to clearly characterize the degree of obscuration, horizontal dilution of precision (HDOP) was introduced into the experiment.As shown in Figure 5a, the HDOP values were below 1 throughout the experiment, which means that the GNSS signal was good.The value of HDOP exhibits significant fluctuations in Figure 5b.At 85-100 s, the vehicle drove into the building tunnel (Figure 4b); at this time, the GNSS signal was completely obstructed and the GNSS receiver did not work properly.
As shown in Figure 6a,b, the maximum lateral acceleration and angular rate reached 3.33 m/s 2 and 19.21 • /s in the open environment experiment.The acceleration and angular rate produced even more dramatic fluctuations, as shown in Figure 6c,d, where the peak of the angular rate exceeded 35 • /s.This result is highly compatible with the route of the occluded environment experiment.In order to clearly characterize the degree of obscuration, horizontal dilution of pr cision (HDOP) was introduced into the experiment.As shown in Figure 5a, the HDO values were below 1 throughout the experiment, which means that the GNSS signal w good.The value of HDOP exhibits significant fluctuations in Figure 5b.At 85-100 s, th vehicle drove into the building tunnel (Figure 4b); at this time, the GNSS signal was com pletely obstructed and the GNSS receiver did not work properly.In order to clearly characterize the degree of obscuration, horizontal dilution of cision (HDOP) was introduced into the experiment.As shown in Figure 5a, the HD values were below 1 throughout the experiment, which means that the GNSS signal good.The value of HDOP exhibits significant fluctuations in Figure 5b.At 85-100 s vehicle drove into the building tunnel (Figure 4b); at this time, the GNSS signal was c pletely obstructed and the GNSS receiver did not work properly.

Experimental Results and Discussion
The heading angle estimations for the open and occluded environment experime are illustrated in Figure 7.The reference data are the result of using the original filter algorithm of the integrated navigation receiver.The accuracy of the reference heading gle data is 0.05° at the one-meter baseline, which is better than the accuracy of the GN orientation algorithm.

Experimental Results and Discussion
The heading angle estimations for the open and occluded environment experiments are illustrated in Figure 7.The reference data are the result of using the original filtering algorithm of the integrated navigation receiver.The accuracy of the reference heading angle data is 0.05 • at the one-meter baseline, which is better than the accuracy of the GNSS orientation algorithm.
In Figure 7a, the start and end heading angle of the test vehicle varied by more than 360 • .The extended Kalman filter (EKF) method was selected as the comparison method and the measurement variables of the EKF method were three-dimensional velocity and position.As can be seen from the two local magnifications, the curves of the AKF method are more identical to the reference curve than that of the EKF method, regardless of whether the GNSS heading angle is utilized as a measurement variable or not.When heading angle is used as a measurement variable, the results of the AKF with heading angle method are significantly closer to the reference value than those of the AKF without heading angle method.
The results of the heading angle comparison using the different methods are presented in Figure 7b.The results of the 200-s experiment were divided into three parts: 0-85 s for part 1, 85-189 s for part 2, and 189-200 s for part 3.In part 2, the time period of the GNSS heading angle anomaly diverges from the results of HDOP in Figure 5b.HDOP was zero from 85 s to 100 s, which means that the GNSS receiver could not fix the position.At this point, the only measurement variable was the elevation data from the barometer.The results of the proposed method maintain better accuracy than the comparison method.At the moment of the 100th second, the value of HDOP changed abruptly from 0 to 3.36 and the positioning function was restored.The GNSS heading angle did not return to normal until the 189th second, as the dual-antenna orientation algorithm failed.The measurement variables of the AKF method are three-dimensional velocity and position.Due to the GNSS heading angle abnormality in the whole of part 2, the measurement variables of the proposed method did not include the GNSS heading angle.Successful experimental results using the AKF method were presented in situations with both complete and partial occlusion.As shown in the two enlargements, after integration with the high-frequency INS, the estimated heading by the AKF method was smoother than that of the original GNSS heading.The AKF curve has less error compared to the curve of the EKF method.In Figure 7a, the start and end heading angle of the test vehicle varied by more than 360°.The extended Kalman filter (EKF) method was selected as the comparison method and the measurement variables of the EKF method were three-dimensional velocity and position.As can be seen from the two local magnifications, the curves of the AKF method In order to analyze the results accurately, Table 2 exhibits specific error indicators throughout the experimental period.The values of MAE, STD, and RMS represent the overall level of error, which mainly depends on the environment and the algorithm.By comparing different scenarios, it is revealed that the errors in the open environment are overall better than the errors in the occluded environment.In both scenarios, the minimum error values were obtained by the AKF method, which means that the proposed method has the best accuracy.The value of MAX appeared at a certain moment and showed the instantaneous error of the applied methodology.In the open scenario, the maximum errors of the EKF and AKF without heading angle methods occurred at 325.2 and 326.9 s, respectively.As depicted in Figure 7a, these two moments are just after the peak, which was formed by the sudden lateral acceleration from the operator.Therefore, the value of MAX can also be affected by human manipulation in addition to the environment and algorithm.For the errors in the open environment, the four indicators of the heading angle error of the two AKF methods are all better than the error value of the EKF method.MAE, MAX, and STD decreased by 30.49%, 81.99%, and 61.60%, respectively, compared to the error of the EKF method.In AKF with heading angle, RMS, which is the most commonly used index for evaluating navigation accuracy, was also 37.62% less than the value of RMS in the EKF method.This reduction proves that the algorithm of the AKF with heading angle method improved the heading angle accuracies in the open environment.
In the occluded environment, a significant increase in the GNSS heading angle error occurred due to severe obstruction of the GNSS signals.But the errors of heading obtained by the AKF method maintained a high level of accuracy.Compared to the error values of the EKF method, the four error values of the AKF method are 0.5048 • (MAE), 2.9052 • (MAX), 0.5098 • (STD), and 0.6367 • (RMS) in turn, which represent 35.24%, 58.37%, 57.07%, and 47.37%.The error fluctuations caused by environment occlusion were effectively suppressed by the AKF method.
Based on the aforementioned discussion, the accuracy of the heading angle was effectively improved by the AKF algorithm proposed in this study.Additionally, the GNSS/INS/Barometer integration using AKF with heading angle has better stability and robustness than the EKF method.
The experimental results also demonstrate that the open environment without the occlusion of buildings and trees is the primary condition for the proposed algorithm to reduce the error.Although the sensitivity of the proposed algorithm is better than the comparative methods, a slight hysteresis still exists.As shown in Figure 7, the reaction rate of the proposed algorithm is still slightly slower than the reference results when the vehicle's heading is rapidly changed by the operator.If the test vehicle is required to travel in a straight line, reducing the lateral acceleration contributes to decreasing the sharp increase in errors.

ω
represents the angular velocity of the IMU body with respect to inertial space in IMU body axes measured by the gyroscopes.b ib f represents the specific force of the IMU body with respect to inertial space in the IMU.

p
are the three-dimensional velocity and position.ψ and h represent the heading angle and elevation.

Figure 1 .
Figure 1.The architecture of the dual-antenna GNSS/INS/Barometer integrated navigation system.

Figure 1 .
Figure 1.The architecture of the dual-antenna GNSS/INS/Barometer integrated navigation system.*G represents values measured by GNSS.δ represents the error value.

Sensors 2024 , 17 Figure 2 .
Figure 2. Diagram of the coordinate systems.To establish the connection between the n-frame and b-frame, three Euler angles (roll, pitch, and heading) are used to construct the coordinate transformation matrix.In the nframe, the matrix b n C is obtained by rotating the z-x-y axes (heading-pitch-roll) sequen- tially.The coordinate transformation matrix b n C is expressed as cos cos sin sin sin cos sin sin sin cos sin cos cos sin cos cos sin sin cos + cos sin sin sin sin cos sin cos cos cosφ ψ γ θ ψ φ ψ γ θ ψ φ θ θ ψ θ ψ θ φ ψ γ θ ψ φ ψ φ θ ψ φ θ − + −     = −     −  

ψ
is the true value, and χ represents measurement noise.

Figure 2 .
Figure 2. Diagram of the coordinate systems.
and the other elements in the F 12 , F 13 , F 22 and F 23 are zero.F 32 = M pv , F 33 = M pp .L represents the latitude.n b g and n b a represent the Gaussian white noise of the gyroscope and accelerometer in the b-frame.
b eb is approximately equal to ω b ib because ω b eb = ω b ib − ω b ie and the value of ω b ie is minimal, δl b is the spatial distance of the main antenna from the IMU, and δl b = 0 − B 2 0

Figure 4 .
Figure 4. Acquisition of experimental data in the open and occluded environment: (a) Experime with real-time scenario in the playground; (b) Test vehicle through the building tunnel; (c) Test v hicle trajectory in the open environment; (d) Test vehicle trajectory in the occluded environment.

Figure 5 .
Figure 5. HDOP during the open and occluded environment experiment: (a) The value of HDO

Figure 4 .
Figure 4. Acquisition of experimental data in the open and occluded environment: (a) Experiment with real-time scenario in the playground; (b) Test vehicle through the building tunnel; (c) Test vehicle trajectory in the open environment; (d) Test vehicle trajectory in the occluded environment.

Figure 4 .
Figure 4. Acquisition of experimental data in the open and occluded environment: (a) Experi with real-time scenario in the playground; (b) Test vehicle through the building tunnel; (c) Tes hicle trajectory in the open environment; (d) Test vehicle trajectory in the occluded environme

Figure 5 .Figure 5 .Figure 6 .
Figure 5. HDOP during the open and occluded environment experiment: (a) The value of H during the open environment experiment; (b) The value of HDOP during the occluded environ experiment.

Figure 6 .
Figure 6.Acquisition of original IMU data in the open and occluded environments: (a) Original triaxial accelerometer data in the playground; (b) Original triaxial gyroscope data in the playground; (c) Original triaxial accelerometer data in the occluded environment; (d) Original triaxial gyroscope data in the occluded environment.

Figure 7 .
Figure 7.The estimation of heading angle during the open and occluded environment experiments: (a) The estimation of heading angle in the open environment; (b) The estimation of heading angle in the occluded environment.

Figure 7 .
Figure 7.The estimation of heading angle during the open and occluded environment experiments: (a) The estimation of heading angle in the open environment; (b) The estimation of heading angle in the occluded environment.
(dt u ) i slave − (dt s ) i slave + λN i slave + (d ion ) i slave + (d trop ) i slave + (ε mult ) i slave (15)where λ represents the wavelength of the carrier, φ represents the phase difference, r represents the geometric distance between the satellite and the antenna, c is the speed of light, dt u and dt s represent receiver clock error and satellite clock error, N represents integer ambiguity, d ion and d trop represent ionospheric and tropospheric errors, and ε mult represents multipath error.Then, through two differential operations, the double difference equation can be obtained as λ∆∇φ
* RMS is Root Mean Square.

Table 2 .
Heading angle errors during the open and occluded environment experiment.MAE is Mean Absolute Error.2MAX is Maximum.3STD is Standard Deviation.4GNSSdata range from 1 to 82 s. 1