Accurate inertial navigation measurement method and device in dynamic environment and storage medium
The inertial sensor data is processed through sliding filtering and frequency domain correction technology, and the acceleration data correction is carried out in combination with multi-scale decomposition model, which solves the problem of the inertial navigation system being affected in dynamic environments, and achieves higher accuracy inertial navigation measurements.
Patent Information
- Application Number
- CN202510572447.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-05-06
- Publication Date
- 2025-06-03
- Estimated Expiration
- 2045-05-06
AI Technical Summary
In a dynamic environment, the accuracy of the inertial navigation system is affected by nonlinear motion and external interference, which is difficult to effectively handle in traditional filtering methods, and the noise of the inertial measurement unit is significantly affected.
Sliding filter weighting technology is used to filter inertial sensor data, extract effective information of angular velocity data through frequency domain representation and iterative correction, and correct the acceleration data through multi-scale decomposition and error estimation models to achieve accurate correction of angular velocity and acceleration data.
Effectively remove frequency domain noise in dynamic environments, improve the accuracy of inertial navigation measurement, reduce error accumulation, and enhance the stability of the system under complex motion conditions.
Smart Images

Figure CN120084361A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field of sensor data processing, and more particularly, to an inertial navigation precise measurement method, device, and storage medium in a dynamic environment. Background Art
[0002] An inertial navigation system calculates the motion state of an object by measuring acceleration and angular velocity, and has advantages such as high frequency, high precision, and autonomy.
[0003] However, in a dynamic environment, especially in the presence of complex motion and external interference, the accuracy of the inertial navigation system will be significantly affected. First, the motion of an object in a dynamic environment is often non-linear, and traditional linear filtering methods (such as Kalman filtering) are difficult to effectively handle non-linear motion situations. Second, external interference factors such as wind and vibration will affect the measurement results of the sensor, resulting in error accumulation. In addition, the inertial measurement unit (IMU) sensor itself has noise, especially in high-dynamic situations, and the influence of noise on the measurement results is more significant.
[0004] In view of this, the present application is specifically proposed. Summary of the Invention
[0005] The purpose of the present application is to provide an inertial navigation precise measurement method, device, and storage medium in a dynamic environment to adaptively correct the measurement error of inertial navigation and improve the accuracy of data.
[0006] To achieve the above purpose, the present application adopts the following technical solutions: In a first aspect, the present application provides an inertial navigation precise measurement method in a dynamic environment, including: Collect inertial sensor data, perform filtering processing on the inertial sensor data to obtain filtered inertial sensor data, where the inertial sensor data includes: angular velocity data collected by a gyroscope and acceleration data collected by an accelerometer; Construct a gyroscope angular velocity error correction model to correct the angular velocity data in the filtered inertial sensor data to obtain corrected angular velocity data; Construct an acceleration error estimation model to estimate the error of the acceleration data in the filtered inertial sensor data, and correct the acceleration data according to the error estimation result to obtain corrected acceleration data; Use the corrected angular velocity data and the corrected acceleration data to calculate the position update result and attitude update result of the object in the dynamic environment as the inertial navigation precise measurement result of the object.
[0007] In a second aspect, the present application provides an electronic device, including: at least one processor, and a memory communicatively connected to the at least one processor; The memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to execute an inertial navigation precise measurement method in a dynamic environment.
[0008] In a third aspect, the present application provides a computer-readable storage medium storing a computer-executable program, and the computer-executable program is called by a processor to execute the steps of an inertial navigation precise measurement method in a dynamic environment.
[0009] Compared with the prior art, the beneficial effects of the present application are as follows: The present application proposes a data correction method combining frequency-domain information, uses a sliding filter weighting method to filter noise information in inertial sensor data, divides angular velocity data into multiple frequency-domain representations, iterates in combination with the frequency of the angular velocity data, extracts effective information of the angular velocity data in the frequency domain, and performs integral processing on the extracted effective information, fuses the effective information with different Fourier points to form corrected angular velocity data, and removes frequency-domain noise information in a dynamic environment.
[0010] Meanwhile, the present application proposes an error estimation method and an inertial navigation precise measurement method. By performing multi-scale decomposition and conversion processing on acceleration data, using the conversion result as the response of the acceleration data, extracting information of the response change value to form the response gain of the acceleration data, where the larger the response gain, the more complex the change situation of the acceleration data and the greater the sensor detection error, converting the response gain into an error estimation result to realize the correction of the acceleration data, and using the corrected angular velocity data and acceleration data to calculate the position update result and attitude update result of an object in a dynamic environment to realize the inertial navigation precise measurement of the object. BRIEF DESCRIPTION OF THE DRAWINGS
[0011] In order to more clearly illustrate the specific embodiments of the present application or the technical solutions in the prior art, the following will briefly introduce the drawings required for use in the description of the specific embodiments or the prior art. Obviously, the drawings in the following description are some embodiments of the present application. For those of ordinary skill in the art, other drawings can be obtained based on these drawings without creative efforts.
[0012] Figure 1 is a flowchart of an inertial navigation precise measurement method in a dynamic environment provided by an embodiment of the present application; Figure 2 is a structural diagram of an electronic device provided by the present application. Specific Embodiment
[0013] The following describes exemplary embodiments of the present application with reference to the accompanying drawings. Various details of the embodiments of the present application are included to facilitate understanding, and they should be considered merely exemplary. Therefore, those of ordinary skill in the art should recognize that various changes and modifications can be made to the embodiments described herein without departing from the scope and spirit of the present application. Similarly, for the sake of clarity and conciseness, descriptions of well-known functions and structures are omitted in the following description.
[0014] Embodiment 1 The embodiment of the present application provides a method for accurate inertial navigation measurement in a dynamic environment. This method is applicable to the situation of measuring the position and attitude of a dynamic object using inertial sensors. The execution subject of the method for accurate inertial navigation measurement in the dynamic environment includes, but is not limited to, at least one of electronic devices such as a server, a terminal, etc. that can be configured to execute the method provided by the embodiment of the present application. In other words, the method for accurate inertial navigation measurement in the dynamic environment can be executed by software or hardware installed on a terminal device or a server device, and the software can be a blockchain platform. The server includes, but is not limited to: a single server, a server cluster, a cloud server, or a cloud server cluster, etc.
[0015] Refer to Figure 1 , the method provided in this embodiment includes the following operations: S110. Collect inertial sensor data, and perform filtering processing on the inertial sensor data to obtain filtered inertial sensor data.
[0016] Place the inertial sensor on the surface of the object, and collect the inertial sensor data during the movement of the object. The inertial sensor data includes the angular velocity data collected by the gyroscope and the acceleration data collected by the accelerometer. The representation form of the collected inertial sensor data is:
[0017] where, represents the inertial sensor data sequence up to time N; represents the inertial sensor data collected at time n, respectively represent the inertial sensor data in the acceleration data and the angular velocity data, represents the acceleration of the object collected at time n in the X-axis direction, Y-axis direction, and Z-axis direction in sequence, It represents the angular velocities of the object collected at time n in the X-axis direction, Y-axis direction, and Z-axis direction respectively. Optionally, in the embodiments of the present invention, the X-axis direction represents the east-west direction, the Y-axis direction represents the north-south direction, and the Z-axis direction represents the direction perpendicular to the ground. Here, the inertial sensor data has been converted to the ground coordinate system. The advantage of converting to the ground coordinate system is that the angular velocity data and acceleration data at different times are in the coordinate system under the same standard and will not change with the movement of the object.
[0018] Filter the collected inertial sensor data to obtain the filtered inertial sensor data. The main purpose of filtering the sensor data is to remove noise and interference, improve the quality and reliability of the data, and thus extract useful information more accurately. The specific filtering algorithm is not limited in this embodiment.
[0019] In some alternative embodiments, the acceleration data and angular velocity data in the inertial sensor data are filtered respectively by using the sliding window method, including the following 5 steps: Step 1: Construct a sliding window; construct a sliding window with a length of Len + 1.
[0020] Step 2: Use the inertial sensor data to be filtered as the center of the sliding window to form a sliding filtering sequence of the inertial sensor data; the sliding filtering sequence includes multiple sequence values; Inertial sensor data The sliding filtering sequence of is: ; Step 3: Calculate the maximum value and minimum value of the sliding filtering sequence.
[0021] The maximum value in the sliding filtering sequence is , and the minimum value is ; in the embodiments of the present application, if , it means , represents the L2 norm.
[0022] Step 4: Calculate the filtering weight of each sequence value in the sliding filtering sequence according to the maximum value and minimum value; Step 5: Perform a weighted operation on each sequence value based on the filtering weight, and use the weighted result as the filtered inertial sensor data.
[0023] Inertial sensor data The corresponding filtered inertial sensor data is : ; ; Among them, represents the sliding filter sequence in the sequence value of the filtering weight; represents the exponential function with the natural constant as the base; represents the scale parameter; in the embodiments of the present invention, is set to 5.
[0024] S120. Construct a gyroscope angular velocity error correction model to correct the angular velocity data in the filtered inertial sensor data to obtain the corrected angular velocity data.
[0025] The gyroscope angular velocity error correction model includes a frequency domain representation layer, a frequency calculation layer, an iterative correction layer, and an output layer; among them, the frequency domain representation layer is used to perform frequency domain representation on the angular velocity data; the frequency calculation layer is used to calculate the center frequency of the angular velocity data; the iterative correction layer is used to iteratively correct the angular velocity data by combining the frequency domain representation result and the center frequency to obtain the corrected angular velocity data. The correction process of the gyroscope angular velocity error correction model is introduced in detail below.
[0026] The angular velocity data is converted into a frequency domain representation result through the frequency domain representation layer, where the filtered inertial sensor data in the angular velocity data of the frequency domain representation result is : ; where j represents the imaginary unit; represents the frequency domain representation of the angular velocity data at the number of Fourier transform points e.
[0027] The center frequency of the angular velocity data is calculated through the frequency calculation layer, where the center frequency of the angular velocity data is : ; where represents the time interval between adjacent moments.
[0028] The angular velocity data is iteratively corrected through the iterative correction layer by combining the frequency domain representation result and the center frequency to obtain the corrected angular velocity data. Among them, the correction result corresponding to the angular velocity data is ; the iterative correction process of the angular velocity data is: Set the c-th iteration result of the frequency domain representation result as : ; Among them, represents the c-th iteration result of the frequency-domain representation, the initial value of c is 0, and the maximum value is C, , , ; n is the number of angular velocity data and also the number of acquisition times.
[0029] Iterate on the frequency-domain representation in the frequency-domain representation result, where the iteration formula of is: ; Among them, represents the iteration result of; in the embodiment of the present invention, if c = 0, then ; Let c = c + 1, return to the iteration step "iterate on the frequency-domain representation in the frequency-domain representation result", until the maximum number of iterations is reached, and obtain the final iteration result of the frequency-domain representation, where the frequency-domain representation the final iteration result of is .
[0030] Use the final iteration result of the frequency-domain representation to form the correction result corresponding to the angular velocity data : ; Among them, represents the differential of the number of Fourier transform points e.
[0031] S130. Construct an acceleration error estimation model, estimate the error of the acceleration data in the filtered inertial sensor data, and correct the acceleration data according to the error estimation result to obtain the corrected acceleration data.
[0032] Optionally, construct an acceleration error estimation model; among them, the acceleration error estimation model includes an acceleration transformation layer, a gain calculation layer, and an error estimation layer; the acceleration transformation layer is used to perform sequence decomposition and transformation processing on the acceleration data; the gain calculation layer is used to calculate the response gain of the acceleration data transformation result; the error estimation layer is used to convert the response gain into an error estimation result. The process of using the acceleration error estimation model to estimate the error of the filtered acceleration data and correct the filtered acceleration data is described in detail below.
[0033] First, extract the acceleration data in the filtered inertial sensor data. Then, perform sequence decomposition and transformation processing on the acceleration data through the acceleration transformation layer to form the acceleration data transformation result, where the filtered inertial sensor data the acceleration data in The corresponding acceleration data transformation result is : ; wherein, represents the imaginary unit, represents the acceleration data the decomposition transformation result at scale r, represents the s-th filtered acceleration data, N is a natural number greater than 1, n represents the number of acceleration data, and also the number of moments of acceleration data acquisition.
[0034] The response gain of the acceleration data transformation result is calculated through the gain calculation layer, wherein the acceleration data transformation result the response gain of is : ; wherein, represents the response change value of
[0035] The response gain is converted into an error estimation result through the error estimation layer, wherein the response gain the corresponding error estimation result is : ; wherein, represents the error control parameter; in the embodiment of the present invention, is set to 5.
[0036] Finally, the acceleration data is corrected according to the error estimation result, wherein the acceleration data the correction result of is . The acceleration data the correction formula of is: ; wherein, represents the correction result of the acceleration data in the filtered inertial sensor data, represents the mean value of the acceleration data in all filtered inertial sensor data, represents the standard deviation of the acceleration data in all filtered inertial sensor data.
[0037] S140. Calculate the position update result and the attitude update result of the object in the dynamic environment by using the corrected angular velocity data and the corrected acceleration data, and use them as the inertial navigation accurate measurement result of the object.
[0038] Calculate the attitude update result of an object in a dynamic environment using the corrected angular velocity data and acceleration data. The calculation process of the attitude update result of the object at time n+1 is as follows: S41. Obtain the corrected angular velocity data from time 1 to time n, and the attitude matrix of the object at the initial time ; where the attitude matrix is the product of the rotation matrices of the object rotating around the X-axis, Y-axis, and Z-axis respectively.
[0039] S42. Generate an angular velocity matrix based on the corrected angular velocity data, where the corrected angular velocity data The corresponding angular velocity matrix is : ; where, successively represent the angular velocities of the object in the X-axis direction, Y-axis direction, and Z-axis direction in the corrected angular velocity data .
[0040] S43. Iteratively update the attitude matrix to obtain the attitude matrix of the object at time n+1 : ; ; where, represents the identity matrix; represents the attitude matrix of the object at time n; represents the time interval between adjacent times.
[0041] S44. Use the attitude matrix of the object at time n+1 as the attitude update result of the object at time n+1, and combine the attitude update result and the corrected acceleration data to calculate the position update result of the object in the dynamic environment.
[0042] The following details the process of calculating the position update result of the object in the dynamic environment by combining the attitude update result and the corrected acceleration data.
[0043] The calculation process of the position update result of the object at time n+1 is as follows: Obtain the corrected acceleration data from time 1 to time n, the initial velocity of the object and the initial position of the object ; In the embodiments of the present application, the speed and position of an object both include the speed and position of the object in the X-axis direction, Y-axis direction, and Z-axis direction. Using the attitude update result, the corrected acceleration data at the same moment is converted to the navigation coordinate system, which refers to the coordinate system of the inertial sensor. X-axis: in front of the sensor, Y-axis: on the right side of the sensor, Z-axis: vertically upward from the sensor. The update conversion is performed based on the attitude matrix of the object. By adjusting the acceleration and speed of the inertial sensor in the navigation coordinate system, the attitude and position of the object in the dynamic environment are indirectly updated.
[0044] Among them, the corrected acceleration data The conversion formula is: ; Among them, represents the gravitational acceleration vector.
[0045] Using the corrected acceleration data after coordinate conversion to update the speed of the object, the speed of the object from time 1 to time n + 1 is obtained, where the speed of the object at time n + 1 is : ; Among them, represents the differential operator.
[0046] According to the speed update result of the object, the position update result of the object at time n + 1 is calculated : ; S45. Take the position update result and attitude update result of the object in the dynamic environment as the inertial navigation precise measurement result of the object.
[0047] Embodiment 2 The embodiments of the present application further provide an electronic device. As Figure 2 shown, this embodiment provides an electronic device, including: at least one processor; and a memory communicatively connected to at least one of the processors.
[0048] The memory stores instructions executable by at least one of the processors. The instructions are executed by at least one of the processors so that at least one of the processors can execute the above method. At least one processor in this electronic device can execute the above method, and thus has at least the same advantages as the above method.
[0049] Optionally, the electronic device further includes interfaces for connecting various components, including high-speed interfaces and low-speed interfaces. Each component is interconnected using different buses and can be mounted on a common motherboard or otherwise installed as required. The processor can process instructions executed within the electronic device, including instructions for storing graphical information in the memory or on the memory to display a GUI (Graphical User Interface) on an external input / output device (such as a display device coupled to the interface). In other embodiments, if needed, multiple processors can be used with multiple memories, and / or multiple buses can be used with multiple memories. Similarly, multiple electronic devices can be connected (such as in a server array, a set of blade servers, or a multi-processor system), and each device provides part of the necessary operations. Figure 2 Take a processor 301 as an example.
[0050] The memory 302, as a computer-readable storage medium, can be used to store software programs, computer-executable programs, and modules, such as the program instructions / modules corresponding to the inertial navigation precise measurement method in a dynamic environment in the embodiments of the present application. The processor 301 executes various functional applications and data processing of the device by running the software programs, instructions, and modules stored in the memory 302, that is, implements the inertial navigation precise measurement method in the above-mentioned dynamic environment.
[0051] The memory 302 mainly includes a program storage area and a data storage area. Among them, the program storage area can store an operating system and application programs required for at least one function; the data storage area can store data created according to the use of the terminal, etc. In addition, the memory 302 can include high-speed random access memory and can also include non-volatile memory, such as at least one magnetic disk storage device, a flash memory device, or other non-volatile solid-state storage devices. In some instances, the memory 302 can further include a memory remotely set relative to the processor 301, and these remote memories can be connected to the device through a network. Examples of the above network include but are not limited to the Internet, an enterprise intranet, a local area network, a mobile communication network, and combinations thereof.
[0052] The electronic device may further include: an input device 303 and an output device 304. The processor 301, the memory 302, the input device 303, and the output device 304 can be connected through a bus or other means. Figure 2 Take the connection through the bus as an example.
[0053] The input device 303 can receive input digital or character information, and the output device 304 can include a display device, an auxiliary lighting device (e.g., an LED), a haptic feedback device (e.g., a vibration motor), etc. The display device can include, but is not limited to, a liquid crystal display (LCD), a light emitting diode (LED) display, and a plasma display. In some embodiments, the display device can be a touch screen.
[0054] It should be understood that the various forms of the processes shown above can be used, with steps reordered, added, or deleted. For example, the steps recited in this application can be executed in parallel, sequentially, or in a different order, as long as the desired results of the technical solutions disclosed in this application can be achieved, and no limitations are imposed herein.
[0055] The above specific embodiments do not constitute a limitation on the protection scope of this application. Those skilled in the art should understand that various modifications, combinations, sub - combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this application shall be included within the protection scope of this application.
Claims
1. A precise inertial navigation measurement method in a dynamic environment, characterized in that: include: Collecting inertial sensor data, and filtering the inertial sensor data to obtain filtered inertial sensor data, wherein the inertial sensor data includes: angular velocity data collected by a gyroscope and acceleration data collected by an accelerometer; Constructing a gyroscope angular velocity error correction model to correct the angular velocity data in the filtered inertial sensor data to obtain corrected angular velocity data; Constructing an acceleration error estimation model, performing error estimation on the acceleration data in the filtered inertial sensor data, and correcting the acceleration data according to the error estimation result to obtain corrected acceleration data; The corrected angular velocity data and the corrected acceleration data are used to calculate the position update result and the attitude update result of the object in a dynamic environment as the inertial navigation precise measurement result of the object.
2. The inertial navigation precise measurement method in a dynamic environment according to claim 1, characterized in that: Collect inertial sensor data, including: An inertial sensor is placed on the surface of an object to collect inertial sensor data of the object during its movement.
3. The inertial navigation precise measurement method in a dynamic environment according to claim 1, characterized in that: Filtering the inertial sensor data to obtain filtered inertial sensor data includes: Construct sliding windows; The inertial sensor data to be filtered is used as the center of the sliding window to form a sliding filter sequence of the inertial sensor data; the sliding filter sequence includes a plurality of sequence values; Calculate the maximum and minimum values of the sliding filter sequence; Calculate the filtering weight of each sequence value in the sliding filtering sequence according to the maximum value and the minimum value; A weighted operation is performed on each sequence value based on the filtering weight, and the weighted result is used as the filtered inertial sensor data.
4. The inertial navigation precise measurement method in a dynamic environment according to claim 1, characterized in that: Constructing a gyroscope angular velocity error correction model, correcting the angular velocity data in the filtered inertial sensor data to obtain corrected angular velocity data, including: Constructing a gyroscope angular velocity error correction model; wherein the gyroscope angular velocity error correction model includes a frequency domain representation layer, a frequency calculation layer, an iterative correction layer and an output layer; The frequency domain representation layer is used to represent the angular velocity data in the frequency domain; the frequency calculation layer is used to calculate the center frequency of the angular velocity data; the iterative correction layer is used to iteratively correct the angular velocity data in combination with the frequency domain representation result and the center frequency to obtain the corrected angular velocity data.
5. The inertial navigation precise measurement method in a dynamic environment according to claim 4, characterized in that: Iteratively correcting the angular velocity data in combination with the frequency domain representation result and the center frequency to obtain corrected angular velocity data, including: Set the cth iteration result in frequency domain to ; ; in, Represented in the frequency domain The cth iteration result of , the initial value of c is 0, the maximum value is C, , , n is the number of angular velocity data; Iterate the frequency domain representation in the frequency domain representation result, where The iteration formula is: ; in, express The iterative result is is the center frequency; Let c = c + 1, return to the iteration step until the maximum number of iterations is reached, and get the final iteration result represented in the frequency domain, where the frequency domain represents The final iteration result is ; The final iteration result represented in the frequency domain is used to form the angular velocity data The corresponding correction results : ; in, Represents the differential of the Fourier transform point e.
6. The inertial navigation precise measurement method in a dynamic environment according to claim 1, characterized in that: Construct an acceleration error estimation model, including: Constructing an acceleration error estimation model; wherein the acceleration error estimation model includes an acceleration transformation layer, a gain calculation layer and an error estimation layer; The acceleration transformation layer is used to perform sequence decomposition and transformation processing on the acceleration data; the gain calculation layer is used to calculate the response gain of the acceleration data transformation result; and the error estimation layer is used to convert the response gain into an error estimation result.
7. The inertial navigation precise measurement method in a dynamic environment according to claim 6, characterized in that: Performing error estimation on the acceleration data in the filtered inertial sensor data includes: Extracting acceleration data from filtered inertial sensor data; The acceleration data is sequenced and transformed through the acceleration transformation layer to form an acceleration data transformation result, wherein the filtered inertial sensor data Medium acceleration data The corresponding acceleration data transformation result is : ; in, represents the imaginary unit, Indicates acceleration data The decomposition transformation result at scale r is, Represents the sth filtered acceleration data, N is a natural number greater than 1, n Indicates the number of acceleration data; The response gain of the acceleration data transformation result is calculated by the gain calculation layer; wherein the acceleration data transformation result The response gain is : ; in, express The response change value of The response gain is converted into an error estimation result through an error estimation layer; wherein the response gain The corresponding error estimation result is : ; in: Represents the error control parameter.
8. The inertial navigation precise measurement method in a dynamic environment according to claim 7, characterized in that: The acceleration data is corrected according to the error estimation results, including: Filtered acceleration data The correction formula is: ; in, Represents the acceleration data in the filtered inertial sensor data The correction result of Represents the mean value of acceleration data in all filtered inertial sensor data, Represents the standard deviation of the acceleration data in all filtered inertial sensor data.
9. An electronic device, characterized in that: The electronic device comprises: at least one processor, and a memory communicatively connected to the at least one processor; The memory stores instructions that can be executed by at least one of the processors, and the instructions are executed by at least one of the processors to enable at least one of the processors to execute the inertial navigation precision measurement method in a dynamic environment according to any one of claims 1 to 8.
10. A computer-readable storage medium, characterized in that: The storage medium stores a computer executable program, which is called by a processor to execute the steps of the inertial navigation precision measurement method in a dynamic environment as described in any one of claims 1 to 8.
Citation Information
Patent Citations
Structural parameter identification method for dynamic model of accelerometer based on refined spectrum analysis
CN105929201A
High-precision satellite attitude determination method based on multiple attitude sensors
CN109141394A
Vibration displacement frequency domain reconstruction method based on variational mode decomposition and generalized error control
CN115062662A
Motion monitoring method and system and wearable device
CN116784831A
Positioning method and device based on inertial navigation
CN116858223A