Noise cancellation involves removing an unwanted noise while keeping the source sound. The source sound may consist of speech, music played from a device such as an iPod or a computer, or no sound at all. The objective of this project is to study the process of noise cancellation both as hardware and as software. The hardware will consist of building a noise cancelling circuit that uses headphones as an output, a microphone to pick up the noise to be cancelled and, if desired, a source sound.
The software portion of the experiment will use MATLAB to simulate the hardware circuit as well as simulate other methods: filtering unwanted signal, a pi phase shift for inverting the noise signal, the least mean squares algorithm, and the recursive least squares algorithm. The hardware solution works well with periodic noise but has difficulty removing noise from non-periodic noise. The software solution using adaptive filtering works better than the hardware solution but only with periodic noise. Difficulties encountered include the kinds of noise that can be canceled and the time delay internal to the circuit.
The potentiometer (R14) is used to attenuate the signal from the second stage (microphone). Noise heard by the user will most likely be muffled due to the headphones covering a portion of the ear. Attenuating the signal produced by the microphone will help match the amplitudes of the ambient noise and the output of the circuit.
With the input only on left-side and another source connected (J2), this is done to show that the summing stage of the hardware functions properly. We see an inverted signal amplified according to the attenuation of the potentiometer (R14) with the signal from J2 added to the input signal from J1. The sine wave appears noisy due to the input signal of white noise from J1 being added to a sine wave from J2.
MATLAB was used to simulate the hardware portion of the study. In order to simulate properly, the same microphone used in hardware must be used to record various noises. Five different types of tests were conducted. The first consisted of simulating the inversion of noise and adding two signals deconstructively. The second test consisted of creating filters so retain or remove specific frequencies. From figures 10 and 11, it can be seen that the magnitude response of a sinusoid lies on its current frequency. To cancel the noise from a sine wave, a filter could be implemented at specific frequencies to cancel out (notch filter) or avoid (low-pass, high-pass) the noise of a sine wave.
Comparison between hardware and software approaches for noise cancelling shows that software approach is the best approach. Many of the downfalls of hardware are not present in the software. Timing delays are almost non-existent in the software, computing of the algorithms in the MATLAB are extremely fast. The noise cancelling for the periodic signals using the RLS algorithm cancels the noise from the signal almost completely, creating a clear signal. The hardware and software approaches for this project are different in nature.
Hardware is an active process, meaning the noise is being cancelled while it is being produced. The hardware uses a microphone to actively cancel noise, while the software uses preassembled noise and signal files with MATLAB to remove noise; a possible improvement for this project involves using MATLAB to actively cancel noise in real-time. The difference between both approaches makes it difficult to compare the two. It is seen that software works best for periodic signals, but doesn’t perform well with non-periodic signals.
This is due to the accuracy of software. Both hardware and software were successful in reducing noise. Hardware produces quieter noise, but does not completely cancel the noise. Software will completely remove noise that is periodic using the RLS algorithm. Hardware performs better for non-periodic signals unlike the software approach that creates a noisier signal.
Source: California Polytechnic State University
Authors: Riggi Aquino | Jacob Lincoln