Подключение более шести аналоговых входных контактов к Arduino

14

Я нахожусь на стадии планирования проекта, использующего Arduino Uno для управления 8 датчиками расстояния, и столкнулся с небольшим блокпостом, Uno имеет только шесть входных контактов. Поэтому мне интересно, есть ли способ, чтобы это сработало? Если так, то как?

Дилан Кац
источник

Ответы:

11

Есть несколько способов сделать это ( TMTOWTDI ).

Существует несколько способов подключения 8 аналоговых входов к Arduino.

  • Добавьте аналоговый мультиплексор, как предложил georgebrindeiro. Такие как: (а) , (б) , (в) , (г) и т. Д.
  • Замените Arduino на тот, в котором достаточно встроенных аналоговых входов. Например, Arduino Mini с 8 аналоговыми входами, Arduino Due с 12 аналоговыми входами (b) , (a) Arduino Mega с 16 аналоговыми входами (b) , Teensy 3.0 с 14 аналоговыми входами (c) и т. Д.
  • Добавьте один или несколько внешних АЦП и подключите его к цифровым контактам вашего ЦП. Таких как: Arduino 4-20mA Shield с 16-разрядным АЦП (а) ; 16-разрядный АЦП ADS1115 - с 4 из этих плат 2 цифровых вывода от Arduino используются для считывания 16 аналоговых входов (b) ; MCP3208 8-канальный 12-битный SPI АЦП (с) ; 8-канальная 16-битная аналоговая плата Raspi (d) ; Arduino и 24-битный АЦП LTC2440 (e) (f) ; «Кирпичный» 8 одноконтактных 16-битных аналоговых входов (г) ; и т.п.

PS: для мультиплексирования аналоговых входов требуется «аналоговый мультиплексор» - большинство мультиплексоров являются «цифровыми мультиплексорами», которые не будут работать с аналоговыми входами.

pps: Все ультразвуковые датчики расстояния, которые я использовал, требуют только цифровых выводов ввода / вывода. Какие датчики расстояния вы используете?

Дэвид Кэри
источник
Конечно! ваше право, им нужен только ввод / вывод, спасибо!
Дилан Кац
5

Всякий раз, когда у вас больше сигналов, чем соответствующих входов в цифровой системе, вам, вероятно, нужен мультиплексор или просто мультиплексор. Мультиплексор M-to-N - это схема, которая позволяет вам выбрать, какой из M входных сигналов вы хотите вывести на N выходов мультиплексора, обычно используя цифровые выводы для этого выбора.

Погуглив быстро, я нашел это решение для Arduino Uno: Mux Shield . Надеюсь, это поможет!

georgebrindeiro
источник