1. Introduction
MEMS have become an important part of different navigation systems due to their small size, low cost, low power consumption, and high impact resistance, and they have been widely used in attitude control devices, unmanned aerial vehicles, robot navigation, and satellite systems. However, the MEMS inertial navigation devices’ disadvantage of having significant errors restricts their use in high-end fields. As a result, it is common to analyze the measurement errors of MEMSs and increase their output accuracy as much as feasible, so that they can be employed in high-end fields. The errors of MEMS inertial devices can be divided into deterministic errors and random errors. Deterministic errors mainly refer to zero-point offset, scale factor, etc., which can be improved through calibration tests [
1,
2]. While random errors have uncertainty and randomness [
3], which cannot be eliminated through calibration.
Random errors are a system noise-driven output that can be viewed as a non-smooth time series. Various methods have been proposed to reduce random errors, and the current methods for suppressing a single gyroscope fall into two main categories: conventional statistical methods, and artificial intelligence (AI) methods. The conventional statistical methods have been intensively studied by many scholars. There have been a large number of related studies and results, including wavelet denoising (WTD) [
4], empirical modal decomposition (EMD) [
5], Kalman filtering (KF) [
6], etc. The WTD method not only has good time-frequency localization and multi-resolution characteristics, but also does not require error modeling. Therefore, it is widely used in medical [
7] and mechanical systems [
8] for non-smooth signal processing, as well as in marine technology [
9]. However, the WTD method is essentially a Fourier transform with an adjustable window, so it still does not overcome the limitations of the Fourier transform, which is simple and less adaptable for handling at different scales. With the rapid development of artificial intelligence technology, it has been widely used in many fields, such as electric fluid power pumps [
10] and human–computer interaction [
11]. In particular, in MEMS error compensation technology, AI shows significant advantages. In order to establish a more accurate nonlinear model to cope with random errors, a variety of methods have appeared. For example, support vector machine [
12,
13,
14] modeling technology, neural network [
15,
16] modeling technology, and so on.
The raw gyroscope signal is processed as a time series in both statistical and artificial intelligence (AI) methods, and a model is either defined or trained to compensate for noise-induced errors. The performance of statistical methods is limited by the fixed model parameters and traditional AI methods have limited learning capabilities. Therefore, hybrid approaches are one of the most intuitive solutions for enhancing denoising performance. In [
17], wavelets and neural networks were combined for the offline processing of gyroscope signals. In [
18], UKF was merged with RNN for real-time filtering of gyroscope random errors. In [
19], the trend term of MEMS gyroscope data was first extracted using empirical modal decomposition (EMD), and then an adaptive Kalman filter (AKF) was used to compensate for the random errors of the MEMS gyroscope. These methods can model and compensate for the random errors as accurately as possible for a single gyroscope. However, the accumulated noise of MEMSs is large during long-term operation, and the current processing technology and fabrication process cannot reduce the system noise of MEMS gyroscopes well in a short time period [
20], and it is difficult to improve the output accuracy of a single gyroscope, so forming a single gyroscope into a gyro array [
21] and using a form of fusion filtering to improve its output accuracy has been the subject of research by academics both domestically and internationally in recent years.
MEMS arrays are digitally filtered and fused using multiple sensor data to obtain an optimal virtual MEMS output [
22,
23]. Chang et al. studied the signal fusion problem of gyroscope arrays based on simplified and typical models of gyroscopes [
24,
25,
26] and designed a system consisting of six gyroscopes. Song et al. designed redundant 3-gyro, 5-gyro, and 8-gyro systems [
27] and proposed an optimized filtering scheme for gyroscope array fusion to improve the fusion accuracy. Although it is becoming increasingly common to combine virtual gyro techniques with other filtering techniques, most studies are combined with conventional statistical methods, relatively few reports are combined with neural networks, and even fewer reports are based on hybrid methods to build more accurate models for real-time estimation and compensation of random errors in MEMS arrays.
In response to the above phenomenon, this paper adopts 10 MEMSs to form a complete array structure, in order to improve the output accuracy of a MEMS gyro array and system reliability for the purpose of research, for the random error of a single MEMS gyro to design a WT-BPNN hybrid filtering algorithm. At the same time, the support matrix method is used to fuse the array data. Finally, we successfully deployed the WT-BPNN hybrid filtering algorithm, as well as the support matrix fusion algorithm, in the MEMS array developed based on ZYNQ. In this process, the compensation of the random error of a single MEMS gyro became the top priority of the research. The WT-BPNN hybrid filtering algorithm is a hybrid filtering algorithm that directly combines wavelet threshold denoising and a BP neural network. First was the preprocessing process, where we utilized the wavelet threshold denoising technique to process the raw data, with the purpose of effectively separating the useful information and noise in the MEMS gyro data. Through this step, we successfully reduced the degree of discreteness of the original data, which provided a more stable and reliable data base for the subsequent training of the BPNN; second, the process of the BPNN compensating for the preprocessed data and the optimal network model were derived through multiple simulations and training. Thus, a fixed network model was obtained and encapsulated into a function written into the FPGA project. In order to verify the feasibility and validity of the model, online validation was performed. During the validation process, the RS422 serial protocol was used for communication, and the results showed that the model performed well in practical applications and achieved the expected results. The following are the main contributions of this paper:
Combination of wavelet and BPNN: The data output from an MEMS gyroscope has obvious random time-varying characteristics. Wavelet threshold denoising, as a fixed algorithm, is less flexible, while neural networks can analyze uncertain nonlinear systems more efficiently and improve the modeling accuracy of gyro drift through their own learning ability, without a priori information of the system model. Since BPNNs are more sensitive to data quality, this paper utilized wavelet threshold denoising to preprocess the data, which greatly improved the performance of the model.
BPNN improvements: First, based on the data characteristics of the MEMS array model, a suitable network structure was designed, using the minimum number of network layers, as well as the minimum number of neurons, to achieve the best compensation effect. Second, in order to reduce the problem of local minima of the BPNN, the additional momentum method was introduced to optimize it, because this has the effect of momentum, which helps the network to cross the local minima point in the parameter space.
Development of embedded systems: We wrapped the trained BPNN model into a function that was ported under the FPGA hardware project. The feasibility of the WT-BPNN hybrid filtering algorithm proposed in this paper was tested online in a variety of settings using the ZYNQ7010 model.
The remainder of this essay is organized as follows: The second part provides an overall description of the algorithmic system. The model of the neural network created through simulation is thoroughly explained in the third section. Part IV gives the online experimental results and the analysis based on field programmable gate array (FPGA). The fifth part concludes the paper.
2. Algorithm System Overview
The MEMS array random error compensation algorithm consists of three main parts: data acquisition, data processing, and data fusion, to achieve high-precision applications for low-precision gyros, as shown in
Figure 1.
A sensor array is a crucial technique for increasing the output precision of sensors. In order to increase output precision, 10 MEMSs were utilized in this study to construct a full array structure. The MEMS array arrangement was taken as a forward and reverse configuration, as illustrated in
Figure 2. The array provided us with an original dataset for BPNN model learning based on the additional momentum method, and the validation of the MEMS array random error compensation algorithm was performed in many different scenarios.
The random errors of a single MEMS gyroscope are
where
y is the gyro output,
is the input rate signal,
b is the bias drift caused by rate random wander (RRW)
, and n is the white noise of angular random wander (ARW). Extending this model to a 10-group gyroscope array, the virtual gyro is modeled as:
where Z =
, b =
,
, V =
.
In this study, we used wavelet threshold denoising to perform the first round of processing on the raw data output from the MEMS gyro array. Wavelet thresholding is a time-frequency domain transform that is capable of multi-scale transformation of the signal and noise reduction according to the distribution characteristics of the noise in the frequency domain, and divided into three parts to complete the operation, as shown in
Figure 3:
Decompose the original MEMS signal using wavelet transform, select the appropriate wavelet basis, determine the number of wavelet decomposition layers N, process the signal, and obtain the wavelet coefficients;
Selecting a suitable threshold function and processing the detail components to obtain new detail coefficients;
The wavelet reconstruction of the signal is performed based on the low-frequency coefficients in layer N of the wavelet decomposition and the high-frequency coefficients in layers 1 to N, after quantization to obtain the denoised MEMS signal.
Because of the diversity of wavelet basis functions, using different wavelet bases to analyze the same problem will produce different results, so the selection of the optimal wavelet base is a very important issue in practical applications. The wavelet basis chosen for this topic was Daubechier (dbN).
Selecting the appropriate wavelet threshold is the key to wavelet denoising, and the commonly used threshold functions can be divided into soft thresholding and hard thresholding, both of which are easy to use but have their drawbacks. Hard thresholding typically involves setting wavelet coefficients smaller than the threshold value to 0, while wavelet coefficients larger than the threshold value are left at their original values. This causes the function to discontinue, causing the signal to oscillate and have a lower smoothness than the previous signal, which may contain new noise and appear pseudo-Gibbs-like. The soft threshold shrinkage transform has better continuity, but the processed signal will cause distortion, such as edge blurring. To address the above problems, targeted improvements were made in this study, and the new thresholding function is
The improved threshold function is between soft and hard thresholding, which avoids the abovementioned shortcomings and greatly optimized the pre-processed data. This data were then used to train a BP neural network model based on the additional momentum method.
A BP neural network is a multilayer feedforward network trained through error backpropagation (referred to as error backpropagation), and its algorithm is called the BPNN algorithm, where the basic idea is to search for the optimal value in data using the gradient descent method. The BPNN algorithm includes two processes of signal forward propagation and error backpropagation; that is, calculating the error output in the direction from input to output, and adjusting the weights and thresholds in the direction from the output to the input. In forward propagation, the input information is first mapped to the hidden layer, and then operated using nonlinear transformation to produce the output signal, and if the actual output does not match the desired output, it is transferred to the backward propagation process of the error. The error back-propagation is used to back-propagate the output error through the hidden layer to the input layer-by-layer, and to apportion the error to all units in each layer, using the error signal obtained from each layer as the basis for adjusting the weights of each unit. By adjusting the linkage strength of the input nodes to the hidden layer nodes and the linkage strength of the hidden layer nodes to the output nodes, the input and output signal error values are adjusted according to the linkage strength threshold, so that the error decreases along the gradient direction, and the network parameters (weights and thresholds) corresponding to the minimum error are determined after repeated training and then saved.
Figure 4 depicts the three-layer structure of the BPNN: the input layer, hidden layer, and output layer. Where the input layer is known data and the output layer is used to output model predictions. The hidden layer can contain a single layer or multiple layers, and the most basic BPNN usually has only one hidden layer.
BPNNs are widely used in function approximation, pattern recognition, classification, and data compression.
A BPNN has the advantage of adaptive learning and can construct mathematical models after several autonomous learning and testing phases. The computational load of the BPNN is fully compatible with the high-rate processing of a gyro array output.
A BPNN has the abovementioned benefits, but because of the internal effect of the BPNN, it also has the drawbacks of sluggish convergence, limited convergence accuracy, and a propensity to fall into local minima when the network is operating. Owing to the problems of BPNNs, we introduced the method of additional momentum, so that it can cross these local minima to a great extent. This method allows the network to consider, not only the role of the error in the gradient, but also the influence of the changing trend on the error surface when revising its weights, and this improvement scheme is more advantageous in hardware applications than other algorithm improvements such as the introduction of the fruit fly algorithm, while the method is also more memory efficient. In this study, a value proportional to the previous weight change is added to each weight change, and a new weight change is generated according to the backpropagation method. The formula for weight adjustment with an additional momentum factor is
where
k is the number of trainings;
is the momentum factor, which took the value of 0.96 in this study.
This BPNN model that introduces an additional momentum method, not only improves the training efficiency compared to the traditional BPNN, but also jumps out of the local minima to find a better solution.The primary denoised data were modeled using a BPNN model based on the additional momentum method, and
Figure 5 depicts the process of training and adjusting the network’s parameters, which was a crucial step in this paper’s algorithm. The Allan variance was used to evaluate the network output data, and the evaluation took into account not only the Allan variance output curve but also the running time. The most suitable network for an engineering application was finally selected and deployed on a MEMS array hardware device.
We filtered most of the noise through wavelet threshold denoising and using a BPNN model based on the additional momentum method for an individual MEMS with random errors. For the processing of the remaining small portion of noise, we used the support matrix fusion method to improve the output accuracy.
The mutual support degree matrix between sensors is as follows:
The combined support function is
where
denotes the reliable decision of other gyroscopes on the
ith gyroscope. Consistency measure function:
5. Conclusions
In this paper, we conducted an in-depth study on the problem of improving the output accuracy of random errors of MEMS arrays, designed a WT-BPNN hybrid filtering algorithm, and deployed it in MEMS arrays developed based on ZYNQ, in which gyroscopes were taken as the main object of study. We realized the real-time and high-precision output of the gyro array in multiple scenarios on the hardware platform by learning and training from raw data. In terms of technical contribution, we proposed the WT-BPNN hybrid filtering algorithm, which preprocesses the data by wavelet thresholding and then compensates the data by utilizing a BPNN model based on the additional momentum method. Unlike with the research methods of most other scholars, in addition to combining the traditional algorithm with neural networks, we also applied it to MEMS arrays to further improve its output accuracy. We evaluated the proposed method on an original collected dataset, as well as on the MEMS array development board in our lab. During the laboratory tests, there was no phenomena such as data latency and good stability, and the output accuracy of the gyroscope was substantially improved when analyzing the measured data, which demonstrated the overall suitability of the algorithm of the project. Thus, this algorithm enables long-term stability and reliability of tracking and localization systems for outdoor multi-sensor devices.
However, this paper had the following limitations, the BPNN model based on the additional momentum method was encapsulated into a function written in the FPGA project, the training parameters were fixed, and due to the limitation of the laboratory equipment, we did not perform an in-depth study of the complex dynamic data, which caused some limitations in capturing all the dynamic data. Therefore, the method performed poorly in high-speed motion and irregular motion. In the future, we hope to conduct comprehensive training on static as well as various dynamic data, to obtain a more universal hybrid filter, optimize the model so that data changes in motion states can be captured quickly, and extend it to accelerometer applications.