Ya sé cómo extender la cantidad 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, también estaría bien un esquema general del circuito/código.
También estoy abierto a sugerencias de protección, aunque preferiría que hubiera una solución de hardware no demasiado difícil.
Si ya está familiarizado con los chips multiplexores digitales, ¡buenas noticias! También se pueden utilizar para señales analógicas.
http://playground.arduino.cc/Learning/4051
La premisa básica es exactamente igual que con la multiplexación de señales digitales. Usas el chip 4051 como un "cambiador de carril" y lees la señal de cualquier carril al que le digas 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 se pueden encadenar, por lo que puede agregar con bastante facilidad 8 señales más sin necesidad de quitarlas del propio 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.
Puede ser importante recordar que el propio chip ATmega de Arduino utiliza un MUX analógico. Los chips basados en Uno (ATmega328) solo tienen un único 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 las entradas analógicas, puede ser necesario considerar cuánto tiempo lleva hacer todo este MUXing y si se necesitan o no ADC externos adicionales en su aplicación.
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 se pueden usar como analógicos. Este aay 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é yo mismo, creo que es una buena arquitectura.
Buenos días
Nick Alexeev