|
Description  |
|
|
BACKGROUND AND SUMMARY OF THE INVENTION
The present invention relates generally to active cancellation systems for
repetitive phenomena, and more specifically to a fast adapting, low-cost
solution to this problem.
Linear flow, air duct systems, for example, Chaplin U.S. Pat. No.
4,122,303; Warnaka, U.S. Pat. No. 4,473,606 and Eriksson U.S. Pat. Nos.
4,677,676 and 4,677,677, take advantage of directional flow in linear, one
dimensional flow to utilize an upstream sensor, followed by a cancellation
actuator and downstream error sensor in sequence. These systems cancel
repetitive and random noise. Chaplin characterizes the controller as a
general convolution process, including a "programme of time-related
operational steps." Warnaka uses adaptive filters to speed adaptation time
and allow greater spacing between the speaker and the duct. Eriksson
specifies recursive least mean square (RLMS) and least mean square (LMS)
adaptive filters to perform the convolutions and measure the system
transfer functions in the presence of noise.
These systems fail to utilize external synchronization timing to provide
selective cancellation of repetitive Phenomena in one to three dimensional
applications.
Systems for cancelling repetitive noise and vibration, for example, Chaplin
U.S. Pat. Nos. 4,153,815 and 4,417,098, describe the use of a
synchronizing timing signal to provide selective cancellation of
repetitive noise or vibration. Additionally a controller, actuator and
error sensor are used. The method presented by Chaplin in these patents
divides the noise or vibration period into a number of intervals and
adjusts the amplitude of the cancelling signal within each interval in
response to the sign or amplitude of the error sensor within the same or a
delayed interval.
In U.S. Pat. No. 4,490,841, Chaplin describes the use of Fourier transforms
to process signals in the frequency domain. While this method might be
used for random signals, processing time requirements generally limit its
application to repetitive signals.
These systems use expensive or complicated filters and do not account for
variable delays in the system.
Cancellation of unwanted components within electronic signals generally is
applied to communication signals. Rennick et al. in U.S. Pat. No.
4,232,381, use a commutating filter synchronized to the rotation of an
engine to cancel self-generated engine noise within an electronic circuit.
The level of the cancelling signal is adjusted manually and no method is
provided to adapt to phase shifts or varying amplitudes of different
harmonics.
Garconnat et al. in U.S. Pat. No. 4,594,694 use two sensors, one sensing
both the wanted and unwanted signals and the other sensing only the
unwanted signals. Narrow band filters or Fourier transforms are used to
eliminate the unwanted signals from the combined signal.
Widrow in "Adaptive Noise Cancelling Principles and Applications",
Proceedings of the IEEE, Vol. 63, No. 12, December, 1975, describes two
forms of active adaptive cancellers. The first, as illustrated in FIG. 1,
uses a multi-tap adaptive FIR filter with a reference signal correlated
with the noise to be cancelled. The reference signal is required to be
within 90.degree. in phase of the error signal. Consequently, the
reference signal used by the adapter itself often requires filtering; the
resulting approach is referred to as the "filtered-x algorithm."
The second form described by Widrow, as illustrated in FIG. 2, provides a
single frequency notch filter and requires only two single tap filters.
Again, a reference signal correlated with the noise is used and is phase
shifted 90.degree. for one of the filter. Glover, in "Adaptive Noise
Cancelling of Sinusoidal Interferences," Stanford University, Stanford,
California, May 1975, Ph.D. dissertation, extended this technique to
multiple frequencies.
Thus it is an object of the present invention to provide an improved
selective active cancellation system for repetitive phenomena.
Another object is to provide an active cancellation system using relatively
inexpensive and uncomplicated filters in combination with external
synchronized timing.
A still further object of the present invention is to provide an improved
rate of adaptation to changes in the level or frequency of the repetitive
phenomena.
A still even further object of the present invention is to provide a
cancellation sYstem for rePetitive phenomena which accounts for variations
in processing time and environmental produced delays.
A still even further object of the present invention is to provide
selective cancellation of unwanted signal components and automatic
adaptation to the levels and phases of the signal components utilizing
synchronization timing signals and a single residual sensor.
A still even further object of the present invention is to Provide for
adaptation of the system to maintain an appropriate Phase relationship
without the use of external reference signals.
These and other objects are obtained by providing a processor which
receives phenomena input signals and timing input signals representing the
phenomena to be cancelled and the repetition rate of the phenomena
respectively, and which includes inexpensive and simple adaptive filters
for generating a cancellation signal by adapting its filtering
characteristics as a function of the sum of the signal, and a phase
circuit for maintaining the adapting of the filtering characteristics
within a 90.degree. phase of the phenomena signal. The adaptive filter
includes for each frequency to be cancelled, be it a single frequency and
its harmonics or a plurality of fundamental frequencies, a sine and cosine
generator responsive to the timing signal and providing inputs to first
and second adaptive filters whose outputs are summed to provide the
cancellation signal. First and second adaptors adapt the first and second
filter weights of the first and second filters as a function of the sensed
phenomena signal which represents the residual phenomena and a signal
received from the phase circuit so that the first and second adapter
operates within 90.degree. phase of the phenomena signal.
The phase circuit measures the delay between providing the cancellation
signal and receipt of the Phenomena signal and adjusts the phase as a
function of the measured delay. The Phase circuit also takes into account
and adjusts the phase as a function of the processing delay of the
processor. The phase circuit includes a test signal generator for
generating a test signal which is combined with the cancellation signal
and provided into the area to be monitored. A third adaptive filter is
provided for receiving the test signal and providing a filtered signal. A
difference is taken of the filtered signal with the phenomena residual
signal. An adapter adapts the third filter weights as a function of the
difference signal and a delayed test signal. The third filter weights
represent the delay time of the system and are used to provide the
appropriate phase correction.
Other objects, advantages and novel features of the present invention will
become apparent from the following detailed description of the invention
when considered in conjunction with the accompanying drawings.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is an adaptive noise cancellation concept of the prior art.
FIG. 2 is a single frequency adaptive notch filter of the prior art.
FIG. 3 shows a block diagram of a selective cancellation controller
according to the principles of the Present invention.
FIG. 4 is a block diagram of a single fundamental frequency cancellation
processor according to the principles of the present invention.
FIG. 5 is a block diagram of a multi-fundamental frequency cancellation
processor according to the principles of the present invention.
FIG. 6 is a block diagram of a system impulse measurement processor
according to the Principles of the present invention.
DETAILED DESCRIPTION OF THE INVENTION
The repetitive phenomena cancellation controller 10 of the present
invention includes an input 12 for receiving a source of timing signals
from 14 and input 16 for receiving the signals from the residual or
phenomena sensor 18 and an output 20 cancellation signal to drive an
actuator 22 to provide a cancelling phenomena into the area to be
controlled.
The rate o timing signal sensor at input 12 is used to determine the
fundamental frequency at which the repetitive Phenomena is being
generated. Multiple timing signals are used when the repetitive phenomena
arises from sources occurring at different rates. This signal, or signals,
may be for example, from an engine tachometer, an optical sensor on moving
equipment, a "clock" signal from electronically controlled or generated
noise sources or by determining the rate from the repetitive phenomena
itself, such as by use of a phased-locked-loop to track its timing.
Alternately, when the rate is stable, an independent timing device, such
as a precision function generator, can provide the timing signal.
The actuator 22 produces the cancelling repetitive phenomena from an
electronic waveform to interact with the original repetitive phenomena
such that the two sum algebraically. The actuator 22 can be, for example,
a loudspeaker, headphone or other acoustic actuator; an
electro-mechanical, electro-hydraulic, piezoelectric or other vibration
actuator; or an electronic mixing circuit.
The sensor 18 detects the result of algebraically summing the original
repetitive phenomena and the cancelling repetitive phenomena and converts
this into an electronic waveform representing this residual. The residual
sensor 18 might be, for example, a microphone, accelerometer, pressure
sensor or the output of an electronic mixing circuit.
The controller 10 utilizes the timing signal(s) and residual sensor
waveform to produce the cancelling waveform.
A timing input or electronic circuitry 26 converts the timing signal(s) for
use in a processor 24. Such circuitry typically includes amplifiers, pulse
shaping functions and possibly an adjustable rate frequency
multiplier/divider, such as a phased-lock-loop and counter, to
increase/decrease the rate of the timing signal as required by the
processor, for example to multiply a once-per-rev tachometer signal by the
number of points to be processed per rev. The output is a Process rate
clock signal.
Phenomena input electronic circuitry 28, 30 converts the residual sensor
signal for use in a processor 24, such circuitry typically consists of
amplifiers 28, possibly with controllable gain, anti-aliasing filters 30,
a sample-and-hold function and an analog-to-digital converter.
Output electronic circuitry converts output signals from the processor 24
into the cancelling waveform. Such circuitry typically consists of a
digital-to-analog converter, a reconstruction filter 34 to remove the
sampling frequency and an amplifier 36, as required.
The processor 24 provides the following:
1. A means for synchronizing processing to the timing signal(s);
2. A means for determining and updating the system impulse response;
3. Cosine and sine values at intervals determined by the number of points
to be processed per cycle;
4. Means for convolving the cosine and sine values within the system
impulse response to maintain the adapation of the filters weights within a
90.degree. phase of the phenomena or residual signal;
5. Storage for the filter weights;
6. Means for adapting the filter weights utilizing the residual signal
value and the convolved cosine and sine values to minimize a function of
the residual signal, such as an LMS algorithm; and
7. A means for producing the cancelling signal from the filter weights and
the cosine and sine values.
The timing signal(s) synchronize processing with the rate(s) at which the
repetitive phenomena is being produced. These rates determine the length
of a repetition cycle, depending on the source of the phenomena. For
example, a repetition cycle occurs every revolution of an electric motor
and every other revolution of a four cycle engine. This rate also
determines the fundamental frequency of the repetitive phenomena. For
example, an electric mo or running at 1800 RPM completes 30 revolutions
per second with a fundamental frequency of thirty Hertz. A four cycle
diesel engine running at 1800 RMP also completes thirty revolutions per
second, but with only fifteen complete firing cycles per second and a
fundamental frequency of fifteen Hertz.
The timing signal(s) are frequency multiplied and/or divided, if necessary,
to produce the process rate clock(s) providing Sn points within each
repetition cycle. Often Sn is a power of two, such as 128, to facilitate
computation.
The processor 24 can be synchronized with the process rate clocks via
interrupts, digital interfacing or other methods of interfacing the
process rate clocks with the processor.
The sample rate clock on input 32 can be set to a fixed rate or taken
directly from the process rate clock. Some degradation of cancellation can
occur if a fixed rate is used but a simpler system can result since fixed
frequency filters can be used.
The processor 24 can be implemented in various forms including fixed
program hardware, custom chips or in one or more stored program
microprocessors. The functions of the processor 24 are to compute and
update filter weights that result in minimizing the mean square value of
the error signal and, when needed, to determine the sampling rate and
system impulse response.
The processor can be configured to cancel a single fundamental frequency
plus harmonics or to cancel multiple frequencies, each possibly with
harmonics.
Referring to FIG. 4, the cancellation signal Y.sub.c at time t for a single
fundamental frequency processor is computed as:
y.sub.c [t]=-.SIGMA..sub.h (w.sub.0,h [t]+w.sub.l,h [t]* x.sub.1,h [t]),
where
w.sub.0,h [t] and w.sub.l,h [t] are the values of the filter weights for
harmonic h at time t; and,
x.sub.0,h [t]=cos (h * 2 * pi * t/Sn)
x.sub.l,h [t]=sin (h * 2 * pi * t/Sn)
where Sn is the number of points processed per repetition cycle; h is the
harmonic index, 1 for the fundamental, 2 for the first harmonic, etc.,;
and, t sequences between 0 and Sn-1, changing at each processing time
interval.
A cosine and sine generator 40, 42 provides values at the fundamental
frequency and harmonics of the process rate clock. The output of the sine
and cosine generator x.sub.0,h and x.sub.l,h are provided to respective
filters 44, 46 having weighting functions w.sub.0,h and w.sub.l,h. The
output of the filters 44 and 46 are summed in the summer 48 to provide the
output cancellation signal y.sub.c. Filter weighing adaptors 50, 52
receive the residual signal r and modifY it with the delayed signal from
the sine and cosine generator through delay circuits 54, 56 respectively.
The adapters 50, 52 can be of any type that minimize the residual r, such
as a LMS algorithm. When an LMS algorithm is used the filter weights are
updated as:
w.sub.0,h [t]=w.sub.0,h [t-1].+-.alpha * r * x.sub.0,h [t - Delay.sub.h ]
w.sub.l,h [t]=w.sub.l,h [t-1].+-.alpha * r * x.sub.l,h [t - Delay.sub.h ]
where Delay.sub.h is the effect of the system impulse response at harmonic
h and alpha is set to assure convergence.
The delay circuits 54, 56 reproduce the effects of the system impulse
response from the cancellation signal y.sub.c to the residual signal 4.
This impulse response includes the effects of the filters within the
controller itself, which can dominate external factors. The purpose of the
delay is to keep the x.sub.0 and x.sub.l values going to the adapters 50,
52 within 90.degree. phase of the residual signal r. Often, it is adequate
to approximate the impulse response with a simple time delay. When that is
not adequate, the delay circuits 54, 56 become convolutions of the signals
x.sub.0 and x.sub.l with the system impulse response.
Note that the values of the delay can depend upon the frequency, and thus,
the harmonic.
Referring to FIG. 5, multiple processing rate signals can be utilized, one
for each fundamental frequency. A plurality of process rate clocks PRC are
shown being fed to their individual single fundamental frequency
processors SFFP 24. Their outputs are combined in a summer 58. The single
fundamental frequency processors 24 would each include the configuration
of FIG. 4 having a pair of adaptable notch filters 44, 46, as well as the
other circuitry illustrated therein.
The cancellation signal y.sub.c at time t is computed as:
y.sub.c [t]=.SIGMA..sub.f (w.sub.0,f [t]* +w.sub.l,f [t]* x.sub.x,f [t])
x.sub.0,f [t]=cos (2 * pi * t.sub.f /Sn)
x.sub.l,f [t]=sin (2 * pi * t.sub.f /Sn)
where Sn is the number of points processed per repetition cycle; and,
t.sub.f sequences between 0 and Sn-1 independently for each fundamental
frequency, changing a teach processing time interval.
As before, the adapters can be of any type that minimize the residual r,
such as a LMS algorithm. When an LMS algorithm is used, the filter weights
are updated as:
w.sub.0,f [t]=w.sub.0,f [t-1].+-.alpha * r * x.sub.0,f [t - Delay.sub.f ]
w.sub.l,f [t]=w.sub.l,f [t-1].+-.alpha * r * x.sub.l,f [t - Delay.sub.f ]
wherein Delay.sub.f is the effect of the system impulse response at
frequency f; and, alpha is set to assure convergence.
Note that the values of delay depend on the frequency. Multiple harmonics
of each fundamental frequency can be cancelled as described earlier.
The purpose of measuring the system impulse response is to adjust the
cosine and sine values to be within 90.degree. phase of the residual
signal. In the general case the phase correction is accomplished by
convolving the cosine/sine values with the system impulse response. Often,
it is sufficient simply to delay the cosine/sine values by the delay
introduced between the processor output and the residual value input. The
delay can be caused by the anti-aliasing filters, reconstruction filters
and delays in the environment, such as the distance between the actuator
and residual sensor.
When the system time delay is fixed and know in advance, the values can be
built into the processor and real-time measurement omitted.
When needed, several methods of measuring the system impulse response are
available. These include a swept sine (single frequency) signal, an
impulse generator, a pseudo random test signal correlated with the
response and a pseudo random test signal plus an adaptive filter.
The preferred approaCh, as illustrated in FIG. 6, utilizes a pseudo random
test signal generator 60 plus an adaptive filter 62 to minimize storage
requirements. The pseudo random test signal is stored in a delay line 64
and added to the cancellation output, y.sub.c at adder 66. The weights of
the adaptive filter are adjusted by adapter 68 using a minimization
algorithm, such as a LMS algorithm, by using the difference from 70
between the residual sensor value r and the convolution of the contents of
the delay line and the filter weights. When an LMS algorithm is used, the
weights are updated by:
C[t+1]=C[t]+alphaC * (r-C[t].multidot.PRTS[t]) * PRTS[t]
where C[t] is the vector of filter weights at time t; PRTS[t] is the delay
line of pseudo random test signal values; C.multidot.PRTS[t] is the dot
product of the vectors; r is the residual signal value; and, alphaC is set
for convergence.
The resulting filter weights, C[t] approximate the system impulse response
and are used by the processor 24 to set the delays 54, 56.
The preferred method of generating the pseudo random test signal is the use
of a maximal length sequence generator. This sequence can be generated by:
d[t]=d[t-28] xor d[t-31]
where d[t] is the binary value of the sequence at time t.
The test signal is generated by:
+test signal level, d[t]=1,
-test signal level, d[t]=0.
When the system impulse response can be approximated by linear phase, a
single value of the system time delay describes its response. Then the
values of Delay.sub.h and Delay.sub.f can be provided by this single
value. This value is adjusted to account for variations in the processing
rate by:
Delay =td * Pr
where Delay is in processing interval units; td is the system time delay in
seconds; and, Pr is the processing rate per second.
In the general case, the values of delay depend on the frequency. These
delays can be determined by converting the impulse response into the
frequency domain (e.g., by use of a Fourier or Hartley transform), and by
calculating the delays from the phase values. An example of the
calculation is:
##EQU1##
where td.sub.f is the time delay at frequency f, in seconds; phase.sub.f
is the phase at frequency f, in radians; and f is the frequency, in Hertz.
The values of Delay.sub.h or Delay.sub.f in FIG. 4 are then determined by
Delay.sub.fh =td.sub.f * Pr
where fh=f.sub.o * h with f.sub.o the channel fundamental frequency and h
is the harmonic index, or
Delay.sub.f =td.sub.f * Pr
Alternatively, the delay values of the sine and cosine values can be
determined as:
sin (theta+phase.sub.f)=sin (theta) cos (phase.sub.f)+cos (theta) sin
(phase.sub.f)
cos (theta+phase.sub.f)=cos (theta) cos (phase.sub.f)-sin (theta) sin
(phase.sub.f)
where
theta=2*pi*h*t/Sn and
f=f.sub.o * h.
Although the present invention has been described and illustrated in
detail, it is to be clearly understood that the same is by way of
illustration and example only, and is not to be taken by way of
limitation. The spirit and scope of the present invention are to be
limited only by the terms of the appended claims.
* * * * *
|
|
|
|
|
Description  |
|