Схема звуковой сигнал аналоговый вход
Цифровая схемотехника – важнейшая дисциплина, которую изучают во всех высших и средних учебных заведениях, готовящих специалистов в электронике. Настоящий радиолюбитель тоже должен хорошо разбираться в этом вопросе. Но большинство книг и учебных пособий написаны очень сложным для понимания языком, и начинающему электронщику (возможно, школьнику) будет тяжело освоить новую информацию. Цикл новых обучающих материалов от Мастер Кит призван восполнить этот пробел: в наших статьях о сложных понятиях рассказывается самыми простыми словами.
Типы аналоговых входов
Пожалуй, говорить о типах аналоговых входов неинтересно. Потому что нас больше интересуют типы аналоговых сигналов.
Существуют определённые стандарты для аналоговых сигналов. Созданы они для того, чтобы разработчикам было проще создавать устройства и системы, использующие аналоговые датчики.
Наиболее распространены два вида аналоговых сигналов:
По диапазону значений на выходе датчика они также отличаются. Основные диапазоны следующие:
- Токовые:
- 0. 5 мА
- 0. 20 мА
- 4. 20 мА
- 0. 0,01 В
- 0. 1 В
- 0. 10 В
Поэтому практически все устройства, рассчитанные на подключение аналоговых датчиков, поддерживают один или несколько из перечисленных выше типов аналоговых сигналов.
Если вы будете создавать свои устройства на микроконтроллерах, то я также советую вам придерживаться этих стандартов. Хотя, конечно, никто не может запретить вам использовать нестандартные диапазоны и типы аналоговых сигналов.
Также надо учитывать, что все аналоговые входы микроконтроллера имеют и другие характеристики, такие как входное сопротивление. Но так глубоко в электронику в этой статье мы не полезем - всё таки она рассчитана на начинающих.
8.1. Аналоговые и цифровые сигналыСначала надо разобраться, чем вообще аналоговая схемотехника отличается от цифровой. И главное отличие – в сигналах, с которыми работают эти схемы.
Все сигналы можно разделить на два основных вида: аналоговые и цифровые.Аналоговые сигналы наиболее привычны для нас. Можно сказать, что весь окружающий природный мир вокруг нас – аналоговый. Наши зрение и слух, а также все остальные органы чувств воспринимают поступающую информацию в аналоговой форме, то есть непрерывно во времени. Передача звуковой информации – речь человека, звуки музыкальных инструментов, рёв животных, звуки природы и т.п. – также осуществляется в аналоговом виде.
Чтобы ещё лучше понять этот вопрос, нарисуем аналоговый сигнал (рис.1.):Рис.1. Аналоговый сигнал
Мы видим, что аналоговый сигнал непрерывен во времени и по амплитуде. Для любого момента времени можно определить точное значение амплитуды аналогового сигнала.
Давайте будет анализировать амплитуду сигнала не постоянно, а дискретно, через фиксированные промежутки времени. Например, раз в секунду, или чаще: десять раз в секунду. То, как часто мы будем это делать, называется частотой дискретизации: один раз в секунду – 1 Гц, тысячу раз в секунду – 1000 Гц или 1 кГц.
Для наглядности нарисуем графики аналогового (вверху) и цифрового (внизу) сигналов (рис.2.):
Рис.2. Аналоговый сигнал (вверху) и его цифровая копия (внизу)
Мы видим, что в каждый мгновенный промежуток времени можно узнать мгновенное цифровое значение амплитуды сигнала. Что происходит с сигналом (по какому закону он меняется, какова его амплитуда) между интервалами «проверки», мы не знаем, эта информация потеряна для нас. Чем реже мы проверяем уровень сигнала (чем ниже частота дискретизации), тем меньше имеем информации о сигнале. Разумеется, справедливо и обратное: чем выше частота дискретизации, тем лучше качество представления сигнала. В пределе, увеличивая частоту дискретизации до бесконечности, мы получаем практически тот же аналоговый сигнал.
Значит ли это, что аналоговый сигнал в любом случае качественнее цифрового? В теории, пожалуй, да. Но на практике современные аналого-цифровые преобразователи (АЦП) работают с такой высокой частотой дискретизации (до нескольких миллионов выборок в секунду), так качественно описывают аналоговый сигнал в цифровой форме, что органы чувств человека (глаза, уши) уже не могут почувствовать разницу между оригинальным сигналом и его цифровой моделью. Цифровой сигнал обладает очень существенным достоинством: его легче передавать по проводам или радиоволне, помехи не оказывают на такой сигнал существенного влияния. Поэтому вся современная мобильная связь, теле- и радиовещание - цифровая.Нижний график на рис. 2 легко представить и в другом виде – как длинную последовательность пары цифр: время/амплитуда. А цифры – это как раз то, что нужно цифровым схемам. Правда, цифровые схемы предпочитают работать с цифрами в особом представлении, но об этом мы поговорим в следующем уроке.
Сейчас мы можем сделать важные выводы:
- цифровой сигнал дискретен, его можно определить только для отдельных моментов времени;
- чем выше частота дискретизации – тем лучше точность представления цифрового сигнала.
Темы аналого-цифрового и цифро-аналогового преобразований являются достаточно важными в курсе электроники, поскольку большинство устройств, взаимодействующих с компьютером, имеют аналоговый вход/выход, а компьютер умеет обрабатывать исключительно цифровые сигналы. В этой статье я хочу поделиться с вами самыми основами таких преобразований.
Типы сигналов
- Аналоговые
- Дискретные
- Цифровые
Для того, что бы компьютер мог выполнить обработку сигнала необходимо выполнить преобразование сигнала из аналоговой формы в цифровую.
После обработки выполняется обратное преобразование, поскольку большинство бытовых устройств управляются аналоговыми сигналами.Структурная схема цифровой обработки сигнала в общем виде выглядит следующим образом:
Аналого-цифровое преобразование сигнала
- Дискретизация сигнала (во времени или пространстве)
- Квантование по уровню
Процесс получения отсчёта входного сигнала должен занимать очень малую часть периода дискретизации, что бы снизить динамические ошибки преобразования, обусловленные изменением сигнала за время снятия отсчёта.
Частота дискретизации выбирается из теоремы Котельникова. В ней утверждается, что для того что бы по отсчётам сигнала можно было бы сколь угодно точно восстановить непрерывный сигнал необходимо что бы частота дискретизации не менее чем в два раза превосходила верхнюю частоту спектра дискретизируемого сигнала.
Любой сигнал имеет своё спектральное представление. Любое представление сигнала – это представление в виде суммы (или интеграла) гармонических составляющих (синусоид и косинусоид), различных частот взятых с определёнными весовыми коэффициентами (имеющими определённую амплитуду)
Для периодических сигналов это сумма, для непериодический – интеграл.
Переход к спектру сигнала осуществляется с помощью прямого преобразования Фурье.Рассмотрим переход к спектральному представлению в виде периодической функции:
Как известно периодическая функция удовлетворяющая условию Дирихле может быть представлена рядом гармонических функций.
По формуле Эйлера любое выражение можно представить в виде
— частота первой гармоники— частота n-ой гармоники
— круговая частота n-ой гармоники
— комплексная амплитуда гармоники, где — фазовый спектр.
Совокупность амплитуд гармоник ряда Фурье называется амплитудным спектром, а совокупность их фаз называется фазовым спектром.
Для непериодический функции , а тогда заменяется непрерывно изменяющейся частотой => сумма заменяется интегралом.
Прямое преобразование Фурье для непериодического сигнала
Таким образом спектр непериодической функции представляется суммой бесконечного количества гармонических колебаний, частоты которых расположены бесконечно близко друг к другу.
Квантование сигнала по уровню
Количество уровней квантования определяется по формуле
n — количество разрядов
N — уровень квантованияВыбор количества уровней квантования сигналов производится на основе компромиссного подхода, учитывающего с одной стороны необходимость достаточно точного представления сигнала, что требует большого числа уровней квантования, а с другой стороны количество уровней квантования должно быть меньше, что бы разрядность кода была минимальной.
На этом я закончу свою статью, что бы не перегружать читателя лишней информацией. Удачи в начинаниях!
В этой статье рассмотрены основные вопросы, касающиеся принципа действия АЦП различных типов. При этом некоторые важные теоретические выкладки, касающиеся математического описания аналого-цифрового преобразования остались за рамками статьи, но приведены ссылки, по которым заинтересованный читатель сможет найти более глубокое рассмотрение теоретических аспектов работы АЦП. Таким образом, статья касается в большей степени понимания общих принципов функционирования АЦП, чем теоретического анализа их работы.
"
В качестве отправной точки дадим определение аналого-цифровому преобразованию. Аналого-цифровое преобразование – это процесс преобразования входной физической величины в ее числовое представление. Аналого-цифровой преобразователь – устройство, выполняющее такое преобразование. Формально, входной величиной АЦП может быть любая физическая величина – напряжение, ток, сопротивление, емкость, частота следования импульсов, угол поворота вала и т.п. Однако, для определенности, в дальнейшем под АЦП мы будем понимать исключительно преобразователи напряжение-код.
Понятие аналого-цифрового преобразования тесно связано с понятием измерения. Под измерением понимается процесс сравнения измеряемой величины с некоторым эталоном, при аналого-цифровом преобразовании происходит сравнение входной величины с некоторой опорной величиной (как правило, с опорным напряжением). Таким образом, аналого-цифровое преобразование может рассматриваться как измерение значения входного сигнала, и к нему применимы все понятия метрологии, такие, как погрешности измерения.Основные характеристики АЦП
АЦП имеет множество характеристик, из которых основными можно назвать частоту преобразования и разрядность. Частота преобразования обычно выражается в отсчетах в секунду (samples per second, SPS), разрядность – в битах. Современные АЦП могут иметь разрядность до 24 бит и скорость преобразования до единиц GSPS (конечно, не одновременно). Чем выше скорость и разрядность, тем труднее получить требуемые характеристики, тем дороже и сложнее преобразователь. Скорость преобразования и разрядность связаны друг с другом определенным образом, и мы можем повысить эффективную разрядность преобразования, пожертвовав скоростью.
Существует множество типов АЦП, однако в рамках данной статьи мы ограничимся рассмотрением только следующих типов:
- АЦП параллельного преобразования (прямого преобразования, flash ADC)
- АЦП последовательного приближения (SAR ADC)
- дельта-сигма АЦП (АЦП с балансировкой заряда)
Наибольшим быстродействием и самой низкой разрядностью обладают АЦП прямого (параллельного) преобразования. Например, АЦП параллельного преобразования TLC5540 фирмы Texas Instruments обладает быстродействием 40MSPS при разрядности всего 8 бит. АЦП данного типа могут иметь скорость преобразования до 1 GSPS. Здесь можно отметить, что еще большим быстродействием обладают конвейерные АЦП (pipelined ADC), однако они являются комбинацией нескольких АЦП с меньшим быстродействием и их рассмотрение выходит за рамки данной статьи.
Среднюю нишу в ряду разрядность-скорость занимают АЦП последовательного приближения. Типичными значениями является разрядность 12-18 бит при частоте преобразования 100KSPS-1MSPS.
Наибольшей точности достигают сигма-дельта АЦП, имеющие разрядность до 24 бит включительно и скорость от единиц SPS до единиц KSPS.
Еще одним типом АЦП, который находил применение в недавнем прошлом, является интегрирующий АЦП. Интегрирующие АЦП в настоящее время практически полностью вытеснены другими типами АЦП, но могут встретиться в старых измерительных приборах.
АЦП прямого преобразования
АЦП прямого преобразования получили широкое распространение в 1960-1970 годах, и стали производиться в виде интегральных схем в 1980-х. Они часто используются в составе «конвейерных» АЦП (в данной статье не рассматриваются), и имеют разрядность 6-8 бит при скорости до 1 GSPS.
Архитектура АЦП прямого преобразования изображена на рис. 1
Рис. 1. Структурная схема АЦП прямого преобразования
Принцип действия АЦП предельно прост: входной сигнал поступает одновременно на все «плюсовые» входы компараторов, а на «минусовые» подается ряд напряжений, получаемых из опорного путем деления резисторами R. Для схемы на рис. 1 этот ряд будет таким: (1/16, 3/16, 5/16, 7/16, 9/16, 11/16, 13/16) Uref, где Uref – опорное напряжение АЦП.
Пусть на вход АЦП подается напряжение, равное 1/2 Uref. Тогда сработают первые 4 компаратора (если считать снизу), и на их выходах появятся логические единицы. Приоритетный шифратор (priority encoder) сформирует из «столбца» единиц двоичный код, который фиксируется выходным регистром.
Теперь становятся понятны достоинства и недостатки такого преобразователя. Все компараторы работают параллельно, время задержки схемы равно времени задержки в одном компараторе плюс время задержки в шифраторе. Компаратор и шифратор можно сделать очень быстрыми, в итоге вся схема имеет очень высокое быстродействие.
Но для получения N разрядов нужно 2^N компараторов (и сложность шифратора тоже растет как 2^N). Схема на рис. 1. содержит 8 компараторов и имеет 3 разряда, для получения 8 разрядов нужно уже 256 компараторов, для 10 разрядов – 1024 компаратора, для 24-битного АЦП их понадобилось бы свыше 16 млн. Однако таких высот техника еще не достигла.
АЦП последовательного приближения
Аналого-цифровой преобразователь последовательного приближения (SAR, Successive Approximation Register) измеряет величину входного сигнала, осуществляя ряд последовательных «взвешиваний», то есть сравнений величины входного напряжения с рядом величин, генерируемых следующим образом:
1. на первом шаге на выходе встроенного цифро-аналогового преобразователя устанавливается величина, равная 1/2Uref (здесь и далее мы предполагаем, что сигнал находится в интервале (0 – Uref).
2. если сигнал больше этой величины, то он сравнивается с напряжением, лежащим посередине оставшегося интервала, т.е., в данном случае, 3/4Uref. Если сигнал меньше установленного уровня, то следующее сравнение будет производиться с меньшей половиной оставшегося интервала (т.е. с уровнем 1/4Uref).
3. Шаг 2 повторяется N раз. Таким образом, N сравнений («взвешиваний») порождает N бит результата.
Рис. 2. Структурная схема АЦП последовательного приближения.
Таким образом, АЦП последовательного приближения состоит из следующих узлов:
1. Компаратор. Он сравнивает входную величину и текущее значение «весового» напряжения (на рис. 2. обозначен треугольником).
2. Цифро-аналоговый преобразователь (Digital to Analog Converter, DAC). Он генерирует «весовое» значение напряжения на основе поступающего на вход цифрового кода.
3. Регистр последовательного приближения (Successive Approximation Register, SAR). Он осуществляет алгоритм последовательного приближения, генерируя текущее значение кода, подающегося на вход ЦАП. По его названию названа вся данная архитектура АЦП.
4. Схема выборки-хранения (Sample/Hold, S/H). Для работы данного АЦП принципиально важно, чтобы входное напряжение сохраняло неизменную величину в течение всего цикла преобразования. Однако «реальные» сигналы имеют свойство изменяться во времени. Схема выборки-хранения «запоминает» текущее значение аналогового сигнала, и сохраняет его неизменным на протяжении всего цикла работы устройства.
Достоинством устройства является относительно высокая скорость преобразования: время преобразования N-битного АЦП составляет N тактов. Точность преобразования ограничена точностью внутреннего ЦАП и может составлять 16-18 бит (сейчас стали появляться и 24-битные SAR ADC, например, AD7766 и AD7767).
Дельта-сигма АЦП
И, наконец, самый интересный тип АЦП – сигма-дельта АЦП, иногда называемый в литературе АЦП с балансировкой заряда. Структурная схема сигма-дельта АЦП приведена на рис. 3.
Рис.3. Структурная схема сигма-дельта АЦП.
Принцип действия данного АЦП несколько более сложен, чем у других типов АЦП. Его суть в том, что входное напряжение сравнивается со значением напряжения, накопленным интегратором. На вход интегратора подаются импульсы положительной или отрицательной полярности, в зависимости от результата сравнения. Таким образом, данный АЦП представляет собой простую следящую систему: напряжение на выходе интегратора «отслеживает» входное напряжение (рис. 4). Результатом работы данной схемы является поток нулей и единиц на выходе компаратора, который затем пропускается через цифровой ФНЧ, в результате получается N-битный результат. ФНЧ на рис. 3. Объединен с «дециматором», устройством, снижающим частоту следования отсчетов путем их «прореживания».
Рис. 4. Сигма-дельта АЦП как следящая система
Ради строгости изложения, нужно сказать, что на рис. 3 изображена структурная схема сигма-дельта АЦП первого порядка. Сигма-дельта АЦП второго порядка имеет два интегратора и две петли обратной связи, но здесь рассматриваться не будет. Интересующиеся данной темой могут обратиться к [3].
На рис. 5 показаны сигналы в АЦП при нулевом уровне на входе (сверху) и при уровне Vref/2 (снизу).
Рис. 5. Сигналы в АЦП при разных уровнях сигнала на входе.
Теперь, не углубляясь в сложный математический анализ, попробуем понять, почему сигма-дельта АЦП обладают очень низким уровнем собственных шумов.
Рассмотрим структурную схему сигма-дельта модулятора, изображенную на рис. 3, и представим ее в таком виде (рис. 6):
Рис. 6. Структурная схема сигма-дельта модулятора
Здесь компаратор представлен как сумматор, который суммирует непрерывный полезный сигнал и шум квантования.
Пусть интегратор имеет передаточную функцию 1/s. Тогда, представив полезный сигнал как X(s), выход сигма-дельта модулятора как Y(s), а шум квантования как E(s), получаем передаточную функцию АЦП:
То есть, фактически сигма-дельта модулятор является фильтром низких частот (1/(s+1)) для полезного сигнала, и фильтром высоких частот (s/(s+1)) для шума, причем оба фильтра имеют одинаковую частоту среза. Шум, сосредоточенный в высокочастотной области спектра, легко удаляется цифровым ФНЧ, который стоит после модулятора.
Рис. 7. Явление «вытеснения» шума в высокочастотную часть спектра
Однако следует понимать, что это чрезвычайно упрощенное объяснение явления вытеснения шума (noise shaping) в сигма-дельта АЦП.
Итак, основным достоинством сигма-дельта АЦП является высокая точность, обусловленная крайне низким уровнем собственного шума. Однако для достижения высокой точности нужно, чтобы частота среза цифрового фильтра была как можно ниже, во много раз меньше частоты работы сигма-дельта модулятора. Поэтому сигма-дельта АЦП имеют низкую скорость преобразования.
Они могут использоваться в аудиотехнике, однако основное применение находят в промышленной автоматике для преобразования сигналов датчиков, в измерительных приборах, и в других приложениях, где требуется высокая точность. но не требуется высокой скорости.
Немного истории
Самым старым упоминанием АЦП в истории является, вероятно, патент Paul M. Rainey, «Facsimile Telegraph System,» U.S. Patent 1,608,527, Filed July 20, 1921, Issued November 30, 1926. Изображенное в патенте устройство фактически является 5-битным АЦП прямого преобразования.
Рис. 8. Первый патент на АЦП
Рис. 9. АЦП прямого преобразования (1975 г.)
Устройство, изображенное на рисунке, представляет собой АЦП прямого преобразования MOD-4100 производства Computer Labs, 1975 года выпуска, собранный на основе дискретных компараторов. Компараторов 16 штук (они расположены полукругом, для того, чтобы уравнять задержку распространения сигнала до каждого компаратора), следовательно, АЦП имеет разрядность всего 4 бита. Скорость преобразования 100 MSPS, потребляемая мощность 14 ватт.
На следующем рисунке изображена продвинутая версия АЦП прямого преобразования.
Рис. 10. АЦП прямого преобразования (1970 г.)
Устройство VHS-630 1970 года выпуска, произведенное фирмой Computer Labs, содержало 64 компаратора, имело разрядность 6 бит, скорость 30MSPS и потребляло 100 ватт (версия 1975 года VHS-675 имела скорость 75 MSPS и потребление 130 ватт).
Почти все модели современных микроконтроллеров, даже простые и недорогие, такие как ATtiny13A, имеют возможность подключения аналоговых сигналов, то есть имеют аналоговые входы.
В старых микроконтроллерах могло и не быть аналоговых входов. А если и были, то обычно они выполнялись в виде отдельных выводов на корпусе микроконтроллера.
Современные микроконтроллеры обычно имеют линии ввода-вывода общего назначения, которые становятся либо дискретными входами или выходами, либо аналоговыми, в зависимости от программной конфигурации устройства.
Чем отличаются аналоговые входы от дискретных?
Для начала вспомним, что дискретный - это прерывистый сигнал. То есть сигнал, который имеет какое-то фиксированное число значений.
Аналоговый же сигнал - это непрерывный сигнал. То есть сигнал, значение которого изменяется плавно (см. рис.).
Красным цветом изображён аналоговый сигнал. Это может быть напряжение, температура, давление или любая другая физическая величина.
Если провести аналогию с лампочкой, как мы это сделали при изучении дискретных входов, то можно сказать так:
- При подаче дискретного двоичного сигнала на вход лампочка либо гаснет, либо зажигается.
- При подаче и изменении аналогового сигнала на вход лампочка плавно меняет свою яркость свечения.
Как мы знаем, микроконтроллер может работать только с электрическими сигналами. Более того, архитектура микроконтроллера использует двоичные числовые значения.
Поэтому, чтобы измерить с помощью микроконтроллера, например, температуру, нам сначала потребуется преобразовать её в электрический сигнал. Например, в напряжение.
А потом ещё значение этого напряжения надо как-то преобразовать в двоичное число. Забегая вперёд, скажу, что это делается с помощью АЦП.
8.1. Аналоговые и цифровые сигналыСначала надо разобраться, чем вообще аналоговая схемотехника отличается от цифровой. И главное отличие – в сигналах, с которыми работают эти схемы.
Все сигналы можно разделить на два основных вида: аналоговые и цифровые.Аналоговые сигналы наиболее привычны для нас. Можно сказать, что весь окружающий природный мир вокруг нас – аналоговый. Наши зрение и слух, а также все остальные органы чувств воспринимают поступающую информацию в аналоговой форме, то есть непрерывно во времени. Передача звуковой информации – речь человека, звуки музыкальных инструментов, рёв животных, звуки природы и т.п. – также осуществляется в аналоговом виде.
Чтобы ещё лучше понять этот вопрос, нарисуем аналоговый сигнал (рис.1.):Рис.1. Аналоговый сигнал
Мы видим, что аналоговый сигнал непрерывен во времени и по амплитуде. Для любого момента времени можно определить точное значение амплитуды аналогового сигнала.
Давайте будет анализировать амплитуду сигнала не постоянно, а дискретно, через фиксированные промежутки времени. Например, раз в секунду, или чаще: десять раз в секунду. То, как часто мы будем это делать, называется частотой дискретизации: один раз в секунду – 1 Гц, тысячу раз в секунду – 1000 Гц или 1 кГц.
Для наглядности нарисуем графики аналогового (вверху) и цифрового (внизу) сигналов (рис.2.):
Рис.2. Аналоговый сигнал (вверху) и его цифровая копия (внизу)
Мы видим, что в каждый мгновенный промежуток времени можно узнать мгновенное цифровое значение амплитуды сигнала. Что происходит с сигналом (по какому закону он меняется, какова его амплитуда) между интервалами «проверки», мы не знаем, эта информация потеряна для нас. Чем реже мы проверяем уровень сигнала (чем ниже частота дискретизации), тем меньше имеем информации о сигнале. Разумеется, справедливо и обратное: чем выше частота дискретизации, тем лучше качество представления сигнала. В пределе, увеличивая частоту дискретизации до бесконечности, мы получаем практически тот же аналоговый сигнал.
Значит ли это, что аналоговый сигнал в любом случае качественнее цифрового? В теории, пожалуй, да. Но на практике современные аналого-цифровые преобразователи (АЦП) работают с такой высокой частотой дискретизации (до нескольких миллионов выборок в секунду), так качественно описывают аналоговый сигнал в цифровой форме, что органы чувств человека (глаза, уши) уже не могут почувствовать разницу между оригинальным сигналом и его цифровой моделью. Цифровой сигнал обладает очень существенным достоинством: его легче передавать по проводам или радиоволне, помехи не оказывают на такой сигнал существенного влияния. Поэтому вся современная мобильная связь, теле- и радиовещание - цифровая.Нижний график на рис. 2 легко представить и в другом виде – как длинную последовательность пары цифр: время/амплитуда. А цифры – это как раз то, что нужно цифровым схемам. Правда, цифровые схемы предпочитают работать с цифрами в особом представлении, но об этом мы поговорим в следующем уроке.
Сейчас мы можем сделать важные выводы:
- цифровой сигнал дискретен, его можно определить только для отдельных моментов времени;
- чем выше частота дискретизации – тем лучше точность представления цифрового сигнала.
Темы аналого-цифрового и цифро-аналогового преобразований являются достаточно важными в курсе электроники, поскольку большинство устройств, взаимодействующих с компьютером, имеют аналоговый вход/выход, а компьютер умеет обрабатывать исключительно цифровые сигналы. В этой статье я хочу поделиться с вами самыми основами таких преобразований.
Типы сигналов
- Аналоговые
- Дискретные
- Цифровые
Для того, что бы компьютер мог выполнить обработку сигнала необходимо выполнить преобразование сигнала из аналоговой формы в цифровую.
После обработки выполняется обратное преобразование, поскольку большинство бытовых устройств управляются аналоговыми сигналами.Структурная схема цифровой обработки сигнала в общем виде выглядит следующим образом:
Аналого-цифровое преобразование сигнала
- Дискретизация сигнала (во времени или пространстве)
- Квантование по уровню
Процесс получения отсчёта входного сигнала должен занимать очень малую часть периода дискретизации, что бы снизить динамические ошибки преобразования, обусловленные изменением сигнала за время снятия отсчёта.
Частота дискретизации выбирается из теоремы Котельникова. В ней утверждается, что для того что бы по отсчётам сигнала можно было бы сколь угодно точно восстановить непрерывный сигнал необходимо что бы частота дискретизации не менее чем в два раза превосходила верхнюю частоту спектра дискретизируемого сигнала.
Любой сигнал имеет своё спектральное представление. Любое представление сигнала – это представление в виде суммы (или интеграла) гармонических составляющих (синусоид и косинусоид), различных частот взятых с определёнными весовыми коэффициентами (имеющими определённую амплитуду)
Для периодических сигналов это сумма, для непериодический – интеграл.
Переход к спектру сигнала осуществляется с помощью прямого преобразования Фурье.Рассмотрим переход к спектральному представлению в виде периодической функции:
Как известно периодическая функция удовлетворяющая условию Дирихле может быть представлена рядом гармонических функций.
По формуле Эйлера любое выражение можно представить в виде
— частота первой гармоники— частота n-ой гармоники
— круговая частота n-ой гармоники
— комплексная амплитуда гармоники, где — фазовый спектр.
Совокупность амплитуд гармоник ряда Фурье называется амплитудным спектром, а совокупность их фаз называется фазовым спектром.
Для непериодический функции , а тогда заменяется непрерывно изменяющейся частотой => сумма заменяется интегралом.
Прямое преобразование Фурье для непериодического сигнала
Таким образом спектр непериодической функции представляется суммой бесконечного количества гармонических колебаний, частоты которых расположены бесконечно близко друг к другу.
Квантование сигнала по уровню
Количество уровней квантования определяется по формуле
n — количество разрядов
N — уровень квантованияВыбор количества уровней квантования сигналов производится на основе компромиссного подхода, учитывающего с одной стороны необходимость достаточно точного представления сигнала, что требует большого числа уровней квантования, а с другой стороны количество уровней квантования должно быть меньше, что бы разрядность кода была минимальной.
На этом я закончу свою статью, что бы не перегружать читателя лишней информацией. Удачи в начинаниях!
В этой статье рассмотрены основные вопросы, касающиеся принципа действия АЦП различных типов. При этом некоторые важные теоретические выкладки, касающиеся математического описания аналого-цифрового преобразования остались за рамками статьи, но приведены ссылки, по которым заинтересованный читатель сможет найти более глубокое рассмотрение теоретических аспектов работы АЦП. Таким образом, статья касается в большей степени понимания общих принципов функционирования АЦП, чем теоретического анализа их работы.
"
В качестве отправной точки дадим определение аналого-цифровому преобразованию. Аналого-цифровое преобразование – это процесс преобразования входной физической величины в ее числовое представление. Аналого-цифровой преобразователь – устройство, выполняющее такое преобразование. Формально, входной величиной АЦП может быть любая физическая величина – напряжение, ток, сопротивление, емкость, частота следования импульсов, угол поворота вала и т.п. Однако, для определенности, в дальнейшем под АЦП мы будем понимать исключительно преобразователи напряжение-код.
Понятие аналого-цифрового преобразования тесно связано с понятием измерения. Под измерением понимается процесс сравнения измеряемой величины с некоторым эталоном, при аналого-цифровом преобразовании происходит сравнение входной величины с некоторой опорной величиной (как правило, с опорным напряжением). Таким образом, аналого-цифровое преобразование может рассматриваться как измерение значения входного сигнала, и к нему применимы все понятия метрологии, такие, как погрешности измерения.Основные характеристики АЦП
АЦП имеет множество характеристик, из которых основными можно назвать частоту преобразования и разрядность. Частота преобразования обычно выражается в отсчетах в секунду (samples per second, SPS), разрядность – в битах. Современные АЦП могут иметь разрядность до 24 бит и скорость преобразования до единиц GSPS (конечно, не одновременно). Чем выше скорость и разрядность, тем труднее получить требуемые характеристики, тем дороже и сложнее преобразователь. Скорость преобразования и разрядность связаны друг с другом определенным образом, и мы можем повысить эффективную разрядность преобразования, пожертвовав скоростью.
Существует множество типов АЦП, однако в рамках данной статьи мы ограничимся рассмотрением только следующих типов:
- АЦП параллельного преобразования (прямого преобразования, flash ADC)
- АЦП последовательного приближения (SAR ADC)
- дельта-сигма АЦП (АЦП с балансировкой заряда)
Наибольшим быстродействием и самой низкой разрядностью обладают АЦП прямого (параллельного) преобразования. Например, АЦП параллельного преобразования TLC5540 фирмы Texas Instruments обладает быстродействием 40MSPS при разрядности всего 8 бит. АЦП данного типа могут иметь скорость преобразования до 1 GSPS. Здесь можно отметить, что еще большим быстродействием обладают конвейерные АЦП (pipelined ADC), однако они являются комбинацией нескольких АЦП с меньшим быстродействием и их рассмотрение выходит за рамки данной статьи.
Среднюю нишу в ряду разрядность-скорость занимают АЦП последовательного приближения. Типичными значениями является разрядность 12-18 бит при частоте преобразования 100KSPS-1MSPS.
Наибольшей точности достигают сигма-дельта АЦП, имеющие разрядность до 24 бит включительно и скорость от единиц SPS до единиц KSPS.
Еще одним типом АЦП, который находил применение в недавнем прошлом, является интегрирующий АЦП. Интегрирующие АЦП в настоящее время практически полностью вытеснены другими типами АЦП, но могут встретиться в старых измерительных приборах.
АЦП прямого преобразования
АЦП прямого преобразования получили широкое распространение в 1960-1970 годах, и стали производиться в виде интегральных схем в 1980-х. Они часто используются в составе «конвейерных» АЦП (в данной статье не рассматриваются), и имеют разрядность 6-8 бит при скорости до 1 GSPS.
Архитектура АЦП прямого преобразования изображена на рис. 1
Рис. 1. Структурная схема АЦП прямого преобразования
Принцип действия АЦП предельно прост: входной сигнал поступает одновременно на все «плюсовые» входы компараторов, а на «минусовые» подается ряд напряжений, получаемых из опорного путем деления резисторами R. Для схемы на рис. 1 этот ряд будет таким: (1/16, 3/16, 5/16, 7/16, 9/16, 11/16, 13/16) Uref, где Uref – опорное напряжение АЦП.
Пусть на вход АЦП подается напряжение, равное 1/2 Uref. Тогда сработают первые 4 компаратора (если считать снизу), и на их выходах появятся логические единицы. Приоритетный шифратор (priority encoder) сформирует из «столбца» единиц двоичный код, который фиксируется выходным регистром.
Теперь становятся понятны достоинства и недостатки такого преобразователя. Все компараторы работают параллельно, время задержки схемы равно времени задержки в одном компараторе плюс время задержки в шифраторе. Компаратор и шифратор можно сделать очень быстрыми, в итоге вся схема имеет очень высокое быстродействие.
Но для получения N разрядов нужно 2^N компараторов (и сложность шифратора тоже растет как 2^N). Схема на рис. 1. содержит 8 компараторов и имеет 3 разряда, для получения 8 разрядов нужно уже 256 компараторов, для 10 разрядов – 1024 компаратора, для 24-битного АЦП их понадобилось бы свыше 16 млн. Однако таких высот техника еще не достигла.
АЦП последовательного приближения
Аналого-цифровой преобразователь последовательного приближения (SAR, Successive Approximation Register) измеряет величину входного сигнала, осуществляя ряд последовательных «взвешиваний», то есть сравнений величины входного напряжения с рядом величин, генерируемых следующим образом:
1. на первом шаге на выходе встроенного цифро-аналогового преобразователя устанавливается величина, равная 1/2Uref (здесь и далее мы предполагаем, что сигнал находится в интервале (0 – Uref).
2. если сигнал больше этой величины, то он сравнивается с напряжением, лежащим посередине оставшегося интервала, т.е., в данном случае, 3/4Uref. Если сигнал меньше установленного уровня, то следующее сравнение будет производиться с меньшей половиной оставшегося интервала (т.е. с уровнем 1/4Uref).
3. Шаг 2 повторяется N раз. Таким образом, N сравнений («взвешиваний») порождает N бит результата.
Рис. 2. Структурная схема АЦП последовательного приближения.
Таким образом, АЦП последовательного приближения состоит из следующих узлов:
1. Компаратор. Он сравнивает входную величину и текущее значение «весового» напряжения (на рис. 2. обозначен треугольником).
2. Цифро-аналоговый преобразователь (Digital to Analog Converter, DAC). Он генерирует «весовое» значение напряжения на основе поступающего на вход цифрового кода.
3. Регистр последовательного приближения (Successive Approximation Register, SAR). Он осуществляет алгоритм последовательного приближения, генерируя текущее значение кода, подающегося на вход ЦАП. По его названию названа вся данная архитектура АЦП.
4. Схема выборки-хранения (Sample/Hold, S/H). Для работы данного АЦП принципиально важно, чтобы входное напряжение сохраняло неизменную величину в течение всего цикла преобразования. Однако «реальные» сигналы имеют свойство изменяться во времени. Схема выборки-хранения «запоминает» текущее значение аналогового сигнала, и сохраняет его неизменным на протяжении всего цикла работы устройства.
Достоинством устройства является относительно высокая скорость преобразования: время преобразования N-битного АЦП составляет N тактов. Точность преобразования ограничена точностью внутреннего ЦАП и может составлять 16-18 бит (сейчас стали появляться и 24-битные SAR ADC, например, AD7766 и AD7767).
Дельта-сигма АЦП
И, наконец, самый интересный тип АЦП – сигма-дельта АЦП, иногда называемый в литературе АЦП с балансировкой заряда. Структурная схема сигма-дельта АЦП приведена на рис. 3.
Рис.3. Структурная схема сигма-дельта АЦП.
Принцип действия данного АЦП несколько более сложен, чем у других типов АЦП. Его суть в том, что входное напряжение сравнивается со значением напряжения, накопленным интегратором. На вход интегратора подаются импульсы положительной или отрицательной полярности, в зависимости от результата сравнения. Таким образом, данный АЦП представляет собой простую следящую систему: напряжение на выходе интегратора «отслеживает» входное напряжение (рис. 4). Результатом работы данной схемы является поток нулей и единиц на выходе компаратора, который затем пропускается через цифровой ФНЧ, в результате получается N-битный результат. ФНЧ на рис. 3. Объединен с «дециматором», устройством, снижающим частоту следования отсчетов путем их «прореживания».
Рис. 4. Сигма-дельта АЦП как следящая система
Ради строгости изложения, нужно сказать, что на рис. 3 изображена структурная схема сигма-дельта АЦП первого порядка. Сигма-дельта АЦП второго порядка имеет два интегратора и две петли обратной связи, но здесь рассматриваться не будет. Интересующиеся данной темой могут обратиться к [3].
На рис. 5 показаны сигналы в АЦП при нулевом уровне на входе (сверху) и при уровне Vref/2 (снизу).
Рис. 5. Сигналы в АЦП при разных уровнях сигнала на входе.
Теперь, не углубляясь в сложный математический анализ, попробуем понять, почему сигма-дельта АЦП обладают очень низким уровнем собственных шумов.
Рассмотрим структурную схему сигма-дельта модулятора, изображенную на рис. 3, и представим ее в таком виде (рис. 6):
Рис. 6. Структурная схема сигма-дельта модулятора
Здесь компаратор представлен как сумматор, который суммирует непрерывный полезный сигнал и шум квантования.
Пусть интегратор имеет передаточную функцию 1/s. Тогда, представив полезный сигнал как X(s), выход сигма-дельта модулятора как Y(s), а шум квантования как E(s), получаем передаточную функцию АЦП:
То есть, фактически сигма-дельта модулятор является фильтром низких частот (1/(s+1)) для полезного сигнала, и фильтром высоких частот (s/(s+1)) для шума, причем оба фильтра имеют одинаковую частоту среза. Шум, сосредоточенный в высокочастотной области спектра, легко удаляется цифровым ФНЧ, который стоит после модулятора.
Рис. 7. Явление «вытеснения» шума в высокочастотную часть спектра
Однако следует понимать, что это чрезвычайно упрощенное объяснение явления вытеснения шума (noise shaping) в сигма-дельта АЦП.
Итак, основным достоинством сигма-дельта АЦП является высокая точность, обусловленная крайне низким уровнем собственного шума. Однако для достижения высокой точности нужно, чтобы частота среза цифрового фильтра была как можно ниже, во много раз меньше частоты работы сигма-дельта модулятора. Поэтому сигма-дельта АЦП имеют низкую скорость преобразования.
Они могут использоваться в аудиотехнике, однако основное применение находят в промышленной автоматике для преобразования сигналов датчиков, в измерительных приборах, и в других приложениях, где требуется высокая точность. но не требуется высокой скорости.
Немного истории
Самым старым упоминанием АЦП в истории является, вероятно, патент Paul M. Rainey, «Facsimile Telegraph System,» U.S. Patent 1,608,527, Filed July 20, 1921, Issued November 30, 1926. Изображенное в патенте устройство фактически является 5-битным АЦП прямого преобразования.
Рис. 8. Первый патент на АЦП
Рис. 9. АЦП прямого преобразования (1975 г.)
Устройство, изображенное на рисунке, представляет собой АЦП прямого преобразования MOD-4100 производства Computer Labs, 1975 года выпуска, собранный на основе дискретных компараторов. Компараторов 16 штук (они расположены полукругом, для того, чтобы уравнять задержку распространения сигнала до каждого компаратора), следовательно, АЦП имеет разрядность всего 4 бита. Скорость преобразования 100 MSPS, потребляемая мощность 14 ватт.
На следующем рисунке изображена продвинутая версия АЦП прямого преобразования.
Рис. 10. АЦП прямого преобразования (1970 г.)
Устройство VHS-630 1970 года выпуска, произведенное фирмой Computer Labs, содержало 64 компаратора, имело разрядность 6 бит, скорость 30MSPS и потребляло 100 ватт (версия 1975 года VHS-675 имела скорость 75 MSPS и потребление 130 ватт).
Почти все модели современных микроконтроллеров, даже простые и недорогие, такие как ATtiny13A, имеют возможность подключения аналоговых сигналов, то есть имеют аналоговые входы.
В старых микроконтроллерах могло и не быть аналоговых входов. А если и были, то обычно они выполнялись в виде отдельных выводов на корпусе микроконтроллера.
Современные микроконтроллеры обычно имеют линии ввода-вывода общего назначения, которые становятся либо дискретными входами или выходами, либо аналоговыми, в зависимости от программной конфигурации устройства.
Чем отличаются аналоговые входы от дискретных?
Для начала вспомним, что дискретный - это прерывистый сигнал. То есть сигнал, который имеет какое-то фиксированное число значений.
Аналоговый же сигнал - это непрерывный сигнал. То есть сигнал, значение которого изменяется плавно (см. рис.).
Красным цветом изображён аналоговый сигнал. Это может быть напряжение, температура, давление или любая другая физическая величина.
Если провести аналогию с лампочкой, как мы это сделали при изучении дискретных входов, то можно сказать так:
- При подаче дискретного двоичного сигнала на вход лампочка либо гаснет, либо зажигается.
- При подаче и изменении аналогового сигнала на вход лампочка плавно меняет свою яркость свечения.
Как мы знаем, микроконтроллер может работать только с электрическими сигналами. Более того, архитектура микроконтроллера использует двоичные числовые значения.
Поэтому, чтобы измерить с помощью микроконтроллера, например, температуру, нам сначала потребуется преобразовать её в электрический сигнал. Например, в напряжение.
А потом ещё значение этого напряжения надо как-то преобразовать в двоичное число. Забегая вперёд, скажу, что это делается с помощью АЦП.
Подключение аналоговых входов
Здесь ничего сложного нет. И это уже электроника, а не устройство микроконтроллера, и тем более не программирование.
Но всё же немного об этом рассказать надо.
К аналоговым входам обычно подключают устройства двух типов:
- Активные датчики - датчики со стандартным аналоговым выходом (см. выше).
- Пассивные датчики.
С активными датчиками проще. Если выбранный вами микроконтроллер это позволяет, то выход такого датчика можно напрямую (или через простой резистивный делитель) подключить к аналоговому входу микроконтроллера.
С пассивными датчиками сложнее, потому что они пассивные )))
То есть на выходе таких датчиков не какого-либо активного сигнала (ни тока, ни напряжения, ни частоты).
Например, термопреобразователи сопротивления - довольно широко распространённые в автоматизации датчики температуры, изменяют своё сопротивление, как вы понимаете, в зависимости от температуры.
Однако микроконтроллер не умеет измерять сопротивление. И чтобы его этому научить, надо каким-то образом пассивный сигнал сделать активным. Один из простейших способов (но не самый лучший) показан на рисунке ниже:
Здесь мы видим простой резистивный делитель, одним звеном которого (на рисунке - нижним) является термосопротивление. Так как его сопротивление будет изменяться вместе с температурой, то и напряжение на аналоговом входе микроконтроллера тоже будет меняться. Эти изменения мы и можем зафиксировать и преобразовать уже программно в значение температуры (зная зависимость термосопротивления от температуры, и рассчитав напряжение на аналоговом входе).
Повторюсь - это не лучший способ. И не со всеми микроконтроллерами и не со всеми термосопротивлениями такой трюк можно проделать. Но зато это простой способ.
Для тех, кто ещё не понял, объясняю: таким нехитрым способом, как показано на рисунке, мы превратили пассивный датчик в активный. То есть преобразовали сопротивление в напряжение.
Ну а как преобразовать это напряжение в температуру - это уже отдельная история.
Аналоговые, дискретные и цифровые сигналы
Любая физическая величина по характеру изменения ее значения может быть постоянной (если она имеет только одно фиксированное значение), дискретной (если она может иметь два или более фиксированных значений), или аналоговой (если она может иметь бесчисленное множество значений). Все эти величины могут быть преобразованы в цифровую форму.
Аналоговые сигналы
Аналоговым называется такой сигнал, который может быть представлен непрерывной линией из множества значений, определенных в каждый момент времени относительно временной оси.
Значения аналогового сигнала произвольны в каждый момент времени, поэтому он может быть в принципе представлен как некая непрерывная функция (зависящая от времени как от переменной) либо как кусочно-непрерывная функция времени.
Аналоговым сигналом можно назвать, например, звуковой сигнал, генерируемый обмоткой электромагнитного микрофона или ламповым акустическим усилителем, поскольку такой сигнал непрерывен и его значения (напряжение или ток) сильно отличаются друг от друга в каждый момент времени.
На приведенном ниже рисунке изображен пример подобного рода аналогового сигнала.
Аналоговые величины могу иметь бесконечное множество значений в определенных пределах. Они непрерывны и их значения не могут изменяться скачками.
Пример аналогового сигнала: термопара передает в аналоговом виде значение температуры в программируемый логический контроллер, который управляет с помощью твердотельного реле температурой в электрической печи.
Дискретные сигналы
Если некий сигнал принимает произвольные значения лишь в отдельные моменты времени, то такой сигнал называют дискретным. Чаще всего на практике применяются дискретные сигналы, распределенные по равномерной временной решетке, шаг которой называется интервалом дискретизации.
Дискретный сигнал принимает определенные не нулевые значения лишь в моменты дискретизации, то есть он является не непрерывным в отличие от аналогового сигнала. Если из звукового сигнала вырезать небольшие кусочки определенного размера через равные интервалы, такой сигнал можно будет назвать дискретным.
Ниже приведен пример формирования подобного дискретного сигнала с интервалом дискретизации Т. Обратите внимание, что квантуется лишь интервал дискретизации, но не сами значения сигнала.
Дискретные сигналы имеют два и более фиксированных значений (количество их значений всегда выражается целыми числами).
Пример простого дискретного сигнала на два значения: срабатывание путевого выключателя (переключение контактов выключателя в определенном положении механизма). Сигнал с путевого выключателя может быть получен только в двух вариантах - контакт разомкнут (нет действия, нет напряжения) и контакт замкнут (есть действие, есть напряжение).
Цифровые сигналы
Когда дискретный сигнал принимает только какие-то фиксированные значения (которые могут быть расположены по сетке с определенным шагом), такие что они могут быть представлены как количество квантовых величин, такой дискретный сигнал называется цифровым. То есть цифровой сигнал — это такой дискретный сигнал, который квантован не только по промежуткам времени, но и по уровню.
Практически дискретные и цифровые сигналы в ряде задач отождествляются, и могут быть легко заданы в форме отсчетов с помощью вычислительного устройства.
На рисунке приведен пример формирования цифрового сигнала на базе аналогового. Обратите внимание, что значения цифрового сигнала не могут принимать промежуточных значений, а только определенные — целое количество вертикальных шагов сетки.
Цифровой сигнал легко записывается и перезаписывается в память вычислительных устройств, просто считывается и копируется без потери точности, тогда как перезапись аналогового сигнала всегда сопряжена с утратой некоторой, пусть и незначительной, части информации.
Обработка цифровых сигналов позволяет получать устройства с очень высокими характеристиками благодаря выполнению вычислительных операций совершенно без потерь качества, либо с пренебрежимо малыми потерями.
В силу этих достоинств, именно цифровые сигналы повсеместно распространены сегодня в системах хранения и обработки данных. Вся современная память — цифровая. Аналоговые носители информации (такие как пленочные кассеты и т.д.) давно ушли в прошлое.
Аналоговый и цифровой приборы для измерения напряжения:
Но даже у цифровых сигналов есть свои недостатки. Их невозможно передать напрямую как есть, ибо передача обычно реализуется посредством непрерывных электромагнитных волн. Поэтому при передаче и приеме цифровых сигналов необходимо прибегать к дополнительной модуляции и аналого-цифровому преобразованию. Меньший динамический диапазон цифровых сигналов (отношение наибольшего значения к наименьшему), обусловленный квантованностью значений по сетке, является еще одним их недостатком.
Существуют и такие области, где аналоговые сигналы незаменимы. Например аналоговый звук никогда не сравнится с цифровым, поэтому ламповые усилители и пластинки до сих пор не выходят из моды, несмотря на обилие цифровых форматов записи звука с самой высокой частотой дискретизации.
Если Вам понравилась эта статья, поделитесь ссылкой на неё в социальных сетях. Это сильно поможет развитию нашего сайта!
Что такое аналоговый вход
Аналоговый вход микроконтроллера - это вход, на который можно подавать аналоговый сигнал. То есть определённый вывод на корпусе микроконтроллера, к которому можно можно подключить датчик, на выходе которого имеется аналоговый сигнал.
В качестве простейшего такого датчика может быть, например, обычный резистивный делитель напряжения. Или переменный резистор, как показано на рисунке ниже:
В этом примере на выходе резистора будет аналоговый сигнал в виде плавно изменяющегося напряжения в диапазоне от 0 до +U В.
Подобные резистивные датчики можно использовать, например, как датчики положения задвижек. Если установить такой резистор на задвижку и откалибровать её положение по крайним значениям (например 0 В - задвижка полностью закрыта, а +U В - задвижка полностью закрыта), то, снимая показания с такого датчика, можно определить процент открытия (закрытия) задвижки, если знать закон изменения сопротивления переменного резистора (обычно сопротивление изменяется по линейному закону или близко к этому).
Читайте также: