Bearing signal fault diagnosis method and device based on FPGA
By implementing bearing signal fault diagnosis method on the FPGA platform, using neural network and isomerization processing technology, the problems of difficulty in extracting noise signal feature and large model parameters in traditional methods are solved, and efficient fault diagnosis and resource optimization are achieved.
Patent Information
- Application Number
- CN202311083999.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-08-28
- Publication Date
- 2025-02-28
AI Technical Summary
The existing bearing fault diagnosis methods are difficult to extract noise signal characteristics, large model parameters, and difficult to deploy to embedded platforms.
The bearing signal fault diagnosis method based on FPGA is adopted, and the data acquisition, analog-to-digital conversion, filtering and fault classification modules are realized on the ZYNQ platform through FPGA. The vibration signals after noise reduction are classified using neural networks, and the isomerization processing of the pooling layer and the convolutional layer can improve the computing efficiency and resource utilization.
It improves the speed of bearing vibration classification, reduces the demand for hardware resources, reduces power consumption, and has strong flexibility and adaptability.
Smart Images

Figure CN119533938A_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the field of industrial automation, and specifically relates to a bearing signal fault diagnosis method and device based on FPGA, which is applied to vibration signal collection and preprocessing of mechanical equipment to facilitate further processing of vibration data. Background Art
[0002] Rolling bearings are called "the joints of industry" in the industry because they are the key basic components of various types of machinery. Rolling bearings often operate in harsh working environments, so they are often vulnerable parts in large mechanical equipment. This damage will have a significant impact on the performance, stability and life of mechanical equipment. Many studies have shown that 40%-50% of rotating machinery failures are directly caused by rolling bearing failures. Therefore, in order to ensure the normal operation of mechanical equipment, it is very necessary to diagnose the status of rolling bearings in a timely and effective manner.
[0003] For bearing fault diagnosis, the traditional diagnosis method is to use bearing signal analysis and information processing technology to extract the characteristics of bearing signals, and then complete the identification of bearing faults on this basis. However, under normal circumstances, the bearing signals we take are often mixed with some other noises, which greatly increases the difficulty of extracting bearing fault characteristics. The traditional noise filtering method requires operators to have rich experience to achieve accurate noise reduction, which is difficult to meet the needs of bearing fault diagnosis under different working conditions. Therefore, more advanced technologies are needed to improve the accuracy and applicability of rolling bearing fault diagnosis.
[0004] In recent years, the rapid development of deep learning technology has led to its widespread application in rolling bearing fault identification. Compared with traditional methods, deep learning has the ability to process raw data under complex working conditions and can automatically learn complex feature representations. This feature enables deep learning methods to effectively solve the problem of complex feature extraction in signal processing and have better generalization capabilities. In actual working conditions, there are often many unexpected noises in the vibration signal, which poses a great challenge to traditional fault diagnosis methods. This is because noise can mask the fault characteristics of the bearing and lead to incorrect judgment results. The deep learning method can distinguish between noise and fault characteristics in the signal by learning a large number of data samples, thereby improving the accuracy of fault identification. Therefore, deep learning technology has broad application prospects in rolling bearing fault identification, which can effectively overcome the limitations of traditional methods and improve the reliability and applicability of fault diagnosis.
[0005] With the development of deep learning technology, various high-performance neural network models have been widely used in real-world scenarios. However, these models usually have high requirements for computing and storage resources, making it a challenge to deploy them on resource-constrained embedded devices. In order to resolve this contradiction, the present invention optimizes and accelerates the model from a software perspective.
[0006] Through software optimization, the computational complexity of the neural network model can be reduced and its demand for computing resources can be reduced. For example, techniques such as pruning and quantization can be used to reduce the number of parameters and the amount of computation in the model, thereby improving the usability of the model on embedded devices. In addition, model compression and acceleration algorithms such as distillation and lightweight network design can also be used to improve the computational efficiency of the model on embedded devices.
[0007] In addition, in order to address the problem of limited storage resources in embedded devices, model compression and storage technologies, such as parameter sharing and weight pruning, can be used to reduce the storage space occupied by the model. At the same time, technologies such as hardware accelerators and dedicated embedded neural network chips can also be used to improve the computational efficiency of the model.
[0008] In short, through software optimization and acceleration, limited computing and storage resources can be fully utilized, so that neural network models can better adapt to the environment of embedded devices and achieve efficient deployment in resource-constrained scenarios. This will bring more possibilities and development opportunities to various application fields. Summary of the invention
[0009] Based on the technical problems raised above, a bearing signal fault diagnosis method and device based on FPGA are proposed to solve the problems of existing bearing fault diagnosis methods in that it is difficult to extract noise fault features, the number of classification model parameters is large, and it is difficult to deploy on an embedded platform.
[0010] The technical solution adopted by the present invention to achieve the above-mentioned purpose is:
[0011] A bearing signal fault diagnosis device based on FPGA, the device is implemented on a ZYNQ platform through FPGA, comprising:
[0012] A data acquisition module, used for acquiring vibration simulation signals of bearing status through an acceleration sensor;
[0013] An analog-to-digital conversion module, used for converting a vibration analog signal into a vibration digital signal;
[0014] A filtering module is used to perform noise reduction processing on the vibration digital signal by using a least mean square algorithm;
[0015] The fault classification module is used to classify the noise-reduced vibration signal through a neural network, and obtain the diagnosis result of the bearing by isomorphic processing of the pooling layer and the convolution layer.
[0016] The filtering module comprises:
[0017] A data delay unit is used to control the time delay of the input signal to synchronize the signal;
[0018] The adaptive filtering module is used to filter out noise in the synchronization signal through a filtering algorithm.
[0019] The fault classification module comprises:
[0020] A feature extraction unit, used to extract features of the filtered vibration signal;
[0021] The signal classification unit is used to classify the extracted features and complete the bearing fault diagnosis.
[0022] The feature extraction unit comprises:
[0023] A convolution calculation unit, used to extract data features of the vibration signal based on set weight and bias parameters;
[0024] The maximum pooling unit is used to reduce the dimension of data features;
[0025] The fully connected unit is used to map the feature space after dimensionality reduction to the sample label space.
[0026] The feature extraction unit also includes:
[0027] An input vibration signal data buffer unit is used to receive and buffer the filtered vibration signal;
[0028] The parameter pre-storage unit is used to pre-store the set weight and bias parameters.
[0029] A bearing signal fault diagnosis method based on FPGA, comprising the following steps:
[0030] 1) The data acquisition module controls the acceleration sensor to collect vibration signals in real time, and transmits the collected bearing state vibration simulation signals to the analog-to-digital conversion module;
[0031] 2) The analog-to-digital conversion module converts the vibration analog signal into a vibration digital signal;
[0032] 3) The filtering module filters the vibration digital signal through an adaptive filtering algorithm;
[0033] 4) The fault classification module classifies the denoised vibration signal through a neural network, and obtains the diagnosis result of the bearing by isomorphic processing of the pooling layer and the convolution layer.
[0034] The step 4) comprises the following steps:
[0035] 4.1) The data cache unit receives and caches the vibration digital signal after filtering;
[0036] 4.2) The convolution calculation unit calls the vibration digital data and the weight parameters and bias parameters stored in advance to perform convolution calculation on the data, obtain the vibration signal features, and output them to the maximum pooling unit;
[0037] 4.3) The maximum pooling unit performs a maximum pooling operation on the vibration signal features;
[0038] 4.4) Repeat steps 4.1) to 4.3) until output feature data of a set length is obtained and stored in the DDR3 memory;
[0039] 4.5) The fully connected unit calls the mean obtained in the maximum pooling unit and the weight parameters and bias parameters of the fully connected layer from the DDR3 memory, and obtains the maximum fully connected output value as the classification result by horizontally comparing the calculation results of each channel.
[0040] The following steps are also included:
[0041] The display control module controls the display to output the corresponding signal classification according to the category represented by the classification result.
[0042] In the fault classification module, no back-propagation calculation is performed inside the FPGA. A training data set is obtained through Python, and a convolutional neural network is built through the Pytorch framework for network training. The optimal parameters of the training are exported to Matlab for network verification and data quantification, which are used for convolution calculation in the convolution calculation unit.
[0043] The present invention has the following beneficial effects and advantages:
[0044] The present invention establishes a bearing signal fault diagnosis method and device based on FPGA, which can greatly improve the speed of bearing vibration classification. On the basis of improving the speed, the hardware resources of the embedded platform are also reduced, the power consumption is greatly reduced, and it has strong flexibility and adaptability. BRIEF DESCRIPTION OF THE DRAWINGS
[0045] Figure 1 It is an overall schematic diagram of the bearing fault diagnosis device of the present invention;
[0046] Figure 2 It is the principle diagram of the adaptive filtering algorithm of the present invention;
[0047] Figure 3It is a schematic diagram of the arrangement of the acceleration sensor of the present invention;
[0048] Figure 4 Schematic diagram of a feature extraction module in a convolutional neural network of the present invention;
[0049] Figure 5 Schematic diagram of a feature enhancement module in a convolutional neural network of the present invention;
[0050] Figure 6 It is a schematic diagram of the structure of the present invention. DETAILED DESCRIPTION
[0051] The present invention is further described in detail below in conjunction with the accompanying drawings and embodiments.
[0052] The main technical means adopted by the present invention are as follows: a bearing signal fault diagnosis device based on FPGA, comprising:
[0053] The data acquisition module controls the installed multiple acceleration sensors to collect bearing status information through the signal acquisition control unit, thereby collecting vibration signals generated by the engine bearing in the working state;
[0054] The analog-to-digital conversion module converts the analog signal collected by the acceleration sensor into a vibration signal through the analog-to-digital conversion unit;
[0055] The filtering module performs noise reduction processing on the digital signal generated by the analog-to-digital conversion module through the least mean square (Lms) adaptive filter to filter out the redundant noise in the signal.
[0056] The fault classification module classifies bearing signals by designing a neural network and performing isomorphic processing on the pooling layer and the convolution layer, which can greatly reduce the running speed of the CNN convolutional network and improve the classification speed of the processed bearing signals.
[0057] The data acquisition module, analog-to-digital conversion module, filtering module and fault classification module are all implemented on the ZYNQ platform through FPGA;
[0058] The acquisition control unit controls acceleration sensors installed at multiple locations to acquire the vibration state of the bearing;
[0059] The filtering module includes a data delay unit and an adaptive filtering unit. The data delay module is used to control data delay and coordinate signal synchronization; the adaptive filtering module is used to process the input signal and obtain the final signal filtering result after adding;
[0060] The fault classification module includes: a feature extraction unit and a signal classification unit, wherein the feature extraction unit extracts the features of the bearing signal, and the signal classification unit classifies the bearing signal features, thereby completing the bearing fault diagnosis;
[0061] The feature extraction unit includes: an input vibration signal data buffer unit, a parameter pre-storage unit, a convolution calculation unit, a maximum pooling unit and a full connection unit.
[0062] Input vibration signal data buffer unit, used to receive and buffer filtered data
[0063] A parameter pre-storage unit for pre-storing weight and bias parameters;
[0064] A convolution calculation unit, for receiving vibration data and extracting data features of the input data according to weight and bias parameters;
[0065] The maximum pooling unit is used to reduce the dimension of data features;
[0066] The fully connected unit is used to map the feature space obtained by the convolution and pooling modules to the sample label space.
[0067] The network back propagation is produced by software. No back propagation calculation is performed inside the FPGA. The training data set is obtained through Python, and the CNN network is built through the Pytorch framework for network training. The optimal training parameters are exported and first exported to Matlab for network verification and data quantification.
[0068] The bearing signal fault diagnosis method and device based on FPGA is characterized in that the feature extraction unit is composed of a convolution calculation module, a maximum pooling module and a fully connected module. The weight parameters and bias parameters required for the convolution layer and the fully connected layer calculation are obtained by training with a pre-standardized data set, and deployed in advance in a suitable position in the form of a coe format.
[0069] A bearing signal fault diagnosis device based on FPGA, comprising the following steps:
[0070] S1: The bearing signal data acquisition module controls the AD acquisition device to collect vibration signals in real time, and then transmits the collected original bearing signals to the filtering module for adaptive noise reduction processing.
[0071] S2: The filtering module performs signal filtering on the received original bearing vibration signal. By using an adaptive filtering algorithm, the original bearing vibration signal is filtered to remove unnecessary clutter.
[0072] S3: The network back propagation is produced by software. No back propagation calculation is performed inside the FPGA. The training data set is obtained through Python, and a CNN network is built through the Pytorch framework for network training. The most useful parameters of the training are first exported to Matlab for network verification and data quantification.
[0073] S4: The bearing fault classification module stores the received vibration data after filtering to the data cache module. The convolution calculation module calls the vibration data in the input signal cache module and the weight parameters and bias parameters stored in advance to perform convolution calculation on the data to extract the features of the data, and then outputs the calculated convolution result to the maximum pooling module.
[0074] S5: The maximum pooling module performs a maximum pooling operation on the vibration signal features obtained by the convolution calculation module to achieve the purpose of reducing parameters.
[0075] S6: Repeat the operations of S4 and S5 to obtain output feature data of appropriate length and store it in DDR3.
[0076] S7: The fully connected module calls the mean value obtained in S5 and the weight parameters and bias parameters of the fully connected layer from the DDR3 memory, and obtains the maximum fully connected output value, i.e., the classification result, by comparing the calculation results of each channel horizontally, and transmits the result to the display control module for display.
[0077] S8: The display control module controls the display to output the corresponding signal classification according to the category represented by the classification result.
[0078] The feature extraction unit performs the following steps:
[0079] Driven by the clock signal, the address signal continues to increase, and the input vibration signal data arrives in the next clock cycle.
[0080] A 1x5 convolution kernel is used for convolution. By designing the convolution calculation module, the input feature data of the same size is output in each clock cycle, so that the convolution operation of a single unit can be completed in each clock cycle.
[0081] In this way, in the sixth clock cycle, the multiplication and addition of the five convolution kernels are completed, and the convolution results of the five feature data can be obtained in each subsequent clock cycle to achieve the purpose of pipeline calculation.
[0082] A bearing signal fault diagnosis method and device based on FPGA can be applied to bearing vibration signal acquisition and preprocessing, can quickly and accurately judge the bearing vibration signal, and display the judgment result in the first time. As an external device of the ZYNQ platform, FPGA has the characteristics of programmability and reconfiguration, that is, the user can internally program the FPGA according to his own needs, and then can realize the required functions. Therefore, in terms of the construction of neural network models, FPG has unique advantages over traditional GPUs and ASICs.
[0083] A bearing signal fault diagnosis method and device based on FPGA, such as Figure 1 and Figure 6 The bearing signal data acquisition module, the filtering module and the bearing fault classification module are shown. The bearing signal data acquisition module will first collect the bearing vibration signal parameter information and convert it into a digital signal through an AD chip; then the collected digital information is transmitted to the filtering module, and the received original bearing signal is adaptively denoised through adaptive filtering, and the signal is filtered; the bearing fault classification module, that is, the classification network deployed on the FPGA, uses the classification network to perform convolution, pooling and full connection processing on the filtered data to achieve the classification effect; finally, the display result is displayed on the display.
[0084] The signal acquisition module connects the AD acquisition device and the FPAG development board through hardware connection, and writes the acquisition unit according to the specific signal of the AD acquisition chip. The analog signal is converted into a digital signal through the AD7606 chip and then transmitted to the signal filtering unit.
[0085] The bearing signal fault diagnosis method and device based on FPGA, such as Figure 2 As shown, the signal is filtered and processed on the FPGA, and the steps are as follows: first, the filter step size of the right value is selected as the initial input of the adaptive filter, and the initial parameters of the filtering algorithm are set to 0. By inputting the faulty signal X(n) at time t and the synchronous reference signal d(n), the filter output y(n)=wT(n)X(n) is calculated, and the error e(n)=d(n)-y(n) between the reference signal and the filtered output signal is calculated. According to the error result, a new weight parameter w(n+1)=w(n)+2ue(n)X(n) is calculated, the clock parameter is increased by 1, and the parameter is updated. The above steps are repeated until the signal with the best filtering effect is output.
[0086] The bearing signal fault diagnosis method and device based on FPGA, wherein the data processing schematic diagram of the signal classification module is as follows Figure 3 , 4As shown in , 5, the pooling layer and the activation function are processed isomorphically, which can improve the calculation speed and reduce the hardware resources. It includes a data cache module after filtering, a parameter pre-storage module, a convolution calculation module, and a maximum pooling layer processing module and a fully connected module to achieve the effect of feature extraction and classification of the signal. Driven by the clock signal of the PL end of ZYNQ, the signal acquisition unit caches the signal data processed by the filtering module. After the convolution unit in the bearing fault classification module receives the enable signal that can be convolved, the data length counter starts counting, and at the same time, the weight parameters and bias parameters are extracted from the parameter pre-storage module, and the data is transmitted to the convolution calculation unit. At the same time, the weight parameters are also transmitted to the convolution calculation unit with a bit width of 5, and multiplied with the cached signal data. Finally, after the addition operation, the results of the multiplication operation are added, and then the data after the convolution operation is subjected to the maximum pooling operation through the maximum pooling unit, and the pooled data is subjected to nonlinear changes after the activation function. Finally, the obtained data is multiplied by the pre-stored weight parameters, and the maximum result is output and compared with the previously stored data to obtain the classification result.
[0087] The pre-trained signal classification model is trained on the server side through a pre-labeled signal data set to obtain the parameters required for the required convolutional layer and fully connected layer, and these parameters are pre-converted into a coe file for use by the ZYNQ platform.
[0088] The present invention is a bearing signal fault diagnosis method and device based on FPGA, which solves the problem of large number of parameters and difficulty in deploying to hardware platform in existing network models by matching with a model with small number of parameters. The present invention deploys signal acquisition module, signal filtering module, signal classification module and display module on FPGA platform, and solves the problem of large number of parameters and slow calculation speed in convolutional neural network by isomorphic processing of pooling layer and activation function and filtering processing of original bearing data. The present invention has the characteristics of good classification effect and fast speed.
Claims
1. A bearing signal fault diagnosis device based on FPGA, characterized in that: The device is implemented on a ZYNQ platform via FPGA, and includes: A data acquisition module, used for acquiring vibration simulation signals of bearing status through an acceleration sensor; An analog-to-digital conversion module, used for converting a vibration analog signal into a vibration digital signal; A filtering module is used to perform noise reduction processing on the vibration digital signal by using a least mean square algorithm; The fault classification module is used to classify the noise-reduced vibration signal through a neural network, and obtain the diagnosis result of the bearing by isomorphic processing of the pooling layer and the convolution layer.
2. The FPGA-based bearing signal fault diagnosis device according to claim 1, characterized in that: The filtering module comprises: A data delay unit is used to control the time delay of the input signal to synchronize the signal; The adaptive filtering module is used to filter out noise in the synchronization signal through a filtering algorithm.
3. The FPGA-based bearing signal fault diagnosis device according to claim 1, characterized in that: The fault classification module comprises: A feature extraction unit, used to extract features of the filtered vibration signal; The signal classification unit is used to classify the extracted features and complete the bearing fault diagnosis.
4. The FPGA-based bearing signal fault diagnosis device according to claim 3 is characterized in that: The feature extraction unit comprises: A convolution calculation unit, used to extract data features of the vibration signal based on set weight and bias parameters; The maximum pooling unit is used to reduce the dimension of data features; The fully connected unit is used to map the feature space after dimensionality reduction to the sample label space.
5. The FPGA-based bearing signal fault diagnosis device according to claim 4 is characterized in that: The feature extraction unit also includes: An input vibration signal data buffer unit is used to receive and buffer the filtered vibration signal; The parameter pre-storage unit is used to pre-store the set weight and bias parameters.
6. A bearing signal fault diagnosis method based on FPGA, characterized in that: The following steps are involved: 1) The data acquisition module controls the acceleration sensor to collect vibration signals in real time, and transmits the collected bearing state vibration simulation signals to the analog-to-digital conversion module; 2) The analog-to-digital conversion module converts the vibration analog signal into a vibration digital signal; 3) The filtering module filters the vibration digital signal through an adaptive filtering algorithm; 4) The fault classification module classifies the denoised vibration signal through a neural network, and obtains the diagnosis result of the bearing by isomorphic processing of the pooling layer and the convolution layer.
7. The bearing signal fault diagnosis method based on FPGA according to claim 6 is characterized in that: The step 4) comprises the following steps: 4.1) The data cache unit receives and caches the vibration digital signal after filtering; 4.2) The convolution calculation unit calls the vibration digital data and the weight parameters and bias parameters stored in advance to perform convolution calculation on the data, obtain the vibration signal features, and output them to the maximum pooling unit; 4.3) The maximum pooling unit performs a maximum pooling operation on the vibration signal features; 4.4) Repeat steps 4.1) to 4.3) until output feature data of a set length is obtained and stored in the DDR3 memory; 4.5) The fully connected unit calls the mean obtained in the maximum pooling unit and the weight parameters and bias parameters of the fully connected layer from the DDR3 memory, and obtains the maximum fully connected output value as the classification result by horizontally comparing the calculation results of each channel.
8. The bearing signal fault diagnosis method based on FPGA according to claim 6 is characterized in that: The following steps are also included: The display control module controls the display to output the corresponding signal classification according to the category represented by the classification result.
9. The bearing signal fault diagnosis method based on FPGA according to claim 6, characterized in that: In the fault classification module, no back-propagation calculation is performed inside the FPGA. A training data set is obtained through Python, and a convolutional neural network is built through the Pytorch framework for network training. The optimal parameters of the training are exported to Matlab for network verification and data quantification, which are used for convolution calculation in the convolution calculation unit.