Ya sé cómo extender el número de pines digitales en un Arduino usando un multiplexor.
Quiero aumentar la cantidad de canales de entrada analógica que tengo. Una solución es agregar otro Arduino como esclavo.
¿Cómo aumentaría el número de canales de entrada analógica? (Supongo que algunos MUXing y ADC están involucrados). Si es demasiado complicado escribir una respuesta, un esquema general de circuito / código también estaría bien.
También estoy abierto a sugerencias de protección, aunque preferiría que hubiera una solución de hardware no demasiado difícil.
Respuestas:
Si ya está familiarizado con los chips multiplexores digitales, ¡buenas noticias! También se pueden usar para señales analógicas.
http://playground.arduino.cc/Learning/4051
La premisa básica es exactamente como con la multiplexación de señal digital. Utiliza el chip 4051 como un "cambiador de carril" y lee la señal de cualquier carril al que le diga al chip que cambie. el 4051 usa 3 pines digitales y 1 pin analógico (o digital) adicional en el arduino para crear hasta 8 carriles de entrada. Algunos multiplexores son encadenables, por lo que puede agregar con bastante facilidad 8 señales más sin necesidad de mantenerlas alejadas del arduino.
Es exactamente como la técnica que ya conoce para las señales digitales, simplemente conecte el canal desde el que lee a un pin analógico en lugar de uno digital, luego recorra los estados binarios y lea los valores analógicos.
Hice un gif animado para ti.
fuente
Puede ser importante recordar que el chip ATmega del Arduino está usando un MUX analógico. Los chips basados en Uno (ATmega328) solo tienen un solo ADC. Las 6 entradas analógicas son en realidad un MUX que se conecta a ese ADC.
Es por eso que solo puede leer 1 entrada analógica a la vez.
Al expandir entradas analógicas, puede ser necesario considerar cuánto tiempo lleva hacer todo este MUXing y si son necesarios o no ADC externos adicionales en su aplicación.
fuente
Considere esto: agregue ATtiny 85 con comunicación serial con el Arduino, usa 2 pines para Rx, Tx, y tiene 3 pines más que pueden usarse como analógico. Esto puede desarrollar su propio protocolo, el ATtiny puede procesar el algoritmo y enviar la información procesada a Arduino, también es muy barato, lo probé por mí mismo, creo que es una buena arquitectura.
Buen día
fuente