An attitude angle dither reduction method and device of an inertial measurement unit and a remote controller

By obtaining the current frame observation angle and angular velocity of the inertial measurement unit, updating the Kalman filter coefficient, and calculating the stable angle and angular velocity, the problem of poor stability of the inertial measurement unit's attitude data is solved, and the jitter suppression of the attitude angle and the improvement of the dynamic response capability are achieved.

CN119642804BActive Publication Date: 2025-10-21GUANGDONG SENEASY INTELLIGENT TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411666552.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-11-21
Publication Date
2025-10-21
Estimated Expiration
2044-11-21

AI Technical Summary

Technical Problem

The inertial measurement unit in the prior art has poor attitude data stability, especially when stationary, where the attitude angle fluctuates greatly and the dynamic response capability is weak.

Method used

An inertial measurement unit attitude angle jitter reduction method is adopted. By obtaining the observation angle and angular velocity of the current frame, updating the Kalman filter coefficient, calculating the stable angle, angular velocity and angular acceleration, the Kalman filter coefficient is dynamically adjusted to filter out jitter and respond to attitude angle changes in a timely manner.

Benefits of technology

It effectively filters out attitude angle fluctuations when the inertial measurement unit is stationary and responds to attitude angle changes in a timely manner when it is in motion, thereby improving the attitude data stability and dynamic response capability of the inertial measurement unit.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119642804B_ABST
    Figure CN119642804B_ABST
Patent Text Reader

Abstract

The application relates to a posture angle dither reduction method and device of an inertial measurement unit and a remote controller. The posture angle dither reduction method of the inertial measurement unit comprises the following steps: acquiring a current frame observation angle; determining a current frame observation angular velocity and a current frame observation angular acceleration according to the current frame observation angle; updating Kalman filtering coefficients according to the current frame observation angular velocity; respectively calculating a stable angle, a stable angular velocity and a stable angular acceleration corresponding to the current frame according to the updated Kalman filtering coefficients, a prediction angle corresponding to the current frame, a prediction angular velocity, a prediction angular acceleration, an observation angle corresponding to the current frame, an observation angular velocity and an observation angular acceleration; and respectively calculating a prediction angle, a prediction angular velocity and a prediction angular acceleration corresponding to a next frame according to the updated Kalman filtering coefficients, the stable angle corresponding to the current frame, the stable angular velocity and the stable angular acceleration. The posture angle dither reduction method of the inertial measurement unit can effectively filter out posture angle fluctuations and improve dynamic response capability.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of remote controllers, and in particular to a method and device for reducing the attitude angle jitter of an inertial measurement unit, and a remote controller. Background Art

[0002] An inertial measurement unit (IMU) is a device that measures an object's three-axis attitude angle (or angular rate) and acceleration. It consists of an accelerometer and a gyroscope. The accelerometer measures linear acceleration along three axes in space, typically used to estimate the direction of gravity; the gyroscope measures angular velocity, capturing information about an object's rotation along three axes in space. By processing the raw data from the IMU's six axes using an attitude calculation algorithm, the IMU's spatial attitude information can be obtained.

[0003] The spatial attitude information output by the attitude calculation algorithm is accompanied by a certain amount of jitter noise. Furthermore, hand shaking when holding a remote control exacerbates fluctuations in the attitude data. Therefore, de-jittering the calculated attitude data is necessary to improve its stability. However, existing de-jittering algorithms have numerous drawbacks. For example, the moving window average filter has a time delay, and the exponentially weighted moving average algorithm is sensitive to sudden noise. This results in large fluctuations in the attitude angle of the inertial measurement unit when stationary and weak dynamic response capabilities of the attitude angle when the inertial measurement unit is in motion. Summary of the Invention

[0004] Based on this, it is necessary to provide an attitude angle de-jitter method, device and remote control for an inertial measurement unit to address the problem that the filtering algorithm in the existing technology has many defects and leads to poor stability of attitude data.

[0005] A method for reducing the attitude angle of an inertial measurement unit, comprising:

[0006] Obtaining the current frame observation angle output by the attitude solution algorithm, wherein the current frame observation angle includes the roll angle, pitch angle, and yaw angle;

[0007] Determining a current frame observation angular velocity and a current frame observation angular acceleration according to the current frame observation angle, wherein the current frame observation angular velocity is equal to the current frame observation angle minus the previous frame observation angle, and the current frame observation angular acceleration is equal to the current frame observation angular velocity minus the previous frame observation angular velocity;

[0008] Update the Kalman filter coefficient according to the current frame observation angular velocity;

[0009] Calculating the current frame stable angle, the current frame stable angular velocity, and the current frame stable angular acceleration respectively according to the updated Kalman filter coefficient, the predicted angle corresponding to the current frame, the predicted angular velocity corresponding to the current frame, the predicted angular acceleration corresponding to the current frame, the current frame observation angle, the current frame observation angular velocity, and the current frame observation angular acceleration, wherein the predicted angle corresponding to the current frame, the predicted angular velocity corresponding to the current frame, and the predicted angular acceleration corresponding to the current frame are determined according to the observation angle of the previous frame;

[0010] The predicted angle corresponding to the next frame, the predicted angular velocity corresponding to the next frame, and the predicted angular acceleration corresponding to the next frame are calculated respectively according to the updated Kalman filter coefficient, the current frame stable angle, the current frame stable angular velocity, and the current frame stable angular acceleration, wherein the predicted angle corresponding to the next frame, the predicted angular velocity corresponding to the next frame, and the predicted angular acceleration corresponding to the next frame are used to determine the next frame stable angle, the next frame stable angle, and the next frame stable angular acceleration.

[0011] In the above-mentioned attitude angle de-jittering method for an inertial measurement unit, the current frame observation angle, the current frame observation angular velocity, and the current frame observation angular acceleration are first determined according to the attitude solution algorithm. The Kalman filter coefficients are then updated according to the current frame observation angular velocity. The current frame stable angle, the current frame stable angular velocity, and the current frame stable angular acceleration are then calculated according to the updated Kalman filter coefficients, the predicted angle corresponding to the current frame, the predicted angular velocity corresponding to the current frame, the predicted angular acceleration corresponding to the current frame, the current frame observation angle, the current frame observation angular velocity, and the current frame observation angular acceleration. Finally, the predicted angle corresponding to the next frame, the predicted angular velocity corresponding to the next frame, and the predicted angular acceleration corresponding to the next frame are calculated according to the updated Kalman filter coefficients, the current frame stable angle, the current frame stable angular velocity, and the current frame stable angular acceleration. By updating the Kalman filter coefficients according to the current frame observation angular velocity, the Kalman filter coefficients can be dynamically adjusted, so that attitude angle fluctuations can be effectively filtered out when the inertial measurement unit is stationary. When the inertial measurement unit is moving, the attitude angle changes can be promptly responded to, delays are eliminated, and the dynamic response capability of the inertial measurement unit is improved.

[0012] In one embodiment, the Kalman filter coefficients include an angle prediction coefficient, an angular velocity prediction coefficient, an angular acceleration prediction coefficient, an angular velocity stability coefficient, and an angular acceleration stability coefficient;

[0013] The adjusting the Kalman filter coefficient according to the current frame observed angular velocity comprises:

[0014] If the current frame observed angular velocity is less than a preset minimum angular velocity, the angle prediction coefficient, the angular velocity prediction coefficient, the angular acceleration prediction coefficient, the angular velocity stability coefficient, and the angular acceleration stability coefficient are all set as first preset filter coefficients;

[0015] If the current frame observed angular velocity is greater than a preset maximum angular velocity, the angle prediction coefficient, the angular velocity prediction coefficient, the angular acceleration prediction coefficient, the angular velocity stability coefficient, and the angular acceleration stability coefficient are all set as second preset filter coefficients;

[0016] If the current frame observed angular velocity is not less than the preset minimum angular velocity and not greater than the preset maximum angular velocity, the angle prediction coefficient, the angular velocity prediction coefficient, the angular acceleration prediction coefficient, the angular velocity stability coefficient and the angular acceleration stability coefficient are all set as the third filter coefficient.

[0017] In one embodiment, the following formula is used to calculate the current frame stabilization angle:

[0018] Alpha_t=Alpha_t-1+ang_gain_angle*(observation_angle-Alpha_t-1);

[0019] Among them, Alpha_t represents the stable angle of the current frame, Alpha_t-1 represents the predicted angle corresponding to the current frame, ang_gain_angle represents the angle prediction coefficient, and observation_angle represents the observation angle of the current frame.

[0020] In one embodiment, the following formula is used to calculate the current frame stable angular velocity:

[0021] Ang_vel_t=k_vel*[Ang_vel_t-1+vel_gain_angle*(observation_omega-Ang_vel_t-1)];

[0022] Wherein, Ang_vel_t represents the current frame stable angular velocity, k_vel represents the angular velocity stability coefficient,

[0023] Ang_vel_t-1 represents the predicted angular velocity corresponding to the current frame, vel_gain_angle represents the angular velocity prediction coefficient, and observation_omega represents the observed angular velocity of the current frame.

[0024] In one embodiment, the following formula is used to calculate the current frame stable angular acceleration:

[0025] Ang_acc_t=k_acc*[Ang_acc_t-1+acc_gain_angle*(observation_acc-Ang_acc_t-1)];

[0026] Among them, Ang_acc_t represents the stable angular acceleration of the current frame, k_acc represents the angular acceleration stability coefficient, Ang_acc_t-1 represents the predicted angular acceleration corresponding to the current frame, acc_gain_angle represents the angular acceleration prediction coefficient, and observation_acc represents the observed angular acceleration of the current frame.

[0027] In one embodiment, the following formula is used to calculate the predicted angle corresponding to the subsequent frame:

[0028] Alpha_t+1=Alpha_t+Ang_vel_t*dt+0.5*Ang_acc_t*dt^2;

[0029] Among them, Alpha_t+1 represents the predicted angle corresponding to the next frame, Alpha_t represents the stable angle of the current frame, Ang_vel_t represents the stable angular velocity of the current frame, Ang_acc_t represents the stable angular acceleration of the current frame, and dt represents the time interval between the previous and next two frames of data.

[0030] In one embodiment, the following formula is used to calculate the predicted angular velocity corresponding to the subsequent frame:

[0031] Ang_vel_t+1=k_vel*(Ang_vel_t+Ang_acc_t*dt);

[0032] Among them, Ang_vel_t+1 represents the predicted angular velocity corresponding to the next frame, k_vel represents the angular velocity stability coefficient, Ang_vel_t represents the stable angular velocity of the current frame, Ang_acc_t represents the stable angular acceleration of the current frame; dt represents the time interval between the previous and next two frames of data.

[0033] In one embodiment, the following formula is used to calculate the predicted angular acceleration corresponding to the subsequent frame:

[0034] Ang_acc_t+1=k_acc*Ang_acc_t;

[0035] Among them, Ang_acc_t+1 represents the predicted angular acceleration corresponding to the next frame, k_acc represents the angular acceleration stability coefficient, and Ang_acc_t represents the stable angular acceleration of the current frame.

[0036] An attitude angle jitter reduction device for a measurement unit, comprising:

[0037] An acquisition module is used to obtain the current frame observation angle output by the attitude solution algorithm, wherein the current frame observation angle includes a roll angle, a pitch angle, and a yaw angle;

[0038] a determination module, configured to determine a current frame observation angular velocity and a current frame observation angular acceleration based on the current frame observation angle, wherein the current frame observation angular velocity is equal to the current frame observation angle minus the previous frame observation angle, and the current frame observation angular acceleration is equal to the current frame observation angular velocity minus the previous frame observation angular velocity;

[0039] An updating module, configured to update a Kalman filter coefficient according to the current frame observed angular velocity;

[0040] a first calculation module, configured to calculate the current frame stable angle, the current frame stable angular velocity, and the current frame stable angular acceleration, respectively, based on the updated Kalman filter coefficient, the predicted angle corresponding to the current frame, the predicted angular velocity corresponding to the current frame, the predicted angular acceleration corresponding to the current frame, the current frame observation angle, the current frame observation angular velocity, and the current frame observation angular acceleration, wherein the predicted angle corresponding to the current frame, the predicted angular velocity corresponding to the current frame, and the predicted angular acceleration corresponding to the current frame are determined based on the observation angle of the previous frame;

[0041] The second calculation module is used to calculate the predicted angle corresponding to the next frame, the predicted angular velocity corresponding to the next frame, and the predicted angular acceleration corresponding to the next frame according to the updated Kalman filter coefficient, the current frame stable angle, the current frame stable angular velocity, and the current frame stable angular acceleration, wherein the predicted angle corresponding to the next frame, the predicted angular velocity corresponding to the next frame, and the predicted angular acceleration corresponding to the next frame are used to determine the next frame stable angle, the next frame stable angle, and the next frame stable angular acceleration.

[0042] A remote controller includes a processor and a memory, wherein the memory is used to store a computer program. When the computer program is executed by the processor, the computer program implements the above-mentioned attitude angle de-jittering method of the inertial measurement unit. BRIEF DESCRIPTION OF THE DRAWINGS

[0043] Figure 1 Schematic diagram of the flow of the attitude angle de-jittering method of the inertial measurement unit of the present invention;

[0044] Figure 2 Schematic diagram of the structure of the attitude angle tremor reduction device of the inertial measurement unit of the present invention;

[0045] Figure 3 Schematic diagram of the structure of the remote control of the present invention. DETAILED DESCRIPTION

[0046] To make the above-mentioned objects, features, and advantages of the present invention more readily apparent, specific embodiments of the present invention are described in detail below with reference to the accompanying drawings. The following description sets forth numerous specific details to facilitate a full understanding of the present invention. However, the present invention can be implemented in many other ways than those described herein, and those skilled in the art may make similar modifications without departing from the scope of the present invention. Therefore, the present invention is not limited to the specific embodiments disclosed below.

[0047] It should be noted that when an element is referred to as being "fixed to" another element, it may be directly on the other element or there may be an intermediate element. When an element is considered to be "connected to" another element, it may be directly connected to the other element or there may be an intermediate element at the same time. In contrast, when an element is referred to as being "directly on" another element, there is no intermediate element. The terms "vertical," "horizontal," "left," "right," and similar expressions used herein are for illustrative purposes only."

[0048] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by those skilled in the art to which the present invention pertains. The terms used herein in the specification of the present invention are for the purpose of describing specific embodiments only and are not intended to limit the present invention. The term "and / or" as used herein includes any and all combinations of one or more of the associated listed items.

[0049] In related technologies, attitude calculation algorithms can output the spatial angle information of an inertial measurement unit in real time. However, due to the limitations of attitude calculation algorithms, the spatial angle information of an inertial measurement unit is accompanied by a certain amount of jitter noise, making it impossible for electronic devices using the inertial measurement unit to obtain accurate spatial angle information of the inertial measurement unit. The present invention discloses a method for reducing the attitude angle of an inertial measurement unit, which can significantly reduce the jitter noise of the spatial angle information of the inertial measurement unit, allowing electronic devices using the inertial measurement unit to obtain more accurate spatial angle information of the inertial measurement unit.

[0050] like Figure 1 Said method comprises:

[0051] Step S01: obtaining the current frame observation angle output by the attitude solution algorithm, wherein the current frame observation angle includes the roll angle, the pitch angle and the yaw angle.

[0052] In this step, the current frame observation angle reflects the spatial angle information of the inertial measurement unit at the current frame time, and the current frame observation angle includes the roll angle, pitch angle, and yaw angle corresponding to the current frame. The inertial measurement unit can be installed in a remote control with a cursor pointing function, for example, which moves the cursor based on the spatial angle information of the inertial measurement unit.

[0053] Step S02: Determine the current frame observation angular velocity and the current frame observation angular acceleration based on the current frame observation angle, wherein the current frame observation angular velocity is equal to the current frame observation angle minus the previous frame observation angle, and the current frame observation angular acceleration is equal to the current frame observation angular velocity minus the previous frame observation angular velocity.

[0054] Step S03: Update the Kalman filter coefficient according to the current frame observation angular velocity.

[0055] In this step, the Kalman filter coefficients can be dynamically updated according to the angular velocity observed in the current frame. Further, the Kalman filter coefficients include angle prediction coefficients, angular velocity prediction coefficients, angular acceleration prediction coefficients, angular velocity stability coefficients, and angular acceleration stability coefficients.

[0056] When adjusting the Kalman filter coefficients based on the angular velocity observed in the current frame, if it is determined that the angular velocity observed in the current frame is less than the preset minimum angular velocity, the angle prediction coefficient, angular velocity prediction coefficient, angular acceleration prediction coefficient, angular velocity stability coefficient, and angular acceleration stability coefficient are all set to the first preset filter coefficient, which is a low filter coefficient; if it is determined that the angular velocity observed in the current frame is greater than the preset maximum angular velocity, the angle prediction coefficient, angular velocity prediction coefficient, angular acceleration prediction coefficient, angular velocity stability coefficient, and angular acceleration stability coefficient are all set to the second preset filter coefficient, which is a high filter coefficient; if it is determined that the angular velocity observed in the current frame is not less than the preset minimum angular velocity and not greater than the preset maximum angular velocity, the angle prediction coefficient, angular velocity prediction coefficient, angular acceleration prediction coefficient, angular velocity stability coefficient, and angular acceleration stability coefficient are all set to the third filter coefficient. The third filter coefficient can be further calculated using the following formula:

[0057] The third filter coefficient = a*current frame observation angular velocity + b; wherein, a and b can be set according to actual needs, a is a positive number, so that the third filter coefficient is proportional to the current frame observation angular velocity, the larger the current frame observation angular velocity, the larger the third filter coefficient, and when the current frame observation angular velocity reaches the preset maximum angular velocity, the third filter coefficient is equal to the second preset filter coefficient.

[0058] Step S04: Calculate the current frame stable angle, current frame stable angular velocity and current frame stable angular acceleration respectively according to the updated Kalman filter coefficient, the predicted angle corresponding to the current frame, the predicted angular velocity corresponding to the current frame, the predicted angular acceleration corresponding to the current frame, the current frame observation angle, the current frame observation angular velocity and the current frame observation angular acceleration, wherein the predicted angle corresponding to the current frame, the predicted angular velocity corresponding to the current frame and the predicted angular acceleration corresponding to the current frame are determined according to the observation angle of the previous frame.

[0059] In this step, the following formula is used to calculate the stabilization angle of the current frame:

[0060] Alpha_t=Alpha_t-1+ang_gain_angle*(observation_angle-Alpha_t-1); wherein Alpha_t represents the stable angle of the current frame, Alpha_t-1 represents the predicted angle corresponding to the current frame, ang_gain_angle represents the angle prediction coefficient, and observation_angle represents the observation angle of the current frame.

[0061] As can be seen, the current frame's stable angle is a fusion of the predicted angle corresponding to the current frame and the current frame's observed angle obtained by the attitude solution algorithm. The weight of the predicted angle and the current frame's observed angle is determined by the current frame's observed angular velocity. The smaller the current frame's observed angular velocity, the smaller the angle prediction coefficient, and the corresponding weight of the predicted angle corresponding to the current frame is larger, indicating greater trust in the predicted value. Conversely, the larger the current frame's observed angular velocity, the larger the angle prediction coefficient, and the corresponding weight of the predicted angle corresponding to the current frame is smaller, indicating greater trust in the current observation angle data.

[0062] In this step, the following formula is used to calculate the stable angular velocity of the current frame:

[0063] Ang_vel_t=k_vel*[Ang_vel_t-1+vel_gain_angle*(observation_omega-Ang_vel_t-1)];

[0064] Among them, Ang_vel_t represents the stable angular velocity of the current frame, k_vel represents the angular velocity stability coefficient, Ang_vel_t-1 represents the predicted angular velocity corresponding to the current frame, vel_gain_angle represents the angular velocity prediction coefficient, and observation_omega represents the observed angular velocity of the current frame.

[0065] As can be seen, the current frame's stabilized angular velocity is derived by fusing the predicted angular velocity corresponding to the current frame with the observed angular velocity of the current frame. The angular velocity stability coefficient scales the observed angular velocity of the current frame: when the remote control is held stationary, the observed angular velocity of the current frame is very small, and so is the angular velocity stability coefficient. This results in a very small stabilized angular velocity for the current frame, effectively filtering out angular fluctuations when the remote control is held stationary. When the remote control is in motion, the observed angular velocity of the current frame increases, and so does the angular velocity stability coefficient, ensuring that the stabilized angular velocity of the current frame can respond promptly to changes in the remote control's angle.

[0066] In this step, the following formula is used to calculate the stable angular acceleration of the current frame:

[0067] Ang_acc_t=k_acc*[Ang_acc_t-1+acc_gain_angle*(observation_acc-Ang_acc_t-1)];

[0068] Among them, Ang_acc_t represents the stable angular acceleration of the current frame, k_acc represents the angular acceleration stability coefficient, Ang_acc_t-1 represents the predicted angular acceleration corresponding to the current frame, acc_gain_angle represents the angular acceleration prediction coefficient, and observation_acc represents the observed angular acceleration of the current frame.

[0069] As can be seen, the calculation method for the current frame's stabilized angular acceleration is the same as that for the current frame's stabilized angular velocity: the current frame's stabilized angular acceleration is derived by fusing the predicted angular acceleration corresponding to the current frame with the observed angular acceleration of the current frame. The angular acceleration stabilization coefficient serves the same purpose as the angular velocity stabilization coefficient: effectively filtering out angular fluctuations when the remote control is stationary and promptly responding to angular changes when the remote control is in motion.

[0070] Step S05: Calculate the predicted angle corresponding to the next frame, the predicted angular velocity corresponding to the next frame, and the predicted angular acceleration corresponding to the next frame according to the updated Kalman filter coefficient, the current frame stable angle, the current frame stable angular velocity, and the current frame stable angular acceleration, respectively. The predicted angle corresponding to the next frame, the predicted angular velocity corresponding to the next frame, and the predicted angular acceleration corresponding to the next frame are used to determine the next frame stable angle, the next frame stable angle, and the next frame stable angular acceleration.

[0071] In this step, the following formula is used to calculate the predicted angle corresponding to the next frame:

[0072] Alpha_t+1=Alpha_t+Ang_vel_t*dt+0.5*Ang_acc_t*dt^2;

[0073] Among them, Alpha_t+1 represents the predicted angle corresponding to the next frame, Alpha_t represents the stable angle of the current frame, Ang_vel_t represents the stable angular velocity of the current frame, Ang_acc_t represents the stable angular acceleration of the current frame, and dt represents the time interval between the previous and next two frames of data.

[0074] It can be seen that the calculation of the predicted angle corresponding to the next frame requires the current frame stable angle, the current frame stable angular velocity and the current frame stable angular acceleration.

[0075] In this step, the following formula is used to calculate the predicted angular velocity corresponding to the next frame:

[0076] Ang_vel_t+1=k_vel*(Ang_vel_t+Ang_acc_t*dt);

[0077] Among them, Ang_vel_t+1 represents the predicted angular velocity corresponding to the next frame, k_vel represents the angular velocity stability coefficient, Ang_vel_t represents the stable angular velocity of the current frame, Ang_acc_t represents the stable angular acceleration of the current frame; dt represents the time interval between the previous and next two frames of data.

[0078] As can be seen, the predicted angular velocity for the subsequent frame is the current frame's stabilized angular velocity plus the current frame's stabilized angular acceleration, multiplied by the time interval, and then multiplied by the angular velocity stability coefficient. The angular velocity stability coefficient scales the current frame's stabilized angular velocity. When the remote controller is held stationary, the observed angular acceleration in the current frame is very small, and the angular velocity stability coefficient is also very small. The angular velocity stability coefficient is used to perform the first angular velocity stabilization when calculating the current frame's stabilized angular velocity. This angular velocity stability coefficient is then used to perform the second angular velocity stabilization when calculating the predicted angular velocity for the subsequent frame.

[0079] In this step, the following formula is used to calculate the predicted angular acceleration corresponding to the next frame:

[0080] Ang_acc_t+1=k_acc*Ang_acc_t;

[0081] Among them, Ang_acc_t+1 represents the predicted angular acceleration corresponding to the next frame, k_acc represents the angular acceleration stability coefficient, and Ang_acc_t represents the stable angular acceleration of the current frame.

[0082] It can be seen that the predicted angular acceleration corresponding to the next frame is obtained by multiplying the stable angular acceleration of the current frame by the angular acceleration stability coefficient. The angular acceleration stability coefficient is used to perform the first angular acceleration stabilization when calculating the stable angular acceleration of the current frame, and the angular acceleration stability coefficient is used to perform the second angular acceleration stabilization when calculating the predicted angular acceleration corresponding to the next frame.

[0083] In the above-mentioned attitude angle de-jittering method for an inertial measurement unit, the current frame observation angle, the current frame observation angular velocity, and the current frame observation angular acceleration are first determined according to the attitude solution algorithm. The Kalman filter coefficients are then updated according to the current frame observation angular velocity. The current frame stable angle, the current frame stable angular velocity, and the current frame stable angular acceleration are then calculated according to the updated Kalman filter coefficients, the predicted angle corresponding to the current frame, the predicted angular velocity corresponding to the current frame, the predicted angular acceleration corresponding to the current frame, the current frame observation angle, the current frame observation angular velocity, and the current frame observation angular acceleration. Finally, the predicted angle corresponding to the next frame, the predicted angular velocity corresponding to the next frame, and the predicted angular acceleration corresponding to the next frame are calculated according to the updated Kalman filter coefficients, the current frame stable angle, the current frame stable angular velocity, and the current frame stable angular acceleration. By updating the Kalman filter coefficients according to the current frame observation angular velocity, the Kalman filter coefficients can be dynamically adjusted, so that attitude angle fluctuations can be effectively filtered out when the inertial measurement unit is stationary. When the inertial measurement unit is moving, the attitude angle changes can be promptly responded to, delays are eliminated, and the dynamic response capability of the inertial measurement unit is improved.

[0084] The invention also discloses a posture angle tremor reduction device of a performance measurement unit.

[0085] like Figure 2 As shown, the attitude angle tremor reduction device 20 of the inertial measurement unit includes:

[0086] An acquisition module 21 is configured to acquire the current frame observation angle output by the attitude solution algorithm, wherein the current frame observation angle includes a roll angle, a pitch angle, and a yaw angle;

[0087] a determination module 22 for determining a current frame observation angular velocity and a current frame observation angular acceleration based on the current frame observation angle, wherein the current frame observation angular velocity is equal to the current frame observation angle minus the previous frame observation angle, and the current frame observation angular acceleration is equal to the current frame observation angular velocity minus the previous frame observation angular velocity;

[0088] An updating module 23 is configured to update a Kalman filter coefficient according to the current frame observed angular velocity;

[0089] a first calculation module 24, configured to calculate the current frame stable angle, the current frame stable angular velocity, and the current frame stable angular acceleration, respectively, based on the updated Kalman filter coefficient, the predicted angle corresponding to the current frame, the predicted angular velocity corresponding to the current frame, the predicted angular acceleration corresponding to the current frame, the current frame observation angle, the current frame observation angular velocity, and the current frame observation angular acceleration, wherein the predicted angle corresponding to the current frame, the predicted angular velocity corresponding to the current frame, and the predicted angular acceleration corresponding to the current frame are determined based on the observation angle of the previous frame;

[0090] The second calculation module 25 is used to calculate the predicted angle corresponding to the next frame, the predicted angular velocity corresponding to the next frame, and the predicted angular acceleration corresponding to the next frame based on the updated Kalman filter coefficient, the current frame stable angle, the current frame stable angular velocity, and the current frame stable angular acceleration, wherein the predicted angle corresponding to the next frame, the predicted angular velocity corresponding to the next frame, and the predicted angular acceleration corresponding to the next frame are used to determine the next frame stable angle, the next frame stable angle, and the next frame stable angular acceleration.

[0091] It can be seen that through the mutual cooperation of the acquisition module 21, the determination module 22, the update module 23, the first calculation module 24 and the second calculation module 25, the attitude angle de-jitter device 20 of the inertial measurement unit can update the Kalman filter coefficient according to the angular velocity observed in the current frame, and dynamically adjust the Kalman filter coefficient, so that when the inertial measurement unit is stationary, the attitude angle fluctuation can be effectively filtered out; when the inertial measurement unit is moving, it can respond to the change of the attitude angle in time, eliminate the delay, and improve the dynamic response capability of the inertial measurement unit.

[0092] The present invention also discloses a remote controller. Figure 3 As shown, the remote controller 30 includes a processor 31 and a memory 32. The memory 32 is used to store a computer program 33. When the computer program 33 is executed by the processor 31, the above-mentioned attitude angle de-jittering method of the inertial measurement unit is implemented.

[0093] By implementing the above-mentioned inertial measurement unit attitude angle de-jittering method, the remote control can update the Kalman filter coefficient according to the angular velocity observed in the current frame, and dynamically adjust the Kalman filter coefficient, so that attitude angle fluctuations can be effectively filtered out when the inertial measurement unit is stationary; when the inertial measurement unit is moving, it can respond to changes in attitude angle in a timely manner, eliminate delays, and improve the dynamic response capability of the inertial measurement unit.

[0094] The technical features of the above-mentioned embodiments can be combined arbitrarily. In order to make the description concise, not all possible combinations of the technical features in the above-mentioned embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0095] The above-described embodiments merely illustrate several implementations of the present invention, and while their descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the patent. It should be noted that a person skilled in the art would be able to make numerous variations and improvements without departing from the spirit of the present invention, all of which fall within the scope of protection of the present invention. Therefore, the scope of protection of the patent for this invention shall be determined by the appended claims.

Claims

1. A method for reducing the attitude angle of an inertial measurement unit, characterized in that: include: Obtaining the current frame observation angle output by the attitude solution algorithm, wherein the current frame observation angle includes the roll angle, pitch angle, and yaw angle; Determining a current frame observation angular velocity and a current frame observation angular acceleration according to the current frame observation angle, wherein the current frame observation angular velocity is equal to the current frame observation angle minus the previous frame observation angle, and the current frame observation angular acceleration is equal to the current frame observation angular velocity minus the previous frame observation angular velocity; Update the Kalman filter coefficient according to the current frame observation angular velocity; Calculating the current frame stable angle, the current frame stable angular velocity, and the current frame stable angular acceleration respectively according to the updated Kalman filter coefficient, the predicted angle corresponding to the current frame, the predicted angular velocity corresponding to the current frame, the predicted angular acceleration corresponding to the current frame, the current frame observation angle, the current frame observation angular velocity, and the current frame observation angular acceleration, wherein the predicted angle corresponding to the current frame, the predicted angular velocity corresponding to the current frame, and the predicted angular acceleration corresponding to the current frame are determined according to the observation angle of the previous frame; Calculating a predicted angle corresponding to a subsequent frame, a predicted angular velocity corresponding to a subsequent frame, and a predicted angular acceleration corresponding to a subsequent frame according to the updated Kalman filter coefficient, the current frame stable angle, the current frame stable angular velocity, and the current frame stable angular acceleration, respectively, wherein the predicted angle corresponding to the subsequent frame, the predicted angular velocity corresponding to the subsequent frame, and the predicted angular acceleration corresponding to the subsequent frame are used to determine the stable angle, the stable angular velocity, and the stable angular acceleration of the subsequent frame; The Kalman filter coefficients include an angle prediction coefficient, an angular velocity prediction coefficient, an angular acceleration prediction coefficient, an angular velocity stability coefficient, and an angular acceleration stability coefficient; The updating of the Kalman filter coefficient according to the current frame observed angular velocity comprises: If the current frame observed angular velocity is less than a preset minimum angular velocity, the angle prediction coefficient, the angular velocity prediction coefficient, the angular acceleration prediction coefficient, the angular velocity stability coefficient, and the angular acceleration stability coefficient are all set as first preset filter coefficients; If the current frame observed angular velocity is greater than a preset maximum angular velocity, the angle prediction coefficient, the angular velocity prediction coefficient, the angular acceleration prediction coefficient, the angular velocity stability coefficient, and the angular acceleration stability coefficient are all set as second preset filter coefficients; If the current frame observed angular velocity is not less than the preset minimum angular velocity and not greater than the preset maximum angular velocity, the angle prediction coefficient, the angular velocity prediction coefficient, the angular acceleration prediction coefficient, the angular velocity stability coefficient and the angular acceleration stability coefficient are all set to the third preset filter coefficient.

2. The method according to claim 1, characterized in that The following formula is used to calculate the current frame stabilization angle: Alpha_t=Alpha_t-1+ang_gain_angle*(observation_angle-Alpha_t-1); Among them, Alpha_t represents the stable angle of the current frame, Alpha_t-1 represents the predicted angle corresponding to the current frame, ang_gain_angle represents the angle prediction coefficient, and observation_angle represents the observation angle of the current frame.

3. The method according to claim 1, characterized in that The following formula is used to calculate the current frame stable angular velocity: Ang_vel_t=k_vel*[Ang_vel_t-1+vel_gain_angle*(observation_omega-Ang_vel_t-1)]; Among them, Ang_vel_t represents the stable angular velocity of the current frame, k_vel represents the angular velocity stability coefficient, Ang_vel_t-1 represents the predicted angular velocity corresponding to the current frame, vel_gain_angle represents the angular velocity prediction coefficient, and observation_omega represents the observed angular velocity of the current frame.

4. The method according to claim 1, wherein The following formula is used to calculate the current frame stable angular acceleration: Ang_acc_t=k_acc*[Ang_acc_t-1+acc_gain_angle*(observation_acc-Ang_acc_t-1)]; wherein Ang_acc_t represents the stable angular acceleration of the current frame, k_acc represents the angular acceleration stability coefficient, Ang_acc_t-1 represents the predicted angular acceleration corresponding to the current frame, acc_gain_angle represents the angular acceleration prediction coefficient, and observation_acc represents the observed angular acceleration of the current frame.

5. The method according to claim 2, characterized in that The following formula is used to calculate the predicted angle corresponding to the next frame: Alpha_t+1=Alpha_t+Ang_vel_t*dt+0.5*Ang_acc_t*dt^2; Among them, Alpha_t+1 represents the predicted angle corresponding to the next frame, Alpha_t represents the stable angle of the current frame, Ang_vel_t represents the stable angular velocity of the current frame, Ang_acc_t represents the stable angular acceleration of the current frame, and dt represents the time interval between the previous and next two frames of data.

6. The method according to claim 3, characterized in that The following formula is used to calculate the predicted angular velocity corresponding to the next frame: Ang_vel_t+1=k_vel*(Ang_vel_t+Ang_acc_t*dt); Among them, Ang_vel_t+1 represents the predicted angular velocity corresponding to the next frame, k_vel represents the angular velocity stability coefficient, Ang_vel_t represents the stable angular velocity of the current frame, Ang_acc_t represents the stable angular acceleration of the current frame; dt represents the time interval between the previous and next two frames of data.

7. The method according to claim 4, characterized in that The following formula is used to calculate the predicted angular acceleration corresponding to the next frame: Ang_acc_t+1=k_acc*Ang_acc_t; Among them, Ang_acc_t+1 represents the predicted angular acceleration corresponding to the next frame, k_acc represents the angular acceleration stability coefficient, and Ang_acc_t represents the stable angular acceleration of the current frame.

8. An attitude angle tremor reduction device for an inertial measurement unit, characterized in that: include: An acquisition module is used to obtain the current frame observation angle output by the attitude solution algorithm, wherein the current frame observation angle includes a roll angle, a pitch angle, and a yaw angle; a determination module, configured to determine a current frame observation angular velocity and a current frame observation angular acceleration based on the current frame observation angle, wherein the current frame observation angular velocity is equal to the current frame observation angle minus the previous frame observation angle, and the current frame observation angular acceleration is equal to the current frame observation angular velocity minus the previous frame observation angular velocity; An updating module, configured to update a Kalman filter coefficient according to the current frame observed angular velocity; a first calculation module, configured to calculate the current frame stable angle, the current frame stable angular velocity, and the current frame stable angular acceleration, respectively, based on the updated Kalman filter coefficient, the predicted angle corresponding to the current frame, the predicted angular velocity corresponding to the current frame, the predicted angular acceleration corresponding to the current frame, the current frame observation angle, the current frame observation angular velocity, and the current frame observation angular acceleration, wherein the predicted angle corresponding to the current frame, the predicted angular velocity corresponding to the current frame, and the predicted angular acceleration corresponding to the current frame are determined based on the observation angle of the previous frame; a second calculation module, configured to calculate, based on the updated Kalman filter coefficient, the current frame stable angle, the current frame stable angular velocity, and the current frame stable angular acceleration, a predicted angle corresponding to the next frame, a predicted angular velocity corresponding to the next frame, and a predicted angular acceleration corresponding to the next frame, respectively, wherein the predicted angle corresponding to the next frame, the predicted angular velocity corresponding to the next frame, and the predicted angular acceleration corresponding to the next frame are used to determine the next frame stable angle, the next frame stable angular velocity, and the next frame stable angular acceleration; The Kalman filter coefficients include an angle prediction coefficient, an angular velocity prediction coefficient, an angular acceleration prediction coefficient, an angular velocity stability coefficient, and an angular acceleration stability coefficient; The update module is further configured to: The Kalman filter coefficients include an angle prediction coefficient, an angular velocity prediction coefficient, an angular acceleration prediction coefficient, an angular velocity stability coefficient, and an angular acceleration stability coefficient; The adjusting the Kalman filter coefficient according to the current frame observed angular velocity comprises: If the current frame observed angular velocity is less than a preset minimum angular velocity, the angle prediction coefficient, the angular velocity prediction coefficient, the angular acceleration prediction coefficient, the angular velocity stability coefficient, and the angular acceleration stability coefficient are all set as first preset filter coefficients; If the current frame observed angular velocity is greater than a preset maximum angular velocity, the angle prediction coefficient, the angular velocity prediction coefficient, the angular acceleration prediction coefficient, the angular velocity stability coefficient, and the angular acceleration stability coefficient are all set as second preset filter coefficients; If the current frame observed angular velocity is not less than the preset minimum angular velocity and not greater than the preset maximum angular velocity, the angle prediction coefficient, the angular velocity prediction coefficient, the angular acceleration prediction coefficient, the angular velocity stability coefficient and the angular acceleration stability coefficient are all set to the third preset filter coefficient.

9. A remote controller, characterized in that: The remote control includes a processor and a memory, the memory is used to store a computer program, and when the computer program is executed by the processor, the attitude angle de-jitter method of the inertial measurement unit according to any one of claims 1 to 7 is implemented.

Citation Information

Patent Citations

  • Method for calculating fusion attitude angle based on complementary Kalman filtering algorithm

    CN105651242A

  • Attitude angle acquisition method, anti-shake control method and mobile terminal

    CN113992846A