Inertial measurement unit correction method and device, computer device, and storage medium
By constructing and optimizing the error model of the inertial measurement unit, the periodic fluctuation error caused by temperature changes was eliminated, solving the problem of insufficient accuracy of the inertial measurement unit in the prior art and achieving higher measurement accuracy.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2026-01-08
- Publication Date
- 2026-04-07
AI Technical Summary
In the existing technology, the output data of the inertial measurement unit contains periodic fluctuations caused by the internal physical mechanism of the device, which are difficult to accurately characterize by polynomial fitting, resulting in limited temperature drift compensation effect and difficulty in achieving high precision requirements.
By acquiring the raw measurement data of the inertial measurement unit, using the pre-built target error model, the error amount corresponding to the periodic fluctuation component is determined, and the raw measurement data is corrected based on the error amount to construct an initial error model. The target error model is obtained through iterative optimization to eliminate the periodic fluctuation error caused by temperature changes.
It effectively eliminates periodic fluctuation errors in the original measurement data, improves the measurement accuracy of the inertial measurement unit under different temperature conditions, and achieves higher measurement precision.
Smart Images

Figure CN121453095B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of sensor calibration technology, and in particular to a calibration method and apparatus for an inertial measurement unit, a computer device, and a storage medium. Background Technology
[0002] With the rapid development of inertial measurement and navigation positioning technologies, IMU (Inertial Measurement Unit) chips are widely used in aerospace, unmanned systems, automotive electronics, and consumer smart devices, leading to increasingly higher requirements for their output accuracy. To ensure stable measurement performance of the IMU under different temperature environments, chamber calibration technology has become a crucial step in the IMU production and application process.
[0003] In related technologies, temperature chamber calibration is often achieved by establishing a relationship model between temperature and IMU output error to achieve compensation. A common method is to use polynomial fitting to describe the overall trend of error change with temperature.
[0004] However, in actual calibration, the output data of IMU chips generally contains periodic fluctuations caused by the internal physical mechanisms of the device. Polynomial fitting can only describe the overall trend and cannot accurately characterize periodic fluctuation signals, thus significantly limiting the effect of temperature drift compensation and making it difficult for the inertial measurement unit to achieve high-precision measurement results. Summary of the Invention
[0005] Therefore, it is necessary to provide a calibration method and apparatus for an inertial measurement unit, a computer device, and a storage medium to address the aforementioned technical problems, thereby improving the accuracy of inertial measurement unit measurements.
[0006] Firstly, this application provides a calibration method for an inertial measurement unit, comprising:
[0007] Acquire raw measurement data from the inertial measurement unit; the raw measurement data carries periodic fluctuation components;
[0008] The original measurement data is input into a pre-constructed target error model to determine the target error amount corresponding to the periodic fluctuation component;
[0009] The original measurement data is corrected based on the target error to obtain the target measurement data.
[0010] In one embodiment, the target error model is constructed based on the following steps:
[0011] Acquire sample measurement data of the inertial measurement unit during the temperature test process;
[0012] An initial error model is constructed based on the sample measurement data;
[0013] The predicted error is obtained through the initial error model, and the parameters of the initial error model are corrected based on the residual between the predicted error and the actual error corresponding to the sample measurement data to obtain the target error model.
[0014] In one embodiment, constructing the initial error model based on the sample measurement data includes:
[0015] The sample measurement data is converted into a time-frequency signal to obtain the target spectrum corresponding to the sample measurement data;
[0016] Extract the main frequency components that have the greatest impact on temperature drift error from the target spectrum;
[0017] Based on the main frequency components, the error factors are solved;
[0018] Based on the aforementioned error factors, the initial error model is obtained;
[0019] The error factors include at least the amplitude and phase of each frequency component among the plurality of main frequency components.
[0020] In one embodiment, solving for the error factor based on the major frequency components includes:
[0021] Based on the main frequency components, a linear model with sine and cosine functions as the basis is constructed;
[0022] The linear model is solved using singular value decomposition to obtain the error factors.
[0023] In one embodiment, obtaining the predicted error amount through the initial error model, and correcting the parameters of the initial error model based on the residual between the predicted error amount and the true error amount corresponding to the sample measurement data to obtain the target error model, includes:
[0024] The initial prediction error is obtained through the initial error model, the initial residual between the initial prediction error and the actual error is calculated, and the target loss function is determined based on the initial residual.
[0025] The parameters of the initial error model are corrected using the target loss function to obtain the target error model; wherein the target loss function is used to reduce the iterative residual between the predicted error and the actual error obtained by the initial error model.
[0026] In one embodiment, the original measurement data is a data sequence collected at multiple time points; the initial error includes initial sub-errors corresponding to each of the time points; determining the target loss function based on the initial error includes:
[0027] Each initial sub-error is compared with an error threshold to determine the number of target residual types; the error threshold is obtained based on the analysis of each initial sub-error.
[0028] The target loss function is determined based on the number of each target residual type.
[0029] In one embodiment, determining the target loss function based on the number of each of the target residual types includes:
[0030] Calculate the proportion of each of the target residual types based on the number of target residual types;
[0031] The target loss function is determined by combining the type of the original measurement data and the proportion.
[0032] Secondly, this application also provides a calibration device for an inertial measurement unit, the device comprising:
[0033] The acquisition module is used to acquire the raw measurement data of the inertial measurement unit; the raw measurement data carries a periodic fluctuation component;
[0034] The error determination module is used to input the original measurement data into a pre-constructed target error model and determine the target error amount corresponding to the periodic fluctuation component.
[0035] The correction module is used to correct the original measurement data based on the target error amount to obtain the target measurement data.
[0036] Thirdly, this application also provides a computer device, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps of the method in any of the above embodiments.
[0037] Fourthly, this application also provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of the method in any of the above embodiments.
[0038] Fifthly, this application also provides a computer program product, including a computer program that, when executed by a processor, implements the steps of the methods in any of the above embodiments.
[0039] The aforementioned calibration method and apparatus, computer equipment, and storage medium for inertial measurement units (IMUs) determine the error amount corresponding to the periodic fluctuation component after acquiring the original measurement data from the IMU using a pre-constructed error model. Then, based on the error amount, the original measurement data is calibrated to obtain the target measurement data. This effectively eliminates the periodic fluctuation error caused by temperature changes in the original measurement data, thereby improving the measurement accuracy of the IMU. Attached Figure Description
[0040] To more clearly illustrate the technical solutions in the embodiments of this application or related technologies, the drawings used in the description of the embodiments of this application or related technologies will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other related drawings can be obtained based on these drawings without creative effort.
[0041] Figure 1 This is a flowchart illustrating the calibration method for an inertial measurement unit in one embodiment;
[0042] Figure 2 This is a schematic diagram illustrating the construction process of the target error model in one embodiment;
[0043] Figure 3 This is a structural block diagram of the correction device for an inertial measurement unit in one embodiment;
[0044] Figure 4 This is an internal structural diagram of a computer device in one embodiment. Detailed Implementation
[0045] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.
[0046] In one embodiment, such as Figure 1 As shown, a method for correcting an inertial unit is provided. This embodiment illustrates the application of this method to a terminal. It is understood that this method can also be applied to a server, and to a system including both a terminal and a server, and implemented through interaction between the terminal and the server. In this embodiment, the method includes the following steps:
[0047] Step 102: Obtain the raw measurement data of the inertial measurement unit; the raw measurement data carries periodic fluctuation components.
[0048] The raw measurement data refers to the angular velocity or acceleration data directly output by the inertial measurement unit according to its internal sampling frequency during actual use, without temperature drift compensation or filtering.
[0049] For example, during vehicle movement, drone flight, or smart device operation, the inertial measurement unit continuously outputs angular velocity or acceleration signals at a fixed sampling period, thus forming raw measurement data.
[0050] Because inertial measurement units (IMUs) are still affected by factors such as changes in ambient temperature, internal drive oscillations, and material properties during long-term operation, periodic fluctuation components are superimposed on the original measurement data. This causes the original measurement data to exhibit regular deviations in certain temperature ranges, affecting measurement accuracy. Therefore, in this application, it is necessary to determine the error amount corresponding to the periodic fluctuation component and correct the original measurement data based on this error amount to improve the output accuracy of the IMU.
[0051] Step 104: Input the raw measurement data into the pre-built target error model to determine the target error amount corresponding to the periodic fluctuation component.
[0052] The target error is used to characterize the magnitude of the error in the original measurement data at the current sampling time caused by the periodic fluctuation component.
[0053] Specifically, the raw measurement data can be input into a pre-built target error model. Since the target error model describes the periodic fluctuation characteristics generated by the inertial measurement unit during temperature changes, it can output the error corresponding to the periodic fluctuation component at any sampling time. Therefore, the target error corresponding to the periodic fluctuation component can be obtained through the target error model.
[0054] Step 106: Correct the original measurement data based on the target error to obtain the target measurement data.
[0055] The target measurement data refers to the measurement result obtained after error compensation of the original measurement data. This measurement result has eliminated the error caused by periodic fluctuation components in the original measurement data and can more accurately reflect the actual output of the inertial measurement unit.
[0056] For example, if the original measurement data output by the inertial measurement unit at a certain moment is X, and the target error at that moment is ΔX obtained through the periodic error model, then the target measurement data = X - ΔX.
[0057] Optionally, polynomial fitting can be performed on the original measurement data first to remove the trend error that changes slowly with temperature. At this point, the original measurement data after removing the trend error still contains periodic fluctuation components. Therefore, an error model can be used to determine the target error corresponding to the periodic fluctuation components, and then the non-target error can be removed to obtain the target measurement data.
[0058] In the above embodiments, after acquiring the raw measurement data from the inertial measurement unit, a pre-built error model is used to determine the error amount corresponding to the periodic fluctuation component. Then, the raw measurement data is corrected based on the error amount to obtain the target measurement data. This effectively eliminates the periodic fluctuation error caused by temperature changes in the raw measurement data, thereby improving the measurement accuracy of the inertial measurement unit under different temperature conditions.
[0059] In one embodiment, the target error model is constructed based on the following steps: acquiring sample measurement data of the inertial measurement unit during the temperature test; constructing an initial error model based on the sample measurement data; obtaining the predicted error amount through the initial error model; and correcting the parameters of the initial error model based on the residual between the predicted error amount and the actual error amount corresponding to the sample measurement data to obtain the target error model.
[0060] In this embodiment, the parameters of the initial error model are determined by the difference between the known true error and the predicted error output by the initial error model, thereby obtaining the final target error model.
[0061] First, a temperature chamber experiment was conducted on the inertial measurement unit (IMU), which involved applying a predetermined temperature change to the IMU while it was in a constant attitude or stationary state, and collecting its output sample measurement data throughout the entire temperature change process. The sample measurement data is a six-dimensional dataset, including three-dimensional acceleration and three-dimensional angular velocity.
[0062] Since the inertial measurement unit is stationary or in a known attitude during the temperature chamber experiment, its true output value is determined, so the true error at each sampling moment can be directly calculated.
[0063] After obtaining the sample measurement data, it is necessary to identify the key factors causing the measurement error, namely the periodic error components generated by temperature changes. Based on the periodic error components, a corresponding initial error model is constructed so that the initial error model can approximately characterize the basic law of error change with temperature or time.
[0064] Next, the prediction error at each time step is calculated using the initial error model, and the predicted error is compared with the actual error corresponding to the sample measurement data to obtain the residuals. Then, iterative optimization is performed based on the residuals to continuously approximate the parameters of the initial error model to the actual error, thereby obtaining the final target error model.
[0065] In the above embodiments, by optimizing the initial error model using the actual error quantity, the constructed error model can more accurately characterize the periodic error characteristics caused by temperature changes.
[0066] In one embodiment, the above-mentioned construction of an initial error model based on sample measurement data includes: performing time-frequency conversion on the sample measurement data to obtain the target spectrum corresponding to the sample measurement data; extracting multiple main frequency components that have the greatest impact on temperature drift error from the target spectrum; solving for error factors based on the main frequency components; and obtaining an initial error model based on the error factors; wherein the error factors include at least the amplitude and phase of each frequency component among the multiple main frequency components.
[0067] To accurately identify error factors caused by temperature changes in the sample measurement data, this embodiment transforms the sample measurement data from the time domain to the frequency domain to obtain the target spectrum corresponding to the sample measurement data. The target spectrum refers to the frequency distribution information obtained after performing frequency domain analysis on the sample measurement data.
[0068] Optionally, the sample measurement data can be frequency-domain transformed using a Fast Fourier Transform (FFT) to extract the main frequency components that have the greatest impact on temperature drift error from the target spectrum. For example, the location of the largest peak can be extracted to determine the main frequency components of the signal.
[0069] Optionally, the sample measurement data can be processed to be evenly spaced before performing the FFT. Since the data output by the inertial measurement unit during the temperature chamber experiment may not be collected at strictly fixed time intervals, the original data may have uneven sampling intervals on the time axis. Directly performing the FFT would affect the accuracy of the frequency domain analysis. Therefore, the sample measurement data can be resampled based on timestamps to ensure that the resampled data has an evenly spaced distribution on the time axis, thus making the sample measurement data meet the input requirements of the Fast Fourier Transform.
[0070] Optionally, the periodic error of the IMU is not generated by a single frequency, but by the combined action of multiple different periodic physical mechanisms, each with a different period, thus manifesting as multiple energy peaks in the frequency domain. For example, multiple primary frequency components can be extracted from the target spectrum. In IMU applications, for instance, three-dimensional acceleration information can be extracted as three primary frequency components, and three-dimensional angular velocity information can also be extracted as three primary frequency components.
[0071] Optionally, after identifying the main frequency components, the error factor is solved, which is the amplitude and phase of each frequency component among the multiple main frequency components. The error factor is the main influencing factor used to characterize the periodic error.
[0072] For example, the expression for the initial error model can be a sine sum model, as shown in formula (1).
[0073] Formula (1)
[0074] in, This represents the amplitude of the i-th frequency component. It is the i-th principal frequency component. The corresponding phase is t, which is a time variable, and y(t) is the prediction error at the time corresponding to time t.
[0075] The sine and model are composed of multiple sine terms superimposed linearly, and each sine term corresponds to a main frequency component determined by spectral analysis. The number of sine terms n is determined according to the number of main frequency components in the target signal and is not fixed.
[0076] For example, the above-mentioned sine sum model can be a fourth-order sine sum model. The fourth-order sine sum model is a linear model, based on the fact that it satisfies a linear relationship with error factors (amplitude, phase, DC component, etc.) and conforms to superposition and homogeneity. This enables efficient calculation and stable estimation of error factors.
[0077] In the above embodiments, by converting the sample measurement data to the frequency domain, the periodic errors that are originally difficult to distinguish in the time domain can be presented in the form of peak values, thereby effectively separating the main frequency components that have the greatest impact on temperature drift error, and quickly obtaining the error factors through linear modeling to obtain the initial error model.
[0078] Furthermore, in one embodiment, the error factors are solved based on the main frequency components, including: constructing a linear model based on sine and cosine functions based on the main frequency components; and solving the linear model using singular value decomposition to obtain the error factors.
[0079] Since the main frequency components reflect the periodic characteristics of the error over time, in this embodiment, after determining the main frequency components, a model based on sine and cosine functions is used to model the periodic error, resulting in a linear equation.
[0080] Next, the linear model is solved to obtain the amplitude and phase parameters corresponding to each major frequency component as error factors, and an initial error model is constructed based on the error factors.
[0081] Furthermore, singular value decomposition (SVD) can be used to solve the linear model to obtain error factors such as amplitude and phase.
[0082] Optionally, the linear model is constructed based on sine and cosine functions, and its form can be as shown in formula (2).
[0083] Formula (2)
[0084] in, As the main frequency components, the coefficients of the sine and cosine terms corresponding to a and b, respectively, together characterize the amplitude and phase of the periodic error, with amplitude A being... phase Let arctan2(b,a), C be the bias term, and y(t) be the output value at time t.
[0085] In the above embodiments, by first determining the main frequency components, then constructing a linear model based on sine and cosine functions, and using singular value decomposition to solve the parameters, the modeling problem of periodic errors can be transformed from a nonlinear problem into a linear problem, thereby improving the stability, accuracy, and computational efficiency of error factor solving.
[0086] In one embodiment, the above-mentioned method of obtaining the predicted error amount through an initial error model and correcting the parameters of the initial error model based on the residual between the predicted error amount and the actual error amount corresponding to the sample measurement data to obtain a target error model includes: obtaining an initial predicted error amount through the initial error model; calculating the initial residual between the initial predicted error amount and the actual error amount; and determining a target loss function based on the initial residual; correcting the parameters of the initial error model through the target loss function to obtain the target error model; the target loss function is used to reduce the iterative residual between the predicted error amount and the actual error obtained by the initial error model.
[0087] Among them, the iterative residual refers to the difference between the predicted error output by the initial error model in each iteration step during the optimization process and the actual error corresponding to the sample measurement data.
[0088] Because IMUs are affected by environmental changes and measurement noise during temperature chamber testing, outliers may exist in the collected data. Outliers can significantly interfere with model parameter solving, leading to a decrease in the final fit. Therefore, before optimizing the temperature scale model, a suitable target loss function needs to be selected based on the distribution of the residuals.
[0089] In this embodiment, the initial residual between the initial predicted error and the actual error obtained from the initial error model is first used to determine the target loss function for subsequent optimization. In the subsequent solution process, the target loss function is used to optimize the iterative residuals in each iteration step, gradually reducing the difference between the predicted and actual errors. This corrects the parameters of the initial error model, ultimately resulting in a target error model with higher fitting accuracy and greater robustness to outliers.
[0090] In this embodiment, the target loss function is first determined so that the error model can effectively handle abnormal residuals during the iteration process, avoid the subsequent fitting process from being affected by outliers, and improve the accuracy of the target error model.
[0091] Furthermore, the aforementioned original measurement data is a data sequence collected at multiple time points; the initial error includes the initial sub-errors corresponding to each time point; determining the target loss function based on the initial error includes: comparing each initial sub-error with an error threshold to determine the number of target residual types; the error threshold is obtained based on the analysis of each initial sub-error; and determining the target loss function based on the number of each target residual type.
[0092] Since the original measurement data is a data sequence collected at multiple time points, each time point will have a corresponding initial sub-error when calculating the initial error for the first time.
[0093] The error threshold is a reference value used to distinguish different residual types, and it can be determined based on the statistical characteristics of the initial sub-errors. For example, the error threshold can be calculated based on statistical indicators such as the median, standard deviation, or robust standard deviation of the initial sub-errors; for instance, the median of the initial sub-errors can be used as the error threshold. The target residual type refers to the residual category obtained after classifying the initial sub-errors according to the error threshold, and it reflects the distribution of residuals in different intervals. For example, the target residual type can include different types such as small residuals, medium residuals, and large residuals.
[0094] Furthermore, the error threshold can include multiple error sub-thresholds to determine the number of each target parameter type. For example, the error sub-thresholds can be set according to 2, 4, or 8 times the median corresponding to the initial sub-error, thereby determining the number of each target residual type.
[0095] In other embodiments, the error sub-threshold may also be obtained based on the median and other statistical characteristics, such as the median + 1 * robust standard deviation.
[0096] For example, if a residual is less than the median * 2, it is classified as a small residual; if a residual is less than the median * 4 but greater than the median * 2, it is classified as a medium residual; if a residual is less than the median * 8 but greater than the median * 4, it is classified as a large residual; and if a residual is greater than the median * 8, it is classified as an abnormal residual. Then, the number of each type of target residual is counted.
[0097] Next, the target loss function is determined based on the data for each target residual type. Optionally, the target loss function can be determined based on the proportion of residuals corresponding to each target residual type. For example, when the proportion of large residuals or outlier residuals is high, a more robust loss function can be selected to reduce the impact of large residuals on parameter solving.
[0098] In the above embodiments, by counting the number of different residual types, the degree of outliers can be determined, and then the corresponding target loss function can be determined based on the degree of outliers, thereby improving the accuracy of the error model.
[0099] Furthermore, in one embodiment, determining the target loss function based on the number of each target residual type includes: calculating the proportion of each target residual type based on the number of target residual types; and determining the target loss function by combining the type and proportion of the original measurement data.
[0100] Since the quantity of different residual types cannot reflect the impact of outliers in all samples, this embodiment calculates the proportion of each residual type based on the quantity to accurately determine the proportion of outlier residuals in the overall data. The residual proportion can more realistically reflect the severity of outliers, thus providing a basis for selecting a matching target loss function.
[0101] Furthermore, since the raw measurement data includes gyroscope and accelerometer data, the noise characteristics, outlier behavior, and temperature drift sensitivity of different data types vary. Therefore, after determining the degree of anomaly based on the residual proportion, it is necessary to determine the final target loss function in conjunction with the data type. This allows the loss function to better fit the characteristics of different data types, improving the accuracy and stability of model parameter solving.
[0102] For example, when the original measurement data is gyroscope data, if the severe residual rate is greater than the first threshold, CauchyLoss is used; if the problematic residual rate is greater than the second threshold, HuberLoss is used; if the abnormal residual rate is greater than the third threshold, HuberLoss is used; otherwise, HuberLoss is used.
[0103] In the above embodiments, the target loss function can be accurately determined by combining the proportion of the target residual type and the type of the original measurement data.
[0104] In one exemplary embodiment, such as Figure 2 As shown, the steps for constructing an error loss model may include the following:
[0105] S202, acquire sample measurement data of the inertial measurement unit during the temperature test process.
[0106] The IMU chip to be calibrated is placed in a temperature chamber and subjected to a temperature chamber experiment according to a preset temperature change curve (e.g., -40℃ to 85℃). The six-dimensional raw data (three-dimensional acceleration and three-dimensional angular velocity) output by the IMU are collected simultaneously and recorded as sample measurement data.
[0107] S204, perform frequency domain transformation on the sample measurement data to obtain the target spectrum.
[0108] The target spectrum was obtained by performing FFT analysis on the sample test data.
[0109] S206, extract error factors from the target spectrum.
[0110] By traversing the frequency domain results, the peak position with the largest amplitude is extracted to determine the main frequency components of the signal. It should be noted that the periodic error generated by the IMU during temperature changes is composed of the superposition of multiple periodic components of different frequencies, which typically manifest as corresponding energy peaks in the frequency domain. Therefore, the main frequency components are the key error factors causing periodic temperature drift errors.
[0111] S208. Construct a linear model based on error factors and solve the linear model to obtain the initial error model.
[0112] Then, the main frequency components are extracted, and a linear model based on sine and cosine functions is constructed. The "amplitude and phase solution" is transformed into a linear equation system problem. Finally, singular value decomposition (SVD) is used to solve the linear equation system established above to obtain the initial estimate of the amplitude and phase corresponding to each frequency component. An initial error model is then constructed based on the amplitude and phase.
[0113] S210, compare each initial sub-error with the error threshold to determine the number of target residual types.
[0114] First, the initial sub-errors for each time point are calculated based on the initial error model. Then, each initial sub-error is compared with an error threshold. Based on the comparison results, the initial sub-errors are classified into small residuals, medium residuals, large residuals, or outlier residuals, thereby determining the number of different residual types. The error threshold, used to distinguish different residual types, can be determined based on the statistical characteristics of the initial sub-errors.
[0115] Furthermore, the error threshold can include sub-thresholds. For example, std × 3 can be used as the threshold for judging severe residuals, median + 1 × robust standard deviation can be used as the threshold for judging moderate residuals, median + 2.0 × robust standard deviation can be used as the threshold for judging large residuals, and median + 3.0 × robust standard deviation can be used as the threshold for judging small or normal residuals. Here, std is the standard deviation, which is calculated based on each initial sub-error. For example, after averaging the initial sub-errors corresponding to each time point, the sum of squares of the differences between each initial sub-error and the mean is calculated, and the sum of squares is mean-normalized and square-rooted to obtain the standard deviation.
[0116] S212, Calculate the proportion of each target residual type based on the number of target residual types.
[0117] S214. Determine the target loss function by combining the type of the original measurement data and the proportion of the target residual type.
[0118] For example, when the original measurement data is gyroscope data, if the severe residual rate is greater than the first gyroscope threshold, CauchyLoss is used; if the problematic residual rate is greater than the second gyroscope threshold, HuberLoss is used; if the abnormal residual rate is greater than the third gyroscope threshold, HuberLoss is used; otherwise, HuberLoss is used.
[0119] For example, when the original measurement data is IMU-added data, if the severe residual rate is greater than the first added data threshold, CauchyLoss is used; if the problem residual rate is greater than the second added data threshold, HuberLoss is used; if the abnormal residual rate is greater than the third added data threshold, HuberLoss is used; otherwise, HuberLoss is used.
[0120] S216. By using the target loss function, the parameters of the initial error model are corrected to obtain the error model.
[0121] The iterative residuals are processed based on the determined target loss function, so that the predicted error gradually approaches the true error, thereby continuously correcting the parameters of the initial error model and finally obtaining an error model with higher accuracy and robustness.
[0122] In the above embodiments, the main error factors are first extracted by performing frequency domain analysis on the sample data, and then a linear model is constructed and solved based on the main frequency components to obtain an initial error model. Subsequently, a target loss function that matches the residual distribution is selected according to the statistical characteristics of the residuals, so that the model optimization process can effectively cope with the interference of abnormal data. Finally, the model parameters are iteratively corrected through nonlinear optimization to obtain a more accurate and stable error model.
[0123] In one exemplary embodiment, the optimization process of the initial error model is performed iteratively using the CERES library (an open-source C++ nonlinear optimization library developed by Google). Since the partial derivatives of the objective function with respect to the 12 model parameters need to be calculated during the optimization process, the partial derivatives are calculated analytically and introduced into the optimizer to improve computational efficiency. Simultaneously, a non-monotonic optimization strategy is enabled to enhance the robustness of the fit.
[0124] It should be understood that although the steps in the flowcharts of the embodiments described above are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the embodiments described above may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.
[0125] Based on the same inventive concept, this application also provides a calibration device for an inertial measurement unit (IMU) to implement the calibration method for the IMU described above. The solution provided by this device is similar to the solution described in the above method. Therefore, the specific limitations of the one or more IMU calibration device embodiments provided below can be found in the limitations of the IMU calibration method described above, and will not be repeated here.
[0126] In one exemplary embodiment, such as Figure 3 As shown, a calibration device for an inertial measurement unit is provided, comprising: an acquisition module 100, an error determination module 200, and a calibration module 300, wherein:
[0127] The acquisition module 100 is used to acquire the raw measurement data of the inertial measurement unit; the raw measurement data carries periodic fluctuation components.
[0128] The error determination module 200 is used to input the raw measurement data into a pre-built target error model and determine the target error amount corresponding to the periodic fluctuation component.
[0129] The calibration module 300 is used to correct the original measurement data based on the target error amount to obtain the target measurement data.
[0130] In one embodiment, the above-described apparatus includes a model building module, which includes:
[0131] The sample acquisition unit is used to acquire sample measurement data from the inertial measurement unit during the temperature test process.
[0132] The model building unit is used to build an initial error model based on sample measurement data.
[0133] The correction unit is used to obtain the predicted error amount through the initial error model, and to correct the parameters of the initial error model based on the residual between the predicted error amount and the actual error amount corresponding to the sample measurement data, so as to obtain the error model.
[0134] In one embodiment, the above-mentioned model building unit includes:
[0135] The conversion subunit is used to perform time-frequency conversion on the sample measurement data to obtain the target spectrum corresponding to the sample measurement data.
[0136] Extraction sub-units are used to extract the main frequency components that have the greatest impact on temperature drift error from the target spectrum.
[0137] The solution sub-element is used to solve for the error factor based on the main frequency components. The error factor includes at least the amplitude and phase of each frequency component among the multiple main frequency components.
[0138] The model establishes sub-units, which are used to construct a linear model based on error factors and solve the linear model to obtain the initial error model.
[0139] In one embodiment, the above-mentioned solving subunit includes:
[0140] The equation establishes the Sun unit, which is used to construct a linear model based on sine and cosine functions based on the main frequency components.
[0141] The factor determination subunit is used to solve the linear model using singular value decomposition to obtain the error factors.
[0142] In one embodiment, the correction unit includes:
[0143] The loss determination subunit is used to obtain the initial prediction error through the initial error model, calculate the initial residual between the initial prediction error and the actual error, and determine the target loss function based on the initial residual.
[0144] The optimization sub-unit is used to correct the parameters of the initial error model through the objective loss function to obtain the objective error model; wherein, the objective loss function is used to reduce the iterative residual between the predicted error and the actual error obtained from the initial error model.
[0145] In one embodiment, the aforementioned original measurement data is a data sequence collected at multiple time points; the aforementioned loss determination subunit includes:
[0146] The data statistics sub-unit is used to compare each initial sub-error with the error threshold to determine the number of target residual types; the error threshold is obtained based on the analysis of each initial sub-error.
[0147] The target loss determination subunit is used to determine the target loss function based on the number of each target residual type.
[0148] In one embodiment, the above-mentioned target loss determination of grandchild units includes:
[0149] The proportion calculation sub-unit is used to calculate the proportion of each target residual type based on the number of target residual types.
[0150] The target determination subunit is used to determine the target loss function by combining the type and proportion of the original measurement data.
[0151] Each module in the aforementioned inertial measurement unit's calibration device can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in hardware within or independently of the processor in a computer device, or stored in software within the computer device's memory, allowing the processor to invoke and execute the corresponding operations of each module.
[0152] In one exemplary embodiment, a computer device is provided, which may be a server, and its internal structure diagram may be as follows: Figure 4 As shown, this computer device includes a processor, memory, input / output (I / O) interfaces, and a communication interface. The processor, memory, and I / O interfaces are connected via a system bus, and the communication interface is also connected to the system bus via the I / O interfaces. The processor provides computational and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system, computer programs, and a database. The internal memory provides the environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The database stores raw measurement data. The I / O interfaces are used for exchanging information between the processor and external devices. The communication interface is used for communication with external terminals via a network connection. When executed by the processor, the computer program implements a calibration method for an inertial measurement unit.
[0153] Those skilled in the art will understand that Figure 4The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.
[0154] In one exemplary embodiment, a computer device is provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps of the method in any of the above embodiments.
[0155] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a processor, implements the steps of the method in any of the above embodiments.
[0156] In one embodiment, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps of the method in any of the above embodiments.
[0157] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile memory and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, artificial intelligence (AI) processors, etc., and are not limited to these.
[0158] The technical features of the above embodiments can be combined in any way. For the sake of brevity, 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 application.
[0159] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of this patent application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.
Claims
1. A calibration method for an inertial measurement unit, characterized in that, The method includes: Acquire raw measurement data from the inertial measurement unit; the raw measurement data carries periodic fluctuation components; The original measurement data is input into a pre-constructed target error model to determine the target error amount corresponding to the periodic fluctuation component; The original measurement data is corrected based on the target error to obtain the target measurement data; The target error model is constructed based on the following steps: Acquire sample measurement data of the inertial measurement unit during the temperature test process; An initial error model is constructed based on the sample measurement data; The predicted error is obtained through the initial error model, and the parameters of the initial error model are corrected based on the residual between the predicted error and the actual error corresponding to the sample measurement data to obtain the target error model. The step of constructing an initial error model based on the sample measurement data includes: The sample measurement data is converted into a time-frequency signal to obtain the target spectrum corresponding to the sample measurement data; Extract the main frequency components that have the greatest impact on temperature drift error from the target spectrum; Based on the main frequency components, the error factors are determined; Based on the aforementioned error factors, the initial error model is obtained; The error factors include at least the amplitude and phase of each frequency component among the plurality of main frequency components.
2. The method according to claim 1, characterized in that, The step of solving for the error factors based on the main frequency components includes: Based on the main frequency components, a linear model with sine and cosine functions as the basis is constructed; The linear model is solved using singular value decomposition to obtain the error factors.
3. The method according to claim 1, characterized in that, The step of obtaining the predicted error amount through the initial error model, and correcting the parameters of the initial error model based on the residual between the predicted error amount and the actual error amount corresponding to the sample measurement data to obtain the target error model includes: The initial prediction error is obtained through the initial error model, the initial residual between the initial prediction error and the actual error is calculated, and the target loss function is determined based on the initial residual. The target error model is obtained by correcting the parameters of the initial error model using the target loss function. The objective loss function is used to reduce the iterative residual between the predicted error and the actual error obtained from the initial error model.
4. The method according to claim 3, characterized in that, The original measurement data is a data sequence collected at multiple time points; the initial error includes the initial sub-error corresponding to each time point; determining the target loss function based on the initial error includes: Each initial sub-error is compared with an error threshold to determine the number of target residual types; the error threshold is obtained based on the analysis of each initial sub-error. The target loss function is determined based on the number of each target residual type.
5. The method according to claim 4, characterized in that, Determining the target loss function based on the number of each target residual type includes: Calculate the proportion of each of the target residual types based on the number of target residual types; The target loss function is determined by combining the type of the original measurement data and the proportion.
6. A calibration device for an inertial measurement unit, characterized in that, The device includes: The acquisition module is used to acquire the raw measurement data of the inertial measurement unit; the raw measurement data carries a periodic fluctuation component; An error determination module is used to input the original measurement data into a pre-constructed target error model to determine the target error amount corresponding to the periodic fluctuation component; The correction module is used to correct the original measurement data based on the target error amount to obtain the target measurement data; The device further includes a model building module, which comprises: A sample acquisition unit is used to acquire sample measurement data of the inertial measurement unit during the temperature test process; The model building unit is used to build an initial error model based on the sample measurement data; The correction unit is used to obtain the predicted error amount through the initial error model, and correct the parameters of the initial error model based on the residual between the predicted error amount and the actual error amount corresponding to the sample measurement data, so as to obtain the target error model. The model building unit includes: A conversion subunit is used to perform time-frequency conversion on the sample measurement data to obtain the target spectrum corresponding to the sample measurement data; An extraction subunit is used to extract the main frequency components that have the greatest impact on temperature drift error from the target spectrum; The solution sub-unit is used to solve for the error factor based on the main frequency components; A model building subunit is used to obtain the initial error model based on the error factors; The error factors include at least the amplitude and phase of each frequency component among the plurality of main frequency components.
7. The apparatus according to claim 6, characterized in that, The solution subunit includes: The equation establishes a subunit, which is used to construct a linear model based on the sine and cosine functions based on the main frequency components; The factor determination subunit is used to solve the linear model using singular value decomposition to obtain the error factors.
8. The apparatus according to claim 6, characterized in that, The correction unit includes: The loss determination subunit is used to obtain the initial prediction error through the initial error model, calculate the initial residual between the initial prediction error and the actual error, and determine the target loss function based on the initial residual. An optimization subunit is used to modify the parameters of the initial error model using the target loss function to obtain the target error model; wherein the target loss function is used to reduce the iterative residual between the predicted error and the actual error obtained by the initial error model.
9. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 5.
10. A storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 5.
Citation Information
Patent Citations
Dynamic error correction method for mining inertial navigation system
CN113984043A