How can I determine sound direction using stereo signal phase shift?

AI Thread Summary
To determine sound direction using stereo signal phase shift, two microphones can be utilized to measure the phase lag of sound waves, which indicates direction. The discussion highlights two approaches: phase shift detection and mimicking interaural time difference (ITD) processing found in animal physiology. Calculating ITD involves cross-correlation of the microphone signals, which can be implemented using digital signal processing techniques. The conversation also references the Blumlien stereo patents for further understanding of the relationship between ITD and azimuth direction. Participants seek advice on existing integrated circuits or simpler electronic solutions to achieve this functionality.
keithmarsh
Messages
4
Reaction score
0
Hello everybody. I'm trying to build a sound direction localising subsystem for a robot.
I have two microphones placed a distance apart. I'm not worried about sounds behind or the distance, just the direction.

I see two choices. Phase shift detection or a neural sim of interaural time detection (ITD).

Because sound travels at a fairly slow speed, the difference that sound arrives between two mics can be measured. The phase of the sound at the furthest mic will lag behind the near one. By measuring the phase lag, the sound direction can be calculated. The italic bit is the fun bit.

Because we're not measuring a spike that can be easily measured, but a complex mish mash of frequencies, there's no landmark sound to trigger things. I guess I have to process the sound to its component frequencies, then look for the matching set to appear on the other channel constantly for a given time. And vice-versa. Eek. Lots of Fourier transforms and maths. Is anyone aware of an IC that's been produced to achieve this? Or a better way?

The second choice is to mimic how we do it. I'm reading a few papers on this at the moment, but none are really helping me get the basic physiology of animal aural processing. I think we use hairs as bandpass filters to roughly achieve the FTs as above, but I'm not sure of the time comparison process. And less sure of how I can electronically do this.

Soooo, this is one of those parts of a project that is proving a mountain to solve. If I can do it without loads of microcontroller code, great. I'm really hoping there's a blindingly obvious solution involving two 555s that'll do it, but I'm not holding my breath :-)

Any advice/references gratefully received.
 
Engineering news on Phys.org
to relate time difference (ITD) to azimuth direction, you need to review the Blumlien stereo patents. (or just do a little trigonometry. assume no head shadowing, but that you know the inter-aural spacing.)

to get the ITD you want to compute the "cross-correlation" between the signals of the two microphones:

R_{lr}(\tau) = \int (x_l(t) x_r(t-\tau)) w(t) dt

where w(t){/itex] is a window function.<br /> <br /> if you&#039;re doing this with a DSP (or some other real-time processor), then the above integral is a summation and the signals are discrete-time. and the offset lag \tau is also an integer number of samples.<br /> <br /> if you like USENET, <i>comp.dsp</i> is a good newsgroup for this question.
 
Many thanks for your response. I came across this [ oh can't post URLs ] analog.com/en/prod/0,,770_847_AD8302,00.html beasty in my search last night. Looks very interesting. When I get my hands on one too evaluate, I'll report back.
 
rbj said:
to relate time difference (ITD) to azimuth direction, you need to review the Blumlien stereo patents. (or just do a little trigonometry. assume no head shadowing, but that you know the inter-aural spacing.)

to get the ITD you want to compute the "cross-correlation" between the signals of the two microphones:

R_{lr}(\tau) = \int (x_l(t) x_r(t-\tau)) w(t) dt

where w(t) is a window function.

if you're doing this with a DSP (or some other real-time processor), then the above integral is a summation and the signals are discrete-time. and the offset lag \tau is also an integer number of samples.

if you like USENET, comp.dsp is a good newsgroup for this question.

i tried to fix this last night, by the PF server was acting very badly. above is what i meant.
 
Hi all I have some confusion about piezoelectrical sensors combination. If i have three acoustic piezoelectrical sensors (with same receive sensitivity in dB ref V/1uPa) placed at specific distance, these sensors receive acoustic signal from a sound source placed at far field distance (Plane Wave) and from broadside. I receive output of these sensors through individual preamplifiers, add them through hardware like summer circuit adder or in software after digitization and in this way got an...
I have recently moved into a new (rather ancient) house and had a few trips of my Residual Current breaker. I dug out my old Socket tester which tell me the three pins are correct. But then the Red warning light tells me my socket(s) fail the loop test. I never had this before but my last house had an overhead supply with no Earth from the company. The tester said "get this checked" and the man said the (high but not ridiculous) earth resistance was acceptable. I stuck a new copper earth...
Thread 'Beauty of old electrical and measuring things, etc.'
Even as a kid, I saw beauty in old devices. That made me want to understand how they worked. I had lots of old things that I keep and now reviving. Old things need to work to see the beauty. Here's what I've done so far. Two views of the gadgets shelves and my small work space: Here's a close up look at the meters, gauges and other measuring things: This is what I think of as surface-mount electrical components and wiring. The components are very old and shows how...
Back
Top