{"title": "A Neural Network Autoassociator for Induction Motor Failure Prediction", "book": "Advances in Neural Information Processing Systems", "page_first": 924, "page_last": 930, "abstract": null, "full_text": "A Neural Network Autoassociator for \nInduction Motor Failure Prediction \n\nThomas Petsche, Angelo Marcantonio, Christian Darken, \n\nStephen J. Hanson, Gary M. Kuhn and Iwan Santoso \n\n[PETSCHE, ANGELO,  DARKEN,  JOSE,  GMK,  NIS]@SCR.SIEMENS.COM \n\nSiemens Corporate Research, Inc. \n\n755 College Road East \nPrinceton, NJ 08853 \n\nAbstract \n\nWe  present results  on  the  use  of neural  network based  autoassociators \nwhich  act  as  novelty  or anomaly  detectors  to  detect  imminent  motor \nfailures.  The autoassociator is  trained  to  reconstruct  spectra obtained \nfrom the healthy motor.  In laboratory tests, we have demonstrated that the \ntrained autoassociator has a small reconstruction error on measurements \nrecorded from healthy motors but a larger error on those recorded from a \nmotor with a fault.  We have designed and built a motor monitoring system \nusing an  autoassociator for anomaly detection and are in the process of \ntesting the system at three industrial and commercial sites. \n\n1 \n\nIntroduction \n\nAn unexpected breakdown of an electric induction motor can cause financial  loss  signif(cid:173)\nicantly  in  excess of the cost of the  motor.  For example,  the  breakdown of a  motor in  a \nproduction line during a production run can cause the loss of work in progress as  well as \nloss of production time. \n\nWhen a motor does fail,  it is not uncommon to replace it with an oversized motor based on \nthe assumption that if a motor is not running at its design limit then it will  survive longer. \nWhile this is frequently effective, this leads to significantly lower operating efficiencies and \nhigher initial and operating costs. \n\nThe primary motivation behind this project is the observation that if a motor breakdown and \nbe predicted before the actual breakdown occurs, then the motor can be replaced in a more \norderly way,  with minimal interruption of the process in which it is involved.  The goal is \nto  produce a system that is conceptually similar to  a fuel  gauge on an automobile.  When \nthe system detects conditions that indicate that the motor is approaching its end-of-life, the \noperators are notified that a replacement is necessary in the near future. \n\n\fA Neural Network Autoassociator for Induction Motor Failure Prediction \n\n925 \n\n2  Background \n\nAt present, motors in critical operations that are subject to mechanical failures - for example, \nfire  pump motors on US  Navy  vessels - are typically  monitored by  a human expert who \nperiodically  listens  to  the  vibrations of the  motor and,  based  on experience,  determines \nwhether the motor sounds healthy or sounds like a problem is developing.  Since mechanical \nprobiems in  motors typically  lead to increased or changed vibrations,  this  technique can \nwerk well.  Unfortunately, it depends on a competent and expensive expert. \n\nIn an attempt to automate motor monitoring, several vendors have \"automated motor moni(cid:173)\ntoring\" equipment available.  For mechanical failure monitoring, such systems typically rely \non several accelerometers to measure the vibration of the motor at various points and along \nvarious axes.  The systems then display information, primarily about the vibration spectrum, \nto  an operator who determines whether the motor is functioning properly.  These systems \nare expensive since they rely on several accelerometers, each of which is itself expensive, \nas well as data collection hardware and a computer.  Further, the systems require an expert \noperator and frequently require that the motor be tested only when it is driving a known load. \n\nNeither  the  human  motor expert nor the  existing  motor monitoring systems  provide  an \naffordable solution  for continuous on-line mechanical failure  monitoring.  However,  the \nsuccess of the human expert and existing vibration monitors does demonstrate that in fact, \nthere  is  sufficient  information  in  the  vibration  of an  electric  induction  motor  to  detect \nimminent mechanical failures. \n\nSiemens Energy and Automation has proposed a new product, the Siemens Advanced Motor \nMaster System II (SAMMS II), that will continuously monitor and protect an electric induc(cid:173)\ntion motor while it is operating on-line.  Like the presently available SAMMS, the SAMMS \nII is designed to provide protection against thermal and electrical overload an, in addition, \nit will provide detection of insulation deterioration and mechanical fault monitoring. \n\nIn contrast to  existing systems and techniques,  the  SAMMS II is  designed to  (1) require \nno human expert to determine if a motor is developing problems; (2) be inexpensive; and \n(3) provide continuous, on-line monitoring of the motor in normal operation. \n\nThe requirements for the SAMMS II, in partiCUlar the cost constraint, require that several \nissues be resolved.  First, in order to produce a low cost system, it is necessary to eliminate \nthe need for expensive accelerometers.  Second, wiring should be limited to the motor control \ncenter, i.e., it should not be necessary to run new signal wires from the motor control center \nto  the motor.  Third,  the  SAMMS II is  to  provide continuous on-line monitoring,  so  the \nsystem must adapt to or factor out the effect of changing loads on the motor.  Finally since \nthe SAMMS  II would  not necessarily  be bundled with  a  motor and  so  might be  used  to \ncontrol and monitor an arbitrary motor from an arbitrary manufacturer, the design can not \nassume that a full description of the motor construction is available. \n\n3  Approach \n\nThe first  task was to determine how to eliminate the accelerometers.  Based on work done \nelsewhere (Schoen, Habetler & Bartheld, 1994), SE&A determined that it might be possible \nto use measurements of the current on a single phase of the power supply  to  estimate the \nvibration of the motor.  This depends on the assumption that any vibration of the motor will \ncause the rotor to move radially relative to the stator which will cause changes in the airgap \nwhich, in tum, will induce changes in the current. \n\nExperiments were done at the Georgia Institute of Technology to determine the feasibility \nof this idea using the same sort of data collection system described later.  Early experiments \nindicated  that,  for  a  single motor driving a  variety  of loads,  it is possible to  distinguish \n\n\f926 \n\nT. PETSCHE, A. MARCANTONIO, C.  DARKEN, S.  J.  HANSON, G.  M.  KUHN, I.  SANTOSO \n\nTable 1:  Loads for motors #1  and #2. \n\nLoad type \nconstant \nsinusoidal oscillation at rotating frequency \nsinusoidal oscillation at twice the rotating frequency \nswitching load (50% duty cycle) at rotating frequency \nsinusoidal oscillation 28 Hz \nsinusoidal oscillation at 30 Hz \nswitching load (50% duty cycle) at 30 Hz \n\nLoad Magnitude \nhalf and full rated \nhalf and full rated \nfull rated \nfull rated \nhalf and full  rated \nfull rated \nfull rated \n\nTable 2:  Neural network classifier experiment. \n\nFeatures (N) \nPerformance on motor #1 \nPerformance on motor #2 \n\n48 \n100% \n\n63 \n100% \n30% \n\n64 \n92% \n25% \n\n110 \n100% \n55% \n\n320 \n100% \n37% \n\nbetween a current spectrum obtained from the motor while it is healthy and another obtained \nwhen the motor contains a fault.  Moreover, it is also possible to automatically generate a \nclassifiers that correctly determine the presence or absence of a fault in the motor. \n\nThe first, obvious approach to this monitoring task would seem to be to  build a classifier \nthat would  be  used to  distinguish  between a  healthy  motor and one that has developed a \nfault that is likely to lead to a breakdown.  Unfortunately, this approach does not work. \n\nAs described above, we have successfully built classifiers of various sorts using manual and \nautomatic techniques to distinguish between current spectra obtained from a motor when it \nis healthy and those obtained when it contains a fault. \n\nHowever, since the SAMMS II will be connected to a motor before it fails and will be asked \nto identify a failure without ever seeing a labeled example of a failure from that motor, a \nclassifier can only be used if it can be trained on data collected from one or more motors \nand then  used  to  monitor the motor of interest.  Unfortunately, experiments indicate that \nthis will not work. \n\nOne of these experiments is illustrated in table 2.  Several feedforward neural network clas(cid:173)\nsifiers were trained using examples from a single motor under four conditions:  (1) healthy, \n(2)  unbalanced,  (3)  containing a  broken rotor bar and  (4)  containing a  hole in the outer \nbearing race.  The ten different loads listed in table 1 were applied to the motor for each of \nthese conditions. \nThe  networks  contained N  inputs  (where  N  is  given  in  table  2);  9  hidden  units  and  4 \noutputs.  There were 40 training examples where each example is the average of 50 distinct \nmagnitude scaled FFrs obtained from motor #1  from a single load/fault combination.  The \ntest data for which the results are reported in the table consisted of 40 averaged FFfs from \nmotor #1  and 20 averaged FFfs (balanced and unbalanced only) from motor #2.  The test \nset for motor #1  is completely distinct from the training set. \nIn the case where n = 110,  the FFf components were selected to include the frequencies \nidentified by  the theory of motor physics as interesting for the three fault conditions and \nexclude all other components.  This led to an  improvement over the other cases where a \nsingle contiguous set of components was chosen, but the performance still degrades to about \nrandom chance instead of 100%. \n\nThis experiment clearly  illustrates  that is is possible to  distinguish  between  healthy  and \nfaulty  spectra obtained from  the  same motor.  However,  it also  clearly  illustrates  that a \n\n\fA Neural Network Autoassociator for Induction Motor Failure Prediction \n\n927 \n\nMeasurements \n\nNovelty \ndetection \n\nNovelty \n\nDecision \n\nDiagnosis \n\nAdaptation \nAlgOrithm \n\nFigure 1: The basic form of an anomaly detection system. \n\nclassifier trained on one motor does not perform well on another motor since the error rates \nincrease immensely.  Based on results such as these, we have concluded that it is not feasible \nto build a single classifier that would be trained once and then placed in the field to monitor \na motor.  Instead we are pursuing an alternative based on anomaly detection which adapts \na monitor to the particular motor for which it is responsible. \n\n4  Anomaly detection \n\nThe basic notion of anomaly detection for monitoring is illustrated in  figure  1.  Statistical \nanomaly detection centers around a model of the data that was  seen while the motor was \noperating normally.  This model is  produced by  collecting spectra from  the motor while \nit is  operating  normally.  Once trained,  the  system  compares  each  new  spectrum to  the \nmodel to determine how  similar to  or different from the training set it is.  This  similarity \nis  described  by  an  \"anomaly metric\"  which,  in  the  simplest case,  can  be thresholded to \ndetermine whether the motor is still normal or has developed a fault.  Once the \"anomaly \nmetric\" has been generated, various statistical techniques can be used to determine if there \nhas been a change in the distribution of values. \n\n5  A Neural Network-based Anomaly Detector \n\nThe core of the most successful monitoring system we have built to date is a neural network \ndesigned to function as an autoassociator (Rumelhart, Hinton &  Williams,  1986, called it \nan \"encoder\").  We use a simple three layer feedforward network with N  inputs, N  outputs \nand K  < N  hidden units.  The input layer is  fully  connected to  the hidden layer which is \nfully  connected to  the output layer.  Each  unit in  the hidden and output layers computes \nXi = (J  ( 2::;0 Wi,jXj)  ,  where Xi is the output of neuron i which receives inputs from Mi other \nneurons and Wi,j  is the weight on the connection from neuron} to neuron i.  The network is \ntrained using the backpropagation algorithm to reconstruct the input vector on the output \nunits.  Specifically, if Xi  is one of n input vectors and Xi is the corresponding output vector, \nthe network is  trained to minimize the sum of squared errors E  = 2::~1 Ilxi - xdl2. Once \ntraining is complete, the anomaly metric is mi = IIXi  -\n\nxi11 2. \n\n6  Anomaly Detection Test \n\nWe have tested the effectiveness of the neural network autoassociator as an anomaly detector \non several motors.  For all these tests,  the autoasociator had 20 hidden  units.  The hidden \nlayer size was  chosen after some experimentation and  data analysis on motor #1 , but no \nattempt was made to tune the' hidden layer size for motor #2 or motor #3. \n\nMotor  #1  was  tested  using  the  ten  different  loads  listed  in  table  1  and  four  different \n\n\f928 \n\nT.  PETSCHE, A.  MARCANTONIO, C. DARKEN, S.  1.  HANSON, O.  M. KUHN, I: SANTOSO \n\nq  ,---------------------------~ \n\n....... \n\n,.;-.. , \n,_.-\n\n<Xl o \n\n\"! \no \n\n<Xl o \n\nC\\I o \n\n.... : \n\n..-\n.. ..-. .. \n\n... -\n\nbalanced \nunbalanced \n\n0.0 \n\no.oooos \n\n0.0001 \n\nThreshold \n\n0.00015 \n\n0.0002 \n\n0.0 \n\n0.00002  0.00004  0.00006  0.00008  0.00010  0.00012 \n\nThreshold \n\nFigure 2:  Probability of error as a function of threshold using individual FFfs on (a) mo(cid:173)\ntor #1  with 319 inputs and (b) motor #2 with 320 inputs. \n\nhealth/fault conditions:  healthy  (balanced);  unbalanced;  broken rotor bar;  and a  hole in \nthe outer bearing race.  Motor #2 was tested while driving the same ten loads,  but for one \nhealthy and one faulty condition:  healthy (balanced) and unbalanced. \n\nFor both motors #1 and #2, recordings of a single current phase were made as follows. For \neach fault condition, a load was selected and applied and the motor was run and the current \nsignal recorded for five minutes.  Then a new load was introduced and the motor was run \nagain.  The load was constant during any five minute recording session. \n\nMotor #3  was tested using thirteen different loads,  but only two fault conditions:  healthy \n(balanced) and unbalanced.  In this case, however, load changes occurred at random times. \nWe preprocessed this data to  to identify where the load changes occurred to  generate the \ntraining set and the healthy motor test sets. \n\n6.1  Preprocessing \n\nRecordings were made on a digital audio tape (OAT). The current on  a single phase was \nmeasured with a current transformer, amplified, notch filtered to reduce the magnitude of \nthe 60Hz component, amplified again and then applied as input to the OAT. The notch filter \nwas a switched capacitor filter which reduced the magnitude at 60Hz by about 30dB. \n\nThe time series obtained from the OAT was processed to reduce the sampling rate and then \ndividing the data into  non-overlapping blocks and computing the  FFT of each  block.  A \nsubset of the FFf magnitude coefficients was  selected and  for each FFT,  independent of \nany other FFf, the components were linearly scaled and translated to  the interval  [e,  1 -\ne]  (typically  e  = 0.02).  That  is,  for  each  FFT  consisting  of coefficients to,  ... .tn-t, \nwe selected a  subset,  F,  (the  same  for  all  FFTs)  of the components and computed a  = \n(l - 2e)(maxiEFh - miniEFh)-t  and  b  = miniEFh.  Then  the  input  vector,  x,  to  the \nnetwork is Xj  = a(fij  - b) + e where, for allj < k:  ij, ik  E F  and ij  < ik. \n\n6.2  Experimental Results \n\nIn figure 2a, we illustrate the results of a typical anomaly detection experiment on motor #1 \nusing  an  autoassociator with  319 inputs and  20  hidden  units.  This  graph illustrates  the \nperformance (false alarm and miss rates) of a very simple anomaly detection system which \nthresholds the anomaly metric  to determine if the motor is  good or bad.  The decreasing \ncurve that starts at threshold = 0, P(error) = 1 is the false  alarm rate as a function  of the \nthreshold.  Each increasing curve is the miss rate for a particular fault type. \n\nIn  figure  2b  we  illustrate  the  performance  of an  autoassociator  on  motor  #2  using  an \n\n\fA Neural Network Autoassociator for Induction Motor Failure Prediction \n\n929 \n\nI \n\nq \n\n<Xl \nci \n\n%~ \nii \niL-.:t: \n0 \n\n'\" ci \n\n0 \nci \n\n0.0 \n\n..... - ' \n\n/~',. .... \n\n/ \n/ \n, \n.I \n\n,,/ \n\n.... -. \n\n...... \n\n.. / ------------1 \n0.0005 \n0.0001 \n\n0.0004 \n\n0.0002 \n\n0.0003 \n\nThreshold \n\nFigure 3:  Probability of error for motor #3 using individual FFTs and 319 inputs. \n\nq  , - - - - - - - - - - - - - - - - - - - - - - - - - - - - ,  \n\nq  ,---------------------------~ \n\n<Xl \nci \n\n, ......... \n\n<Xl o \n\n'\" ci \n\n,/ \n\nbalanced \nunbalanced \n\n0.0 \n\n0.00005 \n\n0.0001 \n\nThreshold \n\n.,.-' \n\no \nci  ~---.---,r_--.---~--_r--_.~ \n\n0.00015 \n\n0.0002 \n\n0.0 \n\n0.00002  0.00004  0.00006  0.00008  0.00010  0.00012 \n\nThreshold \n\nFigure  4:  Probability  of error  using  averaged  FFTs  for  (a)  motor  #1  and  319  inputs \n(b) motor #2 and 320 inputs. \n\nautoassociator with 320 inputs and 20 hidden units.  Figure 3 shows our results on motor #3 \nusing an autoassociator with 319 inputs. \n\nWe  have  found  significant performance improvements by  averaging  several  consecutive \nFFTs.  In figure 4 we show the results for motors #1  and #2 when we averaged 11  FFTs to \nproduce the input features.  Compare these curves to those in figure 2. In particular, notice \nthat the probability of error is much lower for the averaged FFTs when  the  good motor \ncurve crosses anyone of the faulty motor curves. \n\n7  Candor System Design \n\nBased on our experiments with autoassociators, we designed a prototype mechanical motor \ncondition monitoring system.  The functional  system architecture is shown in figure 5.  In \norder to control costs, the system is implemented on a PC. The system is  designed so that \neach PC  can monitor up to  128  motors using one  16-bit analog to  digital converter.  The \nsignals are collected, filtered and multiplexed on custom external signal processing cards. \nEach card supports up to eight motors (with up to  16 cards per PC). \n\nThe  system  records  current  measurements  from  one  motor  at  a  time.  For each  motor, \nmeasurements are collected, four FFTs are computed on non-overlapping time series, and \nthe four FFTs are averaged to produce a vector that is input to the neural network. The system \nreports that a motor is bad only if more than five of the last ten averaged FFTs produced an \nanomaly metric more than five standard deviations greater than the mean metric computed \non the training set.  Otherwise the motor is reported to be normal.  In addition to monitoring \nthe motors, the prototype systems are designed to record all measurements on tape to support \n\n\f930 \n\nT. PETSCHE, A.  MARCANTONIO, C. DARKEN, S. 1. HANSON, G. M.  KUHN, I. SANTOSO \n\nGOOD \nBAD \n\nFigure 5:  Functional architecture of Candor. \n\nfuture experiments with alternative algorithms and tuning to improve performance. \n\nTo  date,  three  monitoring  systems  have  been  installed: \nin  an  oil  refinery,  in  a  testing \nlaboratory and on an office building ventilation system.  The system has correctly detected \nthe only  failure  it has  seen  so far:  when a  filter  on the inlet to  a  water circulation pump \nbecame clogged the spectrum changed so much that the average daily novelty metric jumped \nfrom  less than one standard deviation above the training set average to more than twenty \nstandard deviations.  We hope to have further test results in a year or so. \n\n8  Related work \n\nGluck and Myers (1993) proposed a model oflearning in the hippocampus based in part on \nan autoassociator which is used to detect novel stimuli and to compress the representation \nof the  stimuli.  This  model  has  accurately predicted  many  of the  classical  conditioning \nbehaviors that have been observed in normal and hippocampal-damaged animals.  Based on \nthis  work, Japkowicz, Myers and Gluck (1995) independently derived an  autoassociator(cid:173)\nbased novelty detector for machine learning tasks similar to that used in our system. \n\nTogether with Gluck, we have tested an autoassociator based anomaly detector on helicopter \ngearbox  failures  for  the  US  Navy.  In  this  case,  the  autoassociator  is  given  512  inputs \nconsisting of 64 vibration based features from each of 8 accelerometers mounted at different \nlocations on the gearbox. In a blind test, the autoassociator was able to correctly distinguish \nbetween  feature  vectors  taken  from  a  damaged gearbox  and  other feature  vectors taken \nfrom  normal  gearboxes,  all recorded in  flight.  Our anomaly detector will  be included in \ntest flights of a gearbox monitoring system later this year. \n\nReferences \n\nGluck, M.  A.  & Myers, C. E. (1993).  Hippocampal mediation of stimulus representation: \n\nA compuational theory. Hippocampus, 3(4), 491-561. \n\nJapkowicz,  N.,  Myers,  c.,  &  Gluck,  M.  A.  (1995).  A  novelty  detection  approach  to \nclassification.  In  Proceedings  of the  Fourteenth  International Joint  Conference  on \nArtificial Intelligence. \n\nRumelhart,  D., Hinton,  G.,  &  Williams,  R.  (1986).  Learning internal representations by \nerror  propagation.  In  D.  Rumelhart  &  J.  McClelland  (Eds.),  Parallel  Distributed \nProcessing (pp. 318-362). MIT Press. \n\nSchoen,  R.,  Habetler, T.,  &  Bartheld, R.  (1994).  Motor bearing damage detection  using \n\nstator current monitoring. In Proceedings of the IEEE lAS Annual Meeting. \n\n\f", "award": [], "sourceid": 1077, "authors": [{"given_name": "Thomas", "family_name": "Petsche", "institution": null}, {"given_name": "Angelo", "family_name": "Marcantonio", "institution": null}, {"given_name": "Christian", "family_name": "Darken", "institution": null}, {"given_name": "Stephen", "family_name": "Hanson", "institution": null}, {"given_name": "Gary", "family_name": "Kuhn", "institution": null}, {"given_name": "N.", "family_name": "Santoso", "institution": null}]}