Next Article in Journal
Automatic Fault Detection and Isolation Method for Roller Bearing Using Hybrid-GA and Sequential Fuzzy Inference
Next Article in Special Issue
Application and Optimization of Wavelet Transform Filter for North-Seeking Gyroscope Sensor Exposed to Vibration
Previous Article in Journal
In-Mold Sensors for Injection Molding: On the Way to Industry 4.0
Previous Article in Special Issue
Does the Femoral Head Size in Hip Arthroplasty Influence Lower Body Movements during Squats, Gait and Stair Walking? A Clinical Pilot Study Based on Wearable Motion Sensors
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Research on Filtering Algorithm of MEMS Gyroscope Based on Information Fusion

College of Intelligence Science and Technology, National University of Defense Technology, Changsha 410073, China
*
Author to whom correspondence should be addressed.
Sensors 2019, 19(16), 3552; https://doi.org/10.3390/s19163552
Submission received: 2 July 2019 / Revised: 7 August 2019 / Accepted: 13 August 2019 / Published: 15 August 2019
(This article belongs to the Special Issue Gyroscopes and Accelerometers)

Abstract

:
As an important inertial sensor, the gyroscope is mainly used to measure angular velocity in inertial space. However, due to the influence of semiconductor thermal noise and electromagnetic interference, the output of the gyroscope has a certain random noise and drift, which affects the accuracy of the detected angular velocity signal, thus interfering with the accuracy of the stability of the whole system. In order to reduce the noise and compensate for the drift of the MEMS (Micro Electromechanical System) gyroscope during usage, this paper proposes a Kalman filtering method based on information fusion, which uses the MEMS gyroscope and line accelerometer signals to implement the filtering function under the Kalman algorithm. The experimental results show that compared with the commonly used filtering methods, this method allows significant reduction of the noise of the gyroscope signal and accurate estimation of the drift of the gyroscope signal, and thus improves the control performance of the system and the stability accuracy.

1. Introduction

A photoelectric stability platform is a device that can effectively isolate the carrier disturbance and keep the visual axis stable. As an important inertial sensor of photoelectric stability platform, the gyroscope is mainly used for the angular velocity of the sensitive inertia space of each axis. The measured angular velocity is fed back to the servo control system to form a speed closed loop, thereby isolating the external disturbance and ensuring the stability of the platform. The MEMS gyroscope is widely used in photoelectric stabilization systems due to its small size and low cost. However, due to the influence of devices and environmental interference, the output of the MEMS gyroscope has a certain noise and drift, which reduces the accuracy of the signal and affects the stability of the system.
At present, there are many methods for processing gyroscope signal noise, which can be roughly divided into two categories: one is the based on the model compensation method, that is, modeling the random noise of the gyroscope and offsetting it in accordance with the model, e.g., the Kalman filter method [1,2,3], statistical filtering, etc.; the other is the direct filtering method, which directly filters the output signal of the gyroscope, e.g., low-pass filtering, Wavelet filtering [4,5,6,7], adaptive filtering [8], and so on.
In the literature [9], based on the time series model of gyroscope zero drift data, the author uses the Kalman algorithm to process the drift data. The simulation results show that the method can effectively filter the static gyroscope signal, but the dynamic signal filtering effect is poor. Another paper [10] proposes an analytical method to estimate the measurement noise variance in Kalman filter and apply it to the Kalman filter in real time; experiments show that this method could carry out a more accurate result in estimating the measurement noise variance and improve the accuracy of Kalman filter; however, it is not able to estimate the drift of the sensor. In the literature [11], Luming Li combines Kalman filtering with neural networks to estimate the variance of the Kalman filter measurement noise through neural networks, thus solving the problem of inaccurate selection of measurement noise variance. Experiments show that the algorithm better suppresses the random noise of the gyroscope. However, since this method is also based on time series modeling, the filtering effect on dynamic signals is unsatisfactory. In the literature [12], the Kalman filter is used to fuse the two sensor signals of the MEMS gyroscope and the accelerometer to suppress the gyroscope random noise, meanwhile estimating the drift of the accelerometer. However, because the existence of the constant drift of the gyroscope is not taken into consideration in this algorithm, there is a certain error with the actual situation. In the literature [8], in order to eliminate the random noise of the fiber optic gyroscope, the digital low-pass filtering, wavelet filtering, adaptive filtering, and variable-step adaptive filtering methods are compared for filtering. The comparison shows that the variable step size adaptive filtering method has the best filtering effect on the gyroscope random noise. However, this method cannot simultaneously estimate the constant drift of the sensor.
For the estimation of gyroscope signals drift, the literature [13] uses six accelerometers placed symmetrically on the UAV’s rotary axis to calculate the angular velocity. The Kalman filter algorithm is used to fuse the angular velocity of the gyroscope output with the angular velocity calculated by the accelerometer to estimate the constant drift of the gyroscope. The simulation results show that the method can effectively compensate the constant drift of the gyroscope and has certain application value. However, this method has only a certain effect in the simulation and has not been verified in the experiment.
Although the above researches have achieved certain results on the filtering and drift estimation of the gyroscope signal, the filtering and drift estimation of the gyroscope noise often cannot be obtained at the same time. Although some scholars also use gyroscopes and line accelerometers to achieve gyro filtering and drift estimation, they ignore the existence of linear accelerometer drift, making the results less accurate. Based on the summary of the current research results, this paper uses the Kalman filter algorithm that combines the gyroscope signal and the accelerometer signal to process the gyroscope signal and also estimate the accelerometer signal filtering and drift, thereby improving the detection accuracy of the sensor.

2. Analysis of MEMS Gyroscope Error

2.1. Analysis of Noise Sources of MEMS Gyroscopes

The noise of MEMS gyroscopes is mainly caused by imperfect structure and environmental interference. In order to identify and characterize the noise source that causes the gyroscope noise, the Allan variance method is used to analyze the MEMS gyroscope signal. This method is characterized by the ability to characterize and identify the statistical properties of the entire noise, meanwhile analyzing the source of the identified noise term [8].
Let the length of the gyroscope signal be L and the sampling frequency be f, then the sampling period is t 0 = 1 / f . The average gyroscope signal is divided into K groups ( K 2 ), then the data length of each group is N = L / K and the length of each group of data is t = t 0 N , which is also called the correlation time [14].
Calculate the average value ω k ¯ ( N ) of each group at each correlation time t, then
ω k ¯ ( N ) = 1 N i = 1 N ω ( k 1 ) N + i K = 1 , 2 , , K
Then the Allan method at the relevant time t is defined as
σ A 2 ( t ) = 1 2 ( K 1 ) j = 1 K 1 [ ω j + 1 ¯ ( N ) ω j ¯ ( N ) ] 2
The Allan variance curve can be obtained by taking different correlation times t and calculating the corresponding Allan variance σ A 2 ( t ) . The square root σ A ( t ) of the Allan variance is called the Allan standard deviation and the curve of σ A ( t ) ~ t in the double logarithmic coordinate system is called the Allan standard deviation double logarithmic curve [15].
The random drift error of MEMS gyroscope mainly includes five noise sources such as quantization noise, rate ramp noise, angular rate random walk noise, angular random walk noise, and zero offset instability noise [16]. Since these noise sources are reflected in different correlation time regions, the Allan variance method can analyze different noises of the gyroscope. The Allan variance of the quantization noise is σ Q 2 ( t ) = 3 Q 2 / t 2 . The Allan variance of the angular random walk noise is σ N 2 ( t ) = N 2 / t . The Allan variance noise of the zero-bias instability is σ B 2 ( t ) = 2 B 2 l n 2 / π . The Allan variance of the angular rate random walk noise is σ K 2 ( t ) = K 2 t / 3 . The Allan variance of the rate ramp noise is σ R 2 ( t ) = R 2 t 2 / 2 . Among them, Q , N, B, K, and R are various error coefficients.
If the MEMS gyroscope contains these five noise sources and is statistically independent. Then the Allan variance can be decomposed into the sum of the Allan variances of the noise sources.
σ A 2 ( t ) = σ Q 2 ( t ) + σ N 2 ( t ) + σ B 2 ( t ) + σ K 2 ( t ) + σ R 2 ( t )
σ A 2 ( t ) = 3 Q 2 t 2 + N 2 t + 2 B 2 l n 2 π + K 2 t 3 + R 2 t 2 2 = i = 2 2 φ i t i
Using the least squares method, φ i can be obtained and various error coefficients are obtained. The relationship between each error coefficient and φ i is
Q = φ 2 3600 3 , N = φ 1 60 , B = φ 0 π 2 l n 2 , K = 60 3 φ 1 , R = 3600 2 φ 2
In this paper, the static data of MEMS gyroscope is collected at the sampling frequency of 1 KHz. The analysis results are shown in Figure 1.
The error coefficients obtained by Allan analysis of variance are
Q = 5.4412 × 10 7 , N = 8.0041 × 10 4 , B = 0.0258 , K = 3.973 , R = 121.3356
As can be seen from the above figure, the noise composition of the MEMS gyroscope is mainly composed of quantization noise and angular random walk noise. Therefore, the filtering of MEMS gyroscope noise is mainly to filter the two noise sources.

2.2. Influence of MEMS Gyroscope Error on Stable Platform System

The influence of the error of the MEMS gyroscope on the stable platform control system can be expressed by the mean square error of the system output under the influence of the noise and drift of the gyroscope. The system control model is shown in Figure 2.
In Figure 2, C(s) is the controller of the stable loop, G(s) is the transfer function of the system model, H(s) is the transfer function of the sensor, r(t) is the speed command entered by the system, v(t) is the speed of the system output, and n(t) is the error of the gyroscope.
According to the Figure 2, the transfer function of the gyroscope error input to the system output is
G c ( s ) = H ( s ) C ( s ) G ( s ) 1 + H ( s ) C ( s ) G ( s )
From the linear system theory, the output power spectral density of a linear system is equal to the product of the input power spectral density and the system power transfer function [17]. According to the system shown in Figure 2, if the power spectral density of the gyro error is ϕ r ( ω ) . The transfer function of the gyroscope noise input to the system output is G c ( s ) . The power spectral density of the system output caused by the gyro noise input is
ϕ v ( ω ) = | G c ( j ω ) | 2 ϕ r ( ω )
According to Equation (6), the system mean square error caused by the gyroscope error is
ε 2 = | G c ( j ω ) | 2 ϕ r ( ω ) d ω
It can be seen from Equation (7) that the influence of the gyroscope error on the output of the system is determined by the power spectral density of the gyroscope error and its transfer function in the control system. When the transfer function of the control system is fixed, the larger the noise and drift of the gyroscope, the larger the mean square error of the system output due to it.
In addition, in the platform stability control loop, due to the presence of gyro noise, the controller parameters are often not further optimized, which limits the improvement of system control performance. The existence of constant drift of the gyroscope will cause the system to have a smaller amplitude control output even when the platform is stable, which causes the platform to rotate slowly, affecting its stability accuracy, and more serious may cause the system to not work properly.
Therefore, in order to reduce the influence of MEMS gyroscope error on the system and improve the control performance of the system, it is necessary to process the noise and constant drift of the gyroscope.

3. Design and Simulation of the Filter Algorithm

There are many filtering methods for gyroscopes, such as low-pass filter, Kalman filter, forward linear filter, and wavelet filter. Considering the feasibility and real-time requirements, the Kalman filter algorithm and forward linear prediction filter algorithm will be highlighted below. We compare the filtering effects of the two algorithms to find the best filter algorithm.

3.1. Improved Kalman Filter Algorithm

3.1.1. Design of Kalman Filtering Algorithm Based on Information Fusion

Kalman filter is a filtering method based on the minimum mean square error criterion. It obtains an estimate of the state value through an iterative calculation. And it is the best estimate for linear systems with Gaussian white noise. Due to the high accuracy and good real-time performance of Kalman filter, it has been widely used in signal processing.
The equation of state for the discrete time process of the Kalman filter is expressed as
x k = A x k 1 + B u k 1 + F ω k 1
The measurement equation is expressed as
y k = C x k + D v k
In Equation (9), x k is the system state quantity at time k, u k 1 is the system control quantity at time k − 1, A is the state transition matrix, B is the control matrix, C is the measurement matrix, and D and F are the noise matrix. ω k is the system process noise, v k is the system measurement noise, and ω k and v k are mutually independent, normally distributed white noise.
ω k ~ N ( 0 , Q )
v k ~ N ( 0 , R )
Q and R are the covariance matrices of system noise and measurement noise, respectively.
The steps of the Kalman filter algorithm are as follows.
State one-step prediction:
x ¯ k | k 1 = A x ¯ k 1 + B u k 1
One-step prediction of covariance matrix:
P k | k 1 = A P k 1 A T + Q
Calculate the filter gain:
K = P k | k 1 C T ( C P k | k 1 C T + R )
State estimation:
x ¯ k = x ¯ k | k 1 + K ( y k C x ¯ k | k 1 )
Covariance matrix estimation:
P k = ( I K C ) P k | k 1
According to the motion relationship, when the angular velocity value v k and the angular acceleration value a k of the system at time k are known, the angle and angular velocity of the system at time k + 1 can be obtained as follows
x k + 1 = x k + v k t + 1 2 a k t 2
v k + 1 = v k + a k t
According to the Formulae (17) and (18), it is possible to construct a state equation for Kalman filtering using information such as angle, angular velocity, and angular acceleration. This avoids the use of ARMA models or state equations of the original system that are difficult to obtain for Kalman filtering.
Since both the gyroscope and the accelerometer have noise and drift, in order to improve the algorithm’s effect on sensor noise reduction and estimation of sensor drift, the state of the Kalman filter is augmented as X = [ x v Δ v a Δ a ] T . Where x is the angle information, v is the angular velocity information, Δ v is the angular velocity drift of the sensor, a is the angular acceleration information, and Δ a is the angular acceleration drift of the sensor. Therefore, the system equations and observation equations after the amplification state are
{ X k | k 1 = A X k 1 + B W k 1 Y k = C X k + V k
where
A = [ 1 T T T 2 2 T 2 2 0 1 0 T T 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 ] , B = [ 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 ] , C = [ 1 0 0 0 0 0 1 0 0 0 0 0 0 1 0 ]
where T is the sampling time.
The angle information can be solved by the gravity component to which the linear accelerometer is sensitive. The angular velocity information is measured by a gyroscope. The angular acceleration information is measured by a linear accelerometer. It can be shown in Figure 3.
In Figure 3, two linear accelerometers are placed symmetrically about the axis of rotation. G is the acceleration of gravity; a 1 and a 2 are the output values of the two linear accelerometers, respectively; d is the distance of the line accelerometer from the axis of rotation; θ is the angle at which the platform rotates; and α is the angular acceleration of the platform rotation. According to the relationship, you can get
a 1 = α d G c o s θ
a 2 = α d G c o s θ
The above formula is combined
α = a 1 a 2 2
θ = arccos ( a 1 + a 2 2 G )
Thus the angle and angular acceleration of the platform can be obtained.
It can be deduced from the above that the improved Kalman filter algorithm can not only filter the gyroscope signal and estimate its constant value drift, but also filter the acceleration signal and estimate the constant value drift of the accelerometer. The processing of the acceleration signal is to better achieve the algorithm’s filtering of the gyroscope signal and the estimation of the gyroscope drift.

3.1.2. Proof of Stability of Kalman Filter Algorithm Based on Information Fusion

The stability problem of the Kalman filter is related to its application in practical engineering. Therefore, the stability of the filter should be verified after the filter is designed. The filter stability problem requires studying the influence of the initial value of the parameters on the filter stability. That is, as the filtering time increases, the estimated value of the state and the error variance matrix are not affected by the selected initial value [18]. To prove the stability of the filter, the following theorem is used:
Filter stability theorem: If the system is fully controllable and fully observable, the Kalman filter is uniformly progressively stable [19,20].
Among them, the observability and controllability criteria of linear systems are as follows.
(1) Linear system controllability criteria: For linear constant discrete system
x ( k + 1 ) = A x ( k ) + B u ( k )
The necessary and sufficient condition for complete controllability is that the rank of the matrix [ B A B A n 1 B ] is n.
(2) Linear System Observability Criterion: For linear constant discrete system
{ x ( k + 1 ) = A x ( k ) + B u ( k ) y ( k ) = C x ( k ) + v ( k )
The necessary and sufficient condition for complete observability is that the rank of the matrix [ C C A C A n 1 ] T is n. Where n is the dimension of the state vector.
According to Equation (17),
rank [ B A B A 2 B A 3 B A 4 B ] = 5
rank [ C C A C A 2 C A 3 C A 4 ] T = 5
As can be seen from the above equation, the Kalman filtering algorithm proposed in this paper is completely controllable and fully observable. According to the filter stability theorem, the algorithm is stable.

3.2. Forward Linear Prediction Filter Algorithm

The principle of the forward linear predictive filter algorithm is to multiply the previous gyroscope signal by the corresponding weight to predict the gyroscope signal at the current time. The algorithm begins with an initial value and then calculates the difference between the current gyroscope actual value and the predicted value. The weight vector is adjusted according to the minimum mean square error algorithm to converge to a stable weight [21].
x ^ ( n ) = i = 1 K a i x ( n i ) = A T X ( n 1 )
X ( n 1 ) = [ x ( n 1 )   x ( n 2 )     x ( n K ) ] T is the vector of the gyro signals from the first K moments; a i is the weight and K is the order of the filter.
The difference between the current gyroscope actual value and the current gyroscope predicted value and the cost function are
e ( n ) = x ( n ) x ^ ( n )
J ( n ) = E ( e 2 ( n ) )
According to the theory of minimum mean square error, J ( n ) should take the minimum value if the best weight is to be obtained. Therefore, the weight adjustment equation is
A ( n + 1 ) = A ( n ) + μ E [ e ( n ) X ( n 1 ) ]
In the actual calculation, in order to reduce the amount of calculation, the above equation is simplified as
A ( n + 1 ) = A ( n ) + μ e ( n ) X ( n 1 )
In the equation, μ is the step factor, which is generally a smaller value greater than zero [22].

3.3. Simulation Analysis of Filter Algorithm

For the filtering algorithm designed above, the closed-loop control system shown in Figure 4 is built for simulation analysis. Where r(t) is the angular velocity command signal, G(s) is the transfer function of the platform system, and C(s) is the controller of the system speed closed loop. The angular velocity noise signal vn(t) added by the system is a white noise signal with a variance of 1 ( deg / s ) 2 and an average of 0.5 deg / s . The added acceleration noise signal an(t) is a white noise signal with a variance of 5 ( deg / s 2 ) 2 and an average value of 1 ( deg / s 2 ) 2 .

3.3.1. Analysis of Static Filtering

Set the angular velocity command to zero. The acquisition of the gyroscope raw signal, the Kalman filtered signal, and the forward linear filtered signal are shown in Figure 5, Figure 6, Figure 7, Figure 8 and Figure 9.
It can be seen from Figure 5, Figure 6, Figure 7, Figure 8 and Figure 9 that the Kalman filter algorithm and the forward linear filter algorithm have the effect of reducing the gyroscope noise level when the gyroscope noise level is constant. Among them, the Kalman filter algorithm reduces the variance of the noise from 1 ( deg / s ) 2 to 0.0056 ( deg / s ) 2 . The forward linear filtering algorithm reduces the variance of the noise from 1 ( deg / s ) 2 to 0.0119 ( deg / s ) 2 . It can be seen that the Kalman filter effect is better than the forward linear filter effect. Moreover, the Kalman filter algorithm can estimate the constant drift of the gyroscope more accurately. In addition, the Kalman filter algorithm can simultaneously filter the angular acceleration signal and estimate the constant drift of the accelerometer.
The power spectrum is estimated for the angular velocity signals before and after filtering. The result is shown in Figure 10.
As showed from the Figure 10, from the perspective of the frequency domain, the noise after forward linear filtering is 15 dB lower than the power spectrum of the original noise. The noise after the Kalman filtering is reduced by up to 25 dB compared to the power spectrum of the original noise. Therefore, the Kalman filter algorithm can better reduce the gyroscope noise.

3.3.2. Analysis of Dynamic Filtering

Set the sine angular speed command signal with amplitude 2 deg/s and frequency 1 Hz. The filtered result is shown in Figure 11 and Figure 12.
It can be seen from Figure 11 and Figure 12 that both the Kalman filter algorithm and the forward linear filter algorithm can reduce the noise level in the case of dynamic commands. Among them, the Kalman filter algorithm reduces the variance of noise from 1 ( deg / s ) 2 to 0.02 ( deg / s ) 2 . The forward linear filtering algorithm reduces the variance of the noise from 1 ( deg / s ) 2 to 0.093 ( deg / s ) 2 . Therefore, the filtering effect of the improved Kalman algorithm is significantly better than that of the forward linear algorithm. Moreover, the convergence process of the Kalman filter algorithm in the simulation is also faster.

4. Comparison and Analysis of Experimental Results

The experimental test system consists of a computer, a dSpace semiphysical simulation system, and a stable platform. The schematic diagram of the experimental system is shown in Figure 13. The DA interface outputs control commands, which drive the platform motor through the drive. The AD interface receives the accelerometer signal and the gyroscope signal, which is used for filtering and constructing feedback for stable control. The stable platform device is shown in Figure 14. It is a two-axis and two-frame structure which is equipped with sensors such as a MEMS gyroscope and linear accelerometers. The MEMS gyroscope is used to measure platform angular velocity information. Linear accelerometers are used to measure platform acceleration information. Linear accelerometers use symmetrical placement to eliminate the effects of gravitational acceleration.
After that the equipment is installed and debugged, in order to achieve stable control of the stable platform system, the gyroscope signal must be introduced into the feedback channel to form a feedback closed-loop system. Then set different command signals according to different experiments and send them to the driver and motor through dSpace. The gyroscope and line accelerometer are used to acquire the motion signals of the stable platform to observe the corresponding experimental results.

4.1. Filtering Experiment

4.1.1. Static Filtering Experiment

Set the angular velocity command signal to zero. The gyroscope signal of the pitch axis of the platform, the acceleration signal, and the filtered signal of the Kalman filter algorithm and the forward linear filter algorithm are collected. The signals are as shown in Figure 15, Figure 16, Figure 17, Figure 18 and Figure 19.
It can be seen from Figure 15, Figure 16, Figure 17, Figure 18 and Figure 19 that both the Kalman filter algorithm and the forward linear filter algorithm can reduce the gyroscope noise level. The Kalman filter algorithm reduces the variance of the noise from 0.323 ( deg / s ) 2 to 0.061 ( deg / s ) 2 . The forward linear filtering algorithm reduces the variance of the noise from 0.323 ( deg / s ) 2 to 0.127 ( deg / s ) 2 . Moreover, the improved Kalman filter algorithm can estimate the constant drift of the gyroscope more accurately. From the collected gyroscope data, the constant drift of the gyroscope is about 0.45 deg / s , and the drift estimated by the filtering algorithm fluctuates around 0.45 deg / s with an average error of 0.02 deg / s .
In addition, the Kalman filter algorithm can also filter the angular acceleration signal, which reduces the variance of the acceleration noise from 176 ( deg / s 2 ) 2 to 36 ( deg / s 2 ) 2 . At the same time, it can estimate the constant value drift of the accelerometer. The average error between the estimated value and the actual value is 0.1 deg / s 2 .
Therefore, from the perspective of time domain signals, the filtering effect of the Kalman algorithm is better than that of the forward linear algorithm.
The power spectrum is estimated for the angular velocity signals before and after filtering. The result is shown in Figure 20.
It can be seen from Figure 20 that in the frequency domain, both filtering algorithms can reduce the power of signal noise, and as the frequency increases, the reduction amplitude is also larger. The noise filtered by the forward linear algorithm is up to 20 dB lower than the power spectrum of the original noise. The filtered noise of the Kalman algorithm is up to 30 dB lower than the power spectrum of the original noise. Therefore, the Kalman filter algorithm has better noise reduction capability from the frequency domain.

4.1.2. Dynamic Filtering Experiment

Set the angular velocity command to a sinusoidal signal with an amplitude of 2 deg/s and a frequency of 1 Hz. The gyroscope signal of the platform’s pitch axis and the filtered signal are shown in Figure 21.
As can be seen from Figure 21, both the Kalman filter algorithm and the forward linear filter algorithm can reduce the noise level in the case of dynamic commands. Among them, the Kalman filter algorithm reduces the variance of noise from 0.56 ( deg / s 2 ) 2 to 0.11 ( deg / s 2 ) 2 . The forward linear filter algorithm reduces the variance of the noise from 0.56 ( deg / s 2 ) 2 to 0.31 ( deg / s 2 ) 2 . Therefore, the improved Kalman filter algorithm can better reduce the noise of the gyroscope.
The movements in the above experiments are more conventional movements. In order to fully test the performance of the filter, the platform is artificially rotated randomly without the command signal control; the signal of the gyroscope and the filtered signal are shown in Figure 22.
It can be seen from Figure 22 that in the case of random motion of the platform, the two filtering algorithms still have better filtering effects. It is also apparent from the two filter curves in the figure that the Kalman filter algorithm is superior to the forward linear filter algorithm.
To explore the response speed of the filtering algorithm to the signal in the case of random motion of the platform, the Kalman filter algorithm, the forward linear algorithm, and the commonly used low-pass filtering algorithm are compared. The low-pass filtering algorithm uses a second-order low-pass filter with a bandwidth of 20 Hz. The comparison results are shown in Figure 23.
As can be seen from Figure 23, the filtering effect of the low-pass filter with a bandwidth of 20 Hz is similar to that of the Kalman filter. However, the response speed of the Kalman filter algorithm and the forward linear filter algorithm is 0.01s faster than the low-pass filter with a bandwidth of 20Hz. Therefore, the Kalman filter algorithm and the forward linear filter algorithm have better response speeds to signals than the low-pass filters under the same filtering effect.

4.2. Influence of Signal Filtering on System Control Performance

In order to test the improvement of the system control performance by the filtering algorithm, the following experiments were performed on the system using the Kalman filter algorithm and the system without the filter algorithm.
For the system with a filter, the classical controller parameters for speed closed loop are K P = 0.15   and   K i = 1.5 . This controller is also applied to the unfiltered system. For the above two systems, the zero-angle speed command signal is given; the experimental results are shown in Figure 24, Figure 25 and Figure 26.
As shown in Figure 24, Figure 25 and Figure 26, in the case of using the same controller, there is no significant difference in the angular velocity of the system with or without the filter. This is because the gyroscope is less sensitive to the motion of the platform than the linear accelerometer. Therefore, it can be seen from the line accelerometer signal that the acceleration output noise of the filtered system is significantly smaller than the acceleration output noise of the unfiltered system which can also be seen from the power spectrum of the angular acceleration signal. The power of the acceleration noise of the filtered system is less than the unfiltered power spectrum; the difference is at most 2.5 dB at 250 Hz. During the experiment, under the same controller and command signal, the unfiltered system will have slight jitter, which is the cause of the above phenomenon.
The above phenomenon indicates that the controller parameters applied to the unfiltered system are not suitable. Therefore, the controller parameters need to be re-adjusted for different systems. The more reasonable parameters are: the controller parameters of the filtered system are K P = 0.15   and   K i = 1.5 , and the controller parameters of the unfiltered system are K P = 0.05   and   K i = 1 . For the above two systems, a square wave angular velocity command signal with a amplitude of 5 deg/s and a frequency of 1 Hz is given. The experimental results are shown in Figure 27.
As can be seen from Figure 27, for the step signal, both systems can better track the command signal; the systems with filters have a faster step response speed than systems without filters.
Since the stable platform is often affected by disturbances such as bumps, sway, and jitter of the carrier during work, it is necessary to improve the ability of the stable platform to suppress the disturbance. To compare the ability of the stable platform to suppress disturbances before and after filtering, set the zero angular speed command signal, and apply an angular velocity disturbance of ω = 2 sin ( 2 π t ) to the stable platform. The angular error of the platform obtained is shown in Figure 28.
As can be seen from Figure 28, in the case of external disturbance, the variance of the angular error of the system without filter is 0.004 deg 2 and the variance of the angular error of the system with the filter is 0.002 deg 2 . Therefore, the system with a filter has a stronger ability to suppress disturbances.
In summary, the controller parameters are optimized due to the filtering and compensation of the sensor signal by the Kalman filter algorithm. Thereby the control performance of the system and the system’s ability to suppress disturbances are improved.

5. Conclusions

In this paper, based on the large noise and drift of MEMS gyroscopes in engineering applications, a Kalman filter algorithm based on information fusion is proposed. It is compared with the forward linear filter algorithm in simulation and experiment. By comparison, it shows the following.
  • Both filtering algorithms can reduce the noise level of the MEMS gyroscope. However, the filtering effect of the Kalman filter algorithm based on information fusion is better than that of the forward linear filter algorithm, and its noise reduction capability can reach up to 30dB. And it can estimate the constant drift of the MEMS gyroscope more accurately. The average error between the estimated and actual values is 0.02 deg / s .
  • The Kalman filter algorithm based on information fusion can simultaneously reduce the noise level of the accelerometer signal. It can also estimate the constant value drift of the accelerometer, and the average error between the estimated value and the actual value is 0.1 deg / s 2 .
The processing of the gyroscope signal by the Kalman filtering algorithm based on information fusion not only improves the detection accuracy of the gyroscope, but also optimizes the parameters of the system controller. It also compensates for the drift of the gyroscope, which improves the system’s slow rotation under stable control. The stability of the photoelectric stability platform and the ability to suppress disturbances are improved as a whole, which has important practical significance in practical engineering applications.

Author Contributions

H.G. designed the filtering algorithm and carried out experimental research on the effect of the algorithm. H.H. guided the research and proposed the ideas and revisions of the paper.

Funding

This research received no external funding.

Conflicts of Interest

The authors declare no conflicts of interest.

References

  1. Wang, D.S.; Lu, Y.J.; Zhang, L.; Jiang, G.P. Intelligent Positioning for a Commercial Mobile Platform in Seamless Indoor/Outdoor Scenes based on Multi-sensor Fusion. Sensors 2019, 19, 1696. [Google Scholar] [CrossRef] [PubMed]
  2. Liu, F.C.; Su, Z.; Zhao, H.; Li, Q.; Li, C. Attitude Measurement for High-Spinning Projectile with a Hollow MEMS IMU Consisting of Multiple Accelerometers and Gyros. Sensors 2019, 19, 1799. [Google Scholar] [CrossRef] [PubMed]
  3. Narasimhappa, M.; Nayak, J.; Terra, M.H.; Sabat, S.L. ARMA model based adaptive unscented fading Kalman filter for reducing drift of fiber optic gyroscope. Sens. Actuators A Phys. 2016, 251, 42–51. [Google Scholar] [CrossRef]
  4. Donoho, D.L. De-noising by soft-thresholding. IEEE Trans. Inf. Theory 1995, 41, 613–627. [Google Scholar] [CrossRef]
  5. Qian, H.; Ma, J. Research on fiber optic gyro signal de-noising based on wavelet packet soft-threshold. J. Syst. Eng. Electron. 2009, 20, 607–612. [Google Scholar]
  6. Zhang, Q.; Wang, L.; Gao, P.; Liu, Z. An innovative wavelet threshold denoising method for environmental drift of fiber optic gyro. Math. Probl. Eng. 2016, 2016, 1–8. [Google Scholar] [CrossRef]
  7. Yuan, J.; Yuan, Y.; Liu, F.; Pang, Y.; Lin, J. An improved noise reduction algorithm based on wavelet transformation for MEMS gyroscope. Front. Optoelectron. 2015, 8, 413–418. [Google Scholar] [CrossRef]
  8. Wang, S.J. Research on Servo Control System of Gyro Stabilized Platform. Master’s Thesis, Harbin Institute of Technology, Harbin, China, 2008. [Google Scholar]
  9. Zhang, Z.Y.; Fan, D.P.; Li, K.; Zhang, W.B. Study on the filtering method of micro-electromechanical gyro zero drift data. J. Chin. Inert. Technol. 2006, 4, 67–69. [Google Scholar]
  10. Park, S.; Gil, M.S.; Im, H.; Moon, Y.S. Measurement Noise Recommendation for Efficient Kalman Filtering over a Large Amount of Sensor Data. Sensors 2019, 19, 1168. [Google Scholar] [CrossRef] [PubMed]
  11. Li, L.M.; Zhao, L.Y.; Tang, X.H.; He, W.; Li, F.R. Gyro Error Compensation Algorithm Based on Improved Kalman Filter. J. Transduct. Technol. 2018, 31, 538–544, 550. [Google Scholar]
  12. Zhou, X.Y. Research on Target Positioning Error Analysis and Correction of Photoelectric Detection System. Ph.D. Thesis, National University of Defense Technology, Changsha, China, 2011. [Google Scholar]
  13. Li, Q.G.; Zhang, H.L.; Hao, J.R. Research on Gyroscope Drift Compensation Algorithm Based on Six Accelerometers. Sens. Microsyst. 2009, 28, 42–44. [Google Scholar]
  14. Jiang, X.Y.; Zhang, X.F.; Li, M.W. Random Error Analysis Method of MEMS Gyroscope Based on Allan Variance. J. Test Meas. Technol. 2017, 3, 190–195. [Google Scholar]
  15. Xiong, B.F. Modeling and Correction of Low-Cost MEMS Gyroscope Random Drift Error. Master’s Thesis, Southwest University, Chongqing, China, 2017. [Google Scholar]
  16. Cao, H.; Lü, H.; Sun, Q. Model Design Based on MEMS Gyroscope Random Error. In Proceedings of the 2015 IEEE International Conference on Information and Automation, Lijiang, China, 8–10 August 2015. [Google Scholar]
  17. Zhou, X.Y.; Zhang, Z.Y.; Fan, D.P. Improved Angular Velocity Estimation Using MEMS Sensors with Applications in Miniature Inertially Stabilized Platforms. Chin. J. Aeronaut. 2011, 24, 648–656. [Google Scholar] [CrossRef] [Green Version]
  18. Fu, M.Y.; Deng, Z.H.; Yan, L.P. Kalman Filtering Theory and Its Application in Navigation System; Science Press: Beijing, China, 2010; pp. 38–43. [Google Scholar]
  19. Anderson, B.D.O. Stability properties of Kalman bucy filters. J. Frankl. Inst. 1971, 29, 137–144. [Google Scholar] [CrossRef]
  20. Zhou, Z.W.; Fang, H.T. Kalman Filtering Stability with Random Coefficient Matrix under Inexact Variance. Acta Autom. Sin. 2013, 39, 43–52. [Google Scholar] [CrossRef]
  21. Yi, K.; Li, T.Z.; Wu, W.Q. Application of FLP Filtering Algorithm in Fiber Optic Gyro Signal Preprocessing. J. Chin. Inert. Technol. 2005, 24, 60–64. [Google Scholar]
  22. Zhang, W.B. Research on the Working Characteristics of the Seeker Servo Mechanism and Advanced Measurement and Control Methods. Ph.D. Thesis, National University of Defense Technology, Changsha, China, 2009. [Google Scholar]
Figure 1. Allan variance logarithmic curve.
Figure 1. Allan variance logarithmic curve.
Sensors 19 03552 g001
Figure 2. Schematic diagram of the control system structure.
Figure 2. Schematic diagram of the control system structure.
Sensors 19 03552 g002
Figure 3. Schematic diagram of the installation of the linear accelerometer.
Figure 3. Schematic diagram of the installation of the linear accelerometer.
Sensors 19 03552 g003
Figure 4. Simulation structure of the filtering algorithm.
Figure 4. Simulation structure of the filtering algorithm.
Sensors 19 03552 g004
Figure 5. The angular velocity signal after filtering by the Kalman algorithm.
Figure 5. The angular velocity signal after filtering by the Kalman algorithm.
Sensors 19 03552 g005
Figure 6. Estimation of gyroscope drift.
Figure 6. Estimation of gyroscope drift.
Sensors 19 03552 g006
Figure 7. The angular acceleration signal filtered by the Kalman algorithm.
Figure 7. The angular acceleration signal filtered by the Kalman algorithm.
Sensors 19 03552 g007
Figure 8. Estimation of accelerometer drift.
Figure 8. Estimation of accelerometer drift.
Sensors 19 03552 g008
Figure 9. The angular velocity signal filtered by the forward linear algorithm.
Figure 9. The angular velocity signal filtered by the forward linear algorithm.
Sensors 19 03552 g009
Figure 10. Power spectrum of the angular velocity signal before and after filtering.
Figure 10. Power spectrum of the angular velocity signal before and after filtering.
Sensors 19 03552 g010
Figure 11. The angular velocity signal filtered by the Kalman algorithm under dynamic commands.
Figure 11. The angular velocity signal filtered by the Kalman algorithm under dynamic commands.
Sensors 19 03552 g011
Figure 12. The angular velocity signal filtered by the forward linear algorithm under dynamic command.
Figure 12. The angular velocity signal filtered by the forward linear algorithm under dynamic command.
Sensors 19 03552 g012
Figure 13. Schematic diagram of the experimental system.
Figure 13. Schematic diagram of the experimental system.
Sensors 19 03552 g013
Figure 14. Diagram of the stable platform.
Figure 14. Diagram of the stable platform.
Sensors 19 03552 g014
Figure 15. The angular velocity curve after filtering by the Kalman algorithm.
Figure 15. The angular velocity curve after filtering by the Kalman algorithm.
Sensors 19 03552 g015
Figure 16. The estimated curve of the drift of the gyroscope.
Figure 16. The estimated curve of the drift of the gyroscope.
Sensors 19 03552 g016
Figure 17. The angular acceleration curve after filtering by the Kalman algorithm.
Figure 17. The angular acceleration curve after filtering by the Kalman algorithm.
Sensors 19 03552 g017
Figure 18. The estimation curve of the drift of the accelerometer.
Figure 18. The estimation curve of the drift of the accelerometer.
Sensors 19 03552 g018
Figure 19. The angular velocity curve filtered by a forward linear algorithm.
Figure 19. The angular velocity curve filtered by a forward linear algorithm.
Sensors 19 03552 g019
Figure 20. Power spectrum curve before and after filtering.
Figure 20. Power spectrum curve before and after filtering.
Sensors 19 03552 g020
Figure 21. Filter curves for different filtering algorithms under dynamic commands.
Figure 21. Filter curves for different filtering algorithms under dynamic commands.
Sensors 19 03552 g021
Figure 22. Filtering effect of different filtering algorithms under random motion.
Figure 22. Filtering effect of different filtering algorithms under random motion.
Sensors 19 03552 g022
Figure 23. Comparison of response speeds of different filtering algorithms.
Figure 23. Comparison of response speeds of different filtering algorithms.
Sensors 19 03552 g023
Figure 24. The angular velocity curve of the system output with or without a filter.
Figure 24. The angular velocity curve of the system output with or without a filter.
Sensors 19 03552 g024
Figure 25. The angular acceleration curve of the system output with or without a filter.
Figure 25. The angular acceleration curve of the system output with or without a filter.
Sensors 19 03552 g025
Figure 26. Power spectrum of the angular acceleration of the system output with or without a filter.
Figure 26. Power spectrum of the angular acceleration of the system output with or without a filter.
Sensors 19 03552 g026
Figure 27. The step response of a system with or without a filter.
Figure 27. The step response of a system with or without a filter.
Sensors 19 03552 g027
Figure 28. The angular error of the system with or without a filter under disturbance.
Figure 28. The angular error of the system with or without a filter under disturbance.
Sensors 19 03552 g028

Share and Cite

MDPI and ACS Style

Guo, H.; Hong, H. Research on Filtering Algorithm of MEMS Gyroscope Based on Information Fusion. Sensors 2019, 19, 3552. https://doi.org/10.3390/s19163552

AMA Style

Guo H, Hong H. Research on Filtering Algorithm of MEMS Gyroscope Based on Information Fusion. Sensors. 2019; 19(16):3552. https://doi.org/10.3390/s19163552

Chicago/Turabian Style

Guo, Hui, and Huajie Hong. 2019. "Research on Filtering Algorithm of MEMS Gyroscope Based on Information Fusion" Sensors 19, no. 16: 3552. https://doi.org/10.3390/s19163552

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop