¿Cómo construyo un sistema para localizar la fuente de sonido? [cerrado]

En mi apartamento tengo el problema de que cuando estoy en mi habitación puedo escuchar a los vecinos en su habitación exactamente arriba de mí hablando. Afortunadamente, no puedo escuchar lo que dicen, pero aún así es bastante molesto.

Primero pensé que el sonido viajaba directamente a través de mi techo, pero ahora no estoy tan seguro ya que está hecho de concreto sólido. Nuestros apartamentos están conectados a través de 2 conductos de ventilación que atraviesan el hormigón. Mi teoría ahora es que el sonido viaja a través de estos tubos y a través de la puerta de mi dormitorio.

Estoy buscando probar esta teoría con un equipo electrónico simple. Estaba pensando en quizás un micrófono fuera de la puerta de mi dormitorio y otro dentro. Al comparar el tiempo y la intensidad del sonido, debería poder saber si el sonido viaja a través de la puerta o del techo. Tengo una raspberry pi zero y un kit de arduino que aún no he usado. Tal vez podría usar estos. ¿Qué tipo de micrófono debo usar? Quiero usar algo pequeño. ¿Funcionarían dos altavoces de PC más bien pequeños? ¿Hay algún micrófono pequeño de alta sensibilidad que no sea demasiado caro que pueda usar con Raspberry o Arduino? Primero pensé que debería tener un botón controlado por radio en mi habitación para encender el sistema, pero ahora estoy pensando que tal vez el sistema debería grabar continuamente y cuando escucho a los vecinos mirar el reloj y anotar la hora exacta.

¿Alguna idea sobre cómo hacer esto?

¿Existen algunos sistemas preconstruidos como una grabadora de sonido que pueda usar?

Haga la vida más fácil y bloquee los orificios de ventilación y vea qué sucede. Sin embargo, conviértalo en un bloqueo temporal.
Puede intentar grabar el audio estéreo con su PC y luego escucharlo con auriculares. Luego, su cerebro puede procesar las señales y puede determinar la dirección del sonido.
@HandyHowie: sí, usar mi computadora portátil es una gran idea. ¿Dónde estás pensando en usar dos micrófonos USB? o solo uno? de todos modos, podría analizar los datos en Matlab y observar tanto el retraso de tiempo como la base de datos.

Respuestas (2)

Este fue un problema divertido de resolver. Presentaré el esquema, y ​​dentro del esquema habrá un texto que debería explicar cómo funciona. Con respecto al micrófono, no soy un audiófilo, todo lo que sé es que el audio se basa en frecuencias y, sin un punto de CC, cruzarán el punto de voltaje cero, y ese es el punto en el que puedo concentrarme.

ingrese la descripción de la imagen aquí

Enlace a la simulación.

  • Gráfico superior izquierdo: la fuente de 1 kHz en la parte superior izquierda
  • Gráfico inferior izquierdo: la fuente de 1 kHz en la parte inferior izquierda
  • Gráfico medio superior: Entrada de la puerta NAND superior
  • Gráfico medio inferior: entrada del gat NAND inferior
  • Gráfico superior derecho: Salida de la puerta NAND superior
  • Gráfico inferior derecho: salida de la puerta NAND inferior

En la simulación, si hace clic en el enlace de arriba, puede hacer doble clic en las fuentes de 1 khz y cambiar la fase.

Dice " Aquí para simulación " apuntando a dos filtros RC, eso se debe a que hay un error extraño en el simulador, pequeños picos provienen del disparador de borde cuando nada se dispara, lo que se puede ver en el gráfico central. Si tuviera que hacer este esquema en el mundo real, entonces no agregaría esos dos filtros RC, la salida del disparador de borde debería ir directamente a la entrada de la NAND.

En la salida de la NAND superior derecha hay un interruptor, está ahí... para el momento en que el simulador falla y el estado SR no está definido. Por lo tanto, no debe agregar un interruptor allí en la vida real.

La entrada del disparador de borde, es posible que desee usar 10 nF en lugar de 100 nF.


Así es como se ve si la fuente inferior de 1 kHz está desfasada -45 grados.

ingrese la descripción de la imagen aquí

Observe cómo los dos gráficos de la derecha acaban de intercambiarse.

Usted, como ser humano, no podrá saber cuándo parpadean, sus ojos solo verán el promedio de la señal PWM, por lo que verá claramente que un LED se ilumina mucho más que el otro => conozca la dirección.


En la simulación son solo ondas sinusoidales de 1 kHz, pero la cosa es que solo estoy detectando cruces por cero, así que no importa si son 10 khz o 20 kHz, los cruces por cero todavía aparecen. Y en el mundo real nunca tendrás ondas sinusoidales puras, se sumarán. Pero una vez más, los cruces por cero seguirán ocurriendo en los mismos puntos.

Y la razón por la que me estoy enfocando en el cambio de fase es porque el retraso de tiempo entre los micrófonos hace que la onda sinusoidal siga girando hasta que golpea el otro micrófono, por lo que el cambio de fase está estrechamente relacionado con el retraso de tiempo. Pero no igual a.


Si coloca micrófonos en sus oídos, podrá saber si la fuente proviene de su hemisferio derecho o de su hemisferio izquierdo. No podrá distinguir si el sonido proviene de adelante, arriba, atrás o abajo, por lo que podría hacer dos de estos esquemas, rotados 90 grados. Equivalente a tener una oreja en el lado izquierdo de la cabeza y otra en el lado derecho => puedes distinguir el hemisferio izquierdo del derecho. Y luego otro micrófono debajo de la barbilla y uno encima de la cabeza => puede saber si el sonido proviene de arriba o de abajo => puede señalar de dónde proviene el sonido y hacia dónde se dirige.

Usé el ejemplo de la cabeza porque de esa manera puedes visualizarlo mientras lees esta respuesta. No te estoy recomendando que te pongas micrófonos debajo de la barbilla, eso es una tontería.

También podría usar 3 micrófonos y reutilizar uno de los micrófonos. Conéctelos en una formación de triángulo rectángulo con los micrófonos en la esquina del triángulo. El micrófono en el ángulo de 90 grados sería el que se reutilizaría.


ingrese la descripción de la imagen aquí

No soy artista, pero creo que se comportará así.

Entonces, lo que sucede en el medio cuando la fuente está mucho más a un lado depende de la frecuencia del sonido entrante y la ubicación de los micrófonos.

No nos olvidemos de los sonidos que rebotan en las paredes y otras fuentes de ruido..

Pero está bien, supongamos que tienes los micrófonos como la mitad superior de mi dibujo.

La fuente de sonido está a 10 cm verticalmente del micrófono izquierdo.
La fuente de sonido es de 1 kHz.
El micrófono derecho está a 1 cm del micrófono izquierdo.
La hipotenusa de este triángulo rectángulo es 10 2 + 1 2 = 101 cm

¿Cuál es el ciclo de trabajo del LED izquierdo? (¿Qué tan brillante será?)

Bueno, la longitud de onda de una onda sinusoidal de 1 kHz que se mueve a la velocidad del sonido (343 m/s) es λ = v F = 343  EM 1000  Hz = 34.3  cm

Entonces, el número de períodos que caben desde la fuente hasta el micrófono justo debajo será 10  cm 34.3  cm 0.291  periodos

Y el número de períodos que caben en el 101 será 101  cm 34.3  cm 0.293  periodos

La diferencia es un período de 0.02, esto significa que el LED izquierdo estará encendido el 98% del tiempo y el LED derecho estará encendido el 2% del tiempo.

Te diré cómo es para otras frecuencias para darte una idea, no mostraré mis matemáticas, será como arriba.

  • 1 kHz => LED izquierdo = 98,5 % encendido
  • 5 kHz => LED izquierdo = 92,7 % encendido
  • 10 kHz => LED izquierdo = 85,4 % encendido
  • 20 kHz => LED izquierdo = 70,9 % encendido

La fuente no se ha movido, pero la luz del LED indica que sí. Entonces es... bastante dependiente de la frecuencia. Y como puede ver en este ejemplo, la fuente está a solo ~ 6 grados del micrófono derecho.

Y a medida que esta fuente se mueva, las fases volverán y se superpondrán y... todas las cosas extrañas sucederán... obtendrás un galimatías.

Entonces... si desea ubicar la fuente del sonido, entonces necesita saber de dónde viene y luego apuntar aproximadamente hacia él, y luego este dispositivo lo ayudará con los últimos grados.

Cuanto más cerca estén los micrófonos entre sí, menor será el número de periodos audibles que pueda caber entre ellos, lo que a su vez reducirá el galimatías.

Si logra colocar los micrófonos a una longitud de onda de 20 kHz (1,7 cm) uno del otro, podrá ubicar todo suponiendo que conoce la frecuencia del sonido entrante. Puede averiguar cuáles son las frecuencias entrantes con FFT.


Buena suerte en tu empresa.

¡Gracias Harry! Esto se ve genial. Entonces, ¿lo entiendo correctamente: el primer canal de llegada / más cercano al origen encenderá más su LED? Entonces, si veo el LED superior encendido la mayor parte del tiempo, ¿esto significa que el receptor superior es el más cercano a la fuente?
@Andy Se iluminará con mayor frecuencia, lo que sus ojos interpretarán como la iluminación más intensa.
@Andy Agregué una imagen que muestra cómo creo que se comportará. No estoy 100% seguro, es como programar un microcontrolador sin siquiera probarlo. Puede haber errores o algo mal, no estoy 100% seguro. - también depende de qué tan lejos hayas colocado los micrófonos, tenerlos uno al lado del otro con 1 mm de espacio entre ellos puede darte otros resultados que tenerlos separados 30 cm. - Si tuviera que hacer esto, pondría los micrófonos muy cerca. Como tus fosas nasales.

No sé qué micrófonos usar (cualquier calidad decente debería ser suficiente).

Sin embargo, la idea es usar 2 micrófonos a distancia. Al recibir señales de ambos micrófonos, puede comparar cuál está recibiendo más alto/tiene más retraso y detectar la fuente. Puede que tengas que mover los micrófonos o jugar con las distancias para encontrar los mejores resultados.

Esto es aproximadamente lo mismo que los humanos escuchan de qué dirección viene un sonido.

Cuando usa un Arduino, no puede grabar el sonido, probablemente podría hacerlo con cualquier grabadora de sonido (dependiendo de la memoria para almacenar el sonido). Sin embargo, puede registrar fácilmente los datos del micrófono (sí/no sonido) y almacenar esos metadatos en una tarjeta SD y escucharlos a través de la grabadora de voz (sin conexión).

bueno, estoy bastante seguro de que la audición humana incorpora retraso, no principalmente diferencias de volumen.
@MarcusMüller Gracias, tienes razón, eso podría ser aún más importante (agrégalo en mi respuesta, gracias)
No hice nada en absoluto;) ¡tengo mi voto a favor!
@MarcusMüller Lo hiciste, corrigiste/mejoraste mi respuesta. Quise decir que agregué su sugerencia en mi respuesta, pero gracias a su comentario. Upvoted sus comentarios.
¿Demora? ¿En realidad? ¿Puedes dar una referencia? Estoy bastante seguro de que es la diferencia de volumen... El retraso es demasiado corto en comparación con la propagación del impulso neural.
Aquí dicen que es la combinación de las "pistas", como amplitud, tiempos, pérdida de frecuencia y otras.
@EugeneSh. Artículo interesante... El retraso es en realidad el tiempo, la diferencia de tiempo entre el oído izquierdo y el derecho. Y el tiempo se menciona en el artículo que mencionaste.
Sí, lo busqué después de mi primer comentario, solo como una actualización, para no discutir...
Gracias por el artículo (de nuevo). Tampoco quiero discutir. Para el que pregunta, el tiempo y el volumen se pueden hacer con un simple micrófono, el análisis espectral/frecuencia es una historia diferente.