Abstract: In view of the diversity of fault characteristic signals, different signals need to be measured and analyzed for mechanical equipment to improve the rationality of diagnosis. To this end, we used object-oriented methods to realize data collection of multi-channel signals, and compiled a variety of processing algorithms to improve the signal-to-noise ratio of the signals.
Keywords: collection object-oriented preprocessing fault diagnosis
Mechanical equipment fault diagnosis covers a wide range of areas, and there are many types just from the selected characteristic signals. Each signal has its own characteristics and has different application scenarios; each fault may show several characteristics, and the fault information may be included in several characteristic signals. Therefore, for a complex mechanical system, it is often necessary to measure different signals and conduct comprehensive analysis to improve the reliability of diagnosis. In practice, the required characteristic signals containing the main information of the fault are extracted as much as possible through comprehensive testing of multiple sensors and sent to the computer through multiple A/D conversions, as shown in Figure 1. This kind of comprehensive test can comprehensively measure the fault signal, the test time is short, and the signal is true and accurate. To this end, we implemented multi-channel data collection of fault signals using object-oriented programming in the Windows environment [1][2][3][5]. Considering the noise signal contained in the test signal, several processing algorithms are provided and implemented, among which the application of cepstrum analysis in diagnosis is mainly introduced.
1 Data collection
1.1 Principle
Data acquisition is the digital discretization of analog signals representing fault characteristics. The mechanical equipment fault characteristic signal passes through the charge amplifier and anti-aliasing filter to filter out high-frequency and low-frequency signals that are irrelevant to the fault characteristic signal, and then reaches the computer through A/D conversion. The A/D conversion chip adopts AD1764, a product of ANALOG DIVICES. This chip is a 12-bit sequential comparison high-speed A/D conversion chip and contains a sample holder internally. The conversion speed time is 8.5μs, plus the acquisition and protection time of 1.5μs, the time to complete a sampling conversion is 10μs, so the maximum sampling frequency of this board is 100kHz. The A/D board channel control adopts software selection method, and the conversion channel can be selected arbitrarily through the channel preset register. In practice, 5 channels CH1~CH5 on the A/D conversion board are used, and the gain of each channel can be set. The trigger signal of the A/D conversion is sent by the 0 channel of the on-board timer 8253. Through programming, the 8253 timing counter is used to send out equally spaced timing pulses to continuously trigger the A/D conversion. At the same time, the status bits are queried to read the data synchronously, and the data can be obtained. Accurate sampling frequency.
1.2 Software implementation
In order to increase the sampling speed, the A/D conversion program is written in assembly language and called by the main program compiled by Borland C++5.0. It can complete single-channel, multi-channel and large-capacity data collection, and can set the sampling data length, sampling frequency and program-controlled amplification factor of each channel. The parameter settings are all integrated in a dialog class, with a good human-computer dialogue interface, as shown in Figure 2.
Among them, the setting channel control pops up a dialog box for setting channels, up to 5 channels; the setting frequency control pops up a dialog box to set the sampling frequency between 30Hz and 100kHz; the setting gain control pops up a dialog box to set the channel gain to 1, 2, 4, 6, 8, 16 times; the dialog box popped up by the sampling length control allows the user to choose among (1, 2, 4, 6, 8, 16, 24) × 1024 points. These five dialog classes are all subclasses derived from the base class (TDialog) and form classes with their own functions. These classes adopt the characteristics of inheritance, friends, encapsulation, and polymorphism to jointly complete A/D parameter settings. Among them, the dialog box class corresponding to Figure 2 is the most important, and it creates and closes instances of the other four dialog boxes. It has a Param structure, and most of the A/D parameters set by the user are stored in this structure. To save these parameters, the following data structure is defined:
typedef structure{
int Number; //Total number of acquisition channels
double Frequency; //Sampling frequency
unsigned int Length; //Sampling data length
int Channel[5]; //Sampling channel number
int Gain[5]; //Sampling channel gain
}Parmm
After the parameters are set, the A/D conversion can be started. In order to facilitate future offline signal analysis, the sampled data is saved into a file. The file format is:
Sample data length
Sampling frequency
Number of channels
Channel number sequence
gain per channel
data part
…
The data part is represented by a four-digit hexadecimal number. Since the A/D is 12 bits, the last bit of the data is meaningless, and each number occupies one line. For multi-channel sampling, the data is placed alternately. For example, for the following data:
4000
1024
5
1 2 0 3 4
2 1 2 2 2
acb0
75a0
…
Indicates that the sampling frequency is 4000Hz, the sampling length of each channel is 1024 points, and 5 channels are sampled at the same time. The sampling channel numbers are 1, 2, 0, 3, and 4, and the corresponding amplification factors are 2, 1, 2, and 2 respectively. , 2, followed by the sampled data.
2 Preprocessing
Due to the influence of various objective factors, signals are often mixed with noise. Sometimes noise can "submerge" the signal, and the discrete signal after the signal passes through the A/D brings quantization noise of the A/D converter. Therefore, before performing spectral analysis on the signal, it is necessary to preprocess it to improve the signal-to-noise ratio.
Before preprocessing, first perform channel settings to determine which channel signal will be processed. If the signal is relatively weak, you can amplify the signal and set the gain to facilitate analysis, as shown in Figure 3.
2.1 Smoothing filter
Smoothing filtering is to filter out high-frequency noise, and its calculation formula is given by the following formula.
Let the length of x(n) be N, that is, n=2,3. ..N-3;
Then x(n)=1/35[-3x(n-2)+12x(n-1)+17x(n)+12x(n+1)-3x(n+2)]
For the smoothing of four points n=0,1 and n=N-2,N-1, the formula is as follows: x(0)=1 / 70[69x(0)+41x(1)-6x(2)+4x(3 )-(4)]
x(1)=1/35[2x(0)+27x(1)+12x(2)-8x(3)+2x(4)]
x(N-2)=1/35[2x(N-5)-8x(N-4)+12x(N-3)+27x(N-2)+2x(n-1)]
x(N-1)=1/70[-x(N-5)+4x(N-4)-6x(N-3)+4x(N-2)+69x(N-1)]
2.2 Removing pulse interference
The calculation of pulse interference is as follows:
Suppose signal y(n), n=1,2···N, where N is a multiple of 4.
Sort the four values of y(i), y(i+1), y(i+2), and y(i+3) from large to small, respectively, to get:
y′(i), y′(i+1), y′(i+2), y′(i+3)where i=0, 4, 8···N/4;
Then the signal after removing pulse interference is:
Y(i)=Y(i+1)=Y(i+2)=Y(i+3)=[y′(i+1)+y′(i+2)]/2
2.3 Time domain average
Time domain averaging extracts a specified periodic signal from a signal mixed with noise interference, and eliminates signals in the signal that are not related to the given period. Intercept signals from mechanical images at certain periodic intervals, and then superimpose and average the intercepted signal segments. This can eliminate non-periodic components and random interference in the signal and retain certain periodic components.
Suppose a signal x(t) is composed of periodic signal f(t) and white noise n(t)
x(t)=f(t)+n(t)
Intercept the data segments of the signal x(t) with the period of f(t), and intercept N segments in total. Then add the corresponding data in each segment. Due to the irrelevance of the signal and white noise, we can get:
x(ti)=Nf(ti)+Nn(ti)
Then average x(ti) to get the output signal y(ti)
y(ti)=f(ti)+n(ti)/N
The white noise of the output signal is 1/N times that of the white noise in the input signal x(t), that is, the signal-to-noise ratio is increased by N times.
Sampling signal y(kt) with a frequency of 1026Hz:
y(kt)=5×sin(2×π×9×kt)+6×sin(2×π×38×kt)
And perform time domain averaging on this signal, as shown in Figure 4(a), a high-frequency signal with a frequency of 38Hz can be extracted. The upper part of the graph in Figure 4(b) shows the original signal, and the lower part shows the extracted signal.
If you want to continue to extract the signal with a frequency of 9Hz, you can activate the "Continue Time Domain Average" menu item in the window shown in Figure 4(b), enter the number of points in the extracted period as 114, and continue the time domain average to obtain the graph as shown in Figure 4(c) ), where the upper part represents the extracted time domain signal with a frequency of 38Hz, and the lower half represents the extracted signal with a frequency of 9Hz.
3 Spectrum analysis
Spectrum analysis is more intuitive and effective than time domain analysis in many aspects, so it has always been used as an indispensable means for equipment diagnosis. When the system performs spectrum analysis, it should first perform spectrum analysis settings. This item mainly sets two parameters - channel number and data gain. The cepstrum analysis has special advantages. It separates the vibration source and path and reduces the influence of some random transmission paths from the signal source to the measurement point. For the diagnosis of the gearbox system, due to the phenomenon of amplitude modulation and frequency modulation when the faulty gear is running, the gearbox vibration signal appears on both sides of the meshing frequency and its higher harmonics with the shaft rotation frequency as the modulation frequency. . When the fault becomes serious, the number of modulation sidebands increases and their amplitude increases, making it difficult to judge their status from the power spectrum. However, the cepstrum can be used to extract the change information of the sidebands to diagnose the fault state of the system. In view of space constraints, only the analysis process of the cepstrum is introduced here. In terms of implementation, the collected signals can not only be analyzed by cepstrum, but also can be edited and deleted. Unnecessary peaks can be removed and then the power spectrum of the original signal can be obtained through the inverse process of cepstrum operation. Figure 5(a) shows the time domain waveform display of the cepstral analysis of the fault signal. It can be seen that it is mainly composed of 40Hz and 500Hz signals, and the sampling frequency is set to 2000Hz.
It can be seen from the power spectrum part of Figure 5(a) that there are side bands on both sides of 40Hz and 500Hz. The relative amplitude of the low-frequency part is small and is not obvious on the spectrum. For this reason, the cepstrum can be compiled. Deletes the energy of weakened high-frequency components and makes the low-frequency parts stand out. There is a reciprocal relationship between the coordinates on the power spectrum and the "inverse frequency" on the cepstrum. The high-frequency component on the power spectrum is reflected in the inverse frequency and is the low inverse frequency component. In order to reduce the high-frequency energy, first find its inverse frequency q =1/500=0.002; and it can be seen from the cepstral diagram that when the cepstrum is 0.002, the corresponding cepstrum value is the largest, and it can be edited or deleted through the dialog box, as shown in Figure 5(b) ), the result after editing and deletion is shown in Figure 5(c).
From the power spectrum part of Figure 5(c), it can be seen that although the distribution of high-frequency components remains the same, its amplitude has been greatly reduced (compare the amplitude coordinates of the power spectrum in Figure 5(a) and Figure 5(c)) , and the frequency components of the low-frequency part have been displayed relatively clearly.
The structure of mechanical equipment is generally complex and has many vibration sources. In order to obtain reasonable diagnostic results, multiple characteristic signals need to be extracted for signal analysis. To this end, we use object-oriented programming technology in the Windows environment to realize data collection and preprocessing of multi-channel signals, which increases the flexibility and scalability of the system. Users can set A/D conversion parameters such as sampling channel, sampling length, channel gain, and sampling frequency according to actual requirements, and perform signal processing. The DSP system based on this has achieved good application results in actual operation.
Previous article:New high-speed image acquisition based on FPGA technology
Next article:Development of video character overlay technology and four implementation solutions
- Popular Resources
- Popular amplifiers
- Huawei's Strategic Department Director Gai Gang: The cumulative installed base of open source Euler operating system exceeds 10 million sets
- Analysis of the application of several common contact parts in high-voltage connectors of new energy vehicles
- Wiring harness durability test and contact voltage drop test method
- Sn-doped CuO nanostructure-based ethanol gas sensor for real-time drunk driving detection in vehicles
- Design considerations for automotive battery wiring harness
- Do you know all the various motors commonly used in automotive electronics?
- What are the functions of the Internet of Vehicles? What are the uses and benefits of the Internet of Vehicles?
- Power Inverter - A critical safety system for electric vehicles
- Analysis of the information security mechanism of AUTOSAR, the automotive embedded software framework
Professor at Beihang University, dedicated to promoting microcontrollers and embedded systems for over 20 years.
- Innolux's intelligent steer-by-wire solution makes cars smarter and safer
- 8051 MCU - Parity Check
- How to efficiently balance the sensitivity of tactile sensing interfaces
- What should I do if the servo motor shakes? What causes the servo motor to shake quickly?
- 【Brushless Motor】Analysis of three-phase BLDC motor and sharing of two popular development boards
- Midea Industrial Technology's subsidiaries Clou Electronics and Hekang New Energy jointly appeared at the Munich Battery Energy Storage Exhibition and Solar Energy Exhibition
- Guoxin Sichen | Application of ferroelectric memory PB85RS2MC in power battery management, with a capacity of 2M
- Analysis of common faults of frequency converter
- In a head-on competition with Qualcomm, what kind of cockpit products has Intel come up with?
- Dalian Rongke's all-vanadium liquid flow battery energy storage equipment industrialization project has entered the sprint stage before production
- Allegro MicroSystems Introduces Advanced Magnetic and Inductive Position Sensing Solutions at Electronica 2024
- Car key in the left hand, liveness detection radar in the right hand, UWB is imperative for cars!
- After a decade of rapid development, domestic CIS has entered the market
- Aegis Dagger Battery + Thor EM-i Super Hybrid, Geely New Energy has thrown out two "king bombs"
- A brief discussion on functional safety - fault, error, and failure
- In the smart car 2.0 cycle, these core industry chains are facing major opportunities!
- The United States and Japan are developing new batteries. CATL faces challenges? How should China's new energy battery industry respond?
- Murata launches high-precision 6-axis inertial sensor for automobiles
- Ford patents pre-charge alarm to help save costs and respond to emergencies
- New real-time microcontroller system from Texas Instruments enables smarter processing in automotive and industrial applications
- How to set up the Qt program to start automatically on the Sinlinx A64 development board
- Four aspects to understand the internal loss of switching power supply
- Some time functions in C language (time/sleep/clock)
- ESP32 MicroPython Web Server – Web page displaying sensor data
- [Good memory is not as good as bad writing] 1. F1 MDK transplantation FreeRTOS practice record 2-CUBE generation project
- National Undergraduate Electronic Design Competition Paper Album
- How to choose the size of the capacitor and resistor when connecting the signal line (clock) in series?
- DSP digital anti-noise module for airborne communication equipment
- Resolving Wi-Fi and Bluetooth issues caused by wireless interference
- A First Look at ESP32--1