Noise in the cabins of automotive vehicles may be caused by several sources including powertrain, tire-to-road contact, wind, and a variety of electromechanical accessories. The powertrain noise is typically most dominant when the vehicle's engine is idling or varying in speed. These noise components, especially the powertrain noise inside the vehicle, can be annoying to the passengers and may play a major role in the perceived quality of the vehicle design. Furthermore, demands for better NVH (noise, vibration and harshness) performance requires some or all of these noise components be treated effectively.
One possible way to reduce objectionable powertrain noise is to employ an active noise cancellation (ANC) system to tune the sound perceived by vehicle occupants.
Among the considerations that are important to in the analysis of powertrain noise are: (1) powertrain noise is typically dominated by a large number of harmonics; and (2) the amplitude and frequency of each harmonic are functionally related to the rotational speed of the engine. Therefore, the frequency range of interest is fairly broad, since an automotive vehicle engine may operate over a large speed range (revolutions per minute, rpm).
The properties of the convergence are affected by the eigenvalue spread of the autocorrelation matrix of the filtered reference signal. In general, the eigenvalues of the autocorrelation matrix of the filtered reference signal are variable throughout the frequency range of interest, which leads to frequency dependent behavior of the convergence. Hence, each frequency will have its own optimal step size. To maintain system stability, the step size should be chosen based on the frequency that has the smallest optimal step size. Otherwise, the system will become unstable firstly at that frequency. This may, however, tend to degrade the overall performance of the ANC system, because the step size chosen in that way is only optimal for that particular frequency and too small for other frequency components. This may slow down the convergence speed for other frequencies and degrade the overall performance of system.
Several variations of filtered-X least mean square (FxLMS) algorithms have been suggested. A preconditioned LMS algorithm adds another filter to flatten the magnitude response from controller output to error signal. (S. J. Elliott and J. G. Cook, “A preconditioned LMS algorithm for rapid adaptation of feed-forward controllers,” Proceeding of the IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP'00), Vol. 2, pp. 845-848, Istanbul, Turkey, (2000).)
To improve the convergence speed of the standard FxLMS algorithm, it has been proposed that the determinant of autocorrelation matrix should be as flat as possible. Among ways to achieve this are to adjust the positions of secondary sources (speakers) and error sensors (microphones), increase the number of secondary sources, and add an inverse filter of the secondary path. (G. Chen, M. Abe, and T. Sone, “Improvement of the convergence properties of the ANC system based on analysis in the frequency domain,” Proceeding of Active 95, Newport Beach, Calif., pp. 1013-1024, (1995).
The amplitude of the reference signal may be chosen to be inversely proportional to the magnitude response of the secondary path at the corresponding frequency. (S. M. Kuo, M. Tahernezhadi, and W. Hao, “Convergence analysis of narrow-band active noise control system,” IEEE Transactions on Circuits and Systems-II: An Analog and Digital Signal Processing, Vol. 46, No. 2, pp. 220-223, (1999)).
It is also known to apply a frequency domain fast least mean square (FLMS) to deal with the problem of slow convergence speed. (J. Duan, et. al., “Active Control of Powertrain Noise Using a Frequency Domain Filtered-x LMS Algorithm,” Proceedings of the SAE Noise and Vibration Conference and Exhibition, St. Charles, Ill., Paper No. 2009-01-2145, (2009)) However, such an approach increases the computational cost and/or the algorithm's complexity.
Another suggested approach is the use of an eigenvalue equalization filtered-x least mean square (EE-FxLMS) algorithm. See, for example, US Patent Application 2008/0144853A1, and “Eigenvalue equalization filtered-x algorithm for the multi-channel active noise control of stationary and non-stationary signals,” Journal of the Acoustical Society of America, Vol. 123, No. 6, pp. 4238-4249, (2008).
The eigenvalue equalization technique flattens the response of each secondary path independently of one another and so does not properly deal with the interactions between secondary paths. This technique therefore experiences difficulties when it is applied to a multiple channel [MIMO] ANC system, especially where there are unbalanced responses of secondary paths.
It is therefore an objective of the present invention to provide a method by which, in a multi-input multi-output (MIMO) ANC system, improved performance may be achieved by performing equalization amongst the channels to keep the coupling effects between the channels unchanged.
In a disclosed embodiment, a method of operating a multi-channel active noise cancellation comprises operating a random noise generator to feed noise to at least two control sources; using at least two transducers to measure responses to the noise; forming an estimated secondary path transfer function matrix (SPTFM) based upon the transducer responses; taking a Fast Fourier Transform of the estimated SPTFM; calculating a mean magnitude of a main path of each column of the estimated SPTFM; dividing each column of the estimated SPTFM by its respective main path mean magnitude; multiplying by a reference value to obtain a virtual SPTFM; applying a filtered-x least mean squares algorithm with the virtual SPTFM to update coefficients of an adaptive filter; generating a reference signal correlated with the undesired noises in a working environment; filtering the reference signal using the adaptive filter to produce a cancellation signal; using the cancellation signal to drive the sources to cancel noise associated with the reference signal in the working environment; and recursively adjusting the adaptive filter with the filtered reference signal.
In another disclosed embodiment, a method for modeling a secondary path for an active noise control system having at least two input signals and at least two output signals comprises forming an estimated secondary path transfer function matrix (SPTFM) based upon the system outputs; taking a Fast Fourier Transform of the estimated SPTFM; calculating a mean magnitude of a main path of each column of the estimated SPTFM; and dividing each column of the estimated SPTFM by its respective main path mean magnitude; multiplying by a reference value to obtain a virtual SPTFM.
Embodiments of the present invention will now be described, by way of example only, with reference to accompanying drawings in which:
a is a graph comparing the magnitude of transfer functions from secondary sources to error sensors S11 and S21;
b is a graph comparing the magnitude of transfer functions from secondary sources to error sensors S22 and S12;
a is a graph comparing virtual secondary path transfer functions S11e and S21e using the improved virtual secondary path algorithm;
b is a graph comparing virtual secondary path transfer functions S22e and S12e using the improved virtual secondary path algorithm;
a is a graph comparing ANC results between a conventional EE-FxLMS algorithm and the disclosed virtual secondary path algorithm using microphone 1 in the system of
b is a graph comparing ANC results between a conventional EE-FxLMS algorithm and the disclosed virtual secondary path algorithm using microphone 2 in the system of
a is a graph comparing ANC results between the improved virtual secondary path algorithm with and without turning point using Microphone 1; and
b is a graph comparing ANC results between the improved virtual secondary path algorithm with and without turning point using Microphone 2.
As required, detailed embodiments of the present invention are disclosed herein; however, it is to be understood that the disclosed embodiments are merely exemplary of the invention that may be embodied in various and alternative forms. The figures are not necessarily to scale; some features may be exaggerated or minimized to show details of particular components. Therefore, specific structural and functional details disclosed herein are not to be interpreted as limiting, but merely as a representative basis for teaching one skilled in the art to variously employ the present invention.
The disclosed method implements a channel equalization (CE) virtual secondary path algorithm, which is meant to improve the performance of multiple-channel active noise control system with either single-reference or multiple-reference signals. In practice, because of the arrangement and sensitivities of the actuators (speakers), transducers (microphones) and physical environment, the magnitude of the main secondary path transfer functions can be very different from each other. This difference will cause difficulty in the overall convergence of the algorithm, which will result in minimal attenuation at some of the channels. The disclosed channel equalization virtual secondary path algorithm is designed to tackle this difficulty by equalizing the mean magnitude of the main secondary paths and adjusting other secondary paths correspondingly to keep the coupling effects among the channels unchanged. The performance of the disclosed algorithm is validated by a single-reference two-input two-output active powertrain noise control system.
Noise sources (block 3) are the noises in the operating environment that are to be cancelled by the ANC system. For example, noise sources in an automotive environment may be associated with the engine, other portions of the driveline, suspension, road induced noise, etc.
Adaptive filters W(n) (block 4) are used to filter the reference signal to generate signals driving the control speakers. M is the total number of control speakers, so there are also M driving signals. Filter coefficients are automatically and recursively adjusted through FX-LMS control algorithm (block 11), as will be discussed further below.
A secondary path transfer function matrix S (block 5) relates the control signals (sent to speakers M) to the sound pressure responses (measured by the error microphones K),
where Skm represents the transfer function from the m-th speaker to k-th error microphone. K is the total number of error transducers.
A random noise generator (block 6) feeds a secondary disturbance v(n) to the control speakers. Secondary disturbance v(n) is uncorrelated with the control input signal x(n) in order to allow an estimation of a secondary path transfer function matrix Ŝ.
An estimated secondary path transfer function matrix Ŝ (see block 7) is defined as:
The estimated secondary path transfer function matrix Ŝ is constructed using system identification of LMS algorithm (block 8).
In a process known as channel equalization (CE) (block 9), the mean amplitudes of primary elements of the estimated Secondary Path Transfer Function Matrix are equalized and other elements are adjusted correspondingly to keep the coupling effect unchanged. CE may be performed only in the frequency range of interest.
The transfer function yielded by the CE process is referred to as a virtual secondary path transfer function Se (block 10): Equalized secondary path transfer function for filtered-x least mean square algorithm (FxLMS).
Here, Se is used to filter the reference signal x(n) to yield the filtered reference signal x′(n).
A filtered-x LMS algorithm (block 11) is used to update the Adaptive Filters W(z) (block 4).
Error feedback signals e(n) (block 12) are the error signals sensed by each of the K transducers (error microphones, in this example).
A single reference signal x(n) may be used for all the M adaptive filters, or multiple reference signals may be used.
In the vehicle powertrain example, the frequencies of the reference signal can be calculated by using the engine crankshaft speed data estimated from the measured raw tachometer signals. Then, assuming x(n) is a superposition of a series of pure sine waves, it can be expressed as:
where ai is the amplitude of the ith order, fi is the frequency of the ith order, and fs is the sampling rate. With the information contained in the above equation, it is then possible to target the specific harmonics for tuning.
The objective of controller design is to minimize the sum of the squares of residual noise terms measured by K error sensors. Accordingly, the adaptive filter coefficients update in time domain can be expressed as:
w
m(n+1)=wm(n)+μxkm(n)ek(n) 2)
where wm(n)∝[wm,0(n) wm,1(n) . . . wm,L-1(n)]T, m=1, 2, . . . , M, M represents the number of adaptive filters; ek (n) is the residual noise at the kth error sensor; L is the adaptive filter length; and x′km(n) is the filtered reference signal calculated by the convolution of the x(n)∝[x(n) x(n−1) . . . x(n−L+1)]T and the estimate of the secondary path Skm from the mth secondary source to the kth error sensor Ŝkm. The estimate of the secondary path is generated by injecting a secondary disturbance (for example, a small amount of white noise) v(n) through the control input speaker. By using a secondary disturbance v(n) that is uncorrelated with the control input signal u(n), the secondary path can be updated using the standard LMS algorithm. This is called off-line modeling (also known as off-line system identification) technique.
P(n) represents the powertrain noise in the automotive example. The convergence speed of the algorithm is determined by the eigenvalue spread of the autocorrelation matrix of the filtered reference signal x′(n) and can be written as:
R=E[x′
T(n)x′(n)] 3)
where E[ ] represent the statistical expectation operator. Accordingly, the eigenvalue spread denoted by ρ can be defined as the ratio between the largest eigenvalue and smallest eigenvalue of the autocorrelation matrix R,
Alternatively, the algorithm shown in equation (2) can be expressed in the frequency domain as:
W(n+1,ω)=W(n,ω)+μX′H(n,ω)E(n,ω) 5)
where the operation [·]H indicates the Hermitian transpose, and
E(n,ω)=[E1(n,ω) E2(n,ω) . . . EK(n,ω)]T 6)
W(n,ω)=[W1(n,ω) W2(n,ω) . . . WM(n,ω)]T 7)
The filtered reference matrix X′(n,ω) is a K×M matrix defined by:
where X′km(n,ω)=Ŝkm(n,ω)X(n,ω). Here, X(n,ω) is the reference signal of x(n) in frequency domain, and Ŝkm(n,ω) is the estimate of the secondary path transfer function from the mth secondary source to the kth error sensor in frequency domain. Equation (7) can be expanded as:
It may be noted that (n,ω) has been omitted from Equations (8) and (9) for simplification. Then, Equation (3) can be written in frequency domain as
R(ω)=E[X′H(n,ω)X′(n,ω)]=E[XHŜHŜX] 11)
The power spectrum matrix R(ω) is an M×M matrix at each frequency bin ω. Therefore, the convergence behavior at the frequency bin ω can be clearly observed. The convergence properties are still determined by the eigenvalue spread of R(ω) at each frequency bin ω. Accordingly, Equation (4) can be expressed in the frequency domain as:
where λmax and λmin are the largest and smallest eigenvalues at the frequency bin ω, respectively. It is well known that a smaller ρ1 can achieve a faster convergence.
Eigenvalue equalization may optionally be applied along with channel equalization to improve performance of a system.
Observing the convergence over the whole frequency range, the eigenvalue spread can be revised as:
where max{λmax(ω)} and min{λmin(ω)} represent the maximum and minimum eigenvalues over the entire frequency range of interest.
Hence, to study the convergence property of the system, we calculate all eigenvalues of autocorrelation matrix R(ω). This will cause a heavy computational burden especially when the length of the control filter is long. Instead of calculating the eigenvalues of the matrix R(ω), we can evaluate the convergence speed approximately by using the determinant spread of R(ω) over the entire frequency range of interest as:
where |R(ω)| is the determinant of matrix R(ω), which can be expressed as:
|R(ω)|=E[|X(ω)|2]|ŜH(ω){circumflex over (S)}(ω)| 15)
Since the reference signal in this example is generated by a sine wave generator, we can easily set the reference signal with equal amplitude at all harmonics over the entire frequency range of interest. Hence, the power spectrum of the reference signal at each frequency bin ω will be the same. Thus, Equation (14) can be derived as:
As noted above, to achieve faster convergence, a smaller ρ3 is required. This implies that |ŜH(ω)Ŝ(ω)| should be as flat as possible over the entire frequency range of interest.
The eigenvalue equalization filtered-x least mean square (EE-FxLMS) algorithm may be used to flatten the magnitude response of Ŝkm(n,ω) for each secondary path in the system by modifying the magnitude in frequency domain. To maintain stability, the phase is kept unchanged. The resultant modified estimation of the secondary path is referred to as a virtual secondary path, which is expressed as Skme. This virtual secondary path is then used to replace the estimated model of the secondary path in the original version of the FxLMS algorithm. The algorithm applying this technique is illustrated in
When the virtual secondary path is applied in the FxLMS algorithm, |ŜH(ω)Ŝ(ω)| in Equation (16) is replaced by |SeH(ω)Se(ω)|. In the single-input, single-output (SISO) ANC system, the determinant of |SeH(ω)Se(ω)| becomes the power of the virtual secondary path |Se|2 from the secondary source to the error sensor. Since Se has a flat magnitude in each frequency bin, the overall convergence speed in all frequency bins is naturally improved. How the magnitude of Se is to be chosen is not a critical issue for a SISO system because the magnitude errors can be compensated by tuning the value of step size parameter. However, it is important to choose the magnitude of the virtual secondary path Skme for a multiple-input, multiple-output (MIMO) system. Selection of the magnitude of the secondary path (the estimated secondary path Ŝkm or the virtual secondary path Skme) is critical to convergence speed to each channel. In the example discussed, the multiple channel control system has identical number of control speakers and error sensors, M=K. Thus, the update equation of the i-th adaptive filter can be written as
w
i(n+1)=wi(n)+μ[{circumflex over (S)}1i(n)*x(n)]e1(n)+ . . . +μ[{circumflex over (S)}ii(n)*x(n)]ei(n)+ . . . +μ[{circumflex over (S)}Mi(n)*x(n)]eM(n) 18)
where μ is the step size parameter and i=1, 2, . . . , M. It is apparent that that the adaptive algorithm for such a control system requires that the signal from every error sensor is used at each iteration to adjust the controller of each secondary source. Also, each error signal is weighted by corresponding estimated secondary path. The estimated secondary path transfer function matrix in frequency domain can be expressed as
Assume that the estimated secondary path Ŝii is the main path of the i-th column of Ŝ so that the main path of each column vectors is the diagonal element of the secondary path matrix Ŝ. Main path means one control speaker (the i-th control speaker) has more influence on one error sensor (the i-th error sensor) than any other error sensors. In fact, the i-th column of Ŝ are the weights used to update the i-th adaptive filter as equation (18). Hence, the main path Ŝii is the biggest weight for updating wi. Mathematically, the mean magnitude value of Ŝii is larger than the mean magnitude value of Ŝk≠i,i, where k=1, 2, . . . , M. Ŝj≠i,i are coupling estimated secondary paths for the i-th channel. In practice, the magnitude of each main path mostly is not identical to each other. Without losing generality, we assume the mean magnitude value of Ŝii is larger than the mean magnitude value of Ŝjj, where j=1, 2, . . . , M, but j≠i, expressed as mean[Ŝii]>mean[Ŝjj].
The extreme case of this phenomenon may be studied as follows. If mean[Ŝii]>>mean[Ŝjj], because the coupling secondary paths are smaller than the main path, the adaptive filter wj will converge much slower than the adaptive filter wi by applying equation (18).
Channel equalization (CE) is applied to improve the overall convergence speed of the MIMO ANC system. The idea is to normalize the mean magnitude value of the main secondary paths of each column of the secondary path matrix Ŝ while keeping the coupling ratios between couple weights and the biggest weight unchanged. The normalization process is implemented as
Again, Se is virtual secondary path. Here, the eigenvalue equalization technique is not used to modify the secondary path, but only the proposed channel equalization technique. More specifically, the virtual secondary path found using only the channel equalization technique (without eigenvalue equalization) is referred to as the channel equalized (CE) virtual secondary path.
In equation (20), α is a reference value. It can be set to any desired value. Usually, α is set to unit value 1, or the mean magnitude of the main secondary path that has the maximum mean magnitude among all main paths from column 1 to column M. mean[Ŝkm] is the mean magnitude value of the secondary path Ŝkm in the frequency range of interests.
For more general cases, the number of control speakers is not equal to the number of error sensors K≠M or K=M, so that the main path may be an off-diagonal element.
The first step is to find the main path of the i-th column of Ŝ. Assume that Ŝimain is the main path of the i-th column and α is a reference value. Then, we equalize the magnitude of the main path according to the reference value as
In this way, the mean magnitudes of the main secondary paths of the secondary path matrix are all equalized to the reference value α. The mean magnitudes of other secondary paths in the column i are adjusted correspondently to keep the coupling effects unchanged, and they are less than α.
The above-described channel equalization technique may be combined with the eigenvalue equalization technique to achieve better performance of MIMO systems, and is particularly useful in an ANC system applied to an automotive powertrain noise application. In this case, Se still present the virtual secondary path by combined techniques, namely EE-CE virtual secondary path. The procedure is to first equalize the magnitude along frequencies of each secondary path by eigenvalue equalization technique, and next to equalize the mean magnitude along channels by the channel equalization technique.
In the disclosed example, the method is carried out using a two-input two output (2I2O) ANC system as shown in
We assume that the Ŝ11 and Ŝ22 are the main paths of the first and second column of secondary path matrix Ŝ, respectively, and the mean[Ŝ22]>mean[Ŝ11]. By applying a channel equalization technique, the main paths of the virtual secondary path were normalized to the mean magnitude value of Ŝ22, which mean the reference value α=mean[Ŝ22]. Thus, the virtual secondary path becomes
For example, the estimated secondary path transfer functions for a two-input, two-output ANC system, Ŝ11, Ŝ12, Ŝ21, and Ŝ22, were experimentally obtained on the test vehicle. The results of this are shown in
All four secondary path transfer functions were modeled using a 256-tap finite impulse response (FIR) filter by least mean square (LMS) algorithm. By applying the EE-CE virtual secondary path as equations (23) and (24), four virtual secondary paths are presented in
The method described herein can be examined using a mathematical simulation and analysis program such as MATLAB/Simulink. The baseline signals of the powertrain noise along with tachometer signal are recorded during testing of an actual experimental vehicle, during which the engine speed ramps up from 1000 rpm to 5500 rpm within 10 seconds. The four secondary path transfer functions for a two-input, two-output ANC system, S11, S12, S21, and S22, were experimentally obtained on the test vehicle as shown in
For demonstration purpose, the purpose of these simulations is to reduce the response of the 1.5th, 2nd, and 3rd order as much as possible. By applying the EE-CE virtual secondary path algorithm, four virtual secondary paths are presented in
a and 8b show the simulation results for sound reduction at 3rd order, which is the cylinder firing order of the engine being analyzed in this example.
The solid curves in
It can be seen that the controlled response at microphone 1 applying the EE virtual secondary path algorithm (dashed curve in
The performance can be further improved by adding a turning point where the step size is changed. The turning point is determined experimentally based on the specific case under consideration. In this case, 2400 rpm has been chosen as a turning point.
While exemplary embodiments are described above, it is not intended that these embodiments describe all possible forms of the invention. Rather, the words used in the specification are words of description rather than limitation, and it is understood that various changes may be made without departing from the spirit and scope of the invention. Additionally, the features of various implementing embodiments may be combined to form further embodiments of the invention.
This application claims the benefit of U.S. provisional Application No. 61/317,769 filed Mar. 26, 2010, the disclosure of which is incorporated in its entirety by reference herein.
Number | Date | Country | |
---|---|---|---|
61317769 | Mar 2010 | US |