Unfortunately, this is not possible with such a simple approach. In 2 and higher dimensions, the problem is that any attempt to create a cancelling wave from a position other than the source of the wave will not cancel the wave. Instead it will create a network of places where it cancels and places where it constructively interferes, depending on the wavelength and their relative positions, and there is no way to make the entire space be cancelling in such a short space. You can only get various arrangements of cancellation but also constructive feedback.
(Some other things happen as you get a large number of wavelengths away from the source, but given the wavelength of the audio in question, being in a room with it means you get that local behavior, not long-range behavior.)
Probably somewhere on the internet is a fantastic interactive diagram that would clearly demonstrate this for you, but I couldn't google one up. Links solicited. (I got a lot 1D stuff but this phenomenon doesn't show up in 1D. 2D is adequate, 3D just adds more nodes in more dimensions.)
The way noise cancelling headphones work is that they know where they are relative to your eardrum, and as such, they can arrange it so that for all incoming audible frequencies, your eardrum is in a cancellation location for that frequency, ignoring a lot of details. They'll still unavoidably create locations of constructive interference, you just won't have your sensors there.
In principle you may be able to do this with some very precise location of where your ears are, where your mics are, where your speakers are and the exact characteristics of all of these things, and some very clever coding; I've seen people kicking this idea around but I haven't yet heard of anyone pulling it off. I can say it's still yet harder than it sounds at first, because you have things like echos and all kinds of other fun effects to deal with. In theory it should be possible to echo cancel at a distance, but you'd be getting into super high end audio processing, not just a weekend project where you record a microphone or two and "just" invert it with a couple of speakers. You might need something as fancy as https://youtu.be/UPVcwDzhBZ8?t=463 just to get started, and an accurate room model, and all kinds of things, and you might still get something that only works as long as nothing in the room moves, including you or even parts of you. In practice, I'd guesstimate this at the level of difficulty of doing a PhD in audio processing at a minimum... but not necessarily impossible.
> Probably somewhere on the internet is a fantastic interactive diagram that would clearly demonstrate this for you, but I couldn't google one up. Links solicited.
Here's one: https://apenwarr.ca/beamlab -- as well as the author's writeup: https://apenwarr.ca/log/20140801
The author is focused on beamforming WiFi signals, but the principle is exactly the same whether it's a radio wave or a sound wave.
Exactly what I was looking for, thank you.
Interestingly, the wavelength of sound and the wavelength of wifi signals are in the same ballpark. 900MHz electromagnetic waves come out to ~30cm waves, which is about 1000Hz in sound-in-air.
just my lay person thought here.
But if you could cancel the noise/signal perfectly and everywhere wouldn't that sorta violate energy conservation?
The sound energy has to go somewhere right?
You are providing the energy by emitting the counter signal in the first place.
That's an interesting question: what to do with the energy, ideally? Maybe convert it to very low frequency, so it only annoys elephants.
Perfectly? Surely that is not reasonable?
Even imperfectly, the problem remains - and is answered by the "the energy of the cancellation source counterbalances the noise energy."
My thought immediately jumped to beamforming / phased speaker array.
What's more problematic is that its not the lower frequencies that are annoying (the 312Mhz drone), but the mid and high range. Think about it like this: fridge compressors suck to hear with their 2500Hz high-pitched electrical buzz, but once the compressor turns off, the gentle but deep slosh of the liquid being pumped around isn't annoying at all.
It would be possible if you had a matrix of speakers covering all walls & ceiling. In that scenario you could control the entire sound landscape across the board, and cancel out or simulate arbitrary sound sources in the room.
It would take gigantic processing power, but it's theoretically possible.
You'd have to run realtime 3-D FFTs on the sound in the system, at approximately a few kHz.
Related: https://en.wikipedia.org/wiki/Wave_field_synthesis
So it could be possible if the cancelling came from the source of the wave, such as making the spinning fan or its enclosure the speaker?
I guess the 'fan as the noise cancelling speaker' idea could be reworded as 'a fan with active stabilization that doesn't vibrate', making no mechanical noise.
A friend with a recording studio solved their problem by putting the fan at the end of a length of ducting with a couple of 90 degree bends, lined with foam.
Yes. I believe this is used in some high-end applications. It's really hard though. You need a near-perfect model of what the sound will be slightly in advance. I doubt a fan would be amendable to that.