Abstract:
A method of and apparatus for evaluating the performance of a control system are disclosed. The method of evaluating the performance of a control system includes calculating a ratio of a first area associated with the signal and a second area associated with the signal. The method also includes comparing the ratio with a predetermined value and determining a cause of an oscillation in the control system based on the comparison. The apparatus for evaluating the performance of a control system includes a processor operable to execute a first function configured to calculate a ratio of a first area associated with the signal and a second area associated with the signal. The first function is also configured to compare the ratio with a predetermined value and determine a cause of oscillation in the control system based on the comparison.

Description:
BACKGROUND  
       [0001]     The present description relates generally to methods of and apparatuses for evaluating the performance of a control system. More specifically, the present description relates to automated methods of and apparatuses for detecting and diagnosing oscillations in a feedback control loop.  
         [0002]     Oscillating feedback control loops are a common occurrence in many types of control systems, such as heating, ventilating, and air conditioning (HVAC) systems. Oscillations are typically the result of periodic changes that cause a signal within a feedback control loop to vary undesirably in a deterministic and repeatable fashion. Oscillating loops are undesirable because they increase variability in the quality of control and product performance, accelerate equipment wear, and may cause further oscillations in other interacting loops. Thus, detection, diagnosis, and correction of oscillations are important activities in feedback control loop supervision and maintenance.  
         [0003]     Common causes of oscillations in feedback control loops include external oscillating disturbances, bad controller tuning, nonlinearities in a system component, such as static and dynamic nonlinearities, stiction (i.e., a sticking valve), incorrect component sizing, and poor actuator resolution, or a combination of these causes. Causes such as static and dynamic nonlinearities, stiction, incorrect component sizing, and poor actuator resolution are classified as system problems. External oscillating disturbances and bad controller tuning are classified as control problems.  
         [0004]     Oscillation diagnosis involves distinguishing between these different causes of oscillations once they have been detected. Distinguishing between these types of causes is important for identifying the appropriate remedial action. For example, attempts at re-tuning a controller will be unsuccessful or inefficient where a system problem is the cause of the oscillations rather than a control problem.  
         [0005]     One problem with existing methods of detecting oscillations is that they require prior specification of an expected time parameter for the feedback control loop. Usually the information is required to configure a noise filter, or to set detection thresholds. This information is often unavailable or cannot be reliably estimated. Further, existing methods of diagnosing oscillations typically require a manual visual inspection of the shape of several different signals in the oscillating feedback control loop in order to distinguish between control problems and system problems. These requirements increase the required effort and costs associated with implementing the diagnosis method.  
         [0006]     Thus, there is need for a method of and apparatus for evaluating the performance of a control system which does not require prior information about the feedback control loop being monitored. There is also need for a method of and apparatus for evaluating the performance of a control system that does not require monitoring shapes of multiple signals in the feedback control loop. There is further need for a method of and apparatus for evaluating the performance of a control system that is automated such that it does not require a manual visual inspection of a signal to distinguish among different causes of oscillations. There is yet further need for a method of and apparatus for evaluating the performance of a control system that is intuitive, easily implemented either directly or remotely, and requires minimal computational effort.  
       SUMMARY  
       [0007]     According to an exemplary embodiment, a method of evaluating the performance of a control system includes calculating a ratio of a first area associated with the signal and a second area associated with the signal. The method also includes comparing the ratio with a predetermined value and determining a cause of an oscillation in the control system based on the comparison.  
         [0008]     According to another exemplary embodiment, an apparatus for evaluating the performance of a control system includes a processor operable to execute a first function configured to calculate a ratio of a first area associated with the signal and a second area associated with the signal. The first function is also configured to compare the ratio with a predetermined value and determine a cause of an oscillation in the control system based on the comparison.  
         [0009]     According to another exemplary embodiment, an apparatus for evaluating the performance of a control system includes means for calculating a ratio of a first area associated with a signal from the control system and a second area associated with the signal, means for comparing the ratio with a predetermined value, and means for determining a cause of an oscillation in the control system based on the comparison.  
         [0010]     According to another exemplary embodiment, a method of evaluating the performance of a control system includes detecting an oscillation in the control system. The method also includes calculating a ratio of a first area associated with a signal from the control system and a second area associated with the signal, comparing the ratio with a predetermined value, and determining a cause of an oscillation in the control system based on the comparison.  
         [0011]     According to another exemplary embodiment, an apparatus for evaluating the performance of a control system includes a processor operable to execute a first function and a second function, wherein the first function is configured to perform the steps of calculating a ratio of a first area associated with the signal from the control system and a second area associated with the signal, comparing the ratio with a predetermined value, and determining a cause of an oscillation in the control system based on the comparison. The second function is configured to perform the step of detecting an oscillation in the control system.  
         [0012]     According to another exemplary embodiment, a method of evaluating the performance of a control system includes determining an autocorrelation from a signal from the controller, filtering the signal based on the autocorrelation, generating an autoregressive moving average (ARMA) model of the filtered signal, calculating a performance index value for the control system based on the model, and determining whether an oscillation is present in the control system based on the performance index value.  
         [0013]     According to another exemplary embodiment, an apparatus for evaluating the performance of a control system includes a processor operable to execute a first function. The first function is configured to perform the steps of determining an autocorrelation from a signal from the controller, filtering the signal based on the autocorrelation, and generating an autoregressive moving average (ARMA) model of the filtered signal. The first function is further configured to perform the steps of calculating a performance index value for the control system based on the model and determining whether an oscillation is present in the control system based on the performance index value.  
         [0014]     Other features and advantages of the present invention will become apparent to those skilled in the art from the following detailed description and accompanying drawings. It should be understood, however, that the detailed description and specific examples, while indicating preferred embodiments of the present invention, are given by way of illustration and not limitation. Many modifications and changes within the scope of the present invention may be made without departing from the spirit thereof, and the invention includes all such modifications. 
     
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0015]     The exemplary embodiments will hereafter be described with reference to the accompanying drawings, wherein like numerals depict like elements, and:  
         [0016]      FIG. 1  is a diagram which illustrates an apparatus for evaluating the performance of a control system according to an exemplary embodiment;  
         [0017]      FIG. 2  is a diagram which illustrates an exemplary feedback control loop which may be tested using the apparatus of  FIG. 1 ;  
         [0018]      FIG. 3  is a flow diagram which illustrates a method of detecting oscillations according to an exemplary embodiment;  
         [0019]      FIG. 4  graphically illustrates exemplary areas before and after peaks in an error signal for oscillations caused by system problems, and in an error signal for oscillations caused by control problems; and  
         [0020]      FIG. 5  is a flow diagram which illustrates a method of distinguishing between oscillations caused by control problems and oscillations caused by system problems according to an exemplary embodiment. 
     
    
     DETAILED DESCRIPTION  
       [0021]     In the following description, for the purposes of explanation, numerous details are set forth in order to provide a thorough understanding of the present invention. It will be evident to one skilled in the art, however, that the exemplary embodiments may be practiced without these specific details. In other instances, structures and device are shown in diagram form in order to facilitate description of the exemplary embodiments. Furthermore, while the exemplary embodiments are often described in the context of an HVAC control system utilizing proportional plus integral (PI) action controllers, it should be understood that the disclosed method of and apparatus for evaluating the performance of a control system may be used in any of a variety of control systems and control methodologies.  
         [0022]      FIG. 1  illustrates a testing tool  100  for evaluating the performance of a control system  110  according to an exemplary embodiment. Testing tool  100  includes an oscillation detection function  120  and an oscillation diagnosis function  130 . While testing tool  100  is illustrated in  FIG. 1  as including both oscillation detection function  120  and oscillation diagnosis function  130 , it should be understood that many other configurations are possible. For example, according to other embodiments, testing tool  100  optionally excludes either oscillation detection function  120  or oscillation diagnosis function  130 . According to yet other embodiments, oscillation detection function  120  and oscillation diagnosis function  130  are combined as a single function. Testing tool  100  may generally be used to evaluate the performance of control system  110 . More specifically, testing tool  100  may be used to detect and diagnose oscillations in a control loop, such as a control loop in an HVAC system.  
         [0023]     Testing tool  100  may be implemented as any general purpose computing device, such as a microprocessor device with sufficient memory and processing capability. An exemplary device may include a general purpose computing device in the form of a conventional computer, including a processing unit, a system memory, and a system bus that couples various system components including the system memory to the processing unit. The system memory may include read only memory (ROM) and random access memory (RAM). The computer may also include a magnetic hard disk drive for reading from and writing to a magnetic hard disk, a magnetic disk drive for reading from or writing to a removable magnetic disk, and an optical disk drive for reading from or writing to removable optical disk such as a CD-ROM or other optical media. The drives and their associated computer-readable media provide nonvolatile storage of computer-executable instructions, data structures, program modules and other data for the computer. Testing tool  100  may be implemented on, for example, a desktop or other computer (e.g., a stand-alone system or a networked system of computers), or on a portable device (e.g., laptop computer, personal digital assistant (PDA), etc.). For example, in the illustrated embodiment, testing tool  100  is implemented on a laptop computer which may be made available to field service personnel. According to another exemplary embodiment, testing tool  100  is integrated into a device, such as a controller, within control system  110 .  
         [0024]     Testing tool  100 , in some embodiments, may be operated in a networked environment using logical connections to one or more remote computers having processors. Logical connections may include a local area network (LAN) and a wide area network (WAN) that are presented here by way of example and not limitation. Such networking environments are commonplace in office-wide or enterprise-wide computer networks, intranets and the Internet. Those skilled in the art will appreciate that such network computing environments will typically encompass many types of computer system configurations, including personal computers, hand-held devices, multi-processor systems, microprocessor-based or programmable consumer electronics, network PCs, minicomputers, mainframe computers, and the like. Testing tool  100  may also be implemented in distributed computing environments where tasks are performed by local and remote processing devices that are linked (either by hardwired links, wireless links, or by a combination of hardwired or wireless links) through a communications network. In a distributed computing environment, program modules may be located in both local and remote memory storage devices.  
         [0025]     Testing tool  100 , in other embodiments, may be implemented as software or a web application. Software and web implementations may be accomplished with standard programming techniques with rule based logic and other logic to accomplish the various database searching steps, correlation steps, comparison steps and decision steps. It should also be noted that software and web implementations may include implementations using one or more lines of software code, and/or hardware implementations, and/or equipment for receiving manual inputs.  
         [0026]     Testing tool  100  is configured to be coupled (e.g., communicatively coupled) to control system  110  such that data may be exchanged (e.g., control signal data, etc.) between testing tool  100  and control system  110 . Such coupling may be direct or remote. For example, according to an exemplary embodiment, testing tool  100  is remotely coupled to control system  110  via an external network connection (e.g., internet, intranet, Ethernet, etc.) or the like. According to another embodiment, testing tool  100  is directly coupled to control system  110  via a suitable connection port or terminal on a controller or device within control system  110 . Testing tool  100  may be coupled to control system  110  using any suitable connection type or method, such as a wireless connection, a detachable communication cable, a “hard-wired” or other electrical or electronic connection, and the like.  
         [0027]     Control system  110  may be a control system, such as an HVAC system, which may include one or more industrial controllers utilizing any of a variety of control methodologies. For example, in one embodiment the control methodology may be a proportional plus integral (PI) methodology, and control system  110  may include one or more digital PI controllers operating in discrete time which implement one or more feedback control loops. In other embodiments, control system  110  may include other types of control systems and methodologies.  
         [0028]      FIG. 2  illustrates an exemplary feedback control loop  200  in control system  110  (shown for reference) which may be tested using testing tool  100 . Feedback control loop  200  includes a controller  202  and a plant  204 , wherein plant  204  represents a device or system to be controlled by feedback control loop  200 . In FIG.  2 , s denotes the Laplace operator, G c (s) is the transfer function for the controller and G p (s) is the plant transfer function. R(s) is the input command or setpoint signal, Y(s) is the feedback signal which represents the variable being controlled, and E(s) is the error signal, which represents the difference between input command or setpoint signal R(s) and feedback signal Y(s). U(s) is the controller output, L(s) is a disturbance signal acting at the plant input, and V(s) is a disturbance signal acting on plant output. Preferably, feedback control loop  200  is designed so that error signal E(s) reaches zero at steady state. According to an exemplary embodiment, feedback control loop is a PI feedback control loop and the controller transfer function is given by:  
                 G   c     ⁡     (   s   )       =         U   ⁡     (   s   )         E   ⁡     (   s   )         =       K   c     ⁡     (     1   +     1       T   i     ⁢   s         )                 (   1   )               
 where K c  is the controller gain and T i  is the integral time. 
 
         [0029]     Referring again to  FIG. 1 , oscillation detection function  120  is configured to detect the presence of oscillations in control system  110 , such as oscillations within feedback control loop  200  shown in  FIG. 2 . Oscillations are typically the result of periodic changes that cause a signal within feedback control loop  200  to vary in a deterministic and repeatable fashion. According to an exemplary embodiment, oscillation detection function  120  is configured to detect oscillations in feedback control loop  200  by detecting repeating patterns in error signal E(s). Error signal E(s) is acquired from feedback control loop  200  by, for example, directly measuring the difference between input command or setpoint signal R(s) and feedback signal Y(s), by estimating E(s) from another signal in feedback control loop  200 , etc.  
         [0030]     According to an exemplary embodiment, oscillation detection function  120  is configured to use autocorrelation information as a way to characterize properties of error signal E(s). The properties of error signal E(s) are then converted to system properties and an index is calculated that describes the stochastic control performance of feedback control loop  200 . The index is preferably normalized between zero and one. Other exemplary oscillation detection functions are described in detail in co-pending U.S. application Ser. No. 10/844,663, filed May 13, 2004 entitled “Method of and System for Evaluating the Performance of a Control System,” the entire contents of which are incorporated herein by reference.  
         [0031]      FIG. 3  illustrates a method  300  of detecting oscillations using a normalized index according to an exemplary embodiment. The method begins with a step  310 . In step  310  the lag-one autocorrelation is determined from sample measurements (e.g., discrete, or digital samples) of error signal E(s) acquired from control system  110 . The lag-one autocorrelation is determined from zero crossing information in the samples of error signal E(s) using the exemplary cosine formula: 
 {circumflex over (ρ)} e,1 =cos(π {tilde over (D)}   1 )   (2)  
 where {tilde over (D)} 1  is the average number of zero-crossings per sample of error signal E(s). 
 
         [0032]     In a step  320 , error signal E(s) is filtered using a first order filter that is parameterized with the lag-one autocorrelation from step  310 . An exemplary first order filter is given by:  
               H   ⁡     (     q     -   1       )       =     1     1   -         ρ   ^       e   ,   1       ⁢     q     -   1                     (   3   )             
 
 The filtered error signal is denoted by e f,t , where e f,t =H(q −1 )e t . The effect of the filtering operation is to add a new pole to the original process. 
 
         [0033]     In a step  330 , filtered error signal e f,t  is modeled as a second-order autoregressive moving average (ARMA (2,1)) process, and the coefficients in the denominator (1+w 1 q −1 +w 2 q −2 ) of the ARMA (2,1) model are estimated from the measurements of filtered error signal e f,t . The coefficients may be estimated by solving the following two exemplary simultaneous equations:  
               w   1     =             ρ   ^     1     ⁢       ρ   ^     2       -       ρ   ^     3             ρ   ^     2     -       ρ   ^     1   2                 (   4   )                 w   2     =             ρ   ^     1     ⁢       ρ   ^     3       -       ρ   ^     2   2             ρ   ^     2     -       ρ   ^     1   2                 (   5   )             
 
         [0034]     In Eqs. (4) and (5), the autocorrelation lags {circumflex over (ρ)} 1 , . . . {circumflex over (ρ)} 3  can be estimated from a set of higher-order crossings using the following exemplary formulae: 
 
{circumflex over (ρ)} 1 =cos(π {tilde over (D)}   1 ) 
 
{circumflex over (ρ)} 2 =−(2−2{tilde over (π)} 1 )cos(π {tilde over (D)}   2 )+(−1+2{tilde over (π)} 1 ) 
 
{circumflex over (ρ)} 3 =(6−8{circumflex over (ρ)} 1 +2{circumflex over (p)} 2 )cos(π {tilde over (D)}   3 )−(−4+7{circumflex over (ρ)} 1 −4{circumflex over (ρ)} 2 )   (6) 
 
 where {tilde over (D)} 1 , {tilde over (D)} 2 , {tilde over (D)} 3  are the first three higher-order crossings counts per sample in filtered error signal e f,t . The set of higher-order crossings is obtained by counting crossing events in repeatedly differenced versions of filtered error signal e f,t . For example, {tilde over (D)} 2  would be obtained by counting the number of zero crossings in the first difference of filtered error signal e f,t  and dividing by the number of samples minus one. 
 
         [0035]     In a step  340 , he damping ratio ζ of the second-order characteristic equation for the ARMA (2,1) model obtained in step  330  is calculated and this damping ratio ζ is used as a control performance index η. To calculate damping ratio ζ, the second-order characteristic equation is first transformed into the z-domain according to the following exemplary equation: 
 
1 +w   1   q   −1   +w   2   q   −2   W   q ( z )=( z−r   1 )( z−r   2 )   (7) 
 
 where the roots r 1  and r 2  are obtained by solving the following quadratic equations:  
                 r   1     =       1   2     ⁢     (       -     w   1       +         w   1   2     -     4   ⁢     w   2             )         ,       r   2     =       1   2     ⁢     (       -     w   1       -         w   1   2     -     4   ⁢     w   2             )                 (   8   )             
 
         [0036]     Given that poles at s=p in the s-plane map onto poles at z=e pΔt  in the z-plane, expressions for damping ratio ζ and natural frequency Ω n  of the second-order characteristic equation are derived from the phase and magnitude of W q (z) for the case when the roots are complex conjugates as given by: 
 
φ=Δ t Ω n √{square root over ((1−ζ 2 ))}  (9) 
 
  
             M   =       exp   ⁡     (       -   Δ     ⁢           ⁢   t   ⁢           ⁢     ζω   n       )       =     exp   (       -   ϕζ         (     1   -     ζ   2       )         )               (   10   )             
 
 where  
       ϕ   =       ∠   ⁢           ⁢       W   q     ⁡     (   z   )         =       tan     -   1       (         -   1       w   1       ⁢              w   1   2     -     4   ⁢     w   2                  )           
 
 is the phase and  
               M   =          ⁢       W   q     ⁡     (   z   )              =       1   2     ⁢         w   1   2     +            w   1   2     -     4   ⁢     w   2                        
 
 is the magnitude of the complex conjugate roots, and Δt is the sampled period. 
 
         [0037]     Eqs (9) and (10) can be rearranged to provide the following expression for damping ratio ζ and thus control performance index η:  
             η   =       ±     ln   ⁡     (   M   )                 ln   2     ⁡     (   M   )       +     ϕ   2                   (   11   )             
 
 where control performance index η is set to the positive root value. Real z-plane roots map onto real roots in the s-plane roots. Damping ratio ζ and thus control performance index η of the second-order characteristic equation with two real roots can be calculated from:  
             η   =     -       1   2     ⁡     [         ln   ⁡     (     r   1     )       +     ln   ⁡     (     r   2     )               ln   ⁡     (     r   1     )       ⁢     ln   ⁡     (     r   2     )             ]                 (   12   )             
 
         [0038]     Control performance index η will be close to zero when error signal E(s) is oscillating. Oscillations are detected by checking when control performance index η violates a threshold. For example, according to an exemplary embodiment, error signal E(s) is oscillating when η&lt;δ, where δ is a small number such as 0.1.  
         [0039]     Thus, the method of and apparatus for evaluating the performance of a control system is configured to detect and diagnose oscillations without requiring any prior information about the feedback control loop being monitored, which facilitates easy implementation. Further, because the method and apparatus is capable of detecting and diagnosing oscillations based on a single signal from feedback control loop  200 , it is applicable to a broad range of control systems, such as those with staged control, and also reduces the effort and cost required for implementation. The method of and apparatus for evaluating the performance of a control system also provides an intuitive index for detecting oscillations which is computationally simple and robust.  
         [0040]     Referring again to  FIG. 1 , oscillation diagnosis function  130  is configured to diagnose the cause of oscillations present in control system  110 , such as oscillations detected within feedback control loop  200  shown in  FIG. 2  using, for example, oscillation detection function  120 . More specifically, oscillation diagnosis function  130  is configured to distinguish between oscillations within feedback control loop  200  which are the result of control problems and oscillations within feedback control loop  200  which are the result of system problems. Control problems include such causes of oscillations as external oscillating disturbances to feedback control loop  200  and inadequate controller tuning (e.g., aggressive controller tuning) within feedback control loop  200 . System problems include such causes of oscillations as static and dynamic nonlinearities of a device, a sticking valve, or insufficient valve actuator resolution in feedback control loop  200 .  
         [0041]     Oscillation diagnosis function  130  is configured to distinguish between oscillations caused by control problems and oscillations caused by system problems based on sample measurements of error signal E(s) in feedback control loop  200 . Preferably, error signal E(s) is sampled at a rate sufficiently fast to capture key features of error signal E(s), such as curvatures, peaks, and zero crossings. It is also preferable to reduce the effects of noise by filtering error signal E(s) using a low-pass filter, such as a digital low-pass filter. An exemplary low pass filter has a filter coefficient selected as a function of a lag-one correlation function determined by oscillation detection function  120 .  
         [0042]     According to an exemplary embodiment, oscillation diagnosis function  130  is configured to distinguish between oscillations caused by control problems and oscillations caused by system problems by calculating the ratio of areas between zero crossings before and after a peak in error signal E(s). To illustrate,  FIG. 4  graphically illustrates exemplary areas before and after peaks in an error signal E(s)  410  for oscillations caused by system problems, and in an error signal E(s)  420  for oscillations caused by control problems. For oscillations caused by system problems, such as a sticking valve, error signal E(s)  410  is typically characterized by a shape having exponential rise and decay. This exponential rise and decay is detected by calculating two areas associated with a half-cycle of a graphical representation of error signal E(s), and then calculating the ratio of the two areas to assess symmetry in error signal E(s). An area A 1  is defined between a zero crossing  412  and a peak  414  of error signal E(s), and an area A 2  is defined between peak  414  and a zero crossing  416 . The ratio of A 1  and A 2  is given by: 
 
 R=A   1   /A   2    (13) 
 
 As area A 1  is typically larger than area A 2  for error signal E(s)  410 , the ratio of R=A 1 /A 2  is greater than one. 
 
         [0043]     For oscillations caused by control problems, such as an aggressively tuned controller, the error signal E(s)  420  is typically sinusoidal in shape. This sinusoidal shape is similarly detected by calculating two areas associated with a half-cycle of a graphical representation of error signal E(s), and then calculating the ratio of the two areas to assess symmetry in error signal E(s). An area A 1  is defined between a zero crossing  422  and peak  424  of error signal E(s)  420  and an area A 2  is defined between peak  424  and a zero crossing  426 . As area A 1  is typically equal to area A 2  for error signal E(s)  420 , the ratio of R=A 1 /A 2  is approximately one.  
         [0044]     In order to distinguish between oscillations caused by control problems and oscillations caused by system problems, the ratio of R=A 1 /A 2  is compared with a value of 1+δ, where δ is a tunable threshold value that determines the sensitivity of oscillation diagnosis function  130 , and may be set to the desired value. Selecting a small value of δ results in high sensitivity and a larger probability of a false diagnosis, while selecting a larger value of δ results in reduced sensitivity and a smaller probability of a false diagnosis. According to an exemplary embodiment, a value of δ=1 is used. It should be understood that δ as used in oscillation diagnosis function  130  is different from and independent of δ as used in oscillation detection function  120 , and that the two values are not necessarily the same.  
         [0045]      FIG. 5  illustrates a method  500  of distinguishing between oscillations caused by control problems and oscillations caused by system problems according to an exemplary embodiment. The method begins with a step  510 . In step  510 , sampling data for error signal E(s) is acquired for a feedback control loop in which oscillations have been detected. According to an exemplary embodiment, the oscillations are detected using oscillation detection function  120 , and the samples of error signal E(s) are filtered using a digital low-pass filter having a coefficient selected as a function of the lag-one correlation function determined by oscillation detection function  120 .  
         [0046]     In a step  520 , Eq. (13) is used to calculate a ratio R of two areas associated with error signal E(s) as described above with reference to  FIG. 4 . In a step  530 , the calculated value of ratio R is compared with a quantity 1+δ, where δ is a threshold that determines the sensitivity of the diagnosis as described above. If the calculated value of R is equal to or greater than 1+δ, then a system problem, such as a sticking valve, is diagnosed as the cause of the oscillations in a step  540 . If the calculated value of R is less than 1+δ then a control problem, such as an aggressively tuned controller or an external disturbance, is diagnosed as the cause of the oscillations in a step  540 .  
         [0047]     Thus, the method of and system for evaluating the performance of a control system is capable of diagnosing oscillations using a single signal from a feedback control loop, which reduces the required effort and cost of implementation by not requiring multiple control signals to be monitored. The method and apparatus also simplifies diagnosis by providing an automated way to distinguish among different causes of oscillations that utilizes the calculation of a ratio of areas associated with a single control signal, and that does not require a visual inspection of various control signal waveforms. The method of and apparatus for evaluating the performance of a control system also provides an intuitive ratio value for distinguishing between possible causes of oscillations which is computationally simple and robust. The method of and apparatus for evaluating the performance of a control system is also easily implemented either directly or remotely, such that the proper diagnosis may be made before deciding whether it is necessary to dispatch service personnel to a remote site.  
         [0048]     It should be understood that the construction and arrangement of the elements of the exemplary embodiments are illustrative only. Although only a few embodiments of the present invention have been described in detail in this disclosure, many modifications are possible without materially departing from the novel teachings and advantages of the subject matter recited in the claims. Accordingly, all such modifications are intended to be included within the scope of the present invention as defined in the appended claims. Unless specifically otherwise noted, the claims reciting a single particular element also encompass a plurality of such particular elements. The order or sequence of any process or method steps may be varied or re-sequenced according to alternative embodiments. In the claims, any means-plus-function clause is intended to cover the structures described herein as performing the recited function and not only structural equivalents but also equivalent structures. Other substitutions, modifications, changes and/or omissions may be made in the design, operating conditions and arrangement of the exemplary embodiments without departing from the spirit of the present invention as expressed in the appended claims.