Buscando una forma de generar 100-144 canales analógicos desde Arduino

-1

He estado buscando por días y encontré 2 formas en que podría funcionar, pero no estoy seguro de la implementación:

  1. Usando registros de desplazamiento como en: enlace

  2. El multiplexado 74HC595 con muchos IC 20+ IC no es una idea tan atractiva

Preguntas :

1 Cómo implementar algunos DAC básicos con una configuración que controla los niveles de salida de todos los canales simultáneamente.

  1. Necesito 5-20 voltios de salida, resolución de 0,5-1 microsegundos (para pulsos de onda cuadrada)

  2. El ancho del pulso es (PW en la imagen) puede variar de 10 a 100 uS y el Período del pulso es (PP en la imagen) puede variar de 10 a 100 uS. Esto debe ser posible en el software Arduino (o en un microcontrolador similar, abrirlo en la Raspberry Pi si es necesario). ¿Está esta resolución dentro de la capacidad del reloj de Arduino? ¿Debo pasar a un microcontrolador más rápido?

  3. Podría dividir la cuadrícula, digamos, en bloques de 36x36 (4 de ellos) y hacer que escaneen - raster simultáneamente, por lo tanto, pidiendo menos rendimiento del arduino ...

La imagen debe indicar el tipo de pulso que debo emitir.

* El resultado final necesario es producir patrones geométricos, moviéndose alrededor de una matriz de dispositivos de salida analógicos. La información del pulso es 'el experimento'. Esto es de un antiguo proyecto perdido que estoy tratando de averiguar cómo recrear.

^ Me gustaría que los parámetros del pulso sean precisos y consistentes

^ Probablemente prefiero usar registros de desplazamiento

Como una especie de TV primitiva.

¡Gracias por ayuda!

    
pregunta mfr

1 respuesta

0

El título de la pregunta dice que necesitas muchos canales analógicos. Parece que te refieres a canales digitales con voltajes variables (ya que cada canal solo está activado o desactivado). 100 canales es mucho , no importa lo que hagas, vas a tener muchos ICs. Los registros de turnos son probablemente su mejor opción, son simples y los datos se pueden transferir a ellos muy rápido.

Supongamos que necesitas 10 horas de actualización. Con 100 bits de datos de visualización que son 10 MHz. El SPI en un Arduino no puede cambiar tan rápido. El Uno tiene un reloj de 16 Mhz y lo más rápido que puede configurar SPI es 1/2 de la velocidad del reloj. Esto es para no decir nada acerca de cómo obtener los datos alineados. Así que necesitarás algo más rápido y más poderoso.

Para el voltaje de salida variable, el más simple probablemente sería un DAC con un amplificador operacional para escalarlo hasta ~ 20 V y un búfer actual.

    
respondido por el Austin

Lea otras preguntas en las etiquetas