Skip to main content

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.


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\mathrm{\,is\,the\,number\,of\,balls},\,P\) is the pitch diameter, \(B\) is the ball diameter, and \(\alpha\) is the contact angle). Figure 1 shows all the constituents of the bearing, whereas Table 1 presents the fundamental frequencies of the bearing as documented in references [16] and [17].

Fig. 1
figure 1

Geometry and parts of ball bearing

Table 1 Characteristic frequencies of each bearing component

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.36 Hz. These values were derived using the equations provided in Table 1. Similarly, Figs. 2b, 3b, and 4b depict vibration signals for the same 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.83 Hz\), while the outer ring fault frequency being \({f}_{O}=103.36 Hz\), and the inner ring fault frequency measuring \({f}_{i}=156.14Hz\).

Fig. 2
figure 2

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

Fig. 3
figure 3

Vibration signals from a bearing with outer ring fault installed on a motor exhibiting the following features: a \(speed =1797 rpm\) and \(load = 0 HP\), b speed = 1730 rpm, and load = 3 HP

Fig. 4
figure 4

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

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 real-time 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\left(t\right)\) with \(\left(1/\pi t\right)\). This transformation has been extensively studied and applied in various applications related to vibration analysis. Mathematically, it can be expressed as follows:

$${s}_{h}\left(t\right)=HT\left\{s(t)\right\}=s\left(t\right) *\left(1/\pi t\right)={\pi }^{-1}{\int }_{-\infty }^{+\infty }\frac{s\left(\tau \right)}{t-\tau }d\tau$$

The analytical signal \({s}_{a}\left(t\right)\) includes a real part \(s\left(t\right)\) and imaginary part \({s}_{h}\left(t\right)\), then \({s}_{a}\left(t\right)= s\left(t\right)+j{s}_{h}\left(t\right)\). An alternate representation of the analytic signal in polar form is expressed as \({s}_{a}\left(t\right)=a\left(t\right){e}^{j \varphi \left(t\right)}\). Consequently, three quantities can defined from this form, the first quantity is instantaneous amplitude \(A\left(t\right)=\left|{ s}_{a}\left(t\right)\right|=\sqrt{{ s}^{2}\left(t\right)+{\mathrm{ s}}_{h}^{2}\left(t\right)}\), and the second is instantaneous phase \(\varphi \left(t\right)=arctan\left\{{ s}_{h}\left(t\right)/s(t)\right\}\) and finally instantaneous frequency in \([Hz]\) \(f\left(t\right)=\left(d\varphi /dt\right)/2\pi\). 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:

$${\Psi }_{c}\left( s\left(t\right)\right)={\left\{\dot{s}\left(t\right)\right\}}^{2}- s\left(t\right)\cdot \ddot{s}\left(t\right)$$

where \(s\left(t\right)\) a continuous signal, \(\dot{s}\left(t\right)\) its first derivative, and \(\ddot{s}\left(t\right)\) its second derivative. The discrete version is defined as follows:

$${\Psi }_{d}\left[s\left[m\right]\right]={s}^{2}\left[m\right]-s\left[m-1\right]\cdot s\left[m+1\right]$$

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:

$${\Psi }_{g}\left(s\left[n\right]\right)={s}^{2}\left[m\right]-s\left[m-P\right]\cdot s\left[m+P\right]$$

where \(P\) is named the lag parameter [21].

For example, the energy operator TEO of a continuous-time sinusoidal function \(Acos\left(\omega t\right)\) is given by the following equation:

$$\begin{aligned}{\Psi }_{c}\left( s\left(t\right)\right)&={\left\{-A\omega sin\left(\omega t\right)\right\}}^{2}- Acos\left(\omega t\right)\cdot \left\{-A{\omega }^{2}cos\left(\omega t\right)\right\}\\&={A}^{2}{\omega }^{2}\left\{{sin}^{2}\left(\omega t\right)+ {cos}^{2}\left(\omega t\right)\right\}\\&={A}^{2}{\omega }^{2} \end{aligned}$$

where \({A}^{2}{\omega }^{2}\) is the estimated instantaneous energy and \(\omega\) 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 FCFR denoted as \({R}_{{f}_{c}}\) in Eq. (6) and provides a reliable means of estimating fault frequencies and assessing their severity in the analyzed signals.

$${R}_{{f}_{c}}=\left({\sum }_{i=1}^{m}\left|Env\left(i\cdot {f}_{c}\right)\right|\right)/\left(\left(\frac{1}{M}\right){\sum }_{i=1}^{M}\left|Env\left(i\cdot f\right)\right|\right)$$

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:

Fig. 5
figure 5

Block diagram for bearing fault detection using \(ITEO\)

  • 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}\left[m\right]\) from the bearing vibration signal \(s\left[m\right]\).

$${s}_{d}\left[m\right]={s}^{2}\left[m\right]-s\left[m-1\right]\cdot s\left[m+1\right]$$
  • 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 \({s}_{d}\left[m\right]\). This operation is performed to derive the envelope spectrum, denoted as \({S}_{d}\left[k\right]\), as outlined in Eq. (8)

$${S}_{d}\left[k\right]={\sum }_{m=0}^{M-1}{s}_{d}\left[m\right]\cdot {e}^{-j2\pi mk/M}$$
  • Improved envelope spectrum: Utilizing the Teager energy operator (TEO) directly on the envelope spectrum \({S}_{d}\left[k\right]\) serves to enhance the detection of bearing faults by emphasizing the characteristic pulse train. Subsequently, a second application of the TEO is carried out to derive the improved envelope spectrum denoted as \({S}_{e}\left[m\right]\), and this process unfolds as described below:

$${S}_{e}\left[m\right]={{S}_{d}}^{2}\left[m\right]-{S}_{d}\left[m-1\right]\cdot {S}_{d}\left[m+1\right]$$
  • Fault diagnosis using FCFR calculation: By utilizing Eq. (10), we calculate the FCFR for the improved envelope spectrum \({S}_{e}\left[m\right]\). The parameter \({R}_{{f}_{c}}\), computed across various characteristic frequencies \({f}_{c}\) (where \({f}_{c}\) corresponds to the inner ring fault, \({f}_{c}= {f}_{i}\), or the outer ring fault, \({f}_{c}= {f}_{o}\)), serves as a diagnostic indicator for bearing faults, including their presence and type.

$${R}_{{f}_{c}}=\left({\sum }_{i=1}^{3}\left|{S}_{e}\left(i\cdot {f}_{c}\right)\right|\right)/\left(\left(\frac{1}{M}\right){\sum }_{i=1}^{M}\left|{S}_{e}\left(i\cdot f\right)\right|\right)$$

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}\left(t\right)\) and the fault vibration signal known as \({v}_{f}\left(t\right)\). First, the shaft vibration signal is expressed as \({v}_{s}\left(t\right)=A{\text{cos}}\left(2\pi {f}_{r}t\right)\), where \({\text{A}}\) represents the amplitude, and \({f}_{r}\) represents the frequency. Second, the fault vibration is given by \({v}_{f}\left(t\right)=\sum_{k=0}^{\infty }B{e}^{-\alpha \left(t-k{T}_{c}\right)}{\text{sin}}\left(2\pi {f}_{n}\left(t-k{T}_{c}\right)\right)\), where \(B\) represents the amplitude, \({f}_{c}=1/{T}_{c}\) represents the frequency of vibration fault, \({f}_{n}\) represents the resonance frequency, and \(\alpha\) represents the attenuation constant. According to [22, 23], and [24], the fault vibration signal is generated utilizing the subsequent equation:

$$x\left(t\right)= {v}_{s}\left(t\right) + {v}_{f}\left(t\right)+ n\left(t\right)$$

\(n\left(t\right)\) denotes Gaussian white noise.

The parameters for creating simulated signals related to inner ring fault (\({x}_{in}\left(t\right)\)) and outer ring fault (\({x}_{out}\left(t\right)\)) are presented in Table 2. Figure 6a and b show the waveform of \({x}_{in}\left(t\right)\) with and without noise, respectively, while Fig. 6c displays the spectrum of \({x}_{in}\left(t\right)\) with noise. Notably, the characteristic frequency of inner ring faults is not visible in the spectrum. Similarly, Fig. 7a and b depict the waveform of \({x}_{out}\left(t\right)\) with and without noise, respectively, and the spectrum of \({x}_{out}\left(t\right)\) 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].

Table 2 Parameters of the simulated signals \({x}_{in}\left(t\right)\) and \({x}_{out}\left(t\right)\)
Fig. 6
figure 6

a Temporal representation of \({x}_{in}\left(t\right)\) without noise, b temporal representation of \({x}_{in}\left(t\right)\) without noise \({x}_{in}\left(t\right)\) (SNR =  − 12 dB), c frequency representation of \({x}_{in}\left(t\right)\) with noise

Fig. 7
figure 7

a Temporal representation of \({x}_{out}\left(t\right)\) without noise, b temporal representation of \({x}_{out}\left(t\right)\) without noise \({x}_{out}\left(t\right)\) (SNR =  − 12 dB), and c frequency representation of \({x}_{out}\left(t\right)\) with noise

In Fig. 8, the envelope spectrum obtained from the suggested approach, ITEO, is compared with other methods based on envelope analysis (HT and TEO).

Fig. 8
figure 8

Envelope spectra of \({x}_{in}\left(t\right)\) and \({x}_{out}\left(t\right)\) obtained using a Hilbert transform, b TEO, and c ITEO methods

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 }\left(t\right)\) and \({x}_{out}(t)\) are shown in Fig. 9a and b, respectively. Likewise, Fig. 10 illustrates the magnitudes 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.

Fig. 9
figure 9

Amplitudes of the first harmonic of each envelope spectra obtained by applying HT, TEO and ITEO on a \({x}_{in}\left(t\right)\) and b \({x}_{out}\left(t\right)\)

Fig. 10
figure 10

Amplitudes of the initial three harmonics in the envelope spectra obtained by applying HT, TEO, and ITEO on a \({x}_{in}\left(t\right)\) and b \({x}_{out}\left(t\right)\)

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 \(FCFR\) of \({x}_{in}\left(t\right)\) and \({x}_{out}\left(t\right)\), using three envelope detection methods

Table 3 presents the \(FCFR\) results for \({x}_{in}(t)\) and \({x}_{out}(t)\) achieved using three different 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 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 containing 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.

Fig. 11
figure 11

a Amplitude spectrum of \({S1}_{in}\), b the envelope spectrum of \({S1}_{in}\) obtained using HT, c TEO, and d ITEO

Fig. 12
figure 12

a Amplitude spectrum of \({S1}_{out}\), b envelope spectrum of the signal \({S1}_{out}\) obtained using HT, c TEO, and d ITEO

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.

Table 4 \(FCFR\) of \({S1}_{in}\) and \({S1}_{out}\) using HT, TEO, and ITEO methods

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.

Table 5 \(FCFR\) of signals with inner ring faults (\({S1}_{in}\) to \({S12}_{in}\)), obtained through diverse methods
Table 6 \(FCFR\) of signals with outer ring faults (\({S1}_{out}\) to \({S8}_{out}\)), obtained through diverse methods
Fig. 13
figure 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}\))

FPGA implementation of the proposed ITEO method


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.

Fig. 14
figure 14

Hardware implementation of ITEO method using XSG

Fig. 15
figure 15

System generator implementation of ITEO method

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.

Fig. 16
figure 16

The ITEO-based architecture for bearing fault diagnosis

To validate the proposed architecture, it is tested using the measured signal \({S1}_{IR}\) obtained from the bearing with an inner ring defect. The test results, shown in Fig. 17b, exhibit similarity to the previously obtained results (Fig. 17a).

Fig. 17
figure 17

Envelope spectrum of \({S1}_{IR}\) obtained using a the ITEO method under Matlab and b FPGA implementation of the ITEO method

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.

Table 7 Implementation results of the ITEO method


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.

Availability of data and materials

The CWRU dataset utilized in this study is accessible for download from [9]. Any additional data generated or analyzed during the course of this research can be obtained from the corresponding author.



Teager energy operator


Improved Teager energy operator


Fast Fourier transform


Hilbert transform


Root mean square


Fault characteristic frequency ratio


Ball-pass frequency at the inner ring


Ball-pass frequency at the outer ring


Ball-spin frequency


Fundamental train frequency


Case Western Reserve University


Field-programmable gate array


Very high-speed integrated circuit hardware description language


Xilinx system generator


  1. Xu F, Ding N, Li N, Liu L, Hou N, Xu N, Guo W, Tian L, Xu H, Lawrence Wu C-M, Wu X, Chen X (2023) A review of bearing failure modes, mechanisms and causes, engineering failure analysis.

    Book  Google Scholar 

  2. Rubini R, Meneghetti R (2001) Application of the envelope and wavelet transform analyses for the diagnosis of incipient faults in ball bearings. Mech Syst Signal Process 15(2):287–302.

    Article  Google Scholar 

  3. Zhang Y, Ren G, Wu D, Wang H (2021) Rolling bearing fault diagnosis utilizing variational mode decomposition based fractal dimension estimation method. Measurement 181:109614.

    Article  Google Scholar 

  4. Tingarikar G, Choudhury A (2021) Vibration analysis—based fault diagnosis of a dynamically loaded bearing with distributed defect. Arab J Sci Eng 47(7):8045–8058.

    Article  Google Scholar 

  5. Zhao D, Li J, Cheng W, Wen W (2023) Bearing multi-fault diagnosis with iterative generalized demodulation guided by enhanced rotational frequency matching under time-varying speed conditions. ISA Trans 133:518–528. ISSN 0019-0578

    Article  Google Scholar 

  6. Tandon N, Choudhury A (1999) A review of vibration and acoustic measurement methods for the detection of defects in rolling element bearings. Tribol Int 32:469–480

    Article  Google Scholar 

  7. Randall RB, Antoni J (2011) Rolling element bearing diagnostics—a tutorial. Mech Syst Signal Process 25:485–520

    Article  Google Scholar 

  8. Guo L, Chen J, Li X (2009) Rolling bearing fault classification based on envelope spectrum and support vector machine. J Vib Control 15(9):1349–1363.

    Article  Google Scholar 

  9. Pan MC, Tsao WC (2013) Using appropriate IMFs for envelope analysis in multiple fault diagnosis of ball bearings. Int J Mechanical Sci 69:114–124

    Article  Google Scholar 

  10. Tyagi S, Panigrahi SK (2017) An improved envelope detection method using particle swarm optimisation for rolling element bearing fault diagnosis. J Comput Des Eng 4(4):305–317.

    Article  Google Scholar 

  11. Gałęzia A, Gryllias K (2021) Application of the combined Teager-Kaiser envelope for bearing fault diagnosis. Measurement 182:109710. ISSN 0263-2241

    Article  Google Scholar 

  12. Teager HM, Teager SM (1983) A phenomenological model for vowel production in the vocal tract, ch. 3. College-Hill Press, San Diego, CA, p 3

    Google Scholar 

  13. Kaiser JF (1993) Some useful properties of Teager's energy operators, IEEE International Conference on Acoustics, Speech, and Signal Processing, Minneapolis, MN, USA, vol. 3, pp. 149-152.

  14. Maragos P, Kaiser JF, Quatieri TF (1993) On amplitude and frequency demodulation using energy operators, in IEEE Transactions on Signal Processing, vol. 41, no. 4, pp. 1532-1550.

  15. Xilinx (2022) Vivado Design Suite User Guide Release Notes, Installation, and Licensing (UG973).

  16. Smith WA, Randall RB (2015) Rolling element bearing diagnostics using the case Western reserve university data: a benchmark study. MechSyst Signal Process.

  17. Randall RB, Antoni J (2011) Rolling element bearing diagnostics—a tutorial. Mech Syst Signal Process 25(2):485–520. ISSN 0888-3270

    Article  Google Scholar 

  18. Case Western reserve university bearing data center website (date of the last access is 4 August 2023):

  19. Bonnardot F, Randall RB, Antoni J (2004) Enhanced unsupervised noise cancellation using angular resampling for planetary bearing fault diagnosis. Int J Acoust Vib 9(2):51–60

    Google Scholar 

  20. Sheen Y-T (2008) An envelope detection method based on the first-vibration-mode of bearing vibration. Measurement 41(7):797–809.

    Article  Google Scholar 

  21. Feldman M (2011) Hilbert transform in vibration analysis. Mechanical Systems and Signal Processing 25(3):735–802.

  22. Deng M, Deng A, Zhu J, Zhai Y, Sun W, Chen Q, Liu Y (2019) Bandwidth fourier decomposition and its application in incipient fault identification of rolling bearings. MeasSci Technol.

  23. Wan S, Zhang X (2018) Teager energy entropy ratio of wavelet packet transform and its application in bearing fault diagnosis. Entropy 20(5):388.

    Article  Google Scholar 

  24. Wang D, Peter WT, Yiu LT (2012) A morphogram with the optimal selection of parameters used in morphological analysis for enhancing the ability in bearing fault diagnosis. Meas Sci Technol 23(6):065001.

    Article  Google Scholar 

  25. Rebiai M, Ould Zmirli M, Bengherbia B et al (2023) Faults diagnosis of rolling-element bearings based on fourier decomposition method and Teager energy operator. Arab J Sci Eng 48:6521–6539.

    Article  Google Scholar 

Download references


Not applicable.


No funding was received by the authors for the preparation of this manuscript.

Author information

Authors and Affiliations



MR contributed to the article through ideation, data analysis, theoretical framework, simulations, and preparation of the manuscript. BB reviewed and edited the paper. MM reviewed and supervised the work. YT assisted with writing and editing. All authors have read and approved the final manuscript.

Corresponding author

Correspondence to Mohamed Rebiai.

Ethics declarations

Competing interests

The authors declare that they have no competing interests.

Additional information

Publisher’s Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Open Access This article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit The Creative Commons Public Domain Dedication waiver ( applies to the data made available in this article, unless otherwise stated in a credit line to the data.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Rebiai, M., Bengharbia, B., Maazouz, M. et al. FPGA implementation of an improved envelope detection approach for bearing fault diagnosis. J. Eng. Appl. Sci. 71, 3 (2024).

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: