Eu já sei como estender o número de pinos digitais em um Arduino usando um multiplexador.
Quero aumentar o número de canais de entrada analógica que tenho. Uma solução é adicionar outro Arduino como escravo.
Como eu aumentaria o número de canais de entrada analógica? (Presumo que alguns MUXing e ADCs estejam envolvidos). Se for muito complicado escrever uma resposta, um resumo geral do circuito / código também seria bom.
Também estou aberto a ocultar sugestões, embora prefira se houver uma solução de hardware não muito difícil.
Respostas:
Se você já conhece os chips multiplexadores digitais, boas notícias! Eles também podem ser usados para sinais analógicos.
http://playground.arduino.cc/Learning/4051
A premissa básica é exatamente igual à multiplexação de sinal digital. Você usa o chip 4051 como um "trocador de faixa" e lê o sinal de qualquer faixa na qual você diz para o chip mudar. o 4051 usa 3 pinos digitais e 1 pino analógico (ou digital) adicional no arduino para criar até 8 faixas de entrada. Alguns multiplexadores são encadeados em cadeia, então você pode adicionar facilmente mais 8 sinais sem precisar afastá-los do próprio arduino.
É exatamente como a técnica que você já conhece para sinais digitais, basta conectar o canal que você lê a um pino analógico em vez de um digital, depois percorrer os estados binários e ler os valores analógicos.
Eu fiz um gif animado para você.
fonte
Pode ser importante lembrar que o chip ATmega do Arduino está usando um MUX analógico. Os chips baseados em Uno (ATmega328) possuem apenas um único ADC. As 6 entradas analógicas são na verdade um MUX que se conecta a esse ADC.
É por isso que você pode ler apenas 1 entrada analógica por vez.
Ao expandir as entradas analógicas, pode ser necessário considerar quanto tempo leva para fazer todo esse MUX e se ADCs externos adicionais são ou não necessários em seu aplicativo.
fonte
Considere o seguinte: adicione ATtiny 85 com comunicação serial com o Arduino, ele usa 2 pinos para Rx, Tx e você tem mais 3 pinos que podem ser usados como analógico. Dessa forma, você pode desenvolver seu próprio protocolo, o ATtiny pode processar o algoritmo e enviar as informações processadas para o Arduino, também é muito barato, tentei por mim mesmo, é uma arquitetura legal, eu acho.
Dia bom
fonte