Je sais déjà comment étendre le nombre de broches numériques sur un Arduino à l'aide d'un multiplexeur.
Je souhaite augmenter le nombre de canaux d'entrée analogiques dont je dispose. Une solution consiste à ajouter un autre Arduino comme esclave.
Comment augmenter le nombre de canaux d'entrée analogiques? (Je suppose que certains MUXing et ADC sont impliqués). S'il est trop compliqué d'écrire une réponse, un aperçu général du circuit / code conviendrait également.
Je suis également ouvert aux suggestions de blindage, bien que je préfère qu'il y ait une solution matérielle pas trop difficile.
Réponses:
Si vous connaissez déjà les puces multiplexeurs numériques, bonne nouvelle! Ils peuvent également être utilisés pour des signaux analogiques.
http://playground.arduino.cc/Learning/4051
Le principe de base est exactement comme avec le multiplexage de signaux numériques. Vous utilisez la puce 4051 comme «changeur de voie» et lisez le signal de la voie sur laquelle vous dites à la puce de basculer. le 4051 utilise 3 broches numériques et 1 broche analogique (ou numérique) supplémentaire sur l'arduino pour créer jusqu'à 8 voies d'entrée. Certains multiplexeurs sont chaînables, vous pouvez donc ajouter assez facilement 8 signaux supplémentaires sans avoir à les éloigner de l'arduino lui-même.
C'est exactement comme la technique que vous connaissez déjà pour les signaux numériques, connectez simplement le canal que vous lisez à une broche analogique au lieu d'une broche numérique, puis parcourez les états binaires et lisez les valeurs analogiques.
J'ai fait un gif animé pour vous.
la source
Il peut être important de se rappeler que la puce ATmega de l'Arduino elle-même utilise un MUX analogique. Les puces basées sur Uno (ATmega328) n'ont qu'un seul ADC. Les 6 entrées analogiques sont en fait un MUX qui se connecte à ce seul ADC.
C'est pourquoi vous ne pouvez lire qu'une seule entrée analogique à la fois.
Lors de l'extension des entrées analogiques, il peut être nécessaire de considérer combien de temps il faut pour faire tout ce MUXing et si oui ou non des ADC externes supplémentaires sont nécessaires dans votre application.
la source
Considérez ceci: ajoutez ATtiny 85 avec une communication série avec l'Arduino, il utilise 2 broches pour Rx, Tx, et vous avez 3 broches supplémentaires qui peuvent être utilisées comme analogiques. De cette façon, vous pouvez développer votre propre protocole, ATtiny peut traiter l'algorithme et envoyer les informations traitées à Arduino, il est également très bon marché, je l'ai essayé moi-même, c'est une belle architecture, je pense.
Bonne journée
la source