Next Article in Journal
A Cost-Effective Electric Vehicle Intelligent Charge Scheduling Method for Commercial Smart Parking Lots Using a Simplified Convex Relaxation Technique
Next Article in Special Issue
A Recurrent Deep Network for Estimating the Pose of Real Indoor Images from Synthetic Image Sequences
Previous Article in Journal
Multidirectional Cylindrical Piezoelectric Force Sensor: Design and Experimental Validation
Previous Article in Special Issue
Recognition of Blocking Categories for UWB Positioning in Complex Indoor Environment
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Letter

Strapdown Inertial Navigation Systems for Positioning Mobile Robots—MEMS Gyroscopes Random Errors Analysis Using Allan Variance Method

by
Andrii V. Rudyk
1,
Andriy O. Semenov
2,
Natalia Kryvinska
3,4,*,
Olena O. Semenova
2,
Volodymyr P. Kvasnikov
5 and
Andrii P. Safonyk
1
1
Department of Automation, Electrical Engineering and Computer-Integrated Technologies, National University of Water and Environmental Engineering, Soborna Street 11, 33000 Rivne, Ukraine
2
Faculty for Infocommunications, Radioelectronics and Nanosystems, Vinnytsia National Technical University, Khmelnytske shose 95, 21000 Vinnytsia, Ukraine
3
Department of Industrial Engineering, University of Applied Sciences - Technikum Wien, 1200 Vienna, Austria
4
Department of Information Systems, Faculty of Management, Comenius University in Bratislava, 82005 25 Bratislava, Slovakia
5
Department of Computerized Electrotechnical Systems and Technologies, National Aviation University, Prospect Kosmonavta Komarova, 1, 02000 Kyiv, Ukraine
*
Author to whom correspondence should be addressed.
Sensors 2020, 20(17), 4841; https://doi.org/10.3390/s20174841
Submission received: 30 July 2020 / Revised: 19 August 2020 / Accepted: 24 August 2020 / Published: 27 August 2020
(This article belongs to the Collection Positioning and Navigation)

Abstract

:
A problem of estimating the movement and orientation of a mobile robot is examined in this paper. The strapdown inertial navigation systems are often engaged to solve this common obstacle. The most important and critically sensitive component of such positioning approximation system is a gyroscope. Thus, we analyze here the random error components of the gyroscope, such as bias instability and random rate walk, as well as those that cause the presence of white and exponentially correlated (Markov) noise and perform an optimization of these parameters. The MEMS gyroscopes of InvenSense MPU-6050 type for each axis of the gyroscope with a sampling frequency of 70 Hz are investigated, as a result, Allan variance graphs and the values of bias instability coefficient and angle random walk for each axis are determined. It was found that in the output signals of the gyroscopes there is no Markov noise and random rate walk, and the X and Z axes are noisier than the Y axis. In the process of inertial measurement unit (IMU) calibration, the correction coefficients are calculated, which allow partial compensating the influence of destabilizing factors and determining the perpendicularity inaccuracy for sensitivity axes, and the conversion coefficients for each axis, which transform the sensor source codes into the measure unit and bias for each axis. The output signals of the calibrated gyroscope are noisy and offset from zero to all axes, so processing accelerometer and gyroscope data by the alpha-beta filter or Kalman filter is required to reduce noise influence.

1. Introduction

Strapdown inertial navigation systems (SINS) are often employed to solve a problem of estimating movement and orientation of a mobile robot (MR). These systems include accelerometers, gyroscopes, and magnetometers, if needed. Gyroscopes are utilized to determine the MR orientation angles, which are relative to an inertial frame of reference. Accelerometers measure the object acceleration along the axes of the Cartesian coordinate system. Therefore, the MR rotation relative to the vertical axis is determined applying the gyroscope, the speed and distance traveled are determined by the results of integrating the measured values of acceleration [1,2].
Installed in the MR board gyroscopes and accelerometers must have an adjusted accuracy in a wide range of angular velocities and accelerations and operate under conditions of vibrations and hits. The number of sensors should be sufficient to obtain information about the imaginary acceleration vectors and the absolute angular velocity of the MR.
Application of a gyroscope system provides all three angles (roll, pitch, and yaw). For a terrestrial MR, the most interesting is the angle of rotation about a vertical axis, is the yaw. However, a practical implementation faces some nuances of using gyroscopes in MRs [3,4].
Firstly, it is impractical to install mechanical gyroscopes in MRs because of their large size. Therefore, miniature gyroscopes in a form of microelectromechanical systems (MEMS) are employed, their informative parameter being an angular velocity.
In this case, integration or simple summation (for analog or discrete output) are performed. Therefore, the estimate of rotation about an axis is approximate and depends on a signal sampling frequency [5,6]:
α t = 0 t ω t d t ,   α i + 1 = α i + ω i Δ t .
Secondly, gyroscopes are characterized by zero drift, leading to changes in angle even in a static position. The drift magnitude depends on a type of the gyroscope [7]. Error ranges for different types of sensors are given in [8].
Thirdly, integration and processing of inertial sensor data with a frequency required for the sufficient accuracy creates a high computational load that might need a separate microcontroller.
Accelerometers in the inertial system provide determining values of linear accelerations for the MR. Numerical integration of acceleration allows passing to speed, and repeated integration allows passing to movement during any time interval [9]. However, integration leads to the accumulation of error [10]. Moreover, accelerometers are sensitive to intense high-frequency interferences, which eliminated by various types of filters (the Kalman filter, alpha-beta filter, etc.). However, such filters are difficult to implement, they require selection or calculation of coefficients and need considerable resources to be implemented on microcontrollers.
While analyzing the SINS accuracy characteristics caused by the gyroscope errors, attention is paid to zero instability (offset) and residual systematic errors. This paper focuses on the instability of gyroscope’s zeros, which typically represent a sum of systematic δ ω S (Systematic Error) and random δ ω R (Random Error) components [11]:
δ ω = δ ω S + δ ω R .
The cause of the input signal shift in the gyroscope is parasitic moments effecting moving parts of the sensor and electronic components unbalance in systems of information reading and processing.
Problem statement. The article is aimed to:
  • Analyze the components of the gyroscope random error due to the influence of various destabilizing factors.
  • Study the MEMS gyroscopes in order to determine a value of their random error components for each axis of Allan deviation curves.

2. Methods of Analyzing Random Errors in Gyroscopes

Frequency analysis methods considering power spectral density (PSD) [11] and temporal analysis techniques considering the Allan variance (AVAR) [12,13,14,15] are applied to examine the gyroscope random errors.
The power spectral density S ω is defined as the bilateral Fourier transform of a correlation function K τ . The Allan variance is a method of time sequences analysis for determining noise characteristics as a function of average time and can be found by results of recording and output signal u ˜ t from the gyroscope, based on a stationary platform. The gyroscope’s output signal recording consists of N samples with duration T 0 . The total length the recording is N T 0 . This method was originally developed to evaluate standard frequency errors. Later, it was actively used for estimating parameters of inertial sensitive elements (recommendations to use this method of analysis are given in the IEEE standards [12,13].
According to this method, an initial array of N measurements of an angular velocity ω ˜ t is received after the test measurements. Then the array is divided into K = N/M groups, where M is a size of the sequential measurements group. The angle accumulated by integrating results of a gyroscope angular velocity ω ˜ t at an interval of M samples is determined for each group.
θ k = 0 M T 0 ω ˜ t d t , k = 1 ,     ,   K .
To calculate the Allan variance, one has to determine a dispersion of differences of the accumulated angles θ k for two neighboring groups having a time shift at correlation time τ = M / f D = M T 0 , where f D is a sampling frequency of gyroscope output signals:
σ A 2 τ = 1 2   K 1 k = 1 K 1   θ k + 1 θ k 2 .
However, in practice it is often not the Allan variance σ A 2 τ to be determined, but the Allan deviation (AD) σ A τ . Then, a curve of the Allan deviation against the average time is plotted. Different sections of the curve are analyzed. Finally, conclusions are drawn about the presence of various components of the gyroscope error (Figure 1) [16].
The gyroscope zero offset systematic error δ ω S from Equation (2) is the sum of the basic δ ω S B and additional δ ω S A systematic errors. Typically, the basic systematic error of a gyroscope will be different from the basic systematic error of another gyroscope of the same type. That is because a group of similar gyroscopes the main systematic error is considered as a random error, but constant in the operating cycle [11,17,18].
Additional errors of gyroscopes are related to their sensitivity to changes of external factors; they are:
  • the sensitivity to acceleration δ ω S A . a a , where δ ω S A . a is the coefficient of gyroscope sensitivity to acceleration against the respective axis ((rad∙s)/m) or ((rad/s)/g); a is the acceleration;
  • the sensitivity to temperature changes δ ω S A . t Δ t , where δ ω S A . t is the coefficient of gyroscope sensitivity to temperature changes, (rad/(s∙°C); Δ t is the temperature deviation from its norm;
  • the sensitivity to vibration δ ω S A . ν ν , where δ ω S A . ν is the gyroscope sensitivity coefficient to a vibration frequency ((rad/s)/Hz) or (rad); ν is the vibration frequency;
  • sensitivity variations that are not a function of the measured orientation angles, for example, those depending on climatic factors (temperature T, relative humidity W, and ambient air pressure P), which differ from their nominal values when measuring motion of objects T0 = 20 °C, W0 = 65%, and P0 = 99.992 kPa (750 mm. mer. col.) (climate drift is Δ S Δ T ,   Δ W ,   Δ P ), depending only on temperature (temperature drift is Δ S Δ T ), or as a result of other factors during the time interval Δ t (time drift is Δ S Δ t ):
    Δ S Δ T ,   Δ W ,   Δ P = S T ,   W ,   P S T 0 ,   W 0 ,   P 0 S T 0 ,   W 0 ,   P 0 100 % ;
    Δ S Δ T = S T S T 0 S T 0 100 % ;
    Δ S Δ t = S t 0 + Δ t S t 0 S t 0 100 % .

3. Analysis of the Gyroscope Random Error Components

A generalized equation of gyroscope errors obtained in [11,19] is
Δ ω = 0.01 δ K G ω M G ×   ω + δ ω ,
where δ K G = K G 1 Δ K G 100 % = d i a g     δ k X G δ k Y G δ k Z G is the diagonal matrix of relative errors of gyroscope conversion coefficients [%]; M G × is the skew-symmetric matrix corresponding to the matrix of directional cosines M G ; δ ω =   δ ω X u δ ω Y u δ ω Z u T is the gyroscope zero offset vector with dimension of this gyroscope output signal.
The first summand in ratio (8) describes the effect of conversion coefficient errors, the second one shows malfunctioning installation of gyroscope measuring axes, the third is the gyroscope zero offsets determined by ratio (2).
The random error components of gyroscopes, which are inertial sensors, are defined by the presence of noise and noisy processes of various kinds [11,20]:
δ ω R = δ ω W N + δ ω B I + δ ω R R W + δ ω M N ,
where δ ω W N is the random error component caused by white noise (WN); δ ω B I is the bias instability (BI); δ ω R R W is the random rate walk (RRW); δ ω M N is the of the random error component caused by the exponential correlated (Markov) noise (MN).
Various disturbances influence the gyroscope output signal. If the gyroscope signal is taken at discrete time points of the sampling period T 0 , the gyroscope noise can be described as white sequence (discrete white noise) δ ω W N k , k = 1 ,   2 ,   with the zero average M δ ω W N k = 0 and the limited variance value D δ ω W N k = σ W N 2 . The error variance determining the rotation angle is D 0 t δ ω W N τ d τ = T 0 t   σ W N 2 [11,21]. Here, the standard deviation (SD) of the error accumulation from the rotation angle determination was caused by the presence of white noise in the gyroscope output signal. Moreover, it increases proportional to the square root of the time:
σ θ t = σ W N T 0 t   = θ A R W t   ,
where θ A R W = σ W N T 0 is the angle random walk (ARW) with dimension dim θ A R W = rad / s 1 / 2 or dim θ A R W = o / s Hz [22,23].
The criterion for the presence of white noise in the gyroscope output signal is the presence of a rectilinear section with inclination −0.5 on the Allan deviation curve (Figure 1); thus, the ARW is the Allan deviation at τ = 1 s. Moreover, accuracy of the random process parameter determination depends on the record length.
Bias instability (BI) is caused by noises in the electronic components of gyroscope systems of information reading and processing. It is relative to Flicker noise or 1 / f noise having the following spectral density
S ω = B 2 2 π ω ,   ω ω 0 ; 0   ,   ω > ω 0 ,
where ω 0 is the cutoff frequency, and B is the coefficient of bias instability. The flicker noise is a universal type of fluctuations and exists almost in all materials and elements used in electronics. In the model of zero instability formation, the fractional integration of which the white noise spectrum is used, which is the half-order integral from the white noise w t . If white noise passes through a filter with the transfer function K p = 1 p 1 / 2 , fluctuations at the filter output will have the 1 / f –spectrum. Such hypothetical filter acts as an integrator of fractional order [11].
The gyroscope BI coefficient [24] is determined by a section of the Allan deviation curve with inclination 0 (at the minimum value of the AD curve) (Figure 2a) [16,25]:
B = σ τ = n T 0 0.664
The random rate walk (RRW) δ ω R R W is described by the Wiener random process (random walk) and leads to the presence of a straight section with inclination +0.5 on the Allan deviation curve (Figure 1). In order to determine the spectral density of white noise w t passed through the integrator to form the random walk, one has to find the AVAR at τ = 3   s   . The standard deviation of the RRW is accumulated over time similar to (8):
σ R R W t = σ W N T 0 t   = ω R R W t   ,
where σ W N is the SD of a generating white noise w t .
In order to determine the correlation time T M N (or an attenuation coefficient of correlation function μ = T M N 1 [s−1]) and the dispersion D M N (or SD σ M N ) of Markov noise the Allan variance method is applied. According to it, the Allan deviation curve (Figure 1) is used to determine the local maximum coordinates τ M N and σ A . M N between asymptotes with inclinations +0.5 and −0.5 (Figure 2b) [16], and the required Markov noise parameters are specified as follows [11]:
σ M N = 1.618 σ A . M N , T M N = 0.529 τ M N   .
This method provides accuracy enhancement for the Markov noise parameters determination by increasing the noise recording length [26].

4. Experimental Examination of Noise Parameters of the InvenSense MPU-6050 Gyroscope

Electrical characteristics (gyroscope and accelerometer specifications) of the InvenSense MPU-6050 are presented in Table 1 [27].
Experimental examination of noise characteristics for each axis of the MEMS gyroscope inertial measurement unit (IMU) type InvenSense MPU-6050 was performed with application of the Allan variation method for 1 h at temperature (22 ± 3) °C. Data from the gyroscope were taken at a frequency of 70 Hz and the module was stationary. The read data was written to a text file and imported into MatLab, where the Allan deviation was calculated.
The graphical dependences of the Allan deviation against the correlation time for gyroscope each axis are shown in Figure 3. As it was expected, at small values τ , there is an inclination −0.5 of the Allan deviation curves, this corresponds to white noise in the gyroscope output signals. The angle random walk θ A R W is determined at τ = 1   s . The Allan deviation curves have a minimum on the zero-slope section corresponding to the bias instability in the area τ = 20 ÷ 150   s . Increase of the averaging time was not analyzed, so a positive inclination +0.5 was not detected, indicating that there is no random rate walk in the gyroscope outputs. A local maximum between the asymptotes with inclinations +0.5 and −0.5 is also not observed on the Allan deviation curves, this indicates the absence of Markov noise in the gyroscope output signals.
The angle random walk θ A R W and the coefficient of bias instability B for each axis of the gyroscope IMU were determined by graphs of the Allan deviation against the correlation time (Figure 3).
θ A R W . X = 0.009145   o / s Hz   ; θ A R W . Y = 0.009997   o / s Hz   ; θ A R W . Z = 0.009533   o / s Hz   ; σ A G = 0.664 B   o / s   ;   B X G = 0.00159 0.664 = 0.00239   o / s   ; B Y G = 0.0008482 0.664 = 0.001277   o / s   ; B Z G = 0.001626 0.664 = 0.002449   o / s   .
Analysis of results of the gyroscope noise parameters measurement shows that the X and Z axes have the twice bigger bias instability coefficient than the Y axis. According to preliminary conclusions, this was caused by measurement errors of gyroscope scale factors. However, in similar repeated experiments, it was found that the gyroscopes scale factors were correctly calculated, their axes are aligned horizontally, with the same results as in Figure 3. Therefore, it was concluded that for the investigated gyroscopic samples the X and Z axes are noisier than the Y axis [11]. The examinations results show that MEMS sensors of the IMU "InvenSense MPU-6050 type" are not highly accurate. So, this module can be used as the primary means for determining movement and orientation parameters when high precision conditions are not posed.

5. Calibration of the Gyroscope InvenSense MPU-6050

A calibration procedure is required to improve the accuracy of determining the motion and orientation parameters with inertial sensors. Experimental equipment used for calibration consists of a uniaxial mini-centrifuge with an exemplary rotary device and the IMU “MPU-6050” 1 breadboard, connected to a power source “PSM-6003” 2 (accuracy (programming) is 0.05% + 5 mV offset, stability is 0.02% + 1 mV offset, temperature coefficient per °C is 0.01% + 3 mV offset), which sets supply voltage in the range 2.4–3.4 V, a frequency meter “METEX MXC-260” 3 (short-term stability is ±3 × 10−9/s, long-term stability is ±2 × 10−5/month, temperature coefficient is ±5 × 10−6 in a range of (0–+40) °C), an electronic unit 4 and a computer 5 (Figure 4). The step of rotation angle change is 10° in the range from 0° to 360° (error of angle setting is 0.08%), and the mini-centrifuge allows setting different values of the angular velocity in the range from 0 to 240°/min. in both rotation directions with relative error up to 0.1%.
An ideal output signal from the gyroscope should be proportional to the projection of the absolute rotation angular velocity ω on the corresponding axis (for example Z U ω z ):
U ω z = k z ω z ,
where k z is the total transmission coefficient (scale factor), which depends on the gyroscope transmission ratio, as well as on the transmission ratio of the amplifier and other transducers of the measuring circuit.
In fact, each gyroscope has its own scale factor, bias instability, cross-links and other parameters, so we will use the following model of a gyroscope output signal:
U ω z = k z ω z + k z x ω x + k z y ω y + U ω z 0 + ξ ω z ,
where k z x ,   k z y are the cross-sensitivity coefficients; U ω z 0 is the gyroscope zero offset; ξ ω z is the measurement noise.
Angular velocity sensors can be constructed by different principles, so the output signal model (15) is specified with additional components. Thus, all electromechanical gyroscopes, including MEMS, are characterized by a significant sensitivity of the zero offset to a linear acceleration. Therefore, for them, the of the output signal model is specified by adding components proportional to the projections a x ,   a y ,   a z of apparent acceleration on the gyroscope sensitivity axis:
U ω z = k z ω z + k z x ω x + k z y ω y + U ω z 0 + b z x a x + b z y a y + b z z a z + ξ ω z ,
where b z x ,   b z y ,   b z z are coefficients of the gyroscope zero signal sensitivity to accelerations (so called "drift from g").
The task of calibrating the gyroscope means determining parameters of its output signal model (16) k z ,   k z x ,   k z y ,   U ω z 0 ,   b z x ,   b z y ,   b z z on order to consider them when calculating the true value of the measured angular velocity.
To obtain data for calibration, the gyroscope is set on the optical dividing head (ODH) according to provisions given in [3], considering that the vector g is pointed vertically down. Data is read during a minute when the sensor rotates about an axis with 90° step. The orientation system outputs a 100 Hz signal, which is a one-dimensional array of 10 elements. The first three elements of the array are data from a triple axis accelerometer. During the reading process, the data is written to a text file as a spreadsheet to be later imported into mathematical packets and calculated. To reduce the effects of measurement noise ξ ω z the output signal of the gyroscope is averaged over the measurement time (1 min), so it is not taken into account during calibration.
According to model (16), the gyroscope output signal depends on the angular velocity projections ω x ,   ω y ,   ω z and accelerations a x ,   a y ,   a z . That is why for the calibration the test values of angular velocity ω and acceleration a have to be set. Therefore, the gyroscope calibration is divided into two stages. On the first stage the angular rotation velocity is specified, on the second stage the fixed gyroscope is set in different positions relative to the gravity acceleration vector g , as with a calibration of accelerometers. Thus, on the first stage coefficients k z ,   k z x ,   k z y are determined and on the second stage coefficients U ω z 0 ,   b z x ,   b z y ,   b z z are determined.
On the first calibration stage, the angular velocities of gyroscope rotation are set without changing its position relative to the gravity acceleration vector g . Therefore, the gyroscope output signal model at this stage looks like
U ω z = k z ω z + k z x ω x + k z y ω y + U ω z 0 Σ ,
where U ω z 0 Σ = U ω z 0 + b z x a x + b z y a y + b z z a z is the total gyroscope zero offset.
When the gyroscope is calibrated only through a direct measurement channel (relative to the Z axis), the model of its output signal is U ω z = k z ω z + U ω z 0 Σ . To calculate parameters k z and U ω z 0 Σ , two angular velocity values ω z are specified and two linear equations are obtained, their solving yields the following results:
k z = i = 1 N ω z i i = 1 N U ω z i N i = 1 N ω z i U ω z i i = 1 N ω z i 2 N i = 1 N ω z i 2 ; U ω z 0 Σ = 1 N i = 1 N U ω z i k z i = 1 N ω z i   .
According to the results of calculations in MatLab, on the first stage the following values of the coefficients received are: k x = 14.532824 ; k y = 14.352421 ; k z = 14.342493 ; U ω x 0 Σ = 373.611859 ; U ω y 0 Σ = 300.418374 ; and U ω z 0 Σ = 166.451145 .
The gyroscope zero signal sensitivity to acceleration (“drift from g”) is
b z y = U ω z 4 U ω z 2 2 g ; b z z = U ω z 1 U ω z 3 2 g ; U ω z 0 = 1 4 i = 1 4 U ω z i .
According to the results of calculations in MatLab, on the second stage the following values of the coefficients received are: b x z = 0.021594 ; b x x = 0.005698 ; U ω x 0 = 260.293125 ; b y x = 0.049215 ; b y y = 0.059203 ; U ω y 0 = 225.423762 ; b z y = 0.025289 ; b z z = 0.057872 ; and U ω z 0 = 116.683324 .
Let us calculate calibrated values of the gyroscope output signal ω G and determine measurement errors of the gyroscope angular velocity Δ ω i . For simplicity, we assume that the rotation of the gyroscope is given only around one axis Z ( a x = a y = 0 ;   a z = g ). At the same time for each value ω z i of the rotary stand we determine the calibrated values of the gyroscope output signal:
ω G = ω z = U ω z U ω z 0 b z z g k z .
The absolute measurement error for the angular velocity of the gyroscope during calibration is determined by the ratio Δ ω i = ω z i ω G i . Results of the calculations are presented in Table 2.

6. Analysis of Output Signals of InvenSense MPU-6050

To estimate noise of accelerometer and gyroscope output signals, the MatLab application was used. The calibrated values of the sensor were being read during 10 min, after this time all the results were imported into a one-dimensional array. To calculate the standard deviation of the array elements in MathLab a default function std() was used [28,29]. The noisy output signals of the calibrated accelerometer and gyroscope for each axis are shown in Figure 5.
Analyzing the dependencies (Figure 5), we conclude that the output signals for most axes of the sensor are offset relative to zero. Such offset should be taken into account in following calculations by introducing constant correction coefficients.
Data were read from registers of the MPU-6050 sensor at a frequency 10 Hz [30]. The gyroscope readings are integrated by a microcontroller to determine the angular velocities relative to the three axes (results are shown in Figure 6). In Figure 5c shows how the error is being accumulated while integrating readings. This is so-called zero drift, with the sensor being fixed and the angle value increasing at almost constant speed). In Figure 6a it can be seen that the accelerometer readings are noisy with high frequency interference, which leads to errors in calculation of deflection angles.
Analysis of the dependence (Figure 5) shows that the output signals of most sensor’s axes are significantly offset from zero and noisy by high frequency interference. Such offset should be taken into account in calculations by introducing constant correction coefficients. When the angular velocity is integrated, the angle is determined wrongly (Figure 6) due to the error accumulation (low-frequency noise) and accelerometer’s making a high-frequency interference. Therefore, to reduce the effects of noise, the sensor data (accelerometer and gyroscope) must be processed with an alpha-beta filter or the Kalman filter [31,32,33].

7. Conclusions

We analyzed in this paper the gyroscope random error components such as bias instability and random rate walk, as well as those cause by the presence of white and exponentially correlated (Markov) noise. The MEMS gyroscopes of InvenSense MPU-6050 type were investigated at each axis with a sampling frequency 70 Hz, as a result, the Allan deviation curves were plotted. The Allan deviation curves allowed determining the values of the instability coefficient for zero (the minimum value for the Y-axis is BY = 0.001277°/s; the maximum value for the Z-axis is BZ = 0.002449°/s) and angle random walk (the minimum value for the X-axis is θARW.X = 0.009145°/s/√Hz; the maximum value for the Y-axis is θARW.Y = 0.009997°/s/√Hz) for each axis, and finding out that the output signals of the gyroscopes have no Markov noise (there is no local maximum between asymptotes with inclinations +0.5 and −0.5 in Figure 3) and random rate walks (there are no asymptotes with inclinations +0.5 in Figure 3, because increase of the averaging time was not analyzed). Similar studies were performed, the accuracy of determining the scale factors of gyroscopes was checked, and X and Z axes were concluded to be are noisier than Y axis.
During the process of IMU calibration, the correction coefficients were calculated. At the first stage of calibration, a scale factor of the gyroscope and coefficients of cross sensitivity were determined at given values of the rotation angular velocity. At the second stage of calibration, the gyroscope zero was offset and the sensitivity coefficients of the gyroscope zero signal to acceleration sensitivity were determined for different positions of the gyroscope relative to the gravitational acceleration vector. Correction coefficients provide partial compensation of the influence of destabilizing factors. Moreover, they provide determination of inaccuracy of the perpendicularity of the sensitivity axes, the conversion coefficients for each axis, transform the sensor output codes into units of measured value and also the zero offset for each axis. The output signals of the calibrated gyroscope were read in 10 min and imported into MatLab to calculate the standard deviation of the array elements. These signals are noisy and there is an offset from zero on all axes. Z-axes of the gyroscope and accelerometer have the maximum values of zero offset and standard deviation of noise, while y-axes have the minimum ones. Data of the accelerometer and gyroscope should be processed by the alpha-beta or Kalman filter to reduce noise.
The determined parameters of the output signal model of the IMU gyroscope may be employed for integrating into a program code based on modern microcontrollers of the AVR family. This will increase accuracy of algorithms based on the Kalman or Madgwick digital filters with relatively high sampling frequencies about 100 Hz. Further studies will focus on determining the optimal averaging time when calculating the Allan variance considering the processing of inertial sensor information at long runs. This is important for calibrating inertial sensors and will increase efficiency of noise structure identification in channels of measuring equipment.

Author Contributions

Conceptualization, A.V.R. and A.O.S.; methodology, V.P.K.; validation A.P.S. and O.O.S.; formal analysis, A.O.S.; investigation, A.V.R.; resources, N.K; data curation, N.K.; writing—original draft preparation, A.V.R. and A.P.S.; writing—review and editing, A.O.S. and O.O.S.; visualization, V.P.K.; supervision, N.K.; project administration, N.K.; and funding acquisition, N.K. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Ren, Y.; Ke, X.; Liu, Y. MEMS Gyroscope Performance Estimate Based on Allan Variance. In Proceedings of the 2007 8th International Conference on Electronic Measurement and Instruments, Xi’an, China, 16–18 August 2007; pp. 260–263. [Google Scholar] [CrossRef]
  2. Božek, P.; Ivandić, Ž.; Lozhkin, A.; Lyalin, V.; Tarasov, V. Solutions to the characteristic equation for industrial robot’s elliptic trajectories/Rjesenja karakteristicne jednadzbe za elipticne putanje ndustrijskog robota. Teh. Vjesn. Tech. Gaz. 2016, 23, 1017–1023. [Google Scholar] [CrossRef]
  3. Arvanitakis, I.; Giannousakis, K.; Tzes, A. Mobile robot navigation in unknown environment based on exploration principles. In Proceedings of the 2016 IEEE Conference on Control Applications (CCA), Buenos Aires, Argentina, 19–22 September 2016; pp. 493–498. [Google Scholar] [CrossRef]
  4. Corke, P.; Lobo, J.; Dias, J. An introduction to inertial and vision sensing. Int. J. Robot. Res. 2007, 6, 519–535. [Google Scholar] [CrossRef]
  5. Farrell, J.A. Aided Navigation: GPS with High. Rate Sensors; McGraw Hill Professional: New York, NY, USA, 2008. [Google Scholar]
  6. Petritoli, E.; Leccese, F.; Leccisi, M. Inertial Navigation Systems for UAV: Uncertainty and Error Measurements. In Proceedings of the 2019 IEEE 5th International Workshop on Metrology for AeroSpace (MetroAeroSpace), Torino, Italy, 19–21 June 2019; pp. 218–222. [Google Scholar] [CrossRef]
  7. Grewal, M.S.; Weill, L.R.; Andrews, A.P. Global Position Systems, Inertial Navigation and Integration; J. Wiley & Sons: New York, NY, USA, 2001. [Google Scholar]
  8. Gang, L.; Wang, J. PRM path planning optimization algorithm research. WSEAS Trans. Syst. Control. 2016, 11, 81–86. [Google Scholar]
  9. Pirník, R.; Hruboš, M.; Nemec, D.; Mravec, T.; Božek, P. Integration of Inertial Sensor Data into Control of the Mobile Platform. In Proceedings of the 2015 Federated Conference on Software Development and Object Technologies, SDOT 2015, Zilina, Slovakia, 19–20 November 2015; pp. 271–282. [Google Scholar] [CrossRef]
  10. Petritoli, E.; Leccese, F.; Spagnolo, G.S. Inertial Navigation Systems (INS) for Drones: Position Errors Model. In Proceedings of the 2020 IEEE 7th International Workshop on Metrology for AeroSpace (MetroAeroSpace), Pisa, Italy, 22–24 June 2020; pp. 500–504. [Google Scholar] [CrossRef]
  11. Rudyk, A.V. Analysis of the errors of MEMS accelerometers by the Allan variation method; Bulletin of Zhytomyr State Technological University: Zhytomyr, Ukraine, 2017; pp. 100–109. [Google Scholar]
  12. IEEE Std 1431-2004. Standard Specification Format Guide and Test Procedure for Coriolis Vibratory Gyros; IEEE: New York, NY, USA, December 2004. [Google Scholar] [CrossRef]
  13. IEEE Std 952-1997. Standard Specification Format Guide and Test Procedure for Single Axis Interferometric Fiber Optic Gyros; IEEE: New York, NY, USA, February 1998. [Google Scholar] [CrossRef]
  14. Woodman, O.J. An Introduction to Inertial Navigation. Available online: https://www.cl.cam.ac.uk/techreports/UCAM-CL-TR-696.pdf (accessed on 22 July 2020).
  15. Titterton, D.H.; Weston, J.L. Strapdown Inertial Navigation Technology; The Institution of Electrical Engineers: Stevenage, UK, 2004. [Google Scholar]
  16. Matveev, V.V. Strapdown Inertial Systems of Orientation and Navigation: Monograph; LAP Lambert Academic Publishing: Saarbrücken, Germany, 2015. [Google Scholar]
  17. Jiang, W.; Wang, L.; Niu, X.; Zhang, Q.; Zhang, H.; Tang, M.; Hu, X. High-Precision Image Aided Inertial Navigation with Known Features: Observability Analysis and Performance Evaluation. Sensors 2014, 14, 19371–19401. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  18. Ko, D.W.; Kim, Y.N.; Lee, J.H.; Suh, I.H. A scene-based dependable indoor navigation system. In Proceedings of the 2016 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Daejeon, Korea, 9–14 October 2016; pp. 1530–1537. [Google Scholar] [CrossRef]
  19. Wang, L.; Zhao, L.; Huo, G.; Li, R.; Hou, Z.; Luo, P.; Sun, Z.; Wang, K.; Yang, C. Visual Semantic Navigation Based on Deep Learning for Indoor Mobile Robots. Complexity 2018, 2018, 1–12. [Google Scholar] [CrossRef]
  20. Zhang, X.; Li, Y.; Mumford, P.J.; Rizos, C. Allan Variance Analysis on Error Characters of MEMS Inertial Sensors for an FPGA-Based GPS/INS System. In Proceedings of the International Symposium on GPS/GNSS, Tokyo, Japan, 11–14 November 2008; pp. 127–133. [Google Scholar]
  21. Kilin, A.; Bozek, P.; Karavaev, Y.; Klekovkin, A.; Shestakov, V. Experimental investigations of a highly maneuverable mobile omniwheel robot. Int. J. Adv. Robot. Syst. 2017, 14, 1–9. [Google Scholar] [CrossRef]
  22. Zotov, S.A.; Rivers, M.C.; Trusov, A.A.; Shkel, A.M. Folded MEMS Pyramid Inertial Measurement Unit. IEEE Sens. J. 2011, 11, 2780–2789. [Google Scholar] [CrossRef]
  23. Li, J.; Fang, J. Not Fully Overlapping Allan Variance and Total Variance for Inertial Sensor Stochastic Error Analysis. IEEE Trans. Instrum. Meas. 2013, 62, 2659–2672. [Google Scholar] [CrossRef]
  24. Niu, G.; Tang, J.; Feng, Z.; Joseph, A.J.; Harame, D.L. Scaling and technological limitations of 1/f noise and oscillator phase noise in SiGe HBTs. IEEE Trans. Microw. Theory Tech. 2005, 53, 506–514. [Google Scholar] [CrossRef]
  25. Groves, P.D. Principles of GNSS, Inertial and Multisensor Integrated Navigation Systems; Artech House: Norwood, MA, USA, 2013. [Google Scholar]
  26. Božek, P.; Akkad, A.M.; Blištan, P.; Ibrahim, I.N. Navigation Control and Stability Investigation of a Mobile Robot Based on a Hexacopter Equipped with an Integrated Manipulator. Int. J. Adv. Robot. Syst. 2017, 14, 1–13. [Google Scholar] [CrossRef] [Green Version]
  27. MPU-6000 and MPU-6050. Product Specification. Revision 3.4. Available online: www.invensense.com (accessed on 14 August 2020).
  28. Grewal, M.S.; Andrews, A.P. Kalman Filtering: Theory and Practice Using MATLAB; J. Wiley & Sons: New York, NY, USA, 2001. [Google Scholar]
  29. Ingle, V.K.; Proakis, J.G. Digital Signal. Processing Using MATLAB; Cengage Learning: Stamford, CT, USA, 2012. [Google Scholar]
  30. Rudyk, A.; Rudyk, V.; Radul, N.; Matei, M. The influence of the program code structure on the discretization frequency of the onboard computer of a mobile robot. In Proceedings of the III International Scientific and Practical Conference on Modeling, Control and Information Technologies, Rivne, Ukraine, 14–16 November 2019; pp. 212–214. [Google Scholar] [CrossRef]
  31. Mahony, R.; Hamel, T.; Pflimlin, J.-M. Complementary filter design on the special orthogonal group SO(3). In Proceedings of the 44th IEEE Conference on Decision and Control, Seville, Spain, 15 December 2005; pp. 1477–1484. [Google Scholar] [CrossRef] [Green Version]
  32. Hol, J.D. Pose Estimation and Calibration Algorithms for Vision and Inertial Sensors. Ph.D. Thesis No. 1370, Linköping University, Linköping, Sweden, 2005. [Google Scholar]
  33. Rudyk, A.; Rudyk, V.; Matei, M. Research and simulation of the local navigation system of terrestrial mobile robot. IAPGOS 2020, 10, 56–61. [Google Scholar] [CrossRef]
Figure 1. General view of the Allan deviation curve. The Allan deviation allow separating such noise components as quasi-deterministic zero offset (+1 inclination); gyroscope angular velocity random walk (+0.5 inclination); zero offset instability or flicker noise (0 inclination); random walk of gyroscope angle (−0.5 inclination); and output quantization noise (−1 inclination) [16].
Figure 1. General view of the Allan deviation curve. The Allan deviation allow separating such noise components as quasi-deterministic zero offset (+1 inclination); gyroscope angular velocity random walk (+0.5 inclination); zero offset instability or flicker noise (0 inclination); random walk of gyroscope angle (−0.5 inclination); and output quantization noise (−1 inclination) [16].
Sensors 20 04841 g001
Figure 2. Determination of bias instability (a) and Markov noise parameters (b) by the Allan deviation curve.
Figure 2. Determination of bias instability (a) and Markov noise parameters (b) by the Allan deviation curve.
Sensors 20 04841 g002
Figure 3. Graphs of the Allan deviation for the gyroscope sensor MPU-6050: axis X (a), axis Y (b), and axis Z (c).
Figure 3. Graphs of the Allan deviation for the gyroscope sensor MPU-6050: axis X (a), axis Y (b), and axis Z (c).
Sensors 20 04841 g003aSensors 20 04841 g003b
Figure 4. Experimental equipment: 1 is the mini-centrifuge with the exemplary rotary device and the IMU MPU-6050 breadboard; 2 is the PSM-6003 power source; 3 is the frequency meter METEX MXC-260; 4 is the electronic block; and 5 is the computer.
Figure 4. Experimental equipment: 1 is the mini-centrifuge with the exemplary rotary device and the IMU MPU-6050 breadboard; 2 is the PSM-6003 power source; 3 is the frequency meter METEX MXC-260; 4 is the electronic block; and 5 is the computer.
Sensors 20 04841 g004
Figure 5. Noise of the output signals from the accelerometer ((a) is X-axis, (b) is Y-axis, and (c) is Z-axis) and from the gyroscope ((d) is X-axis, (e) is Y-axis, and (f) is Z-axis) of the MPU-6050 sensor.
Figure 5. Noise of the output signals from the accelerometer ((a) is X-axis, (b) is Y-axis, and (c) is Z-axis) and from the gyroscope ((d) is X-axis, (e) is Y-axis, and (f) is Z-axis) of the MPU-6050 sensor.
Sensors 20 04841 g005aSensors 20 04841 g005bSensors 20 04841 g005c
Figure 6. MPU-6050 sensor readings on axes of the accelerometer (a), on axes of the gyroscope (b), and data about angle rotations while integrating the gyroscope readings (c).
Figure 6. MPU-6050 sensor readings on axes of the accelerometer (a), on axes of the gyroscope (b), and data about angle rotations while integrating the gyroscope readings (c).
Sensors 20 04841 g006
Table 1. Electrical characteristics of the InvenSense MPU-6050.
Table 1. Electrical characteristics of the InvenSense MPU-6050.
ParameterConditionsMinTypMaxUnits
Gyroscope Sensitivity
Full-Scale RangeFS_SEL = 0 (3)±250 ±2000°/s
Gyroscope ADC Word Length 16 bits
Sensitivity Scale FactorFS_SEL = 0 (3)16.4 131LSB/(°/s)
Sensitivity Scale Factor Tolerance25 °C−3 +3%
Sensitivity Scale Factor Variation Over Temperature ±2 %
NonlinearityBest fit straight line; 25 °C 0.2 %
Cross-Axis Sensitivity ±2 %
Gyroscope Zero-Rate Output (ZRO)
Initial ZRO Tolerance25 °C ±20 °/s
ZRO Variation Over Temperature−40 °C to +85 °C ±20 °/s
Power-Supply Sensitivity100 mVpp; VDD = 2.5 V0.2 4°/s
Linear Acceleration SensitivityStatic 0.1 °/s/g
Gyroscope Noise PerformanceFS_SEL = 0
Total RMS NoiseDLPFSFG = 2 (100 Hz) 0.05 °/s-rms
Low-frequency RMS NoiseBandwidth 1 Hz to 10 Hz 0.033 °/s-rms
Rate Noise Spectral DensityAt 10 Hz 0.005 °/s/√Hz
Gyroscope Start-Up TimeDLPFCFG = 0
ZRO Setting (from power-on)to ±1°/s of Final 30 ms
Accelerometer Sensitivity
Full-Scale RangeAFS_SEL = 0 (3)±2 ±16g
Accelerometer ADC Word LengthIn two’s component format 16 bits
Sensitivity Scale FactorAFS_SEL = 0 (3)2.048 16.384LSB/g
Initial Calibration Tolerance ±3 %
Sensitivity Change vs. Temperature−40 °C to +85 °C ±0.02 %/°C
NonlinearityBest fit straight line; 25 °C 0.5 %
Cross-Axis Sensitivity ±2 %
Zero-G Output
Initial Calibration ToleranceX and Y axes ±50 mg
Z axis ±80 mg
Zero-G Level Change vs. TemperatureX and Y axes, 0 °C to +70 °C
Z axis, 0 °C to +70 °C
±35
±60
mg
mg
Accelerometer Noise Performance
Power Spectral Density@10 Hz, ODR = 1 kHz 400 μg/√Hz
Intelligence Function Increment 32 mg/LSB
Table 2. Determination of accuracy of gyroscope calibration on axes.
Table 2. Determination of accuracy of gyroscope calibration on axes.
Angular Velocity Value ωzi, o/sMeasured Calibration Value of Angular Velocity ωGi, o/sAbsolute Measurement Error for the Gyroscope Angular Velocity during Calibration Δωi, o/s
Axis XAxis YAxis ZAxis XAxis YAxis Z
−150−149.7543−149.9781−149.8478−0.2457−0.0219−0.1522
−120−119.6212−119.6256−119.6116−0.3788−0.3744−0.3884
−100−100.2933−100.3465−100.21310.29330.34650.2131
−80−79.9559−80.0618−80.0617−0.04410.06180.0617
−60−60.0673−59.9267−60.14140.0673−0.01330.1414
−40−39.8056−39.8653−39.9171−0.1944−0.2347−0.0829
−20−19.6373−19.7184−19.8632−0.3427−0.2816−0.1368
00.013588−0.0036540.007436−0.0135880.003654−0.007436
2020.233420.012919.8463−0.2334−0.01290.1537
4039.979239.949139.91580.02080.05090.0842
6060.186660.114960.2033−0.1866−0.1149−0.2033
8080.101880.023880.0788−0.1018−0.0238−0.0788
100100.5863100.3816100.3497−0.5863−0.3816−0.3497
120119.9062119.7367119.90220.09380.26330.0978
150150.0168150.0816150.0365−0.0168−0.0816−0.0365

Share and Cite

MDPI and ACS Style

Rudyk, A.V.; Semenov, A.O.; Kryvinska, N.; Semenova, O.O.; Kvasnikov, V.P.; Safonyk, A.P. Strapdown Inertial Navigation Systems for Positioning Mobile Robots—MEMS Gyroscopes Random Errors Analysis Using Allan Variance Method. Sensors 2020, 20, 4841. https://doi.org/10.3390/s20174841

AMA Style

Rudyk AV, Semenov AO, Kryvinska N, Semenova OO, Kvasnikov VP, Safonyk AP. Strapdown Inertial Navigation Systems for Positioning Mobile Robots—MEMS Gyroscopes Random Errors Analysis Using Allan Variance Method. Sensors. 2020; 20(17):4841. https://doi.org/10.3390/s20174841

Chicago/Turabian Style

Rudyk, Andrii V., Andriy O. Semenov, Natalia Kryvinska, Olena O. Semenova, Volodymyr P. Kvasnikov, and Andrii P. Safonyk. 2020. "Strapdown Inertial Navigation Systems for Positioning Mobile Robots—MEMS Gyroscopes Random Errors Analysis Using Allan Variance Method" Sensors 20, no. 17: 4841. https://doi.org/10.3390/s20174841

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