Просмотр содержимого документа
«Аналоговый выход. Цифровой выход.»
Цифровыеи аналоговые пины (Ардуино)
На этом занятии мы рассмотрим, цифровые и аналоговые выходы Arduino, разберем чем отличается цифровой сигнал от аналогового. Соберем с помощью макетной платы схему из двух светодиодов и будем плавно регулировать их яркость (включение и затухание).
Чем отличается аналоговый сигнал от цифрового
Аналоговый сигнал непрерывно изменяется во времени. Вся информация в природе аналоговая — волны на воде, колебание струны и т.д. Изначально человек записывал информацию (звуки, изображения, видео) с помощью аналоговых устройств. Но аналоговые сигналы чувствительны к воздействию шумов и помех.
Цифровой сигнал передается в виде единиц и нулей, для компьютеров и цифровой техники это проще реализовать (есть сигнал или нет сигнала). Для оперативной памяти в компьютерах используют конденсаторы, один заряженный конденсатор — 1 бит. На флеш-памяти используют транзисторы с плавающим затвором.
С появлением компьютеров аналоговые сигналы стали переводить в цифру, поскольку аналоговый сигнал подвержен искажениям и затуханию при передаче или записи. Чтобы преобразовать сигнал из аналогового в цифровой используют АЦП (аналогово-цифровые преобразователи). Они различаются по количеству бит, или простыми словами, по количеству единиц и нулей, в которых представляется тот или иной сигнал. Например, в ардуино АЦП 10-битный, то есть, что он может принимать 2 в 10-й степени значений, а именно 1024.
При этом аналоговый вход ардуины может принимать сигнал значение от 0 до 5 вольт, то есть вы можете считывать (измерять) напряжение от 0 до 5 вольт с точностью: 5/1024=0,005 вольта.
Для чего используется.
Чтение аналоговых сигналов, как ни странно, применяется для чтения сигнала с аналоговых датчиков. Датчики, в свою очередь, также бывают с аналоговым и цифровым выходом. То есть либо выдаётся какая-то плавно изменяющаяся величина, либо набор из единиц и нулей, которые потом расшифровываются и обрабатываются программой микроконтроллера. Например, аналоговые входы можно использовать:
Для измерения температуры с помощью термопары или терморезистора;
Для измерения освещенности фоторезисторами, фотодиодами и пр.;
Плавно задавать какие-то величины с помощью потенциометров, поворотных и вращающихся джойстиков, что удобно использовать для управления различными механизмами, радиоуправляемыми моделями, регулировки оборотов двигателей или интенсивности свечения источников света.
Измерения веса или давления с помощью тензодатчиков и так далее.
Здесь мы видим, что аналоговые выходы, они выделены зеленым цветом, кстати, цифровые номера пинов сохраняются и вы можете использовать вместо A0, например, просто цифру 14 — pinMode(14, input) — это аналогичное выражение в коде. В Arduino UNO аналоговых входов 6, в nano их уже 8 (несмотря на то что она построена на таком же микроконтроллере), а в Mega их аж 16.