FPGA implementation of an improved envelope detection approach for bearing fault diagnosis

This study presents an enhanced envelope detection technique implemented on a field-programmable gate array (FPGA) to diagnose bearing faults in rotating machinery. Bearing faults frequently result in machinery breakdowns, incurring substantial downtime and maintenance expenses. In our approach, we employ the Teager energy operator (TEO) to extract the vibration signal envelope. Subsequently, we subject the envelope signal to the fast Fourier transform (FFT) to generate the envelope spectrum of the vibration signal. Finally, we further refine the envelope spectrum using TEO for a second time, resulting in a pronounced fault peak that facilitates early fault detection. We evaluate the effectiveness and performance of the proposed method using two distinct types of bearing vibration signals, one being simulated and the other measured. Our findings reveal that the suggested approach outperforms traditional envelope detection methods, leading to a substantially enhanced fault diagnosis capability. For instance, when we assess the characteristic frequency ratio (FCFR) for faults in the inner and outer rings of the bearing using the proposed method, we observe that the FCFR values are significantly elevated, ranging from 160 to 330% higher compared to the analysis performed by the TEO and HT methods. Consequently, this indicates that the proposed approach has the ability to detect faults at an earlier stage than other methods. Furthermore, the FPGA-based implementation makes it suitable for critical industrial applications where rapid fault detection is essential to prevent catastrophic failures.


Introduction
The crucial role of rotating machines is played by bearings, and they are frequently the primary origin of malfunctions.An emphasis on outer and inner ring faults is placed, as a statistical study has revealed that 90% of failures in rolling element bearings are ascribed to them.Therefore, it is imperative to ensure that bearings are continuously monitored and diagnosed for the sake of effective maintenance [1,2].
Numerous techniques are used for diagnosing bearing faults, including current and temperature monitoring, acoustic and vibration analysis, and noise surveillance [3].
Vibration measurement is the most effective, capable of detecting, locating, and distinguishing various defects [4].Diagnosing bearing defects relies on a range of signal-processing techniques that are employed to extract fault characteristics from the bearings.These approaches encompass all possible scenarios, including straightforward cases involving single defects and constant rotation speeds, as well as more complex situations featuring multi-faults under varying speed conditions [5].
Nonetheless, envelope detection (ED) has proven to be particularly effective in the realm of bearing fault detection over time.This efficacy stems from the fact that envelope signals offer considerably more diagnostic insight compared to raw signals, as highlighted by Tandon and Choudhury [6].Randall and Antoni have provided comprehensive reviews of ED methods, further emphasizing their significance in the field [7].Guo et al. introduced a method using an envelope spectrum and support vector machine for fault classification, establishing a foundation for subsequent research [8].Pan and Tsao focused on the crucial role of selecting appropriate intrinsic mode functions for envelope analysis, emphasizing their significance in improving fault diagnosis accuracy [9].Tyagi and Panigrahi advanced the field by incorporating particle swarm optimization to enhance envelope detection, optimizing parameters for more precise fault diagnosis [10].Gałęzia et al. explored the combined Teager-Kaiser envelope, combining techniques to potentially achieve more robust and reliable results in bearing fault diagnosis [11].Collectively, these works demonstrate a progression in envelope detection techniques, incorporating various methods and optimization approaches to improve the rolling bearing fault diagnosis.
This study proposes and implements a novel approach on an FPGA (Field-Programmable Gate Array) using the Teager energy operator (TEO) for detecting bearing defects through envelope detection of vibration signals.The TEO, introduced by H. M. Teager in 1983 for speech analysis [12], calculates and tracks the energy of a signal while extracting its instantaneous frequency and amplitude (signal envelope).This method's effectiveness is compared with that of the conventional Hilbert transform, a widely employed for envelope detection.The severity and identification of the fault involves analyzing the fault's characteristic frequencies in the envelope spectrum, which is referred to as the fault characteristic frequency ratio (FCFR).The TEO stands out for its ability to operate within a short-time window, relying only on three consecutive points of a signal.Moreover, its mathematical definition is simple, requiring only basic operations such as subtraction and multiplication, making it suitable for hardware or software implementations in real-time systems [13,14].
FPGA-based implementations offer several advantages in terms of power consumption and speed compared to other platforms.FPGAs can be dynamically reconfigured either globally or partially, allowing for flexibility based on specific requirements.While there are various development tools available for FPGA programming, it is widely recognized that programming FPGAs directly using VHDL or similar languages is a complex and time-consuming process.To expedite the design process, we opted for the convenient and efficient tool called system generator, which is a branch of the Xilinx library accessible through Matlab Simulink.This tool allows for the automatic transformation of a model constructed using Xilinx library blocks into a VHDL-based model.Subsequently, the VHDL model can be converted into a bitstream file and easily downloaded to the target FPGA using the Vivado Design Suite [15].This paper's structure is as follows: Section 2 introduces the concept of diagnosing bearing faults and discusses several signal processing methods that utilize vibration signals to extract fault characteristics.These methods include the Teager energy operator, Hilbert transformation, and FCFR.In Section 3, the paper validates and compares the suggested approach with other envelope-based detection techniques using both synthetic and real vibration signal data.Furthermore, Section 3 provides a detailed description of the FPGA implementation of the proposed method, utilizing the Xilinx system generator (XSG).The paper is ultimately concluded in Section 4.

Characteristic frequencies of bearing faults
A bearing is a mechanical component that facilitates smooth movement and reduces friction between two or more parts in a machine or system.Essential bearing components comprise the outer and inner ring, along with balls and a cage.Each bearing component has a specific frequency ( BPFI, BPFO, BSF and FTF ), which depends on ball bearing parameters ( F is the rotating frequency, N is the number of balls, P is the pitch diameter, B is the ball diameter, and α is the contact angle).Figure 1 shows all the con- stituents of the bearing, whereas Table 1 presents the fundamental frequencies of the bearing as documented in references [16] and [17].

System description and bearing database
This research employs an experimental dataset of vibration signals from various defective bearing components, gathered by Case Western Reserve University [18].The test data comprises various conditions encompassing both normal and faulty bearing measurements.Examples of these conditions include bearing categories (FE: 6203-2RS JEM SKF and DE: 6205-2RS JEM SKF), motor speeds (1730, 1750, 1772, and 1797 rpm), dynamometer/load settings (0, 1, 2, and 3 HP), and fault sizes (0.1778, 0.3556, and 0.5334 mm), among others.
Figures 2a, 3a, and 4a display vibration signals of an undamaged bearing, a bearing with a fault in its outer ring, and a bearing with a fault in its inner ring.These signals were taken from a motor with no load operating at 1797 rpm, using a sample frequency of 12 kHz and specific bearing specifications (B = 7.94 mm, N = 9, α = 0°, P = 39.04 mm) with a fault size of 0.36 mm.The related rotational frequency of the shaft is 29.95 Hz, whereas the frequency of the fault in the inner ring is calculated to be 162.19 Hz, and for the outer ring fault, it is 107.36Hz.These values were derived using the equations provided in Table 1.Similarly, Figs.2b, 3b, and 4b depict vibration signals for the same

Component frequencies Fundamental frequency formulae [Hz]
Ball-pass frequency at the inner ring ( BPFI) bearing specifications and sample frequency, but at a rotational speed of 1730 rpm and under a 3 HP motor load.In this case, the shaft frequency is F = 28.83Hz, while the outer ring fault frequency being f O = 103.36Hz, and the inner ring fault frequency measuring f i = 156.14Hz.

Envelope detection
Envelope detection is a fundamental process in signal processing used to extract the varying magnitude or envelope of a modulated signal, which helps in visualizing and analyzing signal characteristics, particularly in time-varying or dynamic signals.By tracking the envelope variations, it becomes easier to observe patterns, trends, and important features of the signal, which aids in signal processing, diagnostics, or system monitoring.Envelope detection finds applications in various fields allowing for accurate and realtime analysis of signals in various applications, including wireless communication, audio processing, vibration signal analysis, and many more.The various methods of envelope detection include peak detection, quadrature detection, Hilbert transform, and RMS detection [17,19,20].
It is important to underline that the selection of the envelope detection method is contingent on the particular application, the intended effectiveness of the detection process, and the characteristics of the modulated signal.

Hilbert transformation, instantaneous frequency, and amplitude
The research community in the field of vibration analysis has shown significant interest in the Hilbert transform (HT) and its applications over the past 30 years [17].The HT is a mathematical operation that involves convolving the signal s(t) with (1/π t) .This transformation has been extensively studied and applied in various applications related to vibration analysis.Mathematically, it can be expressed as follows: The analytical signal s a (t) includes a real part s(t) and imaginary part s h (t) , then s a (t) = s(t) + js h (t) .An alternate representation of the analytic signal in polar form is expressed as s a (t) = a(t)e jϕ (t) .Consequently, three quantities can defined from this (1)  form, the first quantity is instantaneous amplitude , and the second is instantaneous phase ϕ(t) = arctan{s h (t)/s(t)} and finally instantaneous frequency in [Hz] f (t) = (dϕ/dt)/2π .A significant property of the Hilbert transform is that the instantaneous frequency and instantaneous amplitude at all times converge to the most important amplitude component (if the signal is a multicomponent) [21].

Basic concepts of Teager energy operator (TEO)
The TEO is a signal processing technique that provides useful features for analyzing signals.It provides valuable features for signal analysis, including energy calculation, instantaneous frequency estimation, signal envelope extraction, and robustness to noise.Its applications span various domains, and its implementation is feasible in real-time systems.The basic concept of TEO is to calculate and track the signal's total energy and find its instantaneous frequency and amplitude [11].The TEO can be classified into three versions: continuous, discrete, and generalized.The continuous version is defined as follows: where s(t) a continuous signal, ṡ(t) its first derivative, and s(t) its second derivative.The discrete version is defined as follows: Equation (3) requires only three consecutive points ( m − 1 , m , and m + 1 ) and involves two basic operations, subtraction, and multiplication.As a result, it can be easily implemented in microcontrollers, microprocessors, or FPGAs due to its minimal memory storage requirements.The generalized form of the TEO can be derived by substituting "1" with the integer value P > 1 in the discrete version of the TEO (Eq.( 3)).This yields the following equation: where P is named the lag parameter [21].
For example, the energy operator TEO of a continuous-time sinusoidal function Acos(ωt) is given by the following equation: where A 2 ω 2 is the estimated instantaneous energy and ω and A are the frequency and amplitude, respectively [13,14].

Fault characteristic frequency ratio " FCFR"
Various methods exist for assessing the fault characteristic frequency, including kurtosis, correlation coefficient, and Shannon entropy principle [22].However, this paper focuses on using the FCFR to automatically evaluate the occurrence and severity of faults.The (2) FCFR denoted as R f c in Eq. ( 6) and provides a reliable means of estimating fault frequen- cies and assessing their severity in the analyzed signals.
where Env is the envelope spectrum obtained by TEO , and M is the envelope spectrum length, and f c is the fault characteristic frequency (replacing with f i for the frequency characteristic of inner ring fault, or with f o for the frequency characteristic of outer ring fault).A basic analysis states that the majority of details are present within the initial three harmonics of the envelope spectrum.As a result, focusing on the envelope spectra of these first three ranges is considerably adequate for optimal assessment [22].

Proposal of an improved TEO method for the bearing faults diagnosis
The process flow of the improved TEO (ITEO) method is illustrated in Fig. 5.It involves four key stages, which are: • Envelope detection: Employ the Teager energy operator (TEO), as defined in Eq. ( 3), to deduce Eq. ( 7), which serves the purpose of extracting the envelope, denoted as s d [m] from the bearing vibration signal s[m].
• Envelope spectrum analysis: In the context of envelope spectrum analysis, a key step involves the application of the fast Fourier transform ( FFT ) operator to the signal . This operation is performed to derive the envelope spectrum, denoted as S d [k] , as outlined in Eq. ( 8)

Applications and results
To confirm ITEO's effectiveness in detecting bearing faults, two signal types are employed: simulated and measured.The results obtained from applying the ITEO procedure are compared with the results obtained from applying TEO and Hilbert transform to assess its performance.Furthermore, the ITEO procedure is implemented in an FPGA circuit for practical application.

Application on simulation signals
A simulated signal is composed of two components: the shaft vibration signal denoted as v s (t) and the fault vibration signal known as v f (t) .First, the shaft vibra- tion signal is expressed as v s (t) = Acos 2π f r t , where A represents the ampli- tude, and f r represents the frequency.Second, the fault vibration is given by v f (t) = ∞ k=0 Be −α(t−kT c ) sin 2π f n (t − kT c ) , where B represents the amplitude, f c = 1/T c represents the frequency of vibration fault, f n represents the resonance fre- quency, and α represents the attenuation constant.According to [22,23], and [24], the fault vibration signal is generated utilizing the subsequent equation: n(t) denotes Gaussian white noise.
The parameters for creating simulated signals related to inner ring fault ( x in (t) ) and outer ring fault ( x out (t) ) are presented in Table 2. Figure 6a and b show the waveform (8) of x in (t) with and without noise, respectively, while Fig. 6c displays the spectrum of x in (t) with noise.Notably, the characteristic frequency of inner ring faults is not vis- ible in the spectrum.Similarly, Fig. 7a and b depict the waveform of x out (t) with and without noise, respectively, and the spectrum of x out (t) with noise is shown in Fig. 7c.In this context, the characteristic frequency associated with outer ring faults is also not observable within the spectrum [25].
In Fig. 8, the envelope spectrum obtained from the suggested approach, ITEO, is compared with other methods based on envelope analysis (HT and TEO).
The amplitudes of the first harmonic in the envelope spectra obtained by applying the HT, TEO, and improved Teager energy operator (ITEO) to the signals x in (t) and x out (t) are shown in Fig. 9a and b, respectively.Likewise, Fig. 10 illustrates the magni- tudes of the initial three harmonics in the envelope spectra derived from applying the three different methods.Figures 9 and 10 demonstrate that the proposed approach significantly increases the magnitude of the fault frequency.
The effectiveness of the proposed approach is presented in Table 3, where FCFR outcomes for x in (t) and x out (t) are provided using three distinct techniques: HT, TEO, and ITEO.This highlights the superiority of the suggested method, even surpassing the widely recognized HT technique often employed in bearing diagnostics.
Table 3 presents the FCFR results for x in (t) and x out (t) achieved using three differ- ent methods: HT, TEO, and ITEO.The table clearly demonstrates the effectiveness of the proposed approach, surpassing even the well-known HT method commonly used in bearing diagnostics.This superiority is evident through significantly higher FCFR values compared to the other methods.Additionally, the larger FCFR indicator indicates Fig. 8 Envelope spectra of x in (t) and x out (t) obtained using a Hilbert transform, b TEO, and c ITEO methods Fig. 9 Amplitudes of the first harmonic of each envelope spectra obtained by applying HT, TEO and ITEO on a x in (t) and b x out (t) Fig. 10 Amplitudes of the initial three harmonics in the envelope spectra obtained by applying HT, TEO, and ITEO on a x in (t) and b x out (t) a stronger ability to extract faults, further highlighting the advantages of the proposed approach ITEO.

Application on experiment signals
As in the preceding section, we applied the three methods to the measured signals S1 in from the bearing containing fault within its inner ring.and S1 out from the bearing con- taining fault within its outer ring shown in Figs.4b and 5b, respectively.Tables 5 and 6 describe the properties of S1 in and S1 out , respectively.While Figs. 11a and 12a display their respective spectra.The Figs. 11b-d and 12b-d show the envelope spectra of S1 in and S1 out respectively, obtained using the HT, TEO, and ITEO methods.
Table 4 presents the FCFR values of S1 in and S1 out obtained using the three previous methods.Notably, the table highlights the superior efficacy of the ITEO method in contrast to the alternative approaches.Moreover, the effectiveness of the suggested approach is confirmed through the validation process using a multitude of experimental vibration signals acquired from faulty bearings in diverse states, gathered by WCRU [9].These signals are categorized into two subsets: the first set includes vibration signals from bearings afflicted with inner ring defects, while the second set encompasses signals from bearings afflicted with outer ring faults.The respective data is presented in Table 5 and 6.The sampling frequency for all the collected data is 12 kHz.The ITEO method demonstrates significantly higher FCFR values compared to other methods, indicating its effective detection of outer ring and inner ring faults by significantly increasing the amplitude for the 20 analyzed cases.Consequently, the average FCFR value of these signals obtained by ITEO is between 160 and 330% higher than that obtained by TEO and HT methods.Figure 13a and b graphically depict the FCFR results obtained by different methods (ITEO, HT, and TEO) for signals with inner ring faults ( S1 in to S12 in ) and signals with outer ring faults ( S1 out to S8 out ), respectively.

Co-simulation
In this section, we employed Matlab/Simulink with Xilinx System Generator (XSG) to implement the ITEO method on the ZYNQ FPGA board.The hardware implementation design flow using XSG is shown in Fig. 14.We utilized Vivado System Generator    2018.2 and Matlab version 2018a for this purpose.In software co-simulation, the connection of Xilinx blocks occurs through two interfaces known as "Gateway In" and "Gateway Out." These interfaces serve as input and output, respectively, for the hardware design.Figure 15 shows the ITEO method, constructed using standard XSG blocks.

Implementation results
Figure 16 illustrates the block diagram of the hardware architecture for diagnosing bearing faults using ITEO.The hardware architecture is constructed from a dual set of block categories: the first type is composed of blocks acquired from the library of Xilinx IP core, while the second type is made up of personalized IP cores incorporated as co-processing units within the suggested design.For instance, the TEO block, which is crucial for the diagnosis, is a personalized IP-core specifically developed for this system and added to the design.
To validate the proposed architecture, it is tested using the measured signal S1 IR obtained from bearing with an inner ring defect.The test results, shown in Fig. 17b, exhibit similarity to the previously obtained results (Fig. 17a).

Resource estimation
A summary of the synthesis and implementation outcomes for the ITEO technique is presented in Table 7.The outcomes show that the DSP slices are the sole component reaching 75% utilization of the available resources.Additionally, the architecture efficiently uses other FPGA resources, with 49% of the LUT resources, 62% of the BRAM blocks, 37% of the FF blocks, 3% of BUFG blocks, and 31% of LUTRAM blocks being utilized.These utilization percentages demonstrate that the design is well-balanced in terms of logic, memory, and clock distribution resources.

Conclusions
This study presented a new approach for envelope detection in bearing vibration signals using the Teager energy operator.The proposed approach was compared to the traditional Hilbert method to evaluate its effectiveness.The results demonstrated that the Teager energy operator-based approach outperformed the Hilbert method in terms of early and reliable bearing fault detection.Furthermore, the implementation of this new approach on an FPGA platform highlighted its practicality and efficiency in real-time applications.The FPGA implementation provided faster processing times and lower power consumption compared to other platforms.
We acknowledge that this study, like any research, has certain limitations.One such limitation pertains to the necessity for prior knowledge of characteristic defect frequencies.This constraint may offer opportunities for resolution in future investigations.Nevertheless, our research significantly contributes to the improvement of machinery health monitoring and the enhancement of predictive maintenance practices.

Fig. 1
Fig. 1 Geometry and parts of ball bearing

Fig. 2 Fig. 3
Fig. 2 Vibration signals from a Normal bearing installed on a motor exhibiting the following features: a speed = 1797rpm and load = 0HP , b speed = 1730rpm , and load = 3HP

Fig. 4
Fig. 4 Vibration signals from a bearing with inner ring fault installed on a motor exhibiting the following features: a speed = 1797rpm and load = 0HP and b speed = 1730 rpm and load = 3 HP

Fig. 5
Fig. 5 Block diagram for bearing fault detection using ITEO

Fig. 11 a
Fig. 11 a Amplitude spectrum of S1 in , b the envelope spectrum of S1 in obtained using HT, c TEO, and d ITEO

Fig. 12 a
Fig. 12 a Amplitude spectrum of S1 out , b envelope spectrum of the signal S1 out obtained using HT, c TEO, and d ITEO

Fig. 13 FCFR
Fig. 13 FCFR obtained by different methods (ITEO, HT, and TEO) of a signals with inner ring faults ( S1 in to S12 in ) and b signals with outer ring faults ( S1 out to S8 out )

Fig. 15
Fig. 15 System generator implementation of ITEO method

Fig. 17
Fig.17 Envelope spectrum of S1 IR obtained using a the ITEO method under Matlab and b FPGA implementation of the ITEO method

Table 2
Parameters of the simulated signals x in (t) and x out (t) o = 100 Fig. 6 a Temporal representation of x in (t) without noise, b temporal representation of x in (t) without noise x in (t) (SNR = − 12 dB), c frequency representation of x in (t) with noise Fig. 7 a Temporal representation of x out (t) without noise, b temporal representation of x out (t) without noise x out (t) (SNR = − 12 dB), and c frequency representation of x out (t) with noise

Table 3
FCFR of x in (t) and x out (t) , using three envelope detection methods

Table 4
FCFR of S1 in and S1 out using HT, TEO, and ITEO methods

Table 6
FCFRof signals with outer ring faults ( S1 out to S8 out ), obtained through diverse methods

Table 7
Implementation results of the ITEO method