A Fast Calibration Method and System for MEMS Inertial Navigation Based on Multi-Scale Data Segmentation
Through multi-scale data segmentation and dynamic adjustment of weight coefficients, the problem of too long calibration time of MEMS inertial navigation system is solved, fast and accurate calibration is achieved, and calibration efficiency is improved.
Patent Information
- Application Number
- CN202510503221.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-22
- Publication Date
- 2025-06-27
- Estimated Expiration
- 2045-04-22
AI Technical Summary
During the calibration process, MEMS inertial navigation system is difficult to take into account both noise resistance and convergence speed, resulting in too long calibration time and cannot meet the needs of fast start and precise calibration.
The multi-scale data segmentation method is adopted to store and segment the data output by the MEMS inertial sensor in real time through a multi-level buffer, and data segments of different time scales are generated, and the weighted fusion of the initial weight coefficients and dynamic adjustment of the observed residuals are achieved quickly.
On the premise of ensuring calibration accuracy, the calibration time of the MEMS inertial navigation system is significantly shortened, the calibration efficiency is improved, and the calibration time can be greatly shortened under the same accuracy requirements.
Smart Images

Figure CN120008652B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of MEMS inertial navigation calibration, and particularly to a fast calibration method and system for MEMS inertial navigation with multi-scale data segmentation. Background Art
[0002] With the rapid development of microelectromechanical system (MEMS) technology, MEMS inertial navigation systems have been widely used in fields such as unmanned aerial vehicles and robots due to their advantages of small size and low cost. Before actual use, MEMS inertial navigation systems need to be initially calibrated to obtain accurate attitude information, which is of great significance for ensuring navigation and positioning accuracy.
[0003] In related technologies, the calibration of MEMS inertial navigation systems mainly uses the method based on Kalman filtering. This method first filters the original data output by MEMS sensors to suppress noise, and then uses a data window with a fixed length for attitude calculation. During the calculation process, the attitude angles are iteratively estimated through the Kalman filtering algorithm until the estimated values converge and then the calibration results are output.
[0004] However, due to the complex time-varying characteristics of the measurement noise of MEMS sensors, it is difficult for a data window with a fixed length to simultaneously take into account the anti-noise performance and convergence speed. When the data window is short, the measurement noise will significantly affect the calibration accuracy; when the data window is long, although the noise can be effectively suppressed, it will cause the convergence process to slow down and prolong the calibration time. In addition, with the diversification of navigation application scenarios, the requirements for fast startup and accurate calibration are becoming increasingly prominent. Summary of the Invention
[0005] The present application provides a fast calibration method and system for MEMS inertial navigation with multi-scale data segmentation, which is used to solve the problem of how to shorten the calibration time of MEMS inertial navigation systems while ensuring calibration accuracy.
[0006] In a first aspect, the present application provides a fast calibration method for MEMS inertial navigation with multi-scale data segmentation, which is applied to a MEMS inertial navigation system. The method includes:
[0007] Real-time storing the original data output by MEMS inertial sensors through a multi-level buffer, where the original data includes angular velocity data and acceleration data;
[0008] Segmenting the original data in the multi-level buffer according to a preset time scale sequence to generate multiple data segments with different time scales and gradually increasing time lengths;
[0009] Weighted fusing the data segments with different time scales according to a preset initial weight coefficient to generate a fused observation vector;
[0010] Perform rough alignment calculation for navigation and positioning using the fused observation vector to obtain the initial attitude angle, and calculate the observation residual based on the initial attitude angle, where the observation residual is the difference between the initial attitude angle and the corresponding theoretical value;
[0011] Adjust the initial weight coefficient according to the observation residual and perform rough alignment calculation again until the observation residual is less than a preset threshold;
[0012] Determine the initial attitude angle corresponding to when the observation residual is less than the preset threshold as the final MEMS inertial navigation calibration result.
[0013] Through the above embodiments, the MEMS inertial navigation system can process short-term and long-term data simultaneously through the multi-level buffer storage and multi-time scale segmentation scheme, avoiding the problem of too long calibration time caused by using a long time window to obtain high accuracy in traditional methods. Data fusion is carried out using weight coefficients and the weights are dynamically adjusted according to the observation residual, achieving fast and accurate calibration. Compared with the fixed window method, the calibration time can be significantly shortened under the same accuracy requirements. This scheme well balances the contradiction between calibration speed and accuracy, significantly shortens the time required for the calibration process on the premise of ensuring calibration accuracy as much as possible, and improves the calibration efficiency.
[0014] In some embodiments, the step of segmenting the original data in the multi-level buffer according to a preset time scale sequence specifically includes:
[0015] Establish multiple parallel sliding windows for selecting data segments to be processed at different time scales, and the length of each sliding window matches the corresponding time scale;
[0016] Perform signal quality evaluation on the original data in each sliding window to obtain window signal characteristic values, where the window signal characteristic values include signal fluctuation degree and data continuity;
[0017] Determine the segmentation parameters of each sliding window according to the window signal characteristic values, where the segmentation parameters include window moving step size and data truncation interval, and the window moving step size is related to the overlapping degree of adjacent data segments;
[0018] Perform parallel segmentation on the original data in each sliding window based on the segmentation parameters to obtain multiple candidate data segments;
[0019] Screen and integrate the candidate data segments according to the signal consistency criterion to generate the final data segments of different time scales.
[0020] Through the above embodiments, the MEMS inertial navigation system performs segmented processing using a parallel sliding window, can process data of multiple time scales simultaneously, and avoids the time delay caused by serial processing. By dynamically adjusting the segmentation parameters through signal quality evaluation, high-quality data segments can be quickly screened out for calibration calculation, reducing the time consumed in processing low-quality data. At the same time, a signal consistency criterion is introduced to ensure data reliability, guaranteeing the calibration accuracy while improving the processing speed. Compared with the traditional fixed-parameter segmentation method, this scheme can reduce the data processing time while maintaining a comparable accuracy level.
[0021] In some embodiments, the step of adjusting the initial weight coefficient according to the observation residual and performing coarse alignment calculation again until the observation residual is less than a preset threshold specifically includes:
[0022] Establish a multi-level precision control sequence of multiple observation residual thresholds arranged from large to small, and each of the observation residual thresholds corresponds to an iteration stage;
[0023] Calculate a relaxation factor according to the observation residual threshold of the current iteration stage, and the relaxation factor is positively correlated with the observation residual threshold;
[0024] Perform weighted processing on the observation residual according to the relaxation factor to obtain a weight adjustment amount, and update the initial weight coefficient according to the weight adjustment amount to generate a new weight coefficient combination;
[0025] Perform coarse alignment calculation again according to the new weight coefficient combination, and determine whether the obtained observation residual is less than the observation residual threshold of the current iteration stage;
[0026] If so, enter the next iteration stage; if not, return to the step of calculating the relaxation factor and continue to iterate.
[0027] Through the above embodiments, the MEMS inertial navigation system establishes a multi-level precision control sequence and dynamically adjusts the weight using a relaxation factor, avoiding the problem of excessive iteration in blindly pursuing high precision in traditional methods. By setting reasonable precision targets for each iteration stage and cooperating with adaptive iteration step size control, rapid convergence of the calibration accuracy is achieved, shortening the calibration time.
[0028] In some embodiments, before the step of if so, enter the next iteration stage, it further includes:
[0029] Output and display the temporary attitude angle obtained by the coarse alignment calculation and record the number of coarse alignments.
[0030] Through the above embodiments, in the MEMS inertial navigation system, by displaying the temporary attitude angle in real time and recording the number of rough alignment times, the operator can timely judge the calibration progress, and immediately terminate the calibration process when the required accuracy is reached, avoiding the time waste caused by over-calibration. At the same time, these records also provide a basis for optimizing the calibration strategy, which helps to further improve the calibration efficiency.
[0031] In some embodiments, the step of calculating the relaxation factor according to the observation residual threshold of the current iteration stage specifically includes:
[0032] Calculate the ratio of the current observation residual to the observation residual threshold to obtain a convergence index, where the convergence index represents the distance between the current calculation result and the target accuracy;
[0033] Substitute the convergence index into a preset non-linear mapping function to obtain a dynamic decay rate, where the dynamic decay rate decreases monotonically with the iteration process;
[0034] Calculate the relaxation factor of the current iteration stage according to the dynamic decay rate.
[0035] Through the above embodiments, the MEMS inertial navigation system adopts a dynamic decay mechanism based on the convergence index, enabling the iteration process to adaptively adjust the step size: a large step size is adopted for rapid approximation at low accuracy, and a small step size is adopted for fine adjustment when approaching the target accuracy. This adaptive strategy avoids the repeated oscillation problem in the traditional fixed-step method and speeds up the convergence rate.
[0036] In some embodiments, before the step of segmenting the raw data in the multi-level buffer according to a preset time scale sequence, it further includes:
[0037] Extract features from the historical data segment through a preset sliding time window to obtain a data feature sequence, where the data feature sequence includes signal fluctuation features and data correlation features;
[0038] Construct a time series prediction model based on the data feature sequence, where the time series prediction model adopts a recursive neural network structure and is used to capture the time series dependence relationship of the data segment;
[0039] Use the time series prediction model to predict the data features of the next time window to obtain predicted feature values;
[0040] Dynamically adjust the sampling frequency and buffer length according to the predicted feature values to generate an optimized acquisition strategy.
[0041] Through the above embodiments, the MEMS inertial navigation system constructs a time series prediction model using a recurrent neural network, predicts the data features of the next time window by learning the features of historical data, and realizes the intelligent optimization of data acquisition parameters. This prediction-based adaptive acquisition strategy can dynamically adjust the sampling frequency and buffer length according to signal features, reducing storage and computational overhead while ensuring data quality. Especially in complex dynamic environments, this method exhibits excellent adaptive capabilities and resource utilization efficiency.
[0042] In some embodiments, before the step of performing coarse alignment calculation using the fused observation vector for navigation and positioning to obtain an initial attitude angle, the method further includes:
[0043] Performing clustering analysis on historical calibration data, extracting error feature patterns, and establishing an error pattern library, where the error pattern library includes typical error patterns and their corresponding optimal compensation parameters;
[0044] Calculating a current error feature vector based on the fused observation vector, where the error feature vector includes drift characteristics and noise distribution characteristics;
[0045] Calculating the matching degree between the error feature vector and the typical error patterns in the error pattern library to obtain a pattern similarity;
[0046] Selecting an optimal compensation mode according to the pattern similarity, extracting the corresponding compensation parameters, and generating an initial compensation scheme for the initial attitude angle during the coarse alignment calculation.
[0047] Through the above embodiments, the MEMS inertial navigation system establishes an error pattern library and performs intelligent matching compensation, which can quickly identify system error features and apply corresponding compensation at the initial stage of calibration, avoiding the problem of slow convergence caused by the traditional method's complete dependence on iterative calculation. With the guidance of this prior knowledge, the initial attitude angle can be closer to the true value, thereby reducing the subsequent number of iterations.
[0048] In a second aspect, the present application provides a MEMS inertial navigation system, where the MEMS inertial navigation system includes: one or more processors and a memory;
[0049] The memory is coupled to the one or more processors, and the memory is used to store computer program code, where the computer program code includes computer instructions, and the one or more processors call the computer instructions so that the MEMS inertial navigation system can implement a multi-scale data segmentation-based MEMS inertial navigation fast calibration method provided by the above embodiments, which will not be elaborated here.
[0050] In a third aspect, the present application provides a computer-readable storage medium including instructions that, when running on a MEMS inertial navigation system, enable the MEMS inertial navigation system to implement a fast calibration method for MEMS inertial navigation with multi-scale data segmentation provided in the above embodiments, which will not be elaborated here.
[0051] In a fourth aspect, the present application provides a computer program product that, when running on a MEMS inertial navigation system, enables the MEMS inertial navigation system to implement a fast calibration method for MEMS inertial navigation with multi-scale data segmentation provided in the above embodiments, which will not be elaborated here.
[0052] One or more technical solutions provided in the embodiments of the present application have at least the following technical effects or advantages:
[0053] 1. By adopting a multi-level buffer and a parallel sliding window to process data segments of different time scales simultaneously, the trade-off dilemma between calibration speed and accuracy in the traditional fixed-window method is broken through. Through dynamic weight adjustment and signal quality evaluation for adaptive fusion, while ensuring calibration accuracy, the processing time is significantly shortened, realizing fast calibration of navigation positioning.
[0054] 2. Establishing a multi-level precision control sequence from coarse to fine, combined with a dynamic attenuation mechanism based on the convergence index, realizes fast approximation of calibration accuracy. By adaptively adjusting the iteration step size, the problem of repeated oscillation in the traditional fixed-step method is avoided, thus significantly shortening the calibration time.
[0055] 3. Combining recursive neural network prediction and an error pattern library, optimizing acquisition parameters through predicted data features, and quickly identifying and compensating for system errors using historical experience. This intelligent solution can reduce data acquisition time and the iterative calculation amount of the system, improving calibration efficiency. BRIEF DESCRIPTION OF THE DRAWINGS
[0056] Figure 1 is a flowchart of a fast calibration method for MEMS inertial navigation with multi-scale data segmentation in an embodiment of the present application;
[0057] Figure 2 is another flowchart of a fast calibration method for MEMS inertial navigation with multi-scale data segmentation in an embodiment of the present application;
[0058] Figure 3 is a schematic structural diagram of an entity device of a MEMS inertial navigation system in an embodiment of the present application. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0059] The terms used in the following embodiments of the present application are only for the purpose of describing specific embodiments and are not intended to limit the present application. As used in the specification and appended claims of the present application, the singular forms "a", "an", "the", "above-mentioned", "said", "this" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It should also be understood that the term "and / or" used in the present application refers to any or all possible combinations including one or more of the listed items.
[0060] Hereinafter, the terms "first" and "second" are only used for descriptive purposes and should not be construed as implying or suggesting relative importance or implicitly indicating the quantity of the indicated technical features. Thus, the features defined with "first" and "second" may explicitly or implicitly include one or more of such features. In the description of the embodiments of the present application, unless otherwise specified, the meaning of "a plurality" is two or more.
[0061] For ease of understanding, the method provided in this embodiment will be described in terms of its process below. Please refer to Figure 1 , which is a schematic flowchart of a multi-scale data segmentation MEMS inertial navigation fast calibration method in an embodiment of the present application.
[0062] S101. Real-time store the raw data output by the MEMS inertial sensor through a multi-level buffer.
[0063] Among them, the multi-level buffer is a storage structure composed of multiple buffer units with different capacities or levels, and is used to temporarily store the data output by the sensor in chronological order; the MEMS inertial sensor refers to an accelerometer and a gyroscope integrating micro-electro-mechanical system (MEMS) technology, and is used to measure the acceleration and angular velocity information of the carrier, and is the core data acquisition component of the inertial navigation system.
[0064] This step is executed after the MEMS inertial navigation system is started and before the calibration process begins, and continuously stores the data stream output by the sensor in real time, providing a continuous raw data buffer for subsequent segmentation processing.
[0065] Specifically, the MEMS inertial navigation system establishes a hierarchical data storage mechanism through a multi-level buffer at the hardware or software level. The multi-level buffer usually includes multiple buffer units with different lengths (such as short-term buffer, medium-term buffer, long-term buffer), which respectively correspond to data storage at different time scales (such as second level, minute level). The sensor outputs raw data (the x / y / z-axis accelerations of the accelerometer and the x / y / z-axis angular velocities of the gyroscope) at a fixed frequency (such as 100Hz), and these data are written into the multi-level buffer in chronological order of time stamps to form a continuous data stream storage. The buffer supports real-time reading and segmented retrieval of data, providing a basis for subsequent processing of data at different time scales.
[0066] Optionally, the system designs a three - level FIFO (First In First Out) cache queue. The first level is a high - speed cache (with a capacity of 1 - second data) for temporarily storing the latest data; the second level is a medium - frequency cache (with a capacity of 10 - second data) for storing recent data; the third level is a low - speed cache (with a capacity of 60 - second data) for long - term storing historical data. Sensor data is written into the three - level cache in sequence. Each time new data is written, each level of the cache is automatically updated, and the old data overflows in chronological order.
[0067] S102. Segment the original data in the multi - level buffer according to a preset time - scale sequence to generate multiple data segments with different time scales and gradually increasing time lengths.
[0068] Among them, the preset time - scale sequence refers to a predefined set of time lengths (such as 1s, 5s, 10s, 30s) used to guide the time span of segmenting the original data. Usually arranged in ascending order, it forms multi - scale data segments.
[0069] Specifically, the system extracts the original data of the corresponding time length in the multi - level buffer according to the preset time - scale sequence (for example, [1s, 5s, 10s, 30s]). For each time scale, the sliding window technique (the window length is equal to the time scale) is used to slide - segment the original data. The window moving step size can be set to a fixed value (such as 50% of the time scale) or adjusted dynamically (according to the signal quality). During the segmentation process, the signal quality of the data in each window is evaluated (such as calculating the signal fluctuation degree and data continuity), and high - quality data segments are screened out to avoid segments with excessive noise or data missing. Finally, multiple data segments with different time lengths are generated, such as 1 - second segments, 5 - second segments, 10 - second segments, etc. Each data segment contains the complete original data sequence within the corresponding time for subsequent weighted fusion.
[0070] Optionally, for the preset time - scale sequence (such as t1 = 1s, t2 = 5s, t3 = 10s), sliding windows of the same length as t1, t2, t3 are respectively created in the multi - level buffer. Each window slides independently, and the window moving step size is set to a fixed value (such as t1 / 2, t2 / 2, t3 / 2) to ensure that adjacent data segments partially overlap (such as 50% overlap). The signal quality of the data in each window is detected, the fluctuation degree (such as the standard deviation of acceleration data) and continuity (checking for data missing or timestamp jumps) are calculated, and a threshold is set to filter out windows with a fluctuation degree exceeding the threshold or data missing. The window data that passes the detection is time - aligned and format - standardized to generate data segments corresponding to the time scale. For example, the 1s window data segment is arranged in chronological order and stored as a structure containing the start timestamp and the data point sequence.
[0071] Optionally, the average signal fluctuation degree and continuity at each time scale are statistically calculated based on historical data to generate initial segmentation parameters (for example, the default moving step is 30% of the time scale). The signal fluctuation degree (such as the root mean square error of angular velocity data) and continuity index (the standard deviation of the data point interval time) of the current window are calculated in real time. If the fluctuation degree is higher than 1.5 times the historical average, the moving step is automatically reduced (for example, reduced from 30% to 20%), and the data segment overlap degree is increased to improve signal stability; if the continuity is good (data missing rate < 5%), the moving step is increased to reduce the calculation amount. Consistency verification is performed on the candidate data segments at each time scale, that is, it is checked whether the data at the same time point in the data segments of different time scales is consistent (a certain time error is allowed), and the inconsistent segments are removed, and finally reliable multi-scale data segments are generated.
[0072] S103. Weightedly fuse the data segments at different time scales according to the preset initial weight coefficients to generate a fused observation vector.
[0073] Specifically, the system first assigns initial weight coefficients to the data segments at each time scale. For example, the weight of the 1s data segment is set = 0.3, the weight of the 5s data segment is = 0.25, the weight of the 10s data segment is = 0.2, the weight of the 30s data segment is = 0.25, and the sum of the weights is 1. Then, eigenvalue extraction (such as the mean and variance of acceleration data, the integral value of angular velocity data) is performed on each data segment to form a feature vector. The feature vectors of each scale are weighted and summed according to the weight coefficients to obtain a fused observation vector.
[0074] S104. Use the fused observation vector to perform rough alignment calculation for navigation positioning to obtain an initial attitude angle, and calculate an observation residual based on the initial attitude angle.
[0075] Among them, the initial attitude angle is used to represent the carrier attitude parameters obtained by rough alignment calculation, including pitch angle, roll angle, and yaw angle, which reflect the initial orientation of the carrier relative to the navigation coordinate system; the observation residual is the difference between the initial attitude angle and the corresponding theoretical value, and the theoretical value is usually based on the direction of the gravity field when the carrier is stationary (such as the theoretical values of pitch angle and roll angle are 0°, and the yaw angle can be based on magnetic north or a preset reference direction).
[0076] Specifically, the MEMS inertial navigation system utilizes the acceleration and angular velocity information in the fusion observation vector and performs rough alignment through an inertial navigation algorithm. First, the acceleration data in the fusion observation vector is projected onto the gravity field to calculate the attitude matrix between the carrier coordinate system and the navigation coordinate system. For example, assuming the carrier is stationary, the measured value of the accelerometer should be equal to the gravitational acceleration g. By solving the components of the gravity vector in the carrier coordinate system, the pitch angle and roll angle are obtained. The yaw angle can be determined by integrating the angular velocity or in combination with a magnetic compass, etc. After obtaining the initial attitude angles, the difference between them and the theoretical values (such as the pitch angle and roll angle are 0° when stationary) is calculated, which is the observation residual.
[0077] In addition, before performing the rough alignment calculation for navigation positioning using the fusion observation vector, the MEMS inertial navigation system first performs a clustering analysis on the historical calibration data. By selecting an appropriate clustering algorithm (such as the K - Means algorithm), the historical calibration data is divided into several classes, and each class of data has similar error characteristics, thereby extracting the error characteristic patterns. These typical error characteristic patterns and their corresponding optimal compensation parameters are stored in the error pattern library.
[0078] Next, based on the current fusion observation vector, its drift characteristics and noise distribution characteristics are calculated to construct the current error characteristic vector. For example, by performing a first - order difference on the acceleration data in the fusion observation vector, its drift trend is obtained; by calculating the standard deviation of the acceleration data, its noise distribution characteristics are obtained.
[0079] Then, methods such as cosine similarity are used to calculate the matching degree between the current error characteristic vector and the typical error patterns in the error pattern library, and the pattern similarity between each typical error pattern and the current error characteristic vector is obtained.
[0080] According to the pattern similarity, the typical error pattern with the highest similarity is selected as the optimal compensation pattern, and the compensation parameters corresponding to this pattern are extracted from the error pattern library. According to these compensation parameters, an initial compensation scheme for the initial attitude angles is generated during the rough alignment calculation.
[0081] After completing the above preparatory work, the MEMS inertial navigation system utilizes the acceleration and angular velocity information in the fusion observation vector and performs rough alignment through the strap - down inertial navigation algorithm. When calculating the initial attitude angles, the initial compensation scheme is applied to compensate the calculation results. For example, when calculating the pitch angle and roll angle, the acceleration data is adjusted according to the compensation parameters, and then the attitude angles are calculated.
[0082] S105. Adjust the initial weight coefficient according to the observation residual and perform the rough alignment calculation again until the observation residual is less than the preset threshold.
[0083] Specifically, the system first establishes a multi-level precision control sequence (such as a three-level threshold: θ1 = 5°, θ2 = 2°, θ3 = 0.5°) and starts iteration from the first-level threshold. In the current stage, the ratio of the observation residual to the threshold (convergence index) is calculated, and the dynamic decay rate is obtained through a non-linear mapping function (such as an exponential function), and then the relaxation factor is calculated. For example, if the current residual is 4°, the threshold θ1 = 5°, and the convergence index is 0.8, substituting into the mapping function gives a dynamic decay rate of 0.9, and the relaxation factor α = 0.8 × 0.9 = 0.72. The weight coefficient is adjusted according to the relaxation factor (such as increasing the weight of the long-term data segment to suppress noise), a new fused observation vector is generated, and the coarse alignment calculation is performed again to obtain a new observation residual. If the residual is less than the current threshold (such as 4° < 5°), then it enters the next-level threshold (θ2 = 2°), and the above process is repeated until the observation residual is less than the final threshold (such as 0.5°).
[0084] S106. Determine the initial attitude angle corresponding to when the observation residual is less than the preset threshold as the final MEMS inertial navigation calibration result.
[0085] This step is executed when the observation residual is less than the preset threshold for the first time (the iteration in step S105 terminates), marking the end of the calibration process. At this time, the carrier completes the initial calibration and enters the navigation mode, and the calibration result is used for subsequent inertial navigation solution and position update.
[0086] Specifically, after a certain coarse alignment calculation, when the observation residuals (such as pitch angle residual 0.3°, roll angle residual 0.4°, yaw angle residual 0.6°) are less than the preset threshold (such as 0.5°), the system immediately terminates the iteration, and marks the current initial attitude angle (such as Pitch = 0.2°, Roll = 0.3°, Yaw = 0.5°) as the final calibration result. To ensure the stability of the result, the residuals can be continuously verified multiple times (such as continuously verifying 3 times) to avoid misjudgment caused by accidental noise. The final result is stored in the system register for the navigation algorithm to call and used as the initial attitude matrix input for inertial navigation solution.
[0087] In the above embodiment, the MEMS inertial navigation system can process short-term and long-term data simultaneously through the multi-level buffer storage and multi-time scale segmentation scheme, avoiding the problem of too long calibration time caused by using a long time window to obtain high precision in the traditional method. Using weight coefficients for data fusion and dynamically adjusting the weights according to the observation residuals, fast and accurate calibration is achieved. Compared with the fixed window method, the calibration time can be significantly shortened under the same accuracy requirements. This scheme well balances the contradiction between calibration speed and accuracy, significantly shortens the time required for the calibration process on the premise of ensuring calibration accuracy as much as possible, and improves the calibration efficiency.
[0088] The following is a further and more specific process description of the method provided in this embodiment. Please refer to Figure 2 , which is another process schematic diagram of a multi-scale data segmented MEMS inertial navigation fast calibration method in the embodiment of the present application.
[0089] S201. Extract features from the historical data segment through a preset sliding time window to obtain a data feature sequence.
[0090] This step is executed after a certain amount of historical data has been accumulated after the MEMS inertial navigation system is started (such as after the first calibration is completed), and belongs to the preprocessing stage of data acquisition optimization.
[0091] Specifically, the system first defines a preset sliding time window (such as window length T = 20s, sliding step t = 10s), slides in the historical data starting from the earliest time, and intercepts a data segment of length T each time. Signal fluctuation features and data correlation features are extracted for each data segment. Among them, the signal fluctuation features can be determined by calculating the standard deviation of the acceleration data (reflecting the noise level), etc.; the data correlation features can be determined by calculating the autocorrelation coefficient of the acceleration or angular velocity at adjacent time points (reflecting the strength of data time series dependence), the cross-correlation coefficient (reflecting the correlation of the three-axis data), etc.
[0092] It can be understood that other methods can also be used to extract features, such as time-frequency feature extraction based on wavelet transform, feature selection algorithms combined with machine learning (such as recursive feature elimination), etc., which are not limited here.
[0093] S202. Construct a time series prediction model based on the data feature sequence, and use the time series prediction model to predict the data features of the next time window to obtain predicted feature values.
[0094] Specifically, the system can build a time series prediction model using an RNN architecture (such as an LSTM network). Normalize the data feature sequence (e.g., normalize it to [0, 1]), and divide it into a training set (accounting for 80%) and a validation set (accounting for 20%) in chronological order. Each sample is the feature sequence of the past N time windows, and the label is the feature value of the N+1th window. Set 2 LSTM layers (with 128 neurons in each layer), and match it with a Dropout layer to prevent overfitting. The output layer uses a fully connected layer, and the number of neurons is equal to the feature dimension (e.g., 10 dimensions), and the activation function is a linear function (suitable for regression tasks). Then use the Adam optimizer, and the loss function is the mean squared error (MSE). Monitor the validation set loss during the training process. When the loss does not decrease for 5 consecutive epochs, terminate the training in advance, and save the optimal model parameters to obtain the time series prediction model. Enable the time series prediction model to learn the time series dependence law of the data feature sequence. For example, a high volatility in the current window is usually accompanied by a high noise level in the next time window, so as to realize the prediction of future features.
[0095] S203. Dynamically adjust the sampling frequency and buffer length according to the predicted feature value to generate an optimized acquisition strategy.
[0096] Specifically, the system first inputs the feature sequence of the current latest N time windows into the time series prediction model to obtain the predicted feature value of the next time window (e.g., the predicted signal volatility σ = 0.8, and the data correlation ρ = 0.6). Then generate an optimized acquisition strategy according to the preset adjustment rules. Optionally, if σ exceeds the threshold of 0.7 (indicating that the signal fluctuates violently), the sampling frequency is increased from 100Hz to 200Hz to capture high-frequency motion details; if σ < σ0.3 (indicating that the signal is stable), the sampling frequency is reduced to 50Hz to reduce the data volume. If ρ > 0.5 (indicating strong data correlation), it means that the time series dependence of the data is obvious. The length of the long-term buffer can be reduced from 60s to 30s to reduce the storage requirement using the correlation; if ρ < 0.3 (weak correlation), it is extended to 90s to avoid data loss affecting the calibration accuracy.
[0097] The finally generated optimized acquisition strategy is sent to the sensor drive module and the buffer management module in real time to realize the dynamic optimization of the acquisition parameters.
[0098] S204. Establish multiple parallel sliding windows for selecting data segments to be processed at different time scales.
[0099] Specifically, the MEMS inertial navigation system creates an independent sliding window for each time scale in a multi-level buffer according to a preset time scale sequence. The length of each window is equal to the corresponding time scale (such as a 1s window length equals 1s of data volume), and the number of windows is consistent with the number of time scales, supporting parallel operation. For example, a 1s window captures 100 data points at a sampling rate of 100Hz, and a 5s window captures 500 data points. Each window slides synchronously according to the timestamp to ensure that the data segments are aligned in time. When the window slides, it always overwrites the latest data in the buffer to avoid processing outdated information.
[0100] S205: Perform signal quality evaluation on the original data in each sliding window to obtain a window signal characteristic value.
[0101] Specifically, the MEMS inertial navigation system evaluates the raw data in each sliding window from two aspects: signal fluctuation and data continuity. For signal fluctuation, the system calculates statistics such as the standard deviation and root mean square error (RMSE) of the acceleration data and angular velocity data. The larger the standard deviation or RMSE, the more drastic the data fluctuation and the more unstable the signal. For data continuity, the system checks whether there are missing values in the data and whether the timestamp is continuous. If there is a data point loss or a timestamp jump, the data continuity is considered poor.
[0102] S206. Determine a segmentation parameter of each sliding window according to the window signal characteristic value, and perform parallel segmentation on the original data in each sliding window based on the segmentation parameter to obtain multiple candidate data segments.
[0103] Specifically, the MEMS inertial navigation system determines the segmentation parameters of each sliding window according to the window signal characteristic value obtained in step S205. If the data signal fluctuation in the window is large and the data continuity is poor, the system will reduce the window moving step length, increase the overlap of adjacent data segments, and appropriately adjust the data interception interval to avoid data abnormal areas; on the contrary, if the signal fluctuation is small and the data continuity is good, the window moving step length can be increased to reduce overlap and improve processing efficiency. After determining the segmentation parameters, the system uses these parameters to perform parallel segmentation on the original data in each sliding window. For example, for a sliding window with a time scale of 1 second, if the moving step length is determined to be 0.5 seconds and the data interception interval is the entire window length, then starting from the window starting position, a data segment of 1 second in length is intercepted every 0.5 seconds to obtain multiple candidate data segments of 1 second in length, and sliding windows of other time scales are also operated similarly, and finally multiple candidate data segments of different time scales are obtained.
[0104] S207 , screening and integrating the candidate data segments according to the signal consistency criterion to generate final data segments of different time scales.
[0105] Specifically, the MEMS inertial navigation system processes candidate data segments according to the signal consistency criterion. First, the system compares the signal characteristics of different candidate data segments, such as the change trends of acceleration and angular velocity. If the change trends of acceleration and angular velocity in two candidate data segments differ significantly within the same time range, it is determined that they may be affected by different interferences or there are data anomalies, and one or both of the data segments may be unreliable, and they are marked as data segments to be screened. For the marked data segments, the system further checks whether their data fluctuation degree and continuity conform to the characteristic distribution of the overall data. If the fluctuation degree is abnormally high or the continuity is poor, it is removed from the candidate data segments. Then, the remaining reliable candidate data segments are integrated according to the time scale. For candidate data segments on the same time scale, if their signal characteristics are similar and the change trends are consistent, they are merged into a final data segment; if there are partially overlapping data segments, the data in the overlapping part is weighted averaged or other fusion operations are performed to finally generate high-quality data segments on different time scales, preparing for subsequent weighted fusion.
[0106] S208. Calculate the observation residuals corresponding to the initial attitude angles based on the data segments on different time scales.
[0107] Specifically, the MEMS inertial navigation system first calculates the initial attitude angles using the data segments on different time scales. The system calculates using the inertial navigation algorithm based on the acceleration and angular velocity information in the data segments. For example, by projecting the acceleration data onto the gravity field and combining methods such as angular velocity integration, the attitude matrix between the vehicle coordinate system and the navigation coordinate system is calculated, and then the initial attitude angles such as pitch angle, roll angle, and yaw angle are obtained. After obtaining the initial attitude angles, the system compares them with the theoretical values to calculate the observation residuals. Taking the pitch angle as an example, if the theoretical value is 0°, and the calculated initial pitch angle is 0.5°, then the observation residual of the pitch angle is 0.5° - 0° = 0.5°. Similarly, the observation residuals of the roll angle and yaw angle are calculated, which will not be elaborated here.
[0108] S209. Calculate the ratio of the current observation residual to the observation residual threshold to obtain the convergence degree index, and input the convergence degree index into a preset non-linear mapping function to obtain the dynamic decay rate.
[0109] Specifically, the MEMS inertial navigation system first obtains the current observation residual calculated in step S208 and the preset observation residual threshold. Divide the current observation residual by the observation residual threshold to obtain the convergence degree index. For example, if the current observation residual is 3° and the observation residual threshold is 5°, then the convergence degree index is 3°÷5° = 0.6. Then, use this convergence degree index as the input and substitute it into the preset non-linear mapping function. Assume the preset non-linear mapping function is an exponential function (where x is the convergence index and y is the dynamic decay rate), substitute the convergence index 0.6 into this function, and the calculated dynamic decay rate is 0.936. This dynamic decay rate will be used in subsequent calculations of the relaxation factor, and then the weight coefficient will be adjusted to optimize the calibration process.
[0110] S210. Calculate the relaxation factor for the current iteration stage according to the dynamic decay rate.
[0111] This step has been introduced in step S105 and will not be elaborated here.
[0112] S211. Perform weighted processing on the observation residuals according to the relaxation factor to obtain the weight adjustment amount, and update the initial weight coefficient according to the weight adjustment amount to generate a new weight coefficient combination.
[0113] Specifically, the MEMS inertial navigation system first performs a weighted operation on the relaxation factor obtained in step S210 and the observation residuals calculated in S208. For example, assume the relaxation factor is α and the observation residual is e, and the calculation method of the weight adjustment amount can be Δw = α × e (Δw is the weight adjustment amount). Then, update the initial weight coefficient according to this weight adjustment amount.
[0114] S212. Perform rough alignment calculation again according to the new weight coefficient combination, and judge whether the obtained observation residual is less than the observation residual threshold of the current iteration stage.
[0115] Specifically, the MEMS inertial navigation system uses the new weight coefficient combination generated in step S211 to perform weighted fusion on data segments of different time scales again to obtain a new fused observation vector. Then, use this new fused observation vector to perform rough alignment calculation again according to the inertial navigation algorithm to obtain a new initial attitude angle and calculate the observation residual. Then compare this observation residual with the observation residual threshold preset in the current iteration stage. If the observation residual threshold in the current iteration stage is 0.5°, since 0.4° < 0.5°, it is judged that the observation residual obtained from this rough alignment calculation is less than the observation residual threshold of the current iteration stage; if the observation residual is greater than or equal to the threshold, it is judged that the accuracy requirement of the current stage has not been met.
[0116] S213. If so, enter the next iteration stage; if not, return to the step of calculating the relaxation factor and continue the iteration.
[0117] Specifically, after the MEMS inertial navigation system completes the comparison between the observation residual and the observation residual threshold in the current iteration stage in step S212, it makes a decision based on the comparison result. If the observation residual is less than the observation residual threshold in the current iteration stage, the system enters the next iteration stage. When entering the next iteration stage, the system updates relevant parameter settings, such as adjusting the observation residual threshold to a more stringent value to prepare for the next round of calibration calculation and continuously improve the calibration accuracy. If the observation residual is greater than or equal to the observation residual threshold in the current iteration stage, the system returns to step S210. After returning to step S210, the system recalculates the relaxation factor based on information such as the current convergence index. Since the convergence index changes as the iteration progresses, the recalculated relaxation factor will also change accordingly, thereby obtaining different weight adjustment amounts, updating the weight coefficients, and performing the coarse alignment calculation again in the hope of obtaining a smaller observation residual and making the calibration result closer to the true value. Such iterative loops until the observation residual is less than the preset final threshold.
[0118] The MEMS inertial navigation system according to the embodiment of the present invention is applied to an electronic device. Figure 3 The schematic architecture diagram of the electronic device suitable for implementing the embodiment of the present invention is shown.
[0119] It should be noted that Figure 3 The shown electronic device is only an example and should not impose any limitations on the functions and usage scope of the embodiment of the present invention.
[0120] Those of ordinary skill in the art can understand that all or part of the steps in the various methods of the above embodiments can be completed by instructions (computer programs), or the relevant hardware can be controlled by instructions (computer programs). The instructions can be stored in a computer-readable storage medium and loaded and executed by a processor. The electronic device of this embodiment includes a storage medium and a processor. Among them, multiple instructions are stored in the storage medium, and the instructions can be loaded by the processor to execute any step of the method provided by the embodiment of the present invention.
[0121] Specifically, the storage medium and the processor are electrically connected directly or indirectly to achieve data transmission or interaction. For example, these components can be electrically connected to each other through one or more signal lines. The storage medium stores computer-executable instructions for implementing the data access control method, including at least one software function module that can be stored in the storage medium in the form of software or firmware. The processor executes various functional applications and data processing by running the software programs and modules stored in the storage medium. The storage medium can be, but is not limited to, a random access memory (Random Access Memory, abbreviated as RAM), a read-only memory (Read Only Memory, abbreviated as ROM), a programmable read-only memory (Programmable Read-Only Memory, abbreviated as PROM), an erasable programmable read-only memory (Erasable Programmable Read-Only Memory, abbreviated as EPROM), an electrically erasable programmable read-only memory (Electric Erasable Programmable Read-Only Memory, abbreviated as EEPROM), etc. Among them, the storage medium is used to store programs, and the processor executes the programs after receiving the execution instructions.
[0122] Furthermore, the software programs and modules in the above storage medium may further include an operating system, which may include various software components and / or drivers for managing system tasks (such as memory management, storage device control, power management, etc.), and may communicate with various hardware or software components to provide a running environment for other software components. The processor can be an integrated circuit chip with signal processing capabilities. The above-mentioned processor can be a general-purpose processor, including a central processing unit (Central Processing Unit, abbreviated as CPU), a network processor (Network Processor, abbreviated as NP), etc., which can implement or execute the various methods, steps, and logic flow block diagrams disclosed in this embodiment. The general-purpose processor can be a microprocessor or the processor can also be any conventional processor, etc.
[0123] Since the instructions stored in the storage medium can execute the steps in any of the methods provided in the embodiments of the present invention, the beneficial effects of any of the methods provided in the embodiments of the present invention can be achieved. For details, see the previous embodiments and will not be repeated here.
[0124] As described above, it is only the preferred specific embodiment of the present invention, but the protection scope of the present invention is not limited thereto. Any changes or substitutions that can be easily thought of by those skilled in the art within the technical scope disclosed by the present invention should be covered within the protection scope of the present invention. Therefore, the protection scope of the present invention should be subject to the protection scope of the claims.
Claims
1. A multi-scale data segmentation MEMS inertial navigation fast calibration method, applied to MEMS inertial navigation system, characterized in that: The method comprises: The raw data output by the MEMS inertial sensor is stored in real time through a multi-level buffer, wherein the raw data includes angular velocity data and acceleration data; The raw data in the multi-level buffer is processed in segments according to a preset time scale sequence to generate a plurality of data segments with different time scales with increasing time lengths; Performing weighted fusion on the data segments of different time scales according to a preset initial weight coefficient to generate a fused observation vector; Using the fused observation vector to perform a rough alignment calculation for navigation positioning, obtaining an initial attitude angle, and calculating an observation residual based on the initial attitude angle, wherein the observation residual is a difference between the initial attitude angle and a corresponding theoretical value; Adjust the initial weight coefficient according to the observation residual and perform rough alignment calculation again until the observation residual is less than a preset threshold; The initial attitude angle corresponding to when the observation residual is less than a preset threshold is determined as the final MEMS inertial navigation calibration result.
2. The method according to claim 1, characterized in that The step of segmenting the original data in the multi-level buffer according to a preset time scale sequence specifically includes: Establishing multiple parallel sliding windows for selecting data segments to be processed at different time scales, respectively, wherein the length of each sliding window matches the corresponding time scale; Performing signal quality evaluation on the original data in each sliding window to obtain a window signal characteristic value, wherein the window signal characteristic value includes signal fluctuation and data continuity; Determining the segmentation parameters of each sliding window according to the window signal characteristic value, wherein the segmentation parameters include a window moving step length and a data interception interval, and the window moving step length is related to the overlap degree of adjacent data segments; Segmenting the original data in each sliding window in parallel based on the segmentation parameter to obtain multiple candidate data segments; The candidate data segments are screened and integrated according to the signal consistency criterion to generate final data segments of different time scales.
3. The method according to claim 1, characterized in that The step of adjusting the initial weight coefficient according to the observation residual and performing the rough alignment calculation again until the observation residual is less than a preset threshold specifically includes: Establishing a multi-level precision control sequence of multiple observation residual thresholds arranged from large to small, each of the observation residual thresholds corresponds to an iteration stage; Calculating a relaxation factor according to an observation residual threshold value in a current iteration phase, wherein the relaxation factor is positively correlated with the observation residual threshold value; Performing weighted processing on the observation residual according to the relaxation factor to obtain a weight adjustment amount, and updating the initial weight coefficient according to the weight adjustment amount to generate a new weight coefficient combination; Performing rough alignment calculation again according to the new weight coefficient combination to determine whether the obtained observation residual is less than the observation residual threshold of the current iteration stage; If yes, it goes to the next iteration stage; if no, it returns to the relaxation factor calculation step to continue the iteration.
4. The method according to claim 3, characterized in that Before the step of entering the next iteration phase, the following steps are also included: The temporary attitude angle calculated by the rough alignment is output and displayed, and the number of rough alignment times is recorded.
5. The method according to claim 3, characterized in that: The step of calculating the relaxation factor according to the observation residual threshold value of the current iteration stage specifically includes: Calculate the ratio of the current observation residual to the observation residual threshold to obtain a convergence index, wherein the convergence index represents the distance between the current calculation result and the target accuracy; Substituting the convergence index into a preset nonlinear mapping function to obtain a dynamic attenuation rate, wherein the dynamic attenuation rate decreases monotonically with the iteration process; The relaxation factor of the current iteration stage is calculated according to the dynamic decay rate.
6. The method according to claim 1, characterized in that Before the step of segmenting the original data in the multi-level buffer according to a preset time scale sequence, the method further includes: Extracting features from historical data segments through a preset sliding time window to obtain a data feature sequence, wherein the data feature sequence includes a signal fluctuation feature and a data correlation feature; Building a time series prediction model based on the data feature sequence, wherein the time series prediction model adopts a recursive neural network structure to capture the time series dependency of the data segments; Use the time series prediction model to predict the data features of the next time window to obtain a predicted feature value; The sampling frequency and the buffer length are dynamically adjusted according to the predicted characteristic value to generate an optimized acquisition strategy.
7. The method according to claim 1, characterized in that Before the step of using the fused observation vector to perform rough alignment calculation for navigation positioning to obtain an initial attitude angle, the method further includes: Performing cluster analysis on historical calibration data, extracting error characteristic patterns, and establishing an error pattern library, wherein the error pattern library contains typical error patterns and their corresponding optimal compensation parameters; Calculating a current error characteristic vector according to the fused observation vector, wherein the error characteristic vector includes a drift characteristic and a noise distribution characteristic; Calculate the matching degree between the error feature vector and the typical error pattern in the error pattern library to obtain pattern similarity; An optimal compensation mode is selected according to the mode similarity, and corresponding compensation parameters are extracted to generate an initial compensation scheme for the initial attitude angle during the rough alignment calculation process.
8. A MEMS inertial navigation system, characterized in that: The MEMS inertial navigation system includes: one or more processors and memory; The memory is coupled to the one or more processors, and the memory is used to store computer program codes, wherein the computer program codes include computer instructions, and the one or more processors call the computer instructions to enable the MEMS inertial navigation system to perform the method according to any one of claims 1 to 7.
9. A computer-readable storage medium comprising instructions, characterized in that: When the instructions are executed on a MEMS inertial navigation system, the MEMS inertial navigation system is caused to execute the method according to any one of claims 1 to 7.
10. A computer program product, characterized in that When the computer program product runs on a MEMS inertial navigation system, the MEMS inertial navigation system is enabled to perform the method according to any one of claims 1 to 7.
Citation Information
Patent Citations
Gyroscope error calibration method based on dynamic compensation
CN116147662A
Method and device for correcting drift of inertial measurement unit based on segmented compensation
CN118670422A