ADC para muchos piezos a la vez

1

Estoy construyendo un instrumento musical electrónico, usando micrófonos de contacto piezoeléctricos como entradas. Quiero ~ 80 botones, cada uno con un piezo conectado a un ADC. La idea es que golpees el piezo y luego, dependiendo de la fuerza con la que lo golpeas, disparo un sonido más alto o más bajo.

Estoy tratando de averiguar qué usar para el ADC. Podría correr ~ 14 arduinos, ¿pero eso parece un poco tonto? ¿Hay una mejor manera de obtener ~ 80 ADC?

También estoy tratando de averiguar cómo configurar los circuitos. Para cada uno, solo pude poner una resistencia piezo y 1M en paralelo a través del ADC:

ADC in0 ---+------+
           |      |
         1MOhm  piezo
           |      |
ADC in1 ---+------+

Esto está bien, pero requiere una frecuencia de muestreo relativamente alta del ADC para capturar con precisión el pico de la señal de entrada. Parece que debería ser capaz de poner algo en serie con el piezo para cortar el lado negativo de la señal, y luego otra cosa para suavizar la señal, que me permitiría ejecutar una tasa de muestreo mucho más baja.

(Esta pregunta es básicamente "cómo debería ser la entrada de los componentes electrónicos de un kit de batería electrónica", aunque no es lo que estoy construyendo).

    
pregunta Jeff Kaufman

2 respuestas

3

Puede multiplexar un solo ADC, con un rendimiento reducido, por supuesto. Entonces, si tiene un ADC de 1MSPS que se asienta en 1usec (probablemente disponible en el chip con algunos micros) podría muestrear 100 entradas a 5kHz.

Muestreo a 5kHz con un filtro de suavizado analógico realista en cada entrada que pueda capturar 1-1.5kHz bastante bien (el límite teórico es 2.5kHz).

Ese puede ser un ancho de banda aceptable para activar sonidos musicales. A eso tendrías que agregar tiempo de procesamiento que probablemente será limitante. Es posible que sea mejor dedicar un procesador a cada entrada o en algún punto intermedio, pero tendrá que crear un perfil del código que desea ejecutar.

También puede considerar usar un comparador de entrada analógica simple (con protección de entrada) para cada piezo y generar una señal digital . Algo como un LM339. No podrá encontrar el pico de la señal, pero tampoco utilizará ningún algoritmo en tiempo real, ya que no es causal. Puede agregar un disparo único a cada salida de comparador para alargar el pulso y darle tiempo para tomar una muestra a la vez (o quizás 8 a la vez).

    
respondido por el Spehro Pefhany
1

Cuando hice esto, usé un multiplexor analógico, como 4051 . Esto le permite conectar muchos piezos hasta un canal ADC; usted selecciona el piezo que desea al ingresar datos binarios al multiplexor. Incluso puedes ponerlos en serie para obtener n ^ 2 pines de entrada.

Creo que tienes 6 pines ADC, por lo que 6 * 8 conmutados te dan 48 entradas. Puede agregar una cascada más para obtener el total final que necesita.

    
respondido por el 0xDBFB7

Lea otras preguntas en las etiquetas