{'fraction_non_alphanumeric': 0.020528691899258922, 'fraction_numerical': 0.011840199892103694, 'mean_word_length': 5.075556322235639, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
A Neural Network Based Motor Bearing Fault Diagnosis Algorithm and its Implementation on Programmable Logic Controller

This research aims to test the feasibility of Programmable Logic Controller implementation of an Artificial Neural Network based bearing fault diagnosis using vibration datasets. The main drawback of using a Programmable Logic Controller along with an Artificial Neural Network is that it does not support the parallel nature of neural networks. This drawback is not significant for relatively small applications like bearing diagnosis that involve very short execution time. In this paper, a three layer multilayer perceptron backpropagation neural network is trained using Levenberg-Marquardt training algorithm with vibration dataset consisting of four bearing status classes: normal, outer race way fault, inner race way fault and rolling element (ball) fault. Time-frequency domain and time domain input features were considered in this research. Both approaches have performed well during simulation phase. But the time-frequency feature extraction approach was observed to take too long scan cycle time to be implemented in real-time. This is due to the computationally intensive nature of Fast Fourier Transform algorithm involved during feature extraction. The time domain approach is proved to be feasible for Programmable Logic Controller implementation. The time domain input features used for neural network training were root mean square, variance, kurtosis and negative log likelihood values. The average performance obtained during simulation with 10-fold cross validation performance estimator was an error of 7.9 x10 -4 . The performance tests of Programmable Logic Controller implementation resulted in 100% bearing fault detection rate.


I. INTRODUCTION
Bearings are essential components of any rotating machines in industrial applications. Electrical motors such as induction motors are one of the most widely used rotating industrial machines that uses roller bearings. The bearings operate under mechanical stress and they are vulnerable to frequent physical faults. These faults cause motor breakdowns that ultimately affect asset performance of a production facility and may also result in personnel injury. The best solution to keep the machine performance high and also avoid personnel casualties and economical loss due to bearing faults is to perform real time continuous fault diagnosis of bearings so that the damage can be detected at an early stage. One of the most effective tools for bearing diagnosis is vibration analysis [4]. Fault features are extracted by signal processing techniques such as Fourier transforms and time domain analysis. The fault features provide information regarding the fault pattern and thus give indication of the fault area. However, most of the currently available techniques require expert knowledge to properly utilize them. On the contrary, most industries need a system that can be understood by operators with relatively low knowledge of such systems [8,15].
Artificial neural networks (ANN) based bearing fault diagnosis technique is an adequate choice in order to automatically and reliably perform the fault diagnosis without the need for a specialist data examination [8,15].
In recent years, the application of neural networks for bearing fault diagnosis is among the research topics of interest by many researchers. A number of papers have been published on the topic with most of them focusing on approach of feature extraction, training algorithm selection and general feasibility of neural network application to bearing fault diagnosis [17]. The implementation stage is not widely dealt with at the moment. There are only few research literatures which considered implementation of neural networks for bearing diagnosis. These implementations have considered the use of VLSI (Very Large Scale Integration) devices such as microcontrollers [43,44] and FPGA (Field Programmable Logic Arrays) [1,41] to test performance of neural networks at hardware level.
The purpose of this work is to use Programmable Logic Controllers (PLCs), which is the industry standard for control systems, as an implementation hardware and thus introduce neural network-based bearing fault diagnosis application into the industry. The main contributions are summarized as follows: -Comparing time domain and time-frequency domain features for bearing faults detection in terms of classification accuracy and PLC computing needs. -Implementing a solution that provides low cost bearing condition monitoring where incipient bearing faults are detected at an early stage before causing machine downtime and also preventing possible personnel causalities. -Providing a reference for PLC implementation of artificial neural networks that can serve other similar industrial fault diagnosis or control applications.

A. Research Method
The research work deals with both simulation and implementation phases. The main points to be considered as success factors of this work are the performance of the diagnosis system in fault detection and its suitability for PLC implementation.

Data Acquisition Method
Vibration analysis is the most preferred technique for bearing fault diagnosis as compared to other techniques. It is reliable; it gives clear indication of defect locations; and it is highly sensitive to fault severity levels [17]. The vibration dataset to be used for training neural networks can be obtained from software simulation, laboratory test rigs or from real-time industrial set ups. Most researches are conducted on dataset obtained from computer simulations and laboratory test rigs since real-time industrial vibration data is rarely available [2,8,15,36,37]. In this research, a bearing dataset from bearing data repository of [36] was used. The data was recorded from a test rig consisting of a 2HP motor, a torque transducer, a dynamometer and control components. Faults of different sizes were seeded into bearings using electrodischarge machining (EDM) at outer race, inner race and rolling element. Data from normal bearing was also recorded for use as baseline data [36]. Selected dataset files are downloaded from the official website of [36]. During real-time applications, accelerometer measurement data is directly stored in PLC data block memory from where the data is retrieved by neural network function block for analysis.

Feature Extraction Method
The success of a fault diagnosis system highly depends on the amount of relevant information obtained from the selected fault features. Therefore, the choice of feature extraction method is a critical input for neural network training algorithm. The selection of feature extraction method should also consider its feasibility of implementation on PLCs. The performance of timefrequency domain features and time domain features were compared during simulation and implementation phases. Both approaches performed well during simulation phase but time domain approach is the only method where acceptable result was obtained during PLC implementation phase.

Neural Network Archtecture and Training Algorithm
Multilayer Feedforward Neural Network is the most popular architecture for pattern recognition or classification applications [30,31,33]. A three layer feedforward neural network with Levenberg-Marquardt (LM) backpropagation training algorithm on Matlab environment is employed in this study.

PLC Impelementation
The main purpose of this research work is to experiment and draw conclusion whether PLC implementation of neural networks based bearing fault diagnosis is feasible or not. The key limiting factors in PLCs are CPU scan rate and available memory size. The bearing diagnosing neural network program blocks are intended to be an integral part of the general control blocks sharing the same CPU and memory areas. A virtual PLC called S7-PLCSIM of the Siemens S7-300 family was used for experiments. PLC program for data manipulation, feature extraction and neural networks was developed with SIMATIC Manager software of Siemens S7-300. The raw vibration data representing each category of bearing condition was imported into a PLC data block and analyzed by the programs.
The rest of this paper is organized as follows. A brief overview of related work is presented in Section 2.

II. RELATED WORKS
Bearing fault detection and diagnosis is one of the pattern recognition and classification problems where artificial neural network finds important industrial applications [8]. Vibration data is the most common and reliable measurement data used for bearing diagnosis in both conventional condition monitoring methods and in most recent approaches [4,8,10,12,15,16,37]. The use of motor stator current data is also widely used in recent literatures [2,7,20,21,22]. According to [17], vibration analysis is the most preferred method as compared to other condition monitoring techniques such as temperature monitoring, acoustic monitoring and wear debris analysis.
The raw vibration data is typically processed to prepare input features using one of the feature extraction techniques. The techniques usually employed are frequency domain analysis [10,20,39], time domain analysis [15,16,37] or time-frequency analysis [8,13,14].
Time domain analysis is the easiest method to analyse vibration signals [40]. It is a method by which statistical features are computed and compared in order to identify a particular fault [37]. These statistical features include mean, standard deviation, variance, root mean square, kurtosis, skewness, crest factor, clearance factor, impulse factor, shape factor, negative log-likelihood and normalized central moments [15,37]. According to [15], kurtosis and normal negative log-likelihood features performed best on neural network based bearing fault diagnosis. Another similar time domain analysis conducted by [37] using the same source of vibration dataset shows variance and root mean square are the best performing input features.
Time-frequency analysis technique is the use of both time-domain and frequency domain features for bearing diagnosis. It is capable of revealing aspects of data that other signal analysis techniques could not provide by using relevant time domain and frequency domain features together [13]. In [8], peak value, mean value and kurtosis are used along with the characteristic fault frequencies to detect bearing fault based on neural networks.
In this paper we compare time domain and timefrequency domain features with an emphasis on their ease of implementation on a PLC.

III. METHODOLOGY
In this section the methods and steps followed in the research work will be discussed. The experimental activities can be categorized into two phases: Matlab based software simulation and PLC implementation phases. Major activities involved from start to finish of the experimental work are as follows:  searching reliable bearing dataset source and collection of the data  dataset manipulation and feature extraction  selection of ANN model and training algorithm  conducting ANN training and validation experiments using different scenarios  conversion of trained ANN into the PLC language  importing bearing dataset into PLC for tests  comparing PLC implementation results with two different feature extraction approaches  developing and testing of Graphical User Interface (GUI) The simulation phase involves training, validation and testing of the neural network. Validation is performed within the training phase using training dataset while testing is conducted with separate testing dataset prepared for this purpose.

A. Selection of data source and collection of dataset
The dataset used for this experiment was obtained from Case Western Reserve University Bearing Data Center [36]. The dataset consists of normal and defective bearing data. Data for all types of faults with different severity levels at different motor speed was recorded by the bearing data center. This bearing dataset has been validated in many researches and it has become a standard dataset for the study of rolling bearings [15,35,37]. The data was acquired by bearing accelerometers under different motor speed, different operating loads and different bearing conditions [36].

B. Dataset manipulation and feature extraction
The dataset collected for each bearing condition was manipulated by Matlab Software in a way suitable for specific feature extraction technique. Thus, training and validation dataset for time-frequency domain feature extraction and time domain feature extraction was prepared separately.

Dataset manipulation for time-frequency domain feature extraction approach
In time-frequency domain feature extraction approach, both time domain features and frequency domain features are used as an input to ANN during training and validation. The features selected are expected to reveal possible faults in roller bearings. In frequency domain, the presence of significant amplitudes of characteristics frequencies within the frequency spectrum of bearing vibration is directly linked to a specific localized bearing fault. The characteristic frequencies are multiples of the shaft frequency as can be seen from below calculations. Thus, due to this link, the use of shaft frequency and its amplitude as input feature can improve training results [8].
Time domain features are statistical values extracted from the datasets. The use of time and frequency domains together is aimed to improve detection and diagnosis accuracy. Time domain values considered in this study for use in combination with frequency domain features were peak amplitude value, mean amplitude value and kurtosis. These time-frequency domain features are proved to give best performance in [8]. The input vector consisting of the selected features is given as: Where Amax represents time domain peak amplitude, Amean represents time domain mean amplitude, K is the time domain kurtosis, F S is the shaft frequency, A S is the amplitude of shaft frequency, A O is the amplitude of ball pass outer race frequency, A I is the amplitude of ball pass inner race frequency, In order to avoid under training of the ANN, a good number of training input vectors are required [7]. Since there are only limited number of datasets available that represents each bearing class, the datasets should be divided into smaller data frames that will be used to prepare a single input vector.
The dataset files of faulty bearings used in this study contained about 120,000 data point recordings at sampling frequency of 12,000 samples per second for 10 seconds. The available dataset for normal bearing was with a file of 480,000 data points recoded over 10 seconds at a sampling frequency of 48,000 samples per second. This normal bearing dataset was first down sampled by 4 to produce a file with 120,000 data points at 12,000 samples per second similar to the faulty bearing datasets for uniformity.
The main point to be considered while determining the minimum number of data points of the data segment for input vector calculation is the frequency resolution [8].
where Fsa is the sampling frequency and N is the number of data points. From equation (1) above, we can observe that the higher the data point results in higher frequency resolution for a constant sampling frequency. Higher frequency resolution implies higher accuracy of characteristic frequency evaluation or higher accuracy of detecting bearing faults.
While working with a limited number of bearing datasets, there should be a balance between number of training input vectors and the number of data points used to compute each input vector. This balance in turn helps to create optimum number of training input data at acceptable level of frequency resolution. To attain this, each dataset file of 120,000 data points was first divided into 3 data segments each with 40,000 data points without changing the sampling frequency. Each of the 3 data segments were then down sampled by 4 where each of these data frames contain 10,000 data points at sampling rate of 3,000 samples per second. Here, using equation (1), the frequency resolution is 0.3 Hz. bearing class. Therefore, there were 96 feature vectors in total for the four classes of bearing status considered in this study. Low pass filter was used to eliminate the noise which usually exists in the higher frequency band of the signals. Since the frequencies of interest i.e. the characteristic frequencies are low frequency which are less than 300 Hz, a Butterworth low pass filter with a cut off frequency of 300 Hz was used.
In order to compute the frequency components of the input vectors, Fast Fourier Transform (FFT) was used to convert time domain data into frequency spectrum and followed by power spectral density (PSD) calculation for the spectrum range. The amplitude for frequency of interest was then obtained from the PSD. To compensate for energy leakage during generating the signatures, a frequency band of 5 Hz was used when calculating amplitude of characteristic frequencies.
Matlab in-built FFT was used for frequency spectrum generation. The mathematical formula for discrete frequency transform (DFT) is given by, Where x(n) represents the time domain data, and N is the number of data point in a data frame.
The following basic formula is converted to Matlab code for PSD calculation.
And the characteristic frequency amplitude calculation formula used within the frequency band of 5 Hz is, where ∆f represents the frequency resolution, and Fch is the characteristic frequency. The characteristic frequencies are calculated using bearing physical parameters obtained for the drive-end bearing of the test rig used by [36] during data acquisition and shown in Table 1.  Using the sample data frames prepared, there were 96 feature vectors each containing 7 elements which form a 96 x 7 matrix. This matrix was used as input matrix for the ANN training and it is called feature matrix. A corresponding target output values were also prepared for the training. This target matrix was a 4 x 96 matrix, where the 4 refers to the four bearing classes and 96 refers to the number of training samples. Since the dataset available was for single defect bearing only, multiple defect bearing diagnosis was not considered in this work. Accordingly, the expected bearing status evaluation results are as follows.
Target vector for outer raceway fault (OF) is: Target vector for inner raceway fault (IF) is: Target vector for ball fault (BF) is: Target vector for normal bearing (NB) is: The feature values were calculated as normalized double precision floating point real numbers using Matlab software.

Dataset manipulation for time domain feature extraction approach
The time domain feature extraction approach uses statistical parameters of bearing data as input features. It involves less computational task and straight forward interpretations of the results as compared to frequency domain approach [15]. While it is difficult to detect general roughness bearing defects using frequency domain method, the time domain approach is able to detect such faults as the severity level increases. This is because of the change in vibration amplitude when severity increases. Frequency domain approach is more effective in detection of localized defects [5,34]. The use of time-frequency approach could be the best approach in bearing fault detection. However, this increases computational tasks and the number of input features used during training. In this study, programmable logic controller (PLC) is considered for the implementation phase. PLCs are not made to handle complex mathematical computations which put a limit on the frequency domain feature extraction method. Therefore, the option of using time domain approach only is more feasible.
The time domain features considered were root mean square (RMS) value, variance (σ2), kurtosis and normal negative log likelihood ( ) value. These features are reported to give best performance in researches which considered time domain only feature extraction approach of bearing diagnosis [15,37].
Below are the equations used to compute the time domain features,   where RMS represents the Root Means Square, σ 2 is the variance, μ is the mean, K is the kurtosis,  is the normal negative log likelihood, and f(xi; μ,σ) is the normal probability density function (pdf) [37].
The data manipulation required in time domain is minimal when compared to the frequency domain approach. The original dataset files were segmented directly into 12 data frames containing 5,000 data points. Here 5,000 data points per data frame were tested to be sufficient instead of 10,000 data points used in frequency domain.
The time domain feature vector contains four elements, Therefore, the feature matrix with 96 input vectors is 96 x 4 while the corresponding target matrix size remains the same for both approaches i.e. 4 x 96. Since less number of data points is required in time domain approach, it was possible to increase further the number of input vectors (samples). But to make the comparison suitable, the sample size was preferred to remain equal. The training and validation algorithm used in the study was the Levenberg-Marquardt (LM) training algorithm with the following default settings. The feedforward neural network training tool of Matlab uses sigmoid activation functions for hidden neurons and linear activation functions for output neurons as default settings. The same setting was used in this study. Neural network training can be repeated until best performance is obtained. The trained neural network is then saved for further test with additional datasets or for deploying into the PLC. Increasing the number of hidden neurons beyond 10 did not improve the results.

Performance evaluation using test datasets
The performance of trained neural network can be further tested using separate dataset files. A different dataset file for each bearing class was downloaded from [36] as a test dataset. Similar dataset manipulation steps were taken to prepare feature vectors for the testing purpose as shown in Fig. 2. (b) above. Twelve input vectors were prepared for each bearing class for the testing purpose and the outputs were recorded. The detection rate observed was 100% for all bearing classes within the test. Further information is presented under Section 4 below.

D. Tests on important variables 1. Test on effect of number of input features
The nature and number of input features selected for ANN training is an important factor. For time-frequency domain approach, before choosing the seven input features described under Section 3.B above, amplitude of ball frequency was considered as the eighth input and the detection result remained 100%. But it was unnecessary to include the eighth feature since the detection rate was already 100% with the seven feature inputs. And also the shaft frequency was removed and tests were conducted with six inputs only. The detection result was nearly 100% with slightly more performance error especially on outer race way and inner race way faults. The detection error is expected to increase with varying motor speed where average speed should be used for training input. This feature is considered as important since the motor speed usually varies when operating under different load levels.
For time domain approach, root mean square and variance values alone were tested for performance. The overall success rate was only 89%. Kurtosis was used along with normal negative log likelihood for performance test. The detection rate was 100% in detecting ball faults and normal bearings but it performed poor in detection of outer race faults and inner race faults. The best performance was obtained when four of them were used together. Skewness (S) was used as a fifth input feature but no performance improvement was observed.

Test on effect of number of data points
Optimum number of data points should be used for a good performance. In frequency domain, the frequency resolution and the energy of frequency spectrum decreases as the number of data points decrease. Below is a plot of frequency spectrum using dataset from outer race fault bearing for illustration of effect of number of data points.  It can be observed from Fig. 7. (c) above that the frequency resolution is highly affected with 5,000 data points. It is also observed that the amplitude (energy) of the spectrum decreases as the number of data points decrease.
Similar test was done for the time domain approach and optimally high performance result for all bearing classes was obtained at 5,000 data points. The test using 2,000 data points resulted in low detection rate for inner race fault with accuracy of 77.5%. A detection accuracy of 100% was recorded for the other three classes.

Test on effect of noise and the use of low pass filter
Additive White Gaussian Noise (AWGN) was used to test the effect of noise on the results of detection. Both frequency domain and time domain approaches were affected by additive noise but the frequency domain was found to be more sensitive to noises. Pairs of frequency domain plots are shown below where one of the plots include additive noise with signal to noise ratio (SNR) value of 10 and the other after applying Butterworth low pass filter to the signal affected by noise. The Butterworth cut-off frequency used was 300 Hz. The effect of noise was avoided by using Butterworth low pass filter as observed from Fig. 9.   It was observed during the test that the detection accuracy of time-frequency approach did not show significant improvement for SNR values of greater than 20. It is clear from the data that time domain features were not affected by noise for SNR values of greater than 10. This is one of the advantages of using time domain approach.

IV. RESULTS AND DISCUSSION
This section deals with key results obtained during experimentation in simulation and implementation phases. The results obtained were based on the methodology discussed in Section 3.

A. Frequency domain feature extraction
The following results were obtained using 10,000 data points to compute input features. The indication of a specific bearing defect is the presence of its associated characteristic frequency within the frequency spectrum. The magnitude of the amplitudes observed is proportional to the impact level created due to the defect during bearing rotation. It also depends on the position of accelerometer during data recording. We can observe from Fig. 10. below that the impact level decreases as we go from outer race fault to inner race fault and then to ball fault. For higher defect levels or severity levels, we can see the second harmonics in addition to the primary characteristic frequency. Second harmonics is 2 times the first harmonic by definition [10]. As seen in Fig.10. above, some unknown frequencies are also available in the spectrum which could be due to various vibrations in the motor system or the surrounding which are not related to bearing faults. The shaft frequency is available in all bearing class spectrums which is expected as long as the motor is running.
The required features are clearly observed for all bearing classes. The characteristic frequency amplitudes within ±2.5Hz bandwidth were used to form the feature vectors to compensate for energy leakage during spectrum generation. There was only a slight drift of the frequency values as compared to the calculated values except the ball fault characteristic frequency. The calculated frequency for ball fault is 137.6Hz but the value obtained during simulation was 130Hz. The difference is about 7.6Hz which lies outside the compensation bandwidth. However, ball fault amplitude is not a selected feature for ANN training as described in The normal bearing frequency spectrum did not show any significant frequency other than the shaft frequency as expected.

B. Time domain feature extraction
The time domain feature extraction is a simple computation of selected statistical values. Here 5,000 data points per feature vector were used to calculate root mean square, variance, kurtosis and normal negative log likelihood values. Below are the vibration waveforms for the four bearing classes. The waveforms show that there are different patterns for each bearing class. The neural network can learn these patterns and based on the training it is able to detect similar patterns during testing and online implementation. The time domain input features were calculated for each bearing class for training.

C. Neural Network training, validation and testing results
The results of training and validation of the neural network using Levenberg-Marquardt (LM) training algorithm for both time-frequency domain approach and time domain only approach is provided below.

10-fold cross validation performance results
The performance of the neural network can be further evaluated using 10-fold performance estimation method. The training set of 96 samples was divided into training sets and validation sets for each round of training. In six of the rounds, 86 training sets and 10 validation sets were used. For the rest of four rounds, 87 training sets and 9 validation sets were used.
The NN model used in this study was a three layer feedforward backpropagation network with 10 neurons in the hidden layer. The calculated average performance values were 2.1 x 10 -6 and 7.9 x10 -4 for time-frequency domain and time domain approaches respectively. Thus, the 10-fold cross validation result shows that timefrequency domain feature extraction method has a better performance as compared to time domain technique. The number of hidden neurons was increased to 20 for comparison purpose but there was no performance improvement observed.

Performance test results with test datasets
Apart from validation check during training and 10fold cross validation performance test described above, additional performance test was conducted using separate dataset files prepared for testing purposes. Separate datasets which involved different defect severity levels were used during the performance test. The test was done for all bearing classes with 12 samples each and with both feature extraction techniques. The test datasets used in both techniques was the same for respective bearing class. The test result is presented in below tables.

D. Neural Network PLC implementation results
A neural network that has been trained, validated and tested on Matlab software was deployed into PLC for implementation level tests. The tests were conducted using S7-PLCSIM soft PLC from Siemens. It is a standard simulator used by Siemens to test and debug PLC projects before site installation and commissioning [3].
Feature extraction and bearing diagnosis neural network function blocks (FB) were developed in S7-SCL language. The test dataset prepared on Matlab was imported to the PLC for implementation tests. These test datasets are different from training dataset but the same as the test datasets mentioned in Section 4.C.3 above.
Implementation tests were conducted for both feature extraction techniques. It was observed that performance of a PLC is poor in handling the frequency features. This is mainly due to the time domain to frequency domain conversion algorithm involved during feature extraction. Fast Fourier Transform (FFT) is the most common algorithm for the conversion but it requires high CPU scan time and consumes high memory area as a result of the loop instructions and sine/cosine functions involved.
Another drawback of handling frequency domain features in the PLC is the higher number of data points required for feature vectors as compared to time domain. As mentioned in Section 3, optimum number of data points required was 10,000 i.e. 10,000 floating point real numbers each of them occupying 4 bytes of memory just to import and store. This is roughly 40KB of data. Moreover, there is large number of intermediate data that needs to be stored temporarily during mathematical computations by FFT and PSD algorithms. The intermediate values take more memory since they are stored as real and imaginary values for a single complex number during conversion into frequency domain. This may occupy 4 -5 times of memory area required to store imported data.  frequency approach is not acceptable for real-time applications. This statement assumes the bearing diagnosis application runs in addition to other control tasks that require fast scan cycle time which is usually less than 50ms [19]. The summary of advantages and disadvantages of both approaches with regard to neural network bearing diagnosis using PLCs is presented in the following table. In view of above comparison, time domain is the best approach for PLC implementation.

V. CONCLUSION
The main target of this work is to test the feasibility of Artificial Neural Network (ANN) implementation on a standard Programmable Logic Controller (PLC) for motor bearing diagnosis applications. The research was conducted on bearing vibration dataset obtained from Case Western Reserve University (CWRU) data center. The data was recorded for normal bearing, bearing with outer raceway fault, bearing with inner raceway fault and bearing with ball fault.
A three layer multilayer perceptron (MLP) backpropagation neural network was proposed as a classifier. Time-frequency domain and time domain only features were investigated. Both features have shown good detection performance with an average performance error of 2.1 x 10 -6 for time-frequency approach and 7.9 x10 -4 for the time domain approach.
A PLC implementation simulation was performed using Siemens SIMATIC S7-300/400 Software and S7-PLCSIM PLC simulator. The hardware implementation simulation showed that the use of time domain features is better suited for real-time applications than timefrequency domain ones. The scan cycle time obtained was about 3 seconds for time-frequency features, which is not suitable for real-time applications where the same PLC is typically used for general control tasks and bearing diagnosis. The scan cycle time obtained with time domain features is only 10ms which is one of the shortest scan cycle times in PLCs. Therefore, a PLC implementation of an ANN-based bearing diagnosis is proved as feasible with the use of time domain features.
As compared to other hardware implementations of ANN-based bearing diagnosis such Very Large Scale Integration (VLSI) and Field Programmable Gate Arrays (FPGA), PLC implementation is the cheapest approach wherever the bearing diagnosis blocks can be included to a general purpose PLC. Unlike the others, the core solution in PLC implementation approach is software based which guarantees its flexibility. The only hardware required is an accelerometer connected to the PLC for vibration data collection. Moreover, PLCs are prevalent industrial controllers that have been in use for almost 50 years with a proven performance. This gives a wide opportunity for implementation of the bearing diagnosis on existing installations as well as new projects.