IMU / GNSS fusion method, computer equipment and storage medium based on Kalman filtering
Through the IMU/GNSS fusion method based on Kalman filtering, the problem of insufficient data fusion in complex motion scenarios is solved in the prior art, and accurate tracking of vehicle motion states and high-precision navigation are achieved.
Patent Information
- Application Number
- CN202411876583.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-19
- Publication Date
- 2025-03-14
- Estimated Expiration
- 2044-12-19
AI Technical Summary
The existing IMU/GNSS combined navigation methods have shortcomings in dealing with complex motion scenarios, including fixed data sampling windows and sensor weight allocation strategies, lack of an effective error elimination mechanism and data quality evaluation system, making it difficult to maintain real-time and accuracy of data fusion in a high dynamic environment.
Using the IMU/GNSS fusion method based on Kalman filtering, data is obtained through time domain sampling, preprocessing and quantization analysis is performed, discrete observation points are obtained using time series statistical processing, window grouping and bidirectional recursive processing are carried out, Kalman gain matrix is constructed, state quantity mapping conversion between IMU acceleration double integral and GNSS position is performed, dynamic window statistical analysis and recursive optimization processing is performed, and data fusion is finally completed by extending Kalman filter.
It realizes accurate tracking of vehicle motion state, improves lateral positioning accuracy and attitude angle accuracy, significantly improves the reliability of the combined navigation system, enhances the environmental adaptability of the system, and can maintain high-precision navigation for a long time when satellite signals are restricted.
Smart Images

Figure CN119335580B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of navigation technology, and in particular to an IMU / GNSS fusion method, computer equipment and storage medium based on Kalman filtering. Background Art
[0002] In the field of vehicle navigation and positioning technology, high-precision positioning has always been a key technical challenge. The current mainstream positioning solutions mainly rely on the combination of GNSS (Global Navigation Satellite System) and IMU (Inertial Measurement Unit). GNSS can provide accurate absolute position information, but its update frequency is low, and it is easily affected by signal shielding and multipath effects in scenes such as urban high-rise buildings and tunnels; IMU can provide high-frequency motion state information through accelerometers and gyroscopes, but due to errors such as zero bias drift and temperature drift, long-term use alone will lead to accumulation of positioning errors.
[0003] Existing IMU / GNSS combined navigation methods usually use a simple Kalman filter algorithm for data fusion, which has obvious shortcomings when dealing with complex motion scenes. First, traditional methods often use fixed data sampling windows and fixed sensor weight allocation strategies, which cannot effectively adapt to the dynamic characteristics of the vehicle under different motion states such as turning, acceleration and deceleration. Secondly, there is a lack of effective error elimination mechanism and data quality assessment system in the data fusion process, which is easily disturbed by abnormal data. Due to the large difference in sampling frequency between IMU and GNSS, how to accurately establish the time correspondence between different sensor data, and how to maintain the real-time and accuracy of data fusion in a high dynamic environment are technical problems that need to be solved urgently. Summary of the invention
[0004] Based on this, it is necessary to provide an IMU / GNSS fusion method, computer equipment and storage medium based on Kalman filtering to address the above technical problems.
[0005] An IMU / GNSS fusion method based on Kalman filtering includes the following steps:
[0006] Perform time domain sampling on IMU signals and GNSS signals to obtain sampling data, perform preprocessing and quantitative analysis on the sampling data, and use the discrete observation points in the sampling data after time series statistical processing; the sampling data includes IMU data and GNSS data;
[0007] The discrete observation points are grouped into windows, the grouping interval is calculated according to the degree of overlap of data in adjacent windows, and the benchmark sampling segment is obtained according to the integrity of the grouping interval;
[0008] Perform forward recursion on the reference sampling segment, perform reverse recursion based on the forward recursion, and compare the forward and reverse data obtained by the forward recursion and the reverse recursion to obtain the recursion boundary;
[0009] Construct a Kalman gain matrix according to the recursive boundary, and obtain the predicted state value by analyzing the Kalman gain matrix;
[0010] Using the predicted state value, perform state quantity mapping conversion between the double integration of IMU acceleration and GNSS position, and fuse the IMU data and GNSS data according to the double integration result and the mapping conversion result to obtain the initial fusion quantity;
[0011] Perform dynamic window statistical analysis on the initial fusion amount to obtain the change characteristics, and obtain the mean square error value according to the test criteria and the change characteristics;
[0012] The recursive boundary is corrected using the mean square error value, and the corrected recursive boundary is processed by recursive optimization to obtain the corrected fusion amount;
[0013] The state of the corrected fusion quantity is reconstructed, and the state quantity is obtained according to the characteristics of the reconstructed corrected fusion quantity, IMU data and GNSS data, and the reconstruction rule analysis;
[0014] The state quantity is input into the extended Kalman filter, and the fusion of IMU data and GNSS data is completed through the prediction-update-feedback mechanism.
[0015] In one embodiment, the steps of performing window grouping on discrete observation points, calculating the grouping interval according to the degree of overlap of data in adjacent windows, and obtaining the reference sampling segment according to the grouping interval include the following steps:
[0016] Arrange the discrete observation points in chronological order and establish a time series index of the discrete observation points;
[0017] Based on the time series index, a sliding window mechanism is used to group discrete observation points into windows;
[0018] Divide the overlapping area of adjacent windows into a preset number of equal time segments;
[0019] Calculate the mean and standard deviation of the number of discrete observation points in equal time segments, and generate the data distribution feature vector of the overlapping area of adjacent windows;
[0020] Calculate the grouping interval based on the data distribution feature vector;
[0021] Check the coverage of IMU data, the distribution of GNSS data, the time interval distribution of discrete observation points, and whether there is a data gap period within the grouping interval to obtain the integrity of the grouping interval;
[0022] The reference sampling segment is obtained according to the integrity of the grouping interval.
[0023] In one embodiment, the steps of performing forward recursion on the reference sampling segment, performing reverse recursion according to the forward recursion result, and comparing the forward and reverse data obtained by the forward recursion and the reverse recursion to obtain the recursion boundary include the following steps:
[0024] The acceleration data in the IMU data is mapped from the carrier coordinate system to the navigation coordinate system, the acceleration data converted by the coordinate system and the angular velocity data in the IMU data are organized in time series, and a state vector including three-dimensional position, three-dimensional velocity and Euler angle attitude is constructed. The fourth-order Runge-Kutta integral algorithm is used to perform forward recursion on the state vector.
[0025] In the forward recursion process, the output characteristics of the gyroscope in a stationary state are analyzed to obtain the variation law of the zero bias over time, establish a zero bias error model including constant drift and random walk, use the built-in temperature sensor to monitor the temperature change, establish the mapping relationship between temperature and proportional factor, and optimize the forward recursion based on the zero bias error model and the mapping relationship;
[0026] Using the same state equation and integration algorithm as the forward recursion process, reverse recursion is performed from the end time of the reference sampling segment;
[0027] From the position dimension, velocity dimension and attitude dimension, and combined with GNSS data, the forward and reverse data are compared to obtain the time point with obvious difference in the forward and reverse data as the recursive boundary.
[0028] In one embodiment, the step of constructing a Kalman gain matrix according to the recursive boundary and obtaining a predicted state value by analyzing the Kalman gain matrix includes the steps of:
[0029] Establish the state vector and observation vector of the Kalman filter, and construct the state transfer matrix and observation matrix based on the state vector and observation vector for state prediction and observation update of the Kalman filter;
[0030] Adopting an adaptive weight adjustment mechanism, the weight ratio of IMU data and GNSS data is dynamically adjusted according to the motion state, and a gradual weight mechanism established at the recursive boundary is used to smoothly transition the weight ratio. Based on the adjusted and smoothly transitioned weight ratio, the Kalman gain matrix is constructed.
[0031] Based on the Kalman gain matrix, the state vector and the observation vector, the predicted state value is obtained.
[0032] In one embodiment, the step of using the predicted state value to perform state quantity mapping conversion of the IMU acceleration double integral and the GNSS position, and obtaining the initial fusion quantity according to the conversion rule and the mapping conversion result includes the steps of:
[0033] The attitude component in the predicted state value is used to establish a conversion relationship between the carrier coordinate system and the navigation coordinate system, and based on the conversion relationship, the acceleration data in the IMU data is converted from the carrier coordinate system to the navigation coordinate system;
[0034] The acceleration data after the coordinate system conversion is converted into velocity increments by a first integration, and the velocity increments are integrated a second time to calculate the position increments, so as to perform double integration of the IMU acceleration;
[0035] The geographic coordinates in the GNSS data are converted into position representation in the Earth-centered Earth-fixed coordinate system, and the local navigation coordinate system is established using the position component in the predicted state value. The Earth-centered Earth-fixed coordinate system is converted into the local navigation coordinate system so that the IMU data and GNSS data can be fused according to the double integration results and the mapping conversion results to obtain the initial fusion value.
[0036] In one embodiment, the step of performing dynamic window statistical analysis on the initial fusion amount to obtain the change characteristics, and obtaining the mean square error value according to the inspection criterion and the change characteristics includes the steps of:
[0037] Based on the preset window and the mean and standard deviation method, the position change, velocity change rate and attitude angle change rate in the initial fusion amount are counted to obtain the change characteristics;
[0038] Establish corresponding inspection criteria according to the change characteristics, and dynamically adjust the inspection criteria based on different motion states using a dynamic threshold adjustment mechanism;
[0039] Based on the inspection criteria, the mean square error values corresponding to the position change, velocity change rate and attitude angle change rate are calculated through the adaptive sliding window mechanism, and the position mean square error value, velocity mean square error value and attitude angle mean square error value are obtained respectively.
[0040] In one embodiment, the step of using the mean square error value to correct the recursive boundary and eliminating the error recursive boundary by recursive optimization to obtain the corrected fusion amount includes the steps of:
[0041] Use the mean square error value to correct the attitude angle in the recursive boundary;
[0042] Based on the corrected attitude angle, the velocity in the recursive boundary is corrected
[0043] Based on the corrected attitude angle and the corrected speed, the position in the recursive boundary is corrected;
[0044] The corrected recursive boundary is processed by recursive optimization to obtain the corrected fusion amount.
[0045] In one embodiment, the state of the corrected fusion amount is reconstructed, and the step of obtaining the state amount according to the characteristics of the reconstructed corrected fusion amount, IMU data and GNSS data, and the reconstruction rule analysis includes the steps of:
[0046] Perform time series segmentation on the corrected fusion amount to obtain multiple analysis windows;
[0047] Extract motion characteristic parameters from the corrected fusion volume within the analysis window;
[0048] Based on the motion feature parameters, a state classification model is constructed;
[0049] Adjust the reconstruction rules according to the state classification model, and reconstruct the corrected fusion amount according to the state transition model and the reconstruction rules; the state transition model is used to describe the state evolution in continuous time;
[0050] The state quantity is obtained based on the reconstructed corrected fusion quantity, the characteristics of IMU data and GNSS data, and the reconstruction rule analysis.
[0051] A computer device comprises a memory and a processor, wherein the memory stores a computer program, and the processor implements the steps of the above method when executing the computer program.
[0052] A computer-readable storage medium stores a computer program, which implements the steps of the above method when executed by a processor.
[0053] One of the above technical solutions has the following advantages and beneficial effects:
[0054] The IMU / GNSS fusion method based on Kalman filtering provided in each embodiment of the present application realizes accurate tracking of the vehicle's motion state based on a unified data collection and preprocessing mechanism based on a time reference, combined with dynamic window grouping and bidirectional recursive processing. According to the sampling characteristics of IMU data and GNSS data, a reasonable window length and overlap are set. Through forward and reverse recursive comparison, the changing moment of the vehicle's motion state can be accurately identified, especially under complex working conditions such as turning, which effectively improves the lateral positioning accuracy and attitude angle accuracy. The adaptive gain matrix construction mechanism and state quantity mapping conversion method based on Kalman filtering significantly improve the reliability of the combined navigation system. The fusion optimization method based on state reconstruction and extended Kalman filter feedback enhances the environmental adaptability of the system. And through continuous evaluation and dynamic adjustment of the reconstructed state quantity, sensor weights are allocated according to different motion states, and a complete observation update and state feedback mechanism is established, which effectively improves the positioning accuracy and reliability of the combined navigation system, and can maintain high-precision navigation capabilities for a long time even when satellite signals are limited. BRIEF DESCRIPTION OF THE DRAWINGS
[0055] Figure 1 Schematic diagram of the process of the IMU / GNSS fusion method based on Kalman filtering in the embodiment of the present application.
[0056] Figure 2 Schematic diagram of the internal structure of a computer device in an embodiment of the present application. DETAILED DESCRIPTION
[0057] In order to make the purpose, technical solution and advantages of the present application more clearly understood, the present application is further described in detail below in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present application and are not used to limit the present application.
[0058] In order to solve the above problem, in one embodiment, Figure 1 As shown, an IMU / GNSS fusion method based on Kalman filtering is provided, comprising the following steps:
[0059] Step S110, sampling the IMU signal and the GNSS signal in the time domain to obtain sampled data, preprocessing and quantitative analysis of the sampled data, and using discrete observation points in the sampled data after time series statistics processing. The sampled data includes IMU data and GNSS data.
[0060] The IMU sensor collects data including the three-axis accelerometer and the three-axis gyroscope, and the GNSS receiver collects satellite signals to obtain position and speed information. The sampling frequency of the IMU sensor is set to 100Hz, that is, a set of data is collected every 10ms, of which the accelerometer measurement range is ±16g, the resolution is 16 bits, and the gyroscope measurement range is ±2000° / s, and the resolution is 16 bits. The sampling frequency of the GNSS receiver is set to 10Hz, that is, a set of data is collected every 100ms, supporting multi-system joint positioning such as GPS, GLONASS, and Beidou, and using differential positioning technology to improve positioning accuracy.
[0061] Due to the difference in sampling frequency between IMU signals and GNSS signals, in order to ensure the time synchronization of data, the system needs to use a unified time reference for data marking. Select GPS time as the unified time reference of the system, and map the sampling time of IMU data to the GPS time scale through timestamp. When performing time synchronization, first obtain the PPS signal output by the GPS receiver as the s pulse reference, connect the signal to the external trigger port of the IMU acquisition system, and realize the hardware synchronization of the IMU sampling clock and GPS time. At the same time, record the time deviation of the sampling time of each IMU data frame relative to the most recent PPS signal, and the deviation accuracy is better than 1 microsecond, so as to establish an accurate correspondence between IMU data and GPS time.
[0062] Based on a unified time base, the system preprocesses and quantifies the collected raw data. First, the IMU data is temperature compensated. According to the temperature value measured by the built-in temperature sensor, the acceleration and angular velocity data are corrected using the temperature coefficient to eliminate the influence of temperature drift. Then the proportional factor and zero bias compensation are performed. The proportional factor and zero bias values obtained through experimental calibration are used to linearly correct the raw data. For acceleration data, it is also necessary to compensate for the influence of gravity acceleration. The gravity component is calculated based on the local gravity acceleration value and the IMU attitude angle, and the gravity effect is removed from the measured value to obtain pure motion acceleration.
[0063] Corresponding to the preprocessing of IMU data, the preprocessing of GNSS data mainly includes signal quality assessment and outlier detection. First, check the number of satellites, geometric distribution strength (PDOP value), carrier-to-noise ratio (C / N0) and other indicators of each epoch to screen out valid observation data. For RTK positioning results, the position reliability is evaluated according to the solution status (fixed solution, floating point solution or single point solution) and precision factor. The Mahalanobis distance criterion is used to detect outliers in position and velocity data, and eliminate observations that deviate too much from the historical trajectory.
[0064] The preprocessed data still has random errors and systematic errors, so it is necessary to establish a time series statistical model for in-depth analysis. The importance of time series statistics is reflected in the following aspects: First, by analyzing the time-varying characteristics of the data, the error characteristics of the sensor can be accurately evaluated; second, the statistical characteristics of the time series can identify abnormal patterns and trend changes in the data. In specific implementation, the sliding variance analysis method is used to evaluate the data noise level of the IMU data, and the standard deviation of the acceleration and angular velocity under static and dynamic conditions is calculated. At the same time, the Allan variance analysis is used to determine the random error characteristics such as random walk, angle random walk, and zero bias instability. For GNSS data, based on the time series of position and velocity, the difference between adjacent epochs is calculated, the statistical characteristics of the measurement noise are evaluated, and the correlation between the carrier phase and pseudorange measurements is analyzed.
[0065] Through the above sampling, synchronization, preprocessing and statistical analysis process, the system constructs a series of discrete observation points at key moments. Each discrete observation point is based on a unified time base and contains IMU and GNSS observation data that have been error compensated and quality evaluated. These observation points are organized in a standardized data structure and achieve real-time processing capabilities through a cache mechanism.
[0066] Step S120, performing window grouping on the discrete observation points, calculating the grouping interval according to the degree of overlap of data in adjacent windows, and obtaining the reference sampling segment according to the integrity of the grouping interval.
[0067] The system sets the basic window length to 500ms because it needs to ensure that the window contains a sufficient number of IMU data (about 50 sampling points) and GNSS data (about 5 sampling points) to provide sufficient observation information for subsequent data processing. The window grouping adopts a sliding window mechanism, and the overlap length between adjacent windows is set to 40% of the total window length, that is, 200ms, to ensure the continuity and smoothness of the data. When setting these parameters, the system also needs to consider the high-frequency sampling characteristics of IMU data and the low-frequency sampling characteristics of GNSS data to ensure that sufficient observation data can be obtained in each window.
[0068] In one example, discrete observation points are grouped into windows, grouping intervals are calculated based on the degree of overlap of data in adjacent windows, and a step of obtaining a reference sampling segment based on the grouping interval includes the following steps: arranging discrete observation points in chronological order and establishing a time series index for the discrete observation points; based on the time series index, using a sliding window mechanism to group discrete observation points into windows; dividing the overlapping area of adjacent windows into a preset number of equal time segments; calculating the mean and standard deviation of the number of discrete observation points in the equal time segments, and generating a data distribution feature vector for the overlapping area of adjacent windows; calculating the grouping interval based on the data distribution feature vector; checking the coverage of IMU data, the distribution of GNSS data, the time interval distribution of discrete observation points, and whether there is a data blank period in the grouping interval to obtain the integrity of the grouping interval; and obtaining the reference sampling segment based on the integrity of the grouping interval.
[0069] When performing specific window grouping operations, the system first arranges the discrete observation points in chronological order and establishes a time series index for the discrete observation points. Each discrete observation point is assigned a unique timestamp identifier, which serves as the basis for subsequent window grouping. The system numbers the observation points according to the timestamps, uniformly encodes the time information of the IMU discrete observation points and the GNSS discrete observation points, and establishes a unified time index table. On this basis, the system starts to divide the windows from the beginning of the sequence, and each window is strictly divided according to the duration of 500ms and the overlap length of 200ms to ensure the accuracy and consistency of the window division.
[0070] In order to accurately calculate the degree of overlap of adjacent window data, the system performs a quantitative analysis of the data distribution in each window area. First, the total number of discrete observation points in the overlapping area is counted, and the number of IMU discrete observation points and GNSS discrete observation points are recorded separately. Then the 200ms overlapping area is divided into 20 equal-length time segments, each with a length of 10ms. The system counts the discrete observation points in each time segment and counts the distribution of IMU data and GNSS data in each time segment. By calculating the mean and standard deviation of the number of discrete observation points in each time segment, the uniformity of the data distribution is evaluated, and the data distribution feature vector of the overlapping area is generated.
[0071] Based on the data distribution feature vectors of the overlapping areas, the system establishes a calculation method for the grouping interval. First, the validity judgment conditions of the overlapping areas are set: the total number of IMU observation points is required to be no less than 20 to ensure sufficient inertial data support; the number of GNSS observation points is no less than 2 to ensure the availability of location information; the uniformity index of the distribution of observation points does not exceed the preset threshold to avoid data being too concentrated or sparse. Based on these conditions, the system evaluates the validity of each overlapping area and determines the precise boundary position between adjacent windows based on the evaluation results. In this process, the time correspondence between IMU data and GNSS data also needs to be considered to ensure that the grouping boundaries do not split related observation data.
[0072] After completing the preliminary division of the grouping intervals, the system enters the interval integrity assessment phase. The assessment process sets strict judgment criteria: first, check the IMU data coverage within the interval, requiring the actual number of discrete observation points to reach more than 90% of the theoretical value; second, evaluate the distribution of GNSS data, requiring the number of discrete observation points to be no less than 85% of the theoretical value; then analyze the time interval distribution of discrete observation points, and ensure the uniformity of data distribution by calculating the standard deviation; finally, check whether there is a data blank period, stipulating that any data missing interval cannot exceed 50ms. Through these standards, the system strictly selects intervals that meet the integrity requirements.
[0073] Based on the interval integrity assessment, the system establishes the generation rules of the benchmark sampling segments. When an interval meets the requirements of data quantity, distribution uniformity and continuity at the same time, it is determined as a valid benchmark sampling segment. The system evaluates each interval one by one to ensure that all benchmark sampling segments have sufficient data quality and reliability. At the same time, the system also requires that adjacent benchmark sampling segments maintain appropriate overlap to avoid data breaks and ensure the continuity of subsequent processing. Through the above processing, the system finally obtains a series of standardized benchmark sampling segments that meet the window grouping requirements and integrity standards.
[0074] Step S130, performing forward recursion on the reference sampling segment, performing reverse recursion based on the forward recursion, and comparing the forward and reverse data obtained by the forward recursion and the reverse recursion to obtain a recursion boundary.
[0075] In one example, forward recursion is performed on a reference sampling segment, and reverse recursion is performed according to the forward recursion result. The forward and reverse data obtained by the forward recursion and the reverse recursion are compared to obtain the recursion boundary, including the steps of mapping the acceleration data in the IMU data from the carrier coordinate system to the navigation coordinate system, organizing the acceleration data converted by the coordinate system and the angular velocity data in the IMU data in a time series, constructing a state vector including a three-dimensional position, a three-dimensional velocity, and an Euler angle attitude, and forward recursing the state vector using a fourth-order Runge-Kutta integral algorithm; in the forward recursion process, analyzing the gyroscope The output characteristics in the static state are used to obtain the law of change of zero bias over time, and a zero bias error model including constant drift and random walk is established. The temperature change is monitored using the built-in temperature sensor, and a mapping relationship between temperature and proportional factor is established. The forward recursion is optimized based on the zero bias error model and the mapping relationship. The same state equation and integration algorithm as the forward recursion process are used to perform reverse recursion from the end time of the reference sampling segment. The forward and reverse data are compared from the position dimension, velocity dimension, and attitude dimension, and combined with GNSS data, to obtain the time points with obvious differences in the forward and reverse data as the recursion boundaries.
[0076] Based on the reference sampling segment, this step establishes a bidirectional recursive processing mechanism. Each reference sampling segment contains time-synchronized, quality-reliable IMU data and GNSS data, which provides an ideal starting point for recursive processing. In the forward recursive stage, the system first organizes the acceleration data (ax, ay, az) and angular velocity data (ωx, ωy, ωz) in the IMU data in a time series to construct a state vector containing three-dimensional position, three-dimensional velocity and Euler angle attitude. The fourth-order Runge-Kutta integral algorithm is selected for recursive calculation. The algorithm solves the state equation in four sub-steps, and each sub-step contains two parts: acceleration integration and angular velocity update. The acceleration is integrated twice to obtain the position information. The first integration obtains the velocity change, and the second integration obtains the position increment. At the same time, the angular velocity data is used to update the three attitude angles to ensure the continuity and stability of the state quantity during the recursive process.
[0077] When performing forward recursion, the IMU data needs to be converted to a coordinate system to map the acceleration data from the carrier coordinate system to the navigation coordinate system. The conversion process is achieved by calculating the attitude matrix at the current moment, which contains complete information about the current attitude of the aircraft. The system updates the attitude matrix every 10ms, keeping in sync with the IMU sampling frequency, so that the dynamic changes in the carrier's attitude can be accurately reflected. The attitude matrix is updated using the quaternion algorithm, which can avoid the gimbal lock problem and ensure the calculation stability under any attitude. After the coordinate conversion is completed, the converted acceleration is integrated. The integral process uses the trapezoidal rule, while taking into account the changing characteristics of the acceleration within the sampling period.
[0078] In the forward recursion process, the system implements a complete error compensation mechanism. By analyzing the output characteristics of the gyroscope in a static state, the law of change of zero bias over time is obtained, and a zero bias error model consisting of constant drift and random walk is established. The system calculates the zero bias correction value in real time based on this model to compensate the gyroscope data. At the same time, the built-in temperature sensor is used to monitor temperature changes, establish a mapping relationship between temperature and proportional factor, and dynamically correct the accelerometer output according to the real-time temperature value. These compensation parameters will continue to be optimized with the recursion process. The system dynamically updates the compensation parameters by analyzing the data change characteristics of the last 100 sampling points. Especially when the movement changes drastically, the system will increase the parameter update frequency.
[0079] After completing the forward recursion, the system performs the reverse recursion. The reverse recursion uses the same state equation and integration algorithm, and starts the reverse calculation from the end time of the sampling segment. In the reverse recursion process, coordinate transformation and error compensation are also required to ensure the consistency of the forward and reverse processing methods. Each step of the reverse recursion corresponds to the forward recursion, and another set of state estimates can be obtained through reverse calculation. This two-way processing mechanism makes full use of the timing information of the data. The forward recursion reflects the natural evolution process of the state, while the reverse recursion provides supplementary constraint information. Taking the vehicle turning condition as an example, when the vehicle enters the turning stage from straight driving, the system first uses a section of data before the turn for forward recursion to predict the vehicle's motion trajectory. At this time, the acceleration data in the IMU data will show an obvious increase in the lateral component, and the angular velocity data reflects the steering change of the vehicle. The system then uses the data segment after the turn for reverse recursion verification. By comparing the position, velocity and attitude estimation results obtained by the forward and reverse recursion during the turning process, the time points of the start and end of the turn can be accurately identified. These time points constitute the recursive boundary of the data processing.
[0080] The system uses a multi-dimensional evaluation method to compare forward and reverse recursive data. In the position dimension, the Euclidean distance between the three-dimensional position coordinates is calculated. This distance value directly reflects the degree of difference in the position estimates in the two directions; in the velocity dimension, the modulus error and directional deviation of the velocity vector are analyzed. These indicators can reflect the continuous change of the motion state; in the attitude dimension, the differences between the three Euler angles of roll, pitch and heading are compared to comprehensively evaluate the accuracy of attitude estimation. When the difference index of any dimension exceeds the preset threshold, the system marks the moment as a potential boundary point. This multi-dimensional evaluation method can capture the changing characteristics of state estimation in different aspects and improve the reliability of boundary recognition.
[0081] Considering the high-precision absolute position characteristics of GNSS data, the system uses the GNSS observation time as an important reference for determining the boundary. When the time interval between the GNSS observation time and the potential boundary point is less than the threshold, the system adjusts the boundary to the GNSS observation time. The reason for this is that GNSS data can provide accurate absolute position information, which can effectively suppress the error accumulation in the IMU integration process, while also ensuring the accuracy of the state estimation at the boundary. The introduction of GNSS data provides an external reference benchmark for boundary determination and optimizes the distribution of boundary points.
[0082] Through the above two-way recursion and difference evaluation, the system finds the time points where the forward and reverse data differ significantly, which are the recursion boundaries. Between the recursion boundaries, the state estimation maintains a stable level of accuracy; at the recursion boundaries, due to the large difference between the forward and reverse data, it indicates that the accuracy of the state estimation has fluctuated, and these boundary positions need to be paid special attention to in subsequent processing.
[0083] Step S140, constructing a Kalman gain matrix according to the recursive boundary, and obtaining a predicted state value by analyzing the Kalman gain matrix.
[0084] In one example, a Kalman gain matrix is constructed according to a recursive boundary, and the step of obtaining a predicted state value by analyzing the Kalman gain matrix includes the steps of: establishing a state vector and an observation vector of a Kalman filter, and constructing a state transfer matrix and an observation matrix based on the state vector and the observation vector for state prediction and observation update of the Kalman filter; adopting an adaptive weight adjustment mechanism to dynamically adjust the weight ratio of IMU data and GNSS data according to the motion state, adopting a gradual weight mechanism established at the recursive boundary to smoothly transition the weight ratio, and constructing a Kalman gain matrix based on the adjusted and smoothly transitioned weight ratio; and obtaining a predicted state value based on the Kalman gain matrix, the state vector and the observation vector.
[0085] Within the interval determined by each recursive boundary, the system uses the Kalman filter method to optimally fuse the IMU data and GNSS data. The system first establishes the state vector and observation vector of the Kalman filter. The state vector X is a 9-dimensional column vector, expressed as X=[px,py,pz,vx,vy,vz,φ,θ,ψ]T, which contains the vehicle's three-dimensional position [px,py,pz], three-dimensional velocity [vx,vy,vz] and attitude angle [φ,θ,ψ] (representing the roll angle, pitch angle and heading angle, respectively) in the northeast sky coordinate system. The observation vector is expressed as Z=[ax,ay,az,ωx,ωy,ωz,px,py,pz]T, which contains the acceleration data a and angular velocity data ω provided by the IMU, and the position data p provided by the GNSS. Based on these vectors, the corresponding state transfer matrix and observation matrix are constructed for state prediction and observation update of the Kalman filter.
[0086] In the process of constructing the gain matrix of the Kalman filter, the system adopts an adaptive weight adjustment mechanism. The core of this mechanism is to dynamically adjust the weight ratio of IMU data and GNSS data according to the motion state, so that the state estimation process can adaptively rely on more reliable data sources. The weight adjustment is achieved by modifying the corresponding elements in the observation noise covariance matrix R, and smaller noise values correspond to larger weights. Taking a typical vehicle turning condition as an example, when the vehicle speed is detected to be 40km / h and the steering angle exceeds 30 degrees, it means that the vehicle is making a large turn. At this time, the angular velocity data ωz in the IMU data shows a significant change, which may reach more than 0.2rad / s, and the lateral acceleration ay measured by the accelerometer is about 2m / s². The system increases the weight of IMU data to 80% and reduces the weight of GNSS to 20%. On the contrary, when the vehicle is driving in a straight line at a speed of 100km / h on the highway, the angular velocity and lateral acceleration of the IMU are close to zero, and the GNSS signal is stable and reliable, so the system increases the weight of GNSS data to 75%.
[0087] In order to achieve a smooth transition of weights, the system establishes a gradual weight mechanism at the recursive boundary. The basic principle of this mechanism is that when the weight changes, instead of using a sudden adjustment, the weight is gradually changed through an interpolation algorithm within a certain time window. The gradual process needs to consider the continuity requirements of state estimation, while ensuring that the response speed meets the real-time requirements. For example, during the 200ms transition period when the vehicle goes from straight driving to turning, the weight of the IMU data needs to be gradually increased from 20% to 80%. This gradual process uses a linear interpolation method to update the weight value every 10ms to ensure smooth weight changes throughout the transition period.
[0088] The system constructs the Kalman gain matrix K based on the adjusted weights. The calculation of this matrix comprehensively considers the state prediction covariance matrix P and the observation noise covariance matrix R. The calculation formula of the gain matrix K is: K=P*HT*(H*P*HT+R)-1, where P represents the state prediction covariance matrix, which reflects the uncertainty of state prediction; H represents the observation matrix, which maps the state vector to the observation space; HT represents the transposed matrix of H, which is used to map the information in the observation space back to the state space; R represents the observation noise covariance matrix, whose diagonal elements contain the above-mentioned adaptive weight information.
[0089] The physical meaning of the gain matrix K is to determine the weight coefficient of the state correction. When the observation noise is small (that is, the value of the R matrix element is small), the corresponding K matrix element value is large, indicating that the system trusts the observation value more; when the observation noise is large, the K matrix element value is small, and the system maintains the predicted value more. Taking position observation as an example, when the GNSS signal is good, the element corresponding to the position observation in the R matrix may be set to 0.25m², indicating that the standard deviation of the observation noise is 0.5m. At this time, the element value corresponding to the position update in the K matrix is large, enabling the system to make full use of the high-precision information of GNSS.
[0090] The characteristics of the Kalman gain matrix will change in different motion scenarios. When the vehicle makes a large angle turn, the system needs to respond quickly to the attitude change. At this time, the value of the gain matrix element related to the attitude update will increase, possibly from 0.1 to 0.4. The effect of this gain adjustment can be verified by the rapid convergence of the heading angle. For example, during a 90-degree turn, the increased gain value allows the heading angle estimate to complete most of the adjustment within 0.5s, with a residual error of less than 2 degrees.
[0091] The final predicted state value acquisition is divided into two steps: prediction and update of Kalman filter. The prediction step predicts the state at the next moment through the state equation: X'(k)=ɑ*X(k-1), where X'(k) represents the state prediction value at time k, ɑ represents the state transfer matrix, which describes the evolution law of the state over time, and X(k-1) represents the state estimation value at time k-1. The update step introduces observation data to correct the predicted value: X(k)=X'(k)+K*[Z(k)-H*X'(k)], where Z(k) represents the observation value at time k, H*X'(k) represents the observation value corresponding to the predicted value, and their difference [Z(k)-H*X'(k)] is called the observation residual, which reflects the deviation between the prediction and the observation. For example, when a vehicle passes a 90-degree turn at a speed of 60km / h, the system mainly relies on IMU data for state prediction in the prediction step. By integrating the acceleration and angular velocity, an initial prediction result of about 89 degrees of attitude angle change can be obtained, but due to the integration error, the position prediction error may reach 1m. In the update step, the system uses GNSS position data for correction while maintaining a high weight reliance on IMU attitude data, ultimately achieving navigation performance with a lateral positioning accuracy better than 0.5m and an attitude angle error less than 2°.
[0092] This adaptive prediction mechanism based on the Kalman filter gain matrix achieves accurate tracking of the vehicle's motion state by dynamically adjusting the weights of different sensor data. In complex scenarios on urban roads, such as continuous turns and rapid lane changes, the system can maintain stable prediction performance and ultimately obtain a predicted state vector X(k)=[px,py,pz,vx,vy,vz,φ,θ,ψ]T. The state estimation accuracy is as follows: position is better than 0.5m, speed can reach 0.1m / s, and attitude angle error is usually less than 2°. This predicted state value, as a complete state quantity description, not only reflects the system's ability to accurately track the vehicle's motion state, but also provides the necessary reference benchmark for subsequent coordinate transformation and state quantity mapping.
[0093] Step S150, using the predicted state value, performing state quantity mapping conversion of the double integration of the IMU acceleration and the GNSS position, and fusing the IMU data and the GNSS data according to the double integration result and the mapping conversion result to obtain an initial fusion quantity.
[0094] Based on the predicted state value, this step performs state quantity conversion to obtain the initial fusion quantity. The system needs to convert the IMU data and GNSS data into a unified coordinate system for processing, among which the most critical is the coordinate conversion and double integration process of the IMU acceleration data. The first thing to solve is the unification problem of the coordinate system, and convert the carrier coordinate system data measured by the accelerometer to the navigation coordinate system. The carrier coordinate system is a coordinate system fixed to the moving carrier, with the x-axis pointing to the front of the carrier, the y-axis pointing to the right of the carrier, and the z-axis pointing to the bottom of the carrier; the navigation coordinate system is a northeast sky coordinate system based on the local horizontal plane.
[0095] In one example, the steps of using predicted state values to perform state quantity mapping conversion between double integral of IMU acceleration and GNSS position, and obtaining an initial fusion quantity according to conversion rules and mapping conversion results include the following steps: using the attitude component in the predicted state value to establish a conversion relationship between the carrier coordinate system and the navigation coordinate system, and based on the conversion relationship, converting the acceleration data in the IMU data from the carrier coordinate system to the navigation coordinate system; performing a first integration on the acceleration data after the coordinate system conversion to convert it into a velocity increment, and performing a second integration on the velocity increment to calculate the position increment, so as to perform double integration of IMU acceleration; converting the geographic coordinates in the GNSS data into a position representation in a geocentric earth-fixed coordinate system, using the position component in the predicted state value to establish a local navigation coordinate system, and converting the geocentric earth-fixed coordinate system to the local navigation coordinate system, so as to fuse the IMU data and the GNSS data according to the double integration results and the mapping conversion results to obtain an initial fusion quantity.
[0096] The system uses the attitude component in the predicted state value to establish the conversion relationship between the two coordinate systems. The attitude angles include the roll angle φ (rotation angle around the x-axis), the pitch angle θ (rotation angle around the y-axis), and the heading angle ψ (rotation angle around the z-axis). The coordinate transformation matrix C constructed by these three angles can accurately map the load system acceleration ab measured by the IMU to the acceleration an in the navigation coordinate system. The relationship is expressed as: an=C*ab, where C is a 3×3 orthogonal matrix.
[0097] After completing the coordinate conversion, the system starts to execute the IMU acceleration double integration process. The first integration converts the acceleration in the navigation coordinate system into a velocity increment. The specific calculation formula is: ΔV(t)=∫a(t)dt, where a(t) is the acceleration in the navigation coordinate system, ΔV(t) is the velocity increment, and t represents the time variable. In order to improve the integration accuracy, the system adopts an improved trapezoidal integration method to process the acceleration data in segments at fixed time intervals. The advantage of this method is that it can effectively suppress high-frequency noise and reduce the accumulation of integration errors.
[0098] In practical applications, the system uses 10ms as the basic integration interval for processing. In each time period, the average value of acceleration is first calculated, and then the average value is multiplied by the time interval to obtain the velocity increment. This piecewise integration method not only improves the calculation accuracy, but also ensures the real-time performance of data processing. For typical application scenarios such as vehicle driving, a 10ms integration interval can meet the needs of dynamic response while keeping the amount of calculation within a reasonable range.
[0099] After obtaining the velocity increment, the system performs a second integration to calculate the position increment: ΔP(t)=∫ΔV(t)dt, where ΔP(t) is the position increment. The second integration also uses the trapezoidal integration method, but more influencing factors need to be considered. The first is the compensation of the earth's rotation effect. Especially at high speeds, the earth's rotation will cause the Coriolis force to be generated, affecting the accuracy of the position calculation. The second is the compensation of gravity anomalies. The integration result is corrected according to the local gravity field model to ensure the accuracy of the position increment.
[0100] At the same time, the system also needs to process the state mapping of GNSS position data. The geographic coordinates (longitude λ, latitude τ and altitude h) output by the GNSS receiver need to be consistent with the position components [px, py, pz] in the predicted state value. The conversion process first converts the geographic coordinates into the position representation (X, Y, Z) in the Earth-centered Earth-fixed coordinate system (ECEF). The conversion formula is: X=(N+h)cosτcosλ, Y=(N+h)cosτsinλ, Z=[N(1-e²)+h]sinτ, where N is the radius of curvature of the ellipsoid and e is the eccentricity of the ellipsoid. Then, the local navigation coordinate system is established using the position components in the predicted state value, and the ECEF coordinates are converted to the local coordinate system to ensure that the GNSS data and IMU data are fused in the same coordinate system.
[0101] In a specific application, the entire processing flow is explained using a vehicle turning condition as an example: when the vehicle turns at a speed of 40km / h, the IMU measures a lateral acceleration of approximately 2m / s². The system first uses the attitude angle information in the predicted state value to convert the acceleration data in the IMU data from the carrier coordinate system to the navigation coordinate system, and then performs a double integration: the first integration obtains a lateral velocity increment of 0.02m / s, and the second integration obtains a position change of the order of 0.1mm. At the same time, the GNSS data completes the coordinate conversion and obtains a position representation consistent with the double integration result of the IMU acceleration.
[0102] Through the above state quantity conversion and integration process, the system finally obtains the initial fusion quantity containing position, velocity and attitude information. These fusion quantities not only contain the high-frequency motion state change information provided by IMU data and the absolute position reference provided by GNSS data, but also realize the effective fusion of data through unified coordinate system expression. The key features of the fusion quantity, such as position change, velocity change rate and attitude angle change rate, provide a complete data basis for the subsequent dynamic window statistical analysis.
[0103] Step S160, performing dynamic window statistical analysis on the initial fusion amount to obtain change characteristics, and obtaining a mean square error value according to the test criteria and the change characteristics.
[0104] The system sets the basic window length according to the sensor sampling characteristics. For example, 500ms is selected as the window time span. Such a window usually contains about 50 IMU data points and 5 GNSS data points, which can ensure the statistical validity of the data. In order to achieve continuous monitoring, the window moves in a sliding manner, and a certain overlap area is maintained between adjacent windows, such as taking an overlap of 80% of the window length. This setting can not only ensure the continuity of the inspection, but also detect changes in data characteristics in a timely manner.
[0105] In one example, a dynamic window statistical analysis is performed on an initial fusion amount to obtain a change feature, and a step of obtaining a mean square error value according to a test criterion and the change feature includes the following steps: based on a preset window and a mean and standard deviation method, counting the position change amount, velocity change rate, and attitude angle change rate in the initial fusion amount to obtain the change feature; establishing a corresponding test criterion according to the change feature, and dynamically adjusting the test criterion using a dynamic threshold adjustment mechanism based on different motion states; based on the test criterion, calculating the mean square error values corresponding to the position change amount, velocity change rate, and attitude angle change rate through an adaptive sliding window mechanism, and obtaining the position mean square error value, velocity mean square error value, and attitude angle mean square error value, respectively.
[0106] Based on the set dynamic window, the system performs statistical analysis on the three key features of the initial fusion amount. The primary feature is the position change ΔP, which is obtained by calculating the position difference sequence [ΔP1, ΔP2, ..., ΔPn] at adjacent moments in the window, where n is the number of sampling points in the window, and each ΔPi contains three components: east, north, and sky. The second feature is the velocity change rate ΔV / Δt, which reflects the acceleration characteristics. The system obtains this feature by calculating the velocity difference at adjacent moments. The third feature is the attitude angle change rate Δθ / Δt, which is used to characterize the characteristics of the steering motion, including changes in the roll angle, pitch angle, and heading angle.
[0107] The statistical analysis of these feature quantities adopts a method based on mean and standard deviation. For each feature sequence in the window, first calculate its mean μ: μ=(1 / n)∑xi, where xi represents the i-th observation in the sequence. Then calculate the standard deviation σ: σ=√[(1 / n)∑(xi-μ)²]. Based on the calculated statistics, the system establishes data verification criteria. A test method based on the 3σ principle is adopted, that is, when the deviation of an observation value from the mean exceeds 3 times the standard deviation, it is marked as a potential outlier. This test method has different performances in different motion scenarios. For example, when a vehicle changes lanes, the lateral position change may fluctuate greatly in a short period of time. At this time, the system will dynamically adjust the length of the test window, which may be shortened to about 200ms to improve the response to rapid movement.
[0108] To adapt to different motion states, the system adopts a dynamic threshold adjustment mechanism. During the vehicle's turning process, the system builds a motion state judgment model based on IMU angular velocity data and GNSS speed data. The threshold adjustment is triggered when the following state changes are detected: the heading angle change rate exceeds 20° / s, or the lateral acceleration exceeds 2m / s², or the trajectory curvature radius measured by GNSS is less than 20m. For these high dynamic states, the system uses a piecewise linear function to dynamically calculate the new threshold: when the heading angle change rate is between 20° / s and 40° / s, the position change threshold increases at a rate of 0.02m² / (° / s); when the lateral acceleration is between 2m / s² and 4m / s², the speed change threshold increases at a rate of 0.1(m / s)² / (m / s²). At the same time, the system monitors GNSS signal quality indicators, including carrier-to-noise ratio and geometric distribution strength. When the PDOP value exceeds 3, the position check threshold increases by 10% for every 0.5 unit increase.
[0109] The mean square error value in the inspection process is calculated by an adaptive sliding window mechanism. The calculation of the mean square error value MSEp adopts a double-layer window structure: the outer window length is 500ms, including about 5 GNSS observation points, which is used to calculate the overall position deviation trend; the inner window length is 200ms, which is used to capture short-term position mutations. In each window, the system uses the GNSS RTK positioning result as the observation value xi, and the position value predicted by the Kalman filter as the reference value x'i. Both are converted to a unified northeastern sky coordinate system for difference calculation, and finally the mean square error in m² is obtained.
[0110] The calculation of the velocity mean square error value MSEv combines multi-source data: the Doppler velocity measurement results of GNSS are used as the main observation value, the position differential velocity between adjacent epochs is used as the auxiliary observation value, and the integral value of the IMU acceleration within a 100ms window is used as the reference value. The system first performs zero-mean processing on these velocity values to remove inherent bias, and then calculates the mean square error in the sliding window in units of (m / s)². In order to deal with the problem of inconsistent sampling frequencies of GNSS and IMU, the system performs cubic spline interpolation on the GNSS velocity data to align it with the IMU data time.
[0111] The calculation of the mean square error value MSEθ of the attitude angle is processed separately for three angles: for the roll angle φ and the pitch angle θ, it mainly relies on IMU data, takes the gyroscope angular velocity integral value as the observation value, and the Kalman filter prediction value as the reference value; for the heading angle ψ, both IMU and GNSS data are used. When the vehicle speed is greater than 5m / s, the GNSS heading angle is used as an auxiliary observation value for calculation. The system calculates the mean square error within a basic window of 50ms. For high dynamic movements, such as steering acceleration exceeding 50° / s², the system will shorten the calculation window to 20ms to improve the response capability to rapid changes in attitude.
[0112] Let's use a specific driving scenario to illustrate this process: When a vehicle is driving on an urban road, it may encounter continuous steering operations. Assuming the vehicle speed is 40km / h, when making a 90° turn, the system can observe that the lateral acceleration gradually increases from 0 to about 2m / s². During this process, the mean square error of the position change may fluctuate in the range of 0.1m²-0.3m², the mean square error of the speed change is about 0.2(m / s)²-0.5(m / s)², and the mean square error of the heading angle may reach 2-5. The changing trends of these error values can reflect the dynamic characteristics of the vehicle's motion state.
[0113] Through the above dynamic window inspection process, the system obtains the mean square error values of position, velocity and attitude. These error values reflect the changing characteristics of the initial fusion amount under different motion states. Through these error statistics, the system accurately quantifies the accuracy characteristics of the fusion results under different motion conditions and completes the dynamic inspection of the initial fusion amount.
[0114] Step S170, using the mean square error value, correcting the recursive boundary, and eliminating the error recursive boundary through recursive optimization processing to obtain the corrected fusion amount.
[0115] In one example, the recursive boundary is corrected using a mean square error value, and the steps of obtaining a corrected fusion amount by recursively optimizing the recursive boundary with the error eliminated include the following steps: correcting the attitude angle in the recursive boundary using the mean square error value; correcting the speed in the recursive boundary based on the corrected attitude angle; correcting the position in the recursive boundary based on the corrected attitude angle and the corrected speed; and obtaining a corrected fusion amount by recursively optimizing the corrected recursive boundary.
[0116] In the error elimination process at the recursive boundary, the attitude angle is first corrected. When the attitude angle mean square error value MSEθ is detected to exceed the preset threshold, such as MSEθ is greater than 3 during the vehicle turning process, the system will reprocess the attitude estimation near the boundary. The specific correction process is divided into three stages: the first stage selects a data segment of about 100ms before and after the boundary, and extracts the angular velocity measurement value ω=[ωx,ωy,ωz]T of the IMU, where ωx, ωy, and ωz represent the angular velocities around the three axes respectively; the second stage performs temperature compensation and zero bias compensation on the angular velocity data, and the compensated angular velocity is expressed as ωc=ω-δω-kT(T-T0), where δω is the zero bias error, kT is the temperature coefficient, T is the current temperature, and T0 is the calibration temperature; the third stage uses the compensated angular velocity to update the attitude angle through the quaternion algorithm, and the heading information provided by GNSS is combined for regular calibration during the update process to obtain a more accurate attitude estimate.
[0117] The processing of velocity error is directly based on the corrected attitude information. The system first analyzes the changing characteristics of the velocity mean square error value MSEv. When MSEv exceeds the threshold (such as 0.4 (m / s)²), the velocity optimization process is started. The optimization process includes: first, using the corrected attitude matrix Cnb, recalculate the conversion of acceleration from the carrier system to the navigation system, and obtain the acceleration an=Cnb*ab in the navigation system, where ab is the acceleration of the carrier system. Then, the acceleration data is integrated in sections, each section is 10ms long, and the velocity increment is calculated using the improved trapezoidal integration method. At the same time, GNSS velocity measurement information is introduced to establish a velocity error model: Δv=v-vGNSS, where v is the velocity obtained by IMU integration, vGNSS is the velocity measured by GNSS, and Δv is the velocity error. The system uses this error model to gradually optimize the velocity estimation at the boundary through weighted recursion.
[0118] The elimination of position error is based on the corrected attitude and velocity. The system analyzes the distribution of the mean square error MSEp. When the MSEp at a certain recursive boundary exceeds 0.2m², 200ms of data are selected before and after the boundary for processing. The error elimination process first establishes the position error state equation: ΔX=[Δp,Δv,Δθ]T, where Δp represents the position error vector, Δv represents the velocity error vector, and Δθ represents the attitude error vector. The system uses the corrected navigation parameters to recalculate the position increment, and uses the GNSS position measurement value as the observation value to construct an error feedback model, and obtains the correction value of the position error through multiple iterative optimizations.
[0119] The recursive optimization process uses an iterative calculation method. The update equation for each iteration is: X(i+1)=X(i)+K(i)*(ZH*X(i)) where X(i) and X(i+1) represent the state estimates of the i-th and i+1-th rounds, respectively. K(i) is the optimization gain matrix used to control the correction amplitude. Z is the observation vector, which contains the measurement data of IMU and GNSS. H is the observation matrix, which describes the mapping relationship between the state quantity and the observation quantity. The system judges the convergence by evaluating the degree of improvement of the state in two adjacent iterations.
[0120] In actual operation, this recursive optimization strategy needs to consider the reliability of sensor data. For example, when the GNSS signal is good (the number of satellites is greater than 8, and the PDOP is less than 3), the system will increase the weight of GNSS data in the optimization; when the GNSS signal is limited, it will rely more on the IMU integration results. This adaptive optimization mechanism dynamically adjusts the weights of different data sources to ensure stable correction effects in various environments.
[0121] Let's use a specific turning scenario to illustrate the optimization effect: When a vehicle makes a 90-degree turn at a speed of 40 km / h, a large error usually occurs at the recursive boundary at the beginning of the turn. Through hierarchical recursive optimization, the system first reduces the attitude angle error from 5 to below 1, then reduces the speed error from 0.5 (m / s)² to 0.2 (m / s)², and finally reduces the position error from 0.3m² to about 0.1m². The entire optimization process usually requires 3-4 rounds of iterations to reach a stable convergence state.
[0122] Through this multi-level recursive optimization mechanism, the system obtains the corrected state vector Xr(k)=[px,py,pz,vx,vy,vz,φ,θ,ψ]T. This correction result shows higher accuracy than the initial fusion amount. For example, in complex working conditions such as turning, the lateral positioning error can be controlled within 0.5m, the attitude angle error does not exceed 2°, and the speed error is maintained below 0.3m / s.
[0123] Step S180, reconstructing the state of the corrected fusion amount, and obtaining the state amount according to the characteristics of the reconstructed corrected fusion amount, IMU data and GNSS data, and reconstruction rule analysis.
[0124] The system first analyzes the characteristics of the sensors: IMU can accurately capture the instantaneous motion changes of the vehicle through a sampling frequency of up to 100Hz. Its accelerometer and gyroscope data are particularly sensitive to rapid posture changes and can promptly reflect changes in motion status in high-dynamic scenarios such as turning; while GNSS provides position information at a relatively low frequency of 10Hz, with good long-term stability and absolute position accuracy, and is particularly suitable for providing reliable position references in stable motion stages such as vehicles moving straight at a constant speed. These completely different sampling characteristics and data features determine that different processing strategies need to be adopted for different scenarios during the reconstruction process.
[0125] In one example, the state of a corrected fusion amount is reconstructed, and the step of obtaining the state amount according to the characteristics of the reconstructed corrected fusion amount, IMU data and GNSS data, and reconstruction rules includes the steps of: segmenting the corrected fusion amount into time series to obtain multiple analysis windows; extracting motion feature parameters in the corrected fusion amount within the analysis window; constructing a state classification model based on the motion feature parameters; adjusting the reconstruction rules according to the state classification model, and reconstructing the corrected fusion amount according to the state transfer model and the reconstruction rules; and obtaining the state amount according to the characteristics of the reconstructed corrected fusion amount, IMU data and GNSS data, and reconstruction rules.
[0126] The reconstruction process analyzes the motion characteristics through a dynamic segmentation mechanism. The system segments the corrected fusion quantity Xr(k) into time series, and the segment length is dynamically adjusted with the motion state. When violent motion is detected, such as when the angular velocity measured by the IMU suddenly increases during vehicle steering, the system may shorten the analysis window to between 100ms and 200ms. Such a short window usually contains 10-20 IMU data points, which can effectively capture the state changes during steering. When the vehicle is in a stable motion stage such as uniform straight driving, the IMU data changes slowly. At this time, the system will appropriately extend the analysis window, which may reach 400ms-600ms. Such a long window usually contains 4-6 GNSS position points, which is conducive to improving the stability of position estimation. The dynamic adjustment process of the window length also needs to consider the real-time requirements, while ensuring the capture of complete motion characteristics, avoiding the introduction of excessive time delays.
[0127] In each analysis window, the system extracts parameters that reflect motion characteristics. Linear motion characteristics are characterized by the statistical characteristics of the three-axis acceleration data, including the mean [ax_mean, ay_mean, az_mean], which reflects the magnitude of acceleration during continuous acceleration, deceleration and steering, and the standard deviation [ax_std, ay_std, az_std], which indicates the degree of acceleration fluctuation. For example, during vehicle acceleration, the longitudinal acceleration ax_mean may remain at a large level, while its standard deviation ax_std reflects the smoothness of the acceleration process. Rotational motion characteristics are described by the statistical values of the three-axis angular velocity, including the mean [ωx_mean, ωy_mean, ωz_mean] and the standard deviation [ωx_std, ωy_std, ωz_std], which directly reflect the steering state of the vehicle and the severity of the posture change.
[0128] Based on the extracted characteristic parameters, the system constructs a state classification model. The model defines a series of motion state judgment criteria: when the absolute value of the lateral acceleration ay_mean is lower than a certain threshold (usually in the range of 0.1m / s²-0.3m / s²), and its standard deviation ay_std remains at a low level, it indicates that the vehicle is in a straight-line motion state; when the heading angular velocity ωz_mean is detected to exceed a certain threshold (which may vary between 5 degrees / s-15 degrees / s depending on the vehicle speed), or the lateral acceleration ay_mean increases significantly, the system determines it as a steering motion state; if the longitudinal acceleration ax_mean exceeds the set threshold, it is identified as an acceleration and deceleration state. These state judgment thresholds will be dynamically adjusted according to the vehicle speed and road conditions to ensure the reliability of the judgment results.
[0129] The state reconstruction rule dynamically adjusts the data fusion strategy according to different motion states. When it is identified as linear motion, the system will increase the weight of GNSS position data accordingly, generally reaching a large proportion of the total weight, and at this time it mainly relies on the stable position reference provided by GNSS; when it is determined to be a turning motion, the weight of IMU data will be significantly increased, making full use of its high sampling rate characteristics to track posture changes; in the acceleration and deceleration state, the system needs to rely on the acceleration data of IMU and the speed measurement of GNSS at the same time, and the weights of the two will be dynamically allocated according to the specific acceleration size and GNSS signal quality. This weight allocation mechanism ensures that the optimal state estimation can be obtained under different motion states.
[0130] The system establishes a state transition model to describe the state evolution in continuous time. The model adopts the form of X(k+1)=f(X(k),u(k)), where the state vector X(k+1) at time k+1 is calculated by the state vector X(k) at time k and the control input u(k) through the state transfer function f(·). The state vector X consists of nine components, including the position vector p (east position px, north position py, celestial position pz), the velocity vector v (east velocity vx, north velocity vy, celestial velocity vz), and the attitude angle vector θ (roll angle φ, pitch angle ψ, heading angle γ). The control input vector u contains the three-axis acceleration measurement values (ax, ay, az) and the three-axis angular velocity measurement values (ωx, ωy, ωz) from the IMU. This state transition model selects different evolution equations according to the current motion state. For example, in the steering state, the influence of the angular velocity integral is focused on, while in the linear motion, the velocity projection relationship is emphasized.
[0131] In order to solve the time asynchrony problem caused by the difference in sampling frequency between IMU signals and GNSS signals, the system uses piecewise cubic spline interpolation method to expand GNSS data. The interpolation process needs to fully consider the characteristics of the current motion state. In high dynamic states such as steering, a smaller interpolation interval is used, which may be shortened to 50ms-100ms to ensure that the interpolation result can accurately reflect the changes in the actual motion trajectory. At the same time, the system uses the position increment obtained by IMU integration to constrain the interpolation curve, and improves the reliability of the interpolation result by setting appropriate boundary conditions.
[0132] Through the above reconstruction process, the system obtains new state quantities. These state quantities show accuracy characteristics that are adapted to the motion characteristics in different motion scenarios: the lateral positioning error can usually be controlled within a small range when driving in a straight line, the attitude angle maintains a high accuracy during steering, and the relative error of speed estimation is also maintained at a low level. This state reconstruction mechanism achieves an accurate description of the vehicle's motion state by making full use of the sensor characteristics of IMU and GNSS.
[0133] Step S190, inputting the state quantity into the extended Kalman filter, and completing the fusion of IMU data and GNSS data through the prediction-update-feedback mechanism.
[0134] Based on the reconstructed state, this step establishes an extended Kalman filter for final data fusion. The nonlinear Kalman filter equation is used in the prediction stage:
[0135] X'(k+1)=f(X(k),u(k))P'(k+1)=F(k)*P(k)*F(k)T+Q(k), where X'(k+1) represents the predicted state vector at time k+1, which contains nine components: three-dimensional position p=[px,py,pz] (east, north, celestial position), three-dimensional velocity v=[vx,vy,vz] (east, north, celestial velocity) and three-dimensional attitude angle θ=[φ,ψ,γ] (roll angle, pitch angle, heading angle). X(k) is the state vector at time k, and u(k) is the input vector of the IMU, including acceleration a=[ax,ay,az] and angular velocity ω=[ωx,ωy,ωz]. P'(k+1) and P(k) represent the state covariance matrices at time k+1 and time k, respectively, reflecting the uncertainty of state estimation. F(k) is the state transfer matrix, which describes the evolution of state quantities over time. Q(k) is the system noise covariance matrix, which represents the uncertainty in the prediction process. Through this prediction process, the system obtains the initial state prediction value X'(k+1) at time k+1 and the corresponding prediction covariance matrix P'(k+1).
[0136] In the update phase of the extended Kalman filter, the system further optimizes the state estimation through two links: observation update and state feedback. The observation update process is implemented by the following set of equations:
[0137] K(k+1)=P'(k+1)H(k+1)T[H(k+1)*P'(k+1)H(k+1)T+R(k+1)]-1X(k+1)=X'(k+1)+K(k+1)[Z(k+1)-h(X'(k+1))]P(k+1)=[IK(k+1)*H(k+1)]*P'(k+1), where H(k+1) is the observation matrix. The state is mapped to the observation space; Z(k+1) is the GNSS observation vector, which contains the position and velocity measurements; [Z(k+1)-h(X'(k+1))] represents the observation residual; R(k+1) is the observation noise covariance matrix, which describes the uncertainty of GNSS observations; K(k+1) is the Kalman gain matrix, which determines the weight of observation correction; I is the identity matrix; P(k+1) is the updated state covariance matrix. In this update process, the system first calculates the optimal gain K(k+1) based on the predicted uncertainty P'(k+1) and the observation noise characteristics R(k+1), and then uses the GNSS observation data to correct the predicted value.
[0138] The state feedback mechanism of the extended Kalman filter works in two ways: on the one hand, the updated state estimate X(k+1) and covariance matrix P(k+1) are directly used for prediction at the next moment, forming a closed loop of prediction-update-feedback; on the other hand, the system dynamically adjusts the parameters in the prediction and update process according to the characteristics of the observation residual [Z(k+1)-h(X'(k+1))]. For example, when large position residuals are observed continuously, the system will appropriately increase the value of the corresponding element in Q(k) to improve the uncertainty assessment of the prediction; when the GNSS signal quality is good, the noise parameter in R(k+1) is correspondingly reduced, and the weight of the observation data is increased. This adaptive mechanism ensures that the state estimation can be dynamically optimized according to the actual situation.
[0139] Through this prediction-update-feedback process based on the extended Kalman filter, the system evaluates the reliability of the IMU data / GNSS data fusion effect according to the filtering criteria. Specifically, the system checks the following key indicators: first, the convergence of the observation residual sequence, requiring the mean and variance of the residual to remain within the preset range (such as the standard deviation of the position residual is less than 0.3m); second, the stability of the state estimation covariance matrix P(k+1), whose diagonal elements reflect the uncertainty level of each state quantity estimate. When these indicators meet the requirements, the system outputs the final IMU / GNSS fusion result.
[0140] Let's use a specific example to understand this whole process: Imagine a car is turning. First, the system uses the current state (position, speed, attitude angle, etc.) and IMU data to predict the state of the vehicle in 0.1 seconds, including a specific value such as the expected turn of 15 degrees. This is like a person walking with his eyes closed, predicting the next step based on previous experience.
[0141] Next comes the observation update process: the system finds through GNSS observation that it has only turned 12°. This is like a person walking and opening his eyes to look at the actual position and finding that it deviates from the predicted position. At this time, the system will correct the prediction result based on the credibility of the predicted value and the observed value (determined by the gain matrix K).
[0142] Then comes the state feedback process: the system not only corrects the current state, but also remembers this correction experience like learning. For example, if it finds that the steering angle predicted for several consecutive times is too large, the system will automatically adjust the relevant parameters in the prediction model. This feedback mechanism is achieved by adjusting the noise covariance matrix Q and R to ensure that the next prediction can be more accurate.
[0143] The whole process is subject to filtering criteria: the system checks in real time whether the observation residual (the difference between the predicted value and the actual observation value) is within a reasonable range. For example, if the position residual is always kept within 0.3m and the attitude angle error does not exceed 2°, it means that the fusion result is reliable. If it exceeds these ranges, the system will consider that the fusion strategy needs to be adjusted, and the weight distribution of IMU data and GNSS data may be re-evaluated.
[0144] The final fusion result reflects the ability to accurately track different motion states. In the straight-line driving stage, the system mainly relies on GNSS data for position updates. At this time, the typical position errors in the east and north directions are within 0.5m, and the speed error can be controlled below 0.2m / s. When the vehicle is turning, the system increases the weight of the IMU data, and the attitude angle estimation error usually does not exceed 2°. Even during the turning process, the peak value of the lateral position error can be controlled within 1m. In the case of limited GNSS signals (such as between high-rise buildings), the system can rely on IMU data to maintain high-precision navigation for 10s-15s, and the position drift during this period is usually less than the length of the vehicle body. This adaptive state estimation mechanism realizes comprehensive and accurate tracking of the vehicle's motion state and provides reliable state output for high-precision positioning applications such as autonomous driving.
[0145] This application establishes a unified data collection and preprocessing mechanism based on a time base, combined with dynamic window grouping and bidirectional recursive processing, to achieve accurate tracking of the vehicle's motion state. The system sets a reasonable window length and overlap based on the sampling characteristics of IMU data and GNSS data, and through forward and reverse recursive comparison, it can accurately identify the moment when the vehicle's motion state changes, especially in complex working conditions such as turning, effectively improving the lateral positioning accuracy and attitude angle accuracy.
[0146] This application designs an adaptive gain matrix construction mechanism and state quantity mapping conversion method based on Kalman filtering, and cooperates with multi-level mean square error evaluation and recursive optimization strategy to significantly improve the reliability of the integrated navigation system. The system ensures stable navigation performance in various complex environments by dynamically adjusting filter parameters and optimizing attitude angle, velocity and position errors layer by layer.
[0147] This application proposes a fusion optimization method based on state reconstruction and extended Kalman filter feedback, which enhances the environmental adaptability of the system. This method continuously evaluates and dynamically adjusts the reconstructed state quantity, intelligently allocates sensor weights according to different motion states, establishes a complete observation update and state feedback mechanism, effectively improves the positioning accuracy and reliability of the integrated navigation system, and can maintain high-precision navigation capabilities for a long time even when satellite signals are limited.
[0148] It should be understood that although Figure 1The steps in the flowchart are shown in sequence as indicated by the arrows, but these steps are not necessarily executed in the order indicated by the arrows. Unless otherwise specified in this document, there is no strict order restriction for the execution of these steps, and these steps can be executed in other orders. Moreover, Figure 1 At least part of the steps may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily executed at the same time, but can be executed at different times. The execution order of these sub-steps or stages is not necessarily sequential, but can be executed in turn or alternately with other steps or at least part of the sub-steps or stages of other steps.
[0149] In one embodiment, a computer device is provided. The computer device may be a server, and its internal structure diagram may be as follows: Figure 2 As shown. The computer device includes a processor, a memory, a network interface and a database connected through a system bus. Among them, the processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The database of the computer device is used to store IMU data and GNSS data. The network interface of the computer device is used to communicate with an external terminal through a network connection. The computer program is executed by the processor to implement an IMU / GNSS fusion method based on Kalman filtering.
[0150] Those skilled in the art will understand that Figure 2 The structure shown in the figure is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device to which the solution of the present application is applied. The specific computer device may include more or fewer components than those shown in the figure, or combine certain components, or have a different arrangement of components.
[0151] In one embodiment, a computer device is provided, including a memory and a processor, wherein a computer program is stored in the memory, and when the processor executes the computer program, the following steps are implemented:
[0152] Perform time domain sampling on IMU signals and GNSS signals to obtain sampling data, perform preprocessing and quantitative analysis on the sampling data, and use the discrete observation points in the sampling data after time series statistical processing; the sampling data includes IMU data and GNSS data;
[0153] The discrete observation points are grouped into windows, the grouping interval is calculated according to the degree of overlap of data in adjacent windows, and the benchmark sampling segment is obtained according to the integrity of the grouping interval;
[0154] Perform forward recursion on the reference sampling segment, perform reverse recursion based on the forward recursion, and compare the forward and reverse data obtained by the forward recursion and the reverse recursion to obtain the recursion boundary;
[0155] Construct a Kalman gain matrix according to the recursive boundary, and obtain the predicted state value by analyzing the Kalman gain matrix;
[0156] Using the predicted state value, perform state quantity mapping conversion of IMU acceleration double integration and GNSS position, and fuse IMU data and GNSS data according to the double integration result and mapping conversion result to obtain the initial fusion quantity;
[0157] Perform dynamic window statistical analysis on the initial fusion amount to obtain the change characteristics, and obtain the mean square error value according to the test criteria and the change characteristics;
[0158] The mean square error value is used to correct the recursive boundary, and the recursive boundary with the error is eliminated through recursive optimization to obtain the corrected fusion amount;
[0159] The state of the corrected fusion quantity is reconstructed, and the state quantity is obtained according to the characteristics of the reconstructed corrected fusion quantity, IMU data and GNSS data, and the reconstruction rule analysis;
[0160] The state quantity is input into the extended Kalman filter, and the fusion of IMU data and GNSS data is completed through the prediction-update-feedback mechanism.
[0161] In one embodiment, a computer readable storage medium is provided, on which a computer program is stored, and when the computer program is executed by a processor, the following steps are implemented:
[0162] Perform time domain sampling on IMU signals and GNSS signals to obtain sampling data, perform preprocessing and quantitative analysis on the sampling data, and use the discrete observation points in the sampling data after time series statistical processing; the sampling data includes IMU data and GNSS data;
[0163] The discrete observation points are grouped into windows, the grouping interval is calculated according to the degree of overlap of data in adjacent windows, and the benchmark sampling segment is obtained according to the integrity of the grouping interval;
[0164] Perform forward recursion on the reference sampling segment, perform reverse recursion based on the forward recursion, and compare the forward and reverse data obtained by the forward recursion and the reverse recursion to obtain the recursion boundary;
[0165] Construct a Kalman gain matrix according to the recursive boundary, and obtain the predicted state value by analyzing the Kalman gain matrix;
[0166] Using the predicted state value, perform state quantity mapping conversion of IMU acceleration double integration and GNSS position, and fuse IMU data and GNSS data according to the double integration result and mapping conversion result to obtain the initial fusion quantity;
[0167] Perform dynamic window statistical analysis on the initial fusion amount to obtain the change characteristics, and obtain the mean square error value according to the test criteria and the change characteristics;
[0168] The mean square error value is used to correct the recursive boundary, and the recursive boundary with the error is eliminated through recursive optimization to obtain the corrected fusion amount;
[0169] The state of the corrected fusion quantity is reconstructed, and the state quantity is obtained according to the characteristics of the reconstructed corrected fusion quantity, IMU data and GNSS data, and the reconstruction rule analysis;
[0170] The state quantity is input into the extended Kalman filter, and the fusion of IMU data and GNSS data is completed through the prediction-update-feedback mechanism.
[0171] Those of ordinary skill in the art can understand that all or part of the processes in the above-mentioned embodiment methods can be completed by instructing the relevant hardware through a computer program, and the computer program can be stored in a non-volatile computer-readable storage medium. When the computer program is executed, it can include the processes of the embodiments of the above-mentioned methods. Among them, any reference to memory, storage, database or other media used in the embodiments provided in this application may include non-volatile and / or volatile memory. Non-volatile memory may include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM) or flash memory. Volatile memory may include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in many forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link (Synchlink) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), etc.
[0172] The technical features of the above embodiments may be combined arbitrarily. To make the description concise, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0173] The above-described embodiments only express several implementation methods of the present application, and the descriptions thereof are relatively specific and detailed, but they cannot be construed as limiting the scope of the patent application. It should be pointed out that, for a person of ordinary skill in the art, several variations and improvements can be made without departing from the concept of the present application, and these all belong to the protection scope of the present application. Therefore, the protection scope of the patent application shall be subject to the attached claims.
Claims
1. An IMU / GNSS fusion method based on Kalman filtering, characterized in that: The following steps are involved: Performing time domain sampling on the IMU signal and the GNSS signal to obtain sampled data, preprocessing and quantitatively analyzing the sampled data, and performing time series statistical processing on discrete observation points in the sampled data; the sampled data includes the IMU data and the GNSS data; The discrete observation points are grouped into windows, the grouping interval is calculated according to the degree of overlap of data in adjacent windows, and the reference sampling segment is obtained according to the integrity of the grouping interval; Performing forward recursion on the reference sampling segment, performing reverse recursion according to the forward recursion, and comparing the forward and reverse data obtained by the forward recursion and the reverse recursion to obtain a recursion boundary; Constructing a Kalman gain matrix according to the recursive boundary, and obtaining a predicted state value by analyzing the Kalman gain matrix; Using the predicted state value, performing state quantity mapping conversion of double integration of IMU acceleration and GNSS position, and fusing the IMU data and the GNSS data according to the double integration result and the mapping conversion result to obtain an initial fusion quantity; Performing dynamic window statistical analysis on the initial fusion amount to obtain change characteristics, and obtaining a mean square error value according to a test criterion and the change characteristics; Using the mean square error value, the recursive boundary is corrected, and the corrected recursive boundary is processed by recursive optimization to obtain a corrected fusion amount; Reconstructing the state of the corrected fusion amount, and obtaining the state amount according to the characteristics of the reconstructed corrected fusion amount, the IMU data and the GNSS data, and the reconstruction rule analysis; The state quantity is input into an extended Kalman filter, and a prediction-update-feedback mechanism is used to complete the fusion of the IMU data and the GNSS data.
2. The IMU / GNSS fusion method based on Kalman filtering according to claim 1, characterized in that: The step of performing window grouping on the discrete observation points, calculating the grouping interval according to the degree of overlap of data in adjacent windows, and obtaining the reference sampling segment according to the grouping interval comprises the following steps: Arranging the discrete observation points in time sequence to establish a time series index of the discrete observation points; Based on the time series index, the discrete observation points are grouped into windows using a sliding window mechanism; Dividing the overlapping area of the adjacent windows into a preset number of equal time segments; Calculating the number mean and standard deviation of the discrete observation points in the equal time segment to generate a data distribution feature vector of the overlapping area of the adjacent windows; Calculating the grouping interval according to the data distribution feature vector; Checking the coverage of the IMU data, the distribution of the GNSS data, the time interval distribution of the discrete observation points, and whether there is a data blank period within the grouping interval to obtain the integrity of the grouping interval; A reference sampling segment is obtained according to the integrity of the grouping interval.
3. The IMU / GNSS fusion method based on Kalman filtering according to claim 1, characterized in that: The step of performing forward recursion on the reference sampling segment, performing reverse recursion according to the forward recursion result, and comparing the forward and reverse data obtained by the forward recursion and the reverse recursion to obtain the recursion boundary includes the steps of: Mapping the acceleration data in the IMU data from the carrier coordinate system to the navigation coordinate system, organizing the acceleration data converted by the coordinate system and the angular velocity data in the IMU data in a time series, constructing a state vector including a three-dimensional position, a three-dimensional velocity and an Euler angle attitude, and performing forward recursion on the state vector using a fourth-order Runge-Kutta integral algorithm; In the forward recursion process, the output characteristics of the gyroscope in a stationary state are analyzed to obtain the variation law of the zero bias over time, a zero bias error model including constant drift and random walk is established, the temperature change is monitored by a built-in temperature sensor, a mapping relationship between temperature and proportional factor is established, and the forward recursion is optimized based on the zero bias error model and the mapping relationship; Using the same state equation and integration algorithm as the forward recursion process, the reverse recursion is performed from the end time of the reference sampling segment; The forward and reverse data are compared from the position dimension, the speed dimension and the attitude dimension, and in combination with the GNSS data, to obtain a time point at which the forward and reverse data have obvious differences as the recursive boundary.
4. The IMU / GNSS fusion method based on Kalman filtering according to claim 1, characterized in that: The step of constructing a Kalman gain matrix according to the recursive boundary and obtaining a predicted state value by analyzing the Kalman gain matrix includes the following steps: Establishing a state vector and an observation vector of a Kalman filter, and constructing a state transfer matrix and an observation matrix based on the state vector and the observation vector for state prediction and observation update of the Kalman filter; Adopting an adaptive weight adjustment mechanism to dynamically adjust the weight ratio of the IMU data and the GNSS data according to the motion state, adopting a gradual weight mechanism established at the recursive boundary to smoothly transition the weight ratio, and constructing the Kalman gain matrix based on the adjusted and smoothly transitioned weight ratio; The predicted state value is obtained based on the Kalman gain matrix, the state vector and the observation vector.
5. The IMU / GNSS fusion method based on Kalman filtering according to claim 1, characterized in that: The step of using the predicted state value to perform state quantity mapping conversion of the IMU acceleration double integral and the GNSS position, and obtaining the initial fusion quantity according to the conversion rule and the mapping conversion result includes the following steps: Establishing a conversion relationship between a carrier coordinate system and a navigation coordinate system using the attitude component in the predicted state value, and converting acceleration data in the IMU data from the carrier coordinate system to the navigation coordinate system based on the conversion relationship; Performing a first integration on the acceleration data after the coordinate system conversion to convert it into a velocity increment, and performing a second integration on the velocity increment to calculate a position increment, so as to perform a double integration of the IMU acceleration; The geographic coordinates in the GNSS data are converted into position representation in an earth-centered earth-fixed coordinate system, a local navigation coordinate system is established using the position component in the predicted state value, and the earth-centered earth-fixed coordinate system is converted into the local navigation coordinate system, so that the IMU data and the GNSS data are fused according to the double integration result and the mapping conversion result to obtain the initial fusion value.
6. The IMU / GNSS fusion method based on Kalman filtering according to claim 1, characterized in that: The step of performing dynamic window statistical analysis on the initial fusion amount to obtain a change feature, and obtaining a mean square error value according to a test criterion and the change feature, comprises the following steps: Based on a preset window and a mean and standard deviation method, the position change amount, velocity change rate and attitude angle change rate in the initial fusion amount are counted to obtain the change feature; Establishing the corresponding inspection criteria according to the change characteristics, and dynamically adjusting the inspection criteria by adopting a dynamic threshold adjustment mechanism based on different motion states; Based on the inspection criteria, the mean square error values corresponding to the position change, the velocity change rate and the attitude angle change rate are calculated through an adaptive sliding window mechanism to obtain the position mean square error value, the velocity mean square error value and the attitude angle mean square error value respectively.
7. The IMU / GNSS fusion method based on Kalman filtering according to claim 1, characterized in that: The step of using the mean square error value to correct the recursive boundary and eliminating the error of the recursive boundary by recursive optimization processing to obtain the corrected fusion amount includes the steps of: Using the mean square error value, correcting the attitude angle in the recursive boundary; Based on the corrected attitude angle, correct the speed in the recursive boundary; Based on the corrected attitude angle and the corrected speed, correcting the position in the recursive boundary; The corrected fusion amount is obtained by recursively optimizing the corrected recursive boundary.
8. The IMU / GNSS fusion method based on Kalman filtering according to claim 1, characterized in that: The step of reconstructing the state of the corrected fusion amount and obtaining the state amount according to the characteristics of the reconstructed corrected fusion amount, the IMU data and the GNSS data and the reconstruction rule analysis comprises the steps of: Performing time series segmentation on the corrected fusion amount to obtain multiple analysis windows; Extracting motion characteristic parameters in the corrected fusion amount within the analysis window; Based on the motion characteristic parameters, construct a state classification model; Adjust the reconstruction rule according to the state classification model, and reconstruct the corrected fusion amount according to the state transition model and the reconstruction rule; The state transition model is used to describe the state evolution in continuous time; The state quantity is obtained according to the reconstructed corrected fusion quantity, the characteristics of the IMU data and the GNSS data, and the reconstruction rule analysis.
9. A computer device comprising a memory and a processor, wherein the memory stores a computer program, wherein: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 8 are implemented.
10. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 8 are implemented.
Citation Information
Patent Citations
Dynamic positioning system of total station combined inertial measurement unit
CN110220512A
Data filtering method based on Kalman filtering information and residual correlation
CN112946641A