Abstract:
An active control system for multiple interacting channels to control a constant noise or vibration consisting of first and second sensor means adapted to provide reference and residual signals respectively, a first and second filter means and first and second subtraction means to provide first and second output control signals and means for combining said output signals.

Description:
BACKGROUND 
     Active control of disturbances, such as sound, vibration or disturbances in signals is well known. A recent review of the field is contained in `Active Sound Control` by P. A. Nelson and S. J. Elliot, Academic Press, 1991. Such systems use an actuator to generate a control disturbance which is out of phase with the original disturbance and so tends to cancel it. This technique is first described by Lueg in U.S. Pat. No. 2,043,416. Most active control systems use adaptive filtering techniques, in which the controller characteristic is adjusted according to an algorithm such as the `filtered-x LMS algorithm` such as disclosed by D. R. Morgan, IEEE Transactions on Acoustics, Speech and Signal Processing, Volume ASSF 28, Number 4, 1980, and by Widrow and Stearns, `Adaptive Signal Processing`, Prentice Hall, 1985. Two widely used techniques are feedforward control, as described in Chaplin U.S. Pat. No. 4,122,303, and feedback control as described in Ziegler U.S. Pat. No. 4,878,188. 
     In an active control system, the reference sensor is usually sensitive to the control disturbance. This provides a feedback mechanism which can cause the system to become unstable. One known method for compensating for this is to estimate the feedback component and to subtract it from the sensor signal. Both Chaplin and Ziegler use this compensation technique. 
     The adaptive feedforward controller disclosed in Chaplin is shown in FIG. 1. In this configuration the control system is used for canceling noise (1) propagating down a pipe or duct (2). An upstream (relative to the direction of sound propagation) or reference sensor (3) provides a reference signal (4) related to the sound at the sensor position. This signal is input to the control system (5) which in turn generates a control signal (6). The control signal is supplied to actuator (7) which in turn produces sound to cancel the original noise. An error or residual sensor (8), downstream of the actuator, produces a residual signal (9) related to the residual sound at that position. This signal is used to adjust the characteristic of the control system (5). The control system comprises a compensation filter (10) which acts on the control signal (6) to produce a compensation signal (11) which is an estimate of the component of signal (4) due to the actuator. Hence the characteristic of the filter should correspond to the impulse response of the physical system from controller output to controller input (including the response of the actuator (7), the sensor (3) and, for digital systems, any anti-aliasing filter or anti-imaging filter). The compensation signal (11) is subtracted at (12) from the reference signal (4) to produce an input signal (13). The input signal is then passed through a cancellation filter (14) to produce the control signal (6). The filtered-x LMS algorithm is commonly used to adjust the characteristic of the cancellation filter (14). The characteristic of compensation filter (10) can be determined by known system identification techniques. 
     The adaptive feedback controller disclosed by Ziegler is shown in FIG. 2. In this configuration the control system is used for canceling noise (1) propagating down a pipe or duct (2). A sensor (8), downstream of the actuator (relative to the direction of sound propagation), provides a signal (9) related to the sound at the sensor position. This signal is input to the control system (15) which in turn generates a control signal (6)° The control signal is supplied to actuator (7) which in turn produces sound to cancel the original noise. The same sensor (8) acts as a residual sensor since the signal (9) is related to the residual sound at that position. This signal is used to adjust the characteristic of the control system (15). The control system comprises a compensation filter (16) which acts on the control signal (6) to produce a compensation signal (17) which is an estimate of the component of signal (9) due to the actuator. Hence the characteristic of the filter should correspond to the impulse response of the physical system from controller output to controller input (including the response of the actuator (7), the sensor (8) and, for digital systems, any anti-aliasing filter or anti-imaging filter). The compensation signal (17) is subtracted at (18) from the residual signal (9) to produce an input signal (19). The input signal is then passed through a cancellation filter (20) to produce the control signal (6). The filtered-x LMS algorithm is commonly used to adjust the characteristic of the cancellation filter (20). 
     The performance of a feedforward control system is limited by noise at the reference sensor which is uncorrelated with the disturbance. This is called the `coherence limit`. The performance of a feedback control system is limited by the delay in the control loop, which limits performance to narrow-band or low frequency disturbances. Hence for disturbances which are a mixture of broadband and narrow band noise there is an advantage to be gained by using a combination of feedforward and feedback control. 
     This has been recognized by N. J. Doelman, `A Unified Strategy for the Active Reduction of Sound and Vibration`, Journal of Intelligent Materials Systems and Structures, Volume 2, Number 4 October 1991, pp. 558-580. This system is shown in FIG. 3 (also Doelman&#39;s FIG. 3). The outputs of a feedforward filter (5) and a feedback filter (15) are combined at (21) to produce the control signal (6). Doelman uses recursive filters and derives the optimal filter characteristics for stationary noise signals. However, there is no interaction between the two filters (5) and (15) in his arrangement. This can have serious implications since there is no guarantee that the filters he derives are stable. For an `off-line` design process the stability of the filters (both in open-loop and in closed loop) can be checked before the filter is implemented, but for adaptive control systems it is not practical to continually check for system stability. The risk of instability in the system would make this system unsuitable for practical implementation. 
     There is, therefore, a need for an adaptive control system which can be adapted easily without the risk of instability. 
     SUMMARY OF THE INVENTION 
     The current invention relates to a combined feedback and feedforward system for controlling disturbances. The system uses compensation filters to ensure the closed loop stability of the system and provides a computationally efficient way for adapting such a system while maintaining stability. 
     An object of the invention is to provide a system which can be adapted without any instability. 
    
    
     This and other objects of the invention will become apparent when reference is had to the accompanying drawings in which: 
     LIST OF FIGURES 
     FIG. 1 is a diagrammatic view of a known adaptive feedforward control system. 
     FIG. 2 is a diagrammatic view of a known adaptive feedback control system. 
     FIG. 3 is a diagrammatic view of a known combined feedforward and feedback control system. 
     FIG. 4 is a diagrammatic view of a combined feedforward and feedback control system of the invention. 
     FIG. 5 is a diagrammatic view of another embodiment of a combined feedforward and feedback control system of the invention. 
     FIG. 6 is a diagrammatic view of the application of the current invention to a muffler noise control system. 
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
     The invention relates to a system for controlling a vibration or noise disturbance. For example, the disturbance may be sound propagating down a pipe duct, or propagating in an open region, or it may be vibration propagating through a structure. The system is a combined feedforward and feedback control system which utilizes compensation filters to ensure stability of the system. 
     A reference sensor is used to provide a reference signal (uf) related at least in part to the disturbance to be controlled and a residual sensor is used to provide a residual signal (ub) related to the controlled disturbance. A reference compensation signal (Cy) is subtracted from the reference signal to produce a feedforward input signal (xf). The feedforward input signal is filtered by a feedforward cancellation filter (A) to produce a Feedforward output signal (yf). A residual compensation signal (Dy) is subtracted from the residual signal to produce a feedback input signal (xb). The feedback input signal is filtered by a feedback cancellation filter (B) to produce a feedback output signal (yb). 
     The feedforward and feedback output signals are then combined to produce a control signal (y) which is sent to an actuator. The actuator produces a control disturbance which modifies the original disturbance. Usually, but not always, the intention is that the residual disturbance is smaller than the original disturbance. 
     In the general implementation the cancellation filters are recursive filters, in the simplest implementation they are Finite Impulse Response(FIR) filters. In this case the operation at the n -th  time step is described by the equations ##EQU1## where nA is the number of coefficients in the feedforward cancellation filter and nB is the number of coefficients in the feedback cancellation filter. The reference compensation signal is derived from the combined output using ##EQU2## where the filter C is the reference compensation filter which models the physical feedback from the controller output to the controller reference input, including the response of the actuator, the sensor and any filters. nC is the number of coefficients in this filter. This is in contrast to the scheme of Doelman in which the combined output is not used in the filters. 
     The residual compensation signal can be derived in one of two methods. Firstly, it can be derived from the combined output using ##EQU3## where the filter D is the residual compensation filter which models the physical feedback from the controller output to the controller residual input, including the response of the actuator, the sensor and any filters. nD is the number of coefficients in this filter. 
     Alternatively, the residual compensation signal can be derived from the output of the feedback cancellation filter, so that ##EQU4## The characteristics of the filters C and D (which may be recursive filters or FIR filters) can be found by standard system identification techniques or by on-line system identification. In the latter case a low level test signal is added to the output control signal and the difference between the actual response and the predicted response is used to adjust the filter characteristics. The LMS algorithm, for example, can be used for this adaption. 
     The feedback cancellation filter B can be adapted by the filtered-x input algorithm for example. This is the simplest algorithm but many alternative adaption algorithms have been disclosed. The coefficients are updated using ##EQU5## where μ B  is the adaption step size and λ B  is a leakage parameter. The feedforward filter may also be adapted using the filtered-x LMS algorithm. The filtered-input signal is given by ##EQU6## The feedforward cancellation coefficients can be updated using the residual signal, rb, according to 
     
         A.sub.n (m)=(1-μ.sub.A λ.sub.A).A.sub.n-1 (m)-μ.sub.A.rb(n).Dxf(n-m),m=0,nA-1                    (12) 
    
     where μ A  is the adaption step size and λ A  is a leakage parameter. This is depicted in FIG. 4. FIG. 4 is a combination of FIGS. 1 and 2, except the outputs from the feedforward filter (14) and the feedback filter (20) are combined at (21) to produce the output control signal (6), and the compensation signals (11) and (17) are obtained by filtering the combined output control signal (6) rather than the individual output signals. Both of the filters (14) and (20) are adjusted in response to the residual signal (9). In most adaption algorithms, such as the filtered-x LMS algorithm described above, the input to the cancellation filters is also used in the update calculation. 
     An alternative to equation (12) is to adapt the feedforward cancellation coefficients using the feedback input signal, xb, according to 
     
         A.sub.n (m)=(1-μ.sub.A λ.sub.A).A.sub.n-1 (m)-μ.sub.A.xb(n).Dxf(n-m),m=0,nA-1                    (13) 
    
     This is depicted in FIG. 5. Here the feedback compensation signal (17) is calculated from the output (22) from the feedback cancellation filter (20) rather than the combined output (6). Thus the feedback input signal represents the residual signal resulting from the effect of the feedforward control signal only--it is independent of the output from the feedback controller. 
     The combined algorithm of this invention can be used for multi-channel systems. The extension of LMS style algorithms to multi-channel control systems is well known. For example, multi-channel feedforward control, using feedback compensation, is described in Nelson &amp; Elliot, Chapter 12. Multi-channel feedback control using feedback compensation is disclosed by Ziegler, `Multiple Interacting DVE Algorithm`, U.S. patent application No. 07/928,471 herein incorporated by reference. The extension of the current invention from the single channel described above to multiple reference inputs, multiple actuators and multiple residual sensors will be obvious to those skilled in the art. 
     The basic equations for a system implemented using FIR filters are ##EQU7## where nI is the number of reference sensors, nJ is the number of residual sensors and nK is the number of actuators. A kj  represents the filter between the jth input and the kth output. Multi-channel versions of B, C and D are similarly defined. 
     The compensation signals are given by ##EQU8## and either ##EQU9## The multi-channel LMS algorithm for updating these filters is described by Nelson and Elliot (Chapter 12). 
     EXAMPLE ALGORITHM 
     In one embodiment of the controller the filters are implemented as Finite Impulse Response (FIR) filters. The parameters are defined in the table below: 
     
         ______________________________________Parameter   Description______________________________________freq    sampling frequencynA      number of coefficients in forward cancellation filternB      number of coefficients in backward cancellation filternC      number of coefficients in forward compensation filternD      number of coefficients in backward compensation   filtergf      forgetting factor for power estimategb      forgetting factor for power estimatefmin    minimum powerbmin    minimum powerleak    leakage parameterleakmin minimum leakageAstep   step size for forward LMSBstep   step size for backward LMSCstep   step size for LMS adoption of C filterDstep   step size for LMS adoption of D filtergrb     forgetting factor for residual power estimategl1     smoothing factor for leak adjustmentgl2     memory factor for leak adjustmentgp      forgetting factor for peak detectlevel   set level for peak outputinvlevel   reciprocal of levelgmin    minimum test signal leveltestlevel   test signal level relative to residual levelinvf    forward normalization factor,   (calculated automatically)invb    backward normalization factor,   (calculated automatically)gain    gain for test signal level,   (calculated automatically)Amu     normalized step size for A filter,   (calculated automatically)Bmu     normalized step size for B filter,   (calculated automatically)______________________________________ 
    
     The variables, that is the dynamic data in the processor, are defined in the table below. 
     
         ______________________________________VariableName   Description            Size______________________________________A      FIR forward cancellation filter                         nAB      FIR backward cancellation filter                         nBC      FIR reference compensation filter                         nCD      FIR residual compensation filter                         nDuf     reference input signal 1ub     residual input signal  1test   identification test signal delay line                         max(nC + 1,                         nD + 1)Ctest  compensation for test signal                         1Dtest  compensation for test signal                         1rf     compensated reference signal                         1rb     compensated residual signal                         1Cy     reference compensation signal                         1Dy     residual compensation signal                         1yf     forward control signal 1yb     backward control signal                         1y      control signal delay line                         max(nC,nD)output output signal          1xf     forward input signal delay line                         max(nA,nD)xb     backward input signal delay line                         max(nA,nD)Dxf    filtered forward input signal delay line                         nADxb    filtered backward input signal delay line                         nBpf     forward power estimate 1pb     backward power estimate                         1prb    residual power estimate                         1peak   peak output level      1______________________________________ 
    
     An algorithm for adaptation of the filter coefficients is given below. This describes the n th  step of the algorithm and is repeated every sample time. This particular example uses a Normalized Least Mean Square (NLMS) algorithm and includes on-line system identification using a random test signal. The square brackets [. . . ] denote operations that may not be required, but are desirable. The braces {. . . } denote operations that can be done at a reduced rate (i.e. not every sample) or as a background task so as to reduce the processing load on the processor. 
     read ADCs to get uf(n) and ub(n) (22) 
     [high pass filter uf and ub] (23) 
     Comment: Compensate for test signal 
     
         rf(n)=uf(n)-Ctest(n)                                       (24) 
    
     
         rb(n)=ub(n)-Dtest(n)                                       (25) 
    
     Comment: Compensate for output signal 
     
         xf(n)=rf(n)-Cy(n)                                          (26) 
    
     
         xb(n)=rb(n)-Dy(n)                                          (27) 
    
     Comment: Complete calculation of output 
     
         yf(n)=yf(n)+A(0).xf(n)                                     (28) 
    
     
         yb(n)=yb(n)+B(0).xb(n)                                     (29) 
    
     
         y(n)=yf(n)+yb(n)                                           (30) 
    
     
         output(n)=y(n)+test(n)                                     (31) 
    
     [high pass filter output] (32) 
     output to DAC (33) 
     Comment: Calculate mean modulus of inputs signals 
     
         pf.sub.n =pf.sub.n-1 +gf.(|Dxf(n-1)|-pf.sub.n-1) (34) 
    
     
         pb.sub.n =pb.sub.n-1 +gb.(|Dxb(n-1)|-pb.sub.n-1) (35) 
    
     
         {invf=1/(pf.sub.n +fmin)}                                  (36) 
    
     
         {Amu=Astep.invf.invf}                                      (37) 
    
     
         {invb=1/(pb.sub.n +bmin)}                                  (38) 
    
     
         {Bmu=Bstep.invb.invb}                                      (39) 
    
     Comment: Regulate peak output signal (calculate new leak) 
     
         peak.sub.n =(1-gp).peak.sub.n-1                            (40) 
    
     if |y(n)|&gt;peak n  then peak n  =|y(n)| end (41) ##EQU10## 
     
         {Ascale=1-leak.Amu}                                        (44) 
    
     
         {Bscale=1-leak.Bmu}                                        (45) 
    
     Comment: Update filters 
     
         factor=Amu.rb(n)                                           (46) 
    
     
         A.sub.n (m)=Ascale.A.sub.n-1 (m)-factor.Dxf(n-m),m=0,A-1   (47) 
    
     
         factor=Bmu.rb(n)                                           (48) 
    
     
         B.sub.n (m)=Bscale.B.sub.n-1 (m)-factor.Dxb(n-m),m=0,nB-1  (49) 
    
     
         factor=-Cstep.rf(n)                                        (50) 
    
     
         C.sub.n (m)=C.sub.n-1 (m)-factor.test(n-1-m),m=0,nC-1      (51) 
    
     
         factor=-Dstep.rb(n)                                        (52) 
    
     
         D.sub.n (m)=D.sub.n-1 (m)-factor.test(n-1-m),m=0,nD-1      (53) 
    
     Comment: Calculate filtered inputs ##EQU11## 
     Comment: Calculate compensation signals for next iteration ##EQU12## 
     Comment: Calculate partial sums :for next iteration ##EQU13## 
     Comment: Calculate mean modulus of residual signal 
     
         prb.sub.n =prb.sub.n-1 +grb.(|rb(n)|-prb.sub.n-1) (62) 
    
     Comment: Calculate test signal gain 
     
         {gain=gmin+testlevel.prb.sub.n }                           (63) 
    
     get new test signal, random(n+1) (64) 
     
         test(n+1)=random(n+1).gain                                 (65) 
    
     There are a great many applications for the known feedforward adaptive filter. Since all of these use both a reference sensor and a residual sensor, the feedforward controller can be replaced by a combined feedforward and feedback controller of the current invention. These applications are not necessarily restricted to the control of noise or vibration. 
     One application area is for reducing noise propagated down ducts or pipes. Here the reference sensor is usually in the pipe upstream (relative to the sound propagation) of the actuator. The actuator is often one or more loudspeakers which can be placed in the pipe or adjacent to the end of the pipe. The main reason for placing the actuator adjacent to the end of the pipe is to remove the actuator from the gases or liquids in the pipe--since these may be hot or corrosive and may be damaging to the actuator. A further advantage is that the feedback from the actuator to the upstream sensor is reduced and may sometimes be neglected. This can simplify the control system by removing the need for the reference compensation filter. 
     The control system has been successfully tested for canceling the noise from an automobile muffler. The general arrangement is shown in FIG. 6. The exhaust gases and noise (1) propagate down the exhaust pipe (2) towards the open end. The upstream sensor (3) was a microphone, the actuators were loudspeakers in an enclosure (7) adjacent to the end of the muffler pipe. The residual sensor (8) was a microphone placed adjacent to the end of the pipe. The control system used FIR filters and a sampling rate of 2 KHz. The resulting noise reduction was approximately 10 dB under transient driving conditions and 20 dB during steady driving conditions. This was better than using a feedforward or feedback controller alone. Further details are described in a co-pending patent application. Another application is in an active ear defender. Here the actuator is a loudspeaker adjacent to the ear or within the ear canal. The residual sensor is placed between the loudspeaker and the ear drum and the reference sensor is placed on the outside of the loudspeaker enclosure or at a nearby position. Adaptive feedforward control has been disclosed for use with ear defenders of this type. Combined feedforward and feedback control provides improved performance. 
     Having described the invention it will be obvious to those of ordinary skill in the art that many changes and modifications can be made without departing from the scope of the appended claims.