Верно ли что ацп осуществляет квантование измеренного сигнала

Обновлено: 28.06.2024

В статье рассмотрены принцип работы и основные параметры цифро-аналоговых преобразователей. Даны рекомендации по выбору и проектированию ЦАП.

Цифро-аналоговый преобразователь — устройство для перевода цифровых данных в аналоговый сигнал. Это своеобразный мост между аналоговой и цифровой частями схемы. Сфера применения ЦАП очень широка. Это — усилители звука, аудиокодеки, обработка видео, устройства отображения, системы распознавания данных, калибровка датчиков и других измерительных устройств, схемы управления двигателями, системы распределения данных, цифровые потенциометры, программируемое радио (SDR) и т.д.

Принцип работы

Принцип работы ЦАП заключается в суммировании аналоговых сигналов (ток или напряжение). Суммирование производится с коэффициентами, равными нулю или единице в зависимости от значения соответствующего разряда кода. Выходной сигнал ЦАП может иметь форму тока, напряжения или заряда. Преобразователи с токовым выходом используются в основном в прецизионных и высокочастотных схемах. Для определенности мы будем рассматривать ЦАП с выходным напряжением, как наиболее распространенные. Из таблицы 1 видно, что максимальное выходное напряжение на 1 МЗР (младший значащий разряд входного кода) ниже напряжения полной шкалы (ПШ). Некоторые ЦАП позволяют использовать всю шкалу.

Выходное напряжение, В

Характеристики ЦАП

Наиболее важные характеристики ЦАП:

  • Разрядность, шаг квантования (разрешающая способность) и точность преобразования.
  • Передаточная характеристика (ПХ) — зависимость выходного сигнала ЦАП от входных данных.
  • Разрядность (N) — количество бит во входном коде.
  • Разрешение — это выходное напряжение, соответствующее 1 МЗР. Оно зависит от количества разрядов и определяет точность преобразования сигнала.
  • Частота дискретизации (частота Найквиста) — максимальная частота, на которой ЦАП может работать, выдавая на выходе корректный результат. В соответствии с теоремой Котельникова, для корректного воспроизведения аналогового сигнала из цифровой формы необходимо, чтобы частота дискретизации была не меньше удвоенной максимальной частоты в спектре сигнала.
  • Полная шкала — диапазон значений выходного сигнала.
  • Монотонность — участок на ПХ, где наклон постоянен. На этом участке ЦАП линеен.
  • Время установления — интервал времени от момента изменения входного кода до окончательного вхождения выходного сигнала в заданный диапазон отклонения.
  • Выходной выброс — это переходный процесс, возникающий во время смены входных данных. Величина выброса зависит от количества переключаемых разрядов.
  • Погрешность смещения нуля — разность между фактическим и идеальным выходным сигналом, когда на входе ноль.
  • Погрешность ПШ — разница между фактическим выходным напряжением и напряжением ПШ.
  • Погрешность усиления — отклонение наклона ПХ от идеального.
  • Дифференциальная нелинейность — разность приращений выходных сигналов, соответствующих смежным соседним кодам.
  • Интегральная нелинейность — максимальное отклонение реальной ПХ от прямой линии.

Классификация

Цифро-аналоговые преобразователи делятся по типу входных данных на последовательные и параллельные. По разрядности выделяют ЦАП с повышенной точностью (большая разрядность, N≥14) или с высоким быстродействием (6—8 разрядов). Выходной сигнал может иметь форму напряжения, тока или заряда.

Рассмотрим некоторые структуры ЦАП. Простейшим ЦАП является взвешивающий (делитель Кельвина), структура которого показана на рисунке 1. Каждому биту преобразуемого двоичного кода соответствует резистор или источник тока, подключенный на общую точку суммирования. Сила тока источника (или проводимость резистора) пропорциональна весу бита, которому он соответствует. N-разрядный ЦАП содержит 2N одинаковых последовательно соединенных резистора и 2N ключа (обычно КМОП), по одному между каждым узлом цепи и выходом.

Структура взвешивающего ЦАП

Рис. 1. Структура взвешивающего ЦАП

Взвешивающий метод — один из самых быстрых, однако характеризуется наименьшей точностью. Обычно такой ЦАП имеет выход по напряжению и отличается хорошей монотонностью. Если все резисторы одинаковы, ЦАП линеен. Недостаток данной модели — относительно высокий выходной импеданс и большое количество резисторов и ключей.

ЦАП на матрице R–2R . Это одна из наиболее распространенных структур (см. рис. 2). Здесь используются только две величины сопротивлений, находящихся в отношении 2:1. Количество резисторов равно 2N. Резистивный делитель можно использовать в качестве ЦАП двумя способами, в режиме напряжения и режиме тока (они также известны как нормальный и инверсный режимы). Главное преимущество ЦАП с выходом по напряжению заключается в том, что выходной импеданс постоянен. Второе достоинство — отсутствие емкостных токов в нагрузке. Недостатки данной структуры: во-первых, опорный источник должен иметь очень низкий импеданс; во-вторых, для регулирования усиления нельзя использовать резистор, включенный последовательно с опорным источником. В токовом режиме это допустимо, однако выбросы в токовой схеме больше. С другой стороны, ключи находятся под потенциалом земли, поэтому защита от большого перепада напряжений не требуется.

ЦАП на R–2R матрице с выходом в форме напряжения

Рис. 2. ЦАП на R–2R матрице с выходом в форме напряжения

В сигма-дельта ЦАП (см. рис. 3) преобразование осуществляется с помощью сигма-дельта модуляции, когда квантование осуществляется всего одним разрядом, но с частотой, в десятки и сотни раз превышающей частоту Найквиста. Как видно из рисунка 4, сигма-дельта модулятор преобразует входной сигнал в последовательный непрерывный поток нулей и единиц. Если входной сигнал близок к положительному краю полной шкалы, в битовом потоке на выходе больше единиц, чем нулей, и наоборот, если сигнал ближе к отрицательному краю, то больше нулей. Для сигнала, близкого к середине шкалы, количество нулей и единиц примерно одинаково.

Рис. 3. Общая структура сигма-дельта ЦАП Рис. 4. Принцип работы сигма-дельта модулятора

Интерполяционный фильтр представляет собой цифровую схему, которая принимает данные, поступающие с низкой частотой дискретизации, вставляет нули в поток данных, увеличивая тем самым частоту дискретизации, затем применяет алгоритм интерполяции и выдает данные с высокой частотой дискретизации. Выходное напряжение одноразрядного ЦАП переключается между равными по значению положительным и отрицательным опорными напряжениями. Выход фильтруется аналоговым ФНЧ.

Перемножающий ЦАП работает с различными опорными сигналами, в т.ч. переменного тока. Выходной сигнал пропорционален произведению опорного напряжения на дробный эквивалент цифрового входного числа.

Сегментированные (гибридные) преобразователи . При проектировании конкретного ЦАП может оказаться так, что ни одна из базовых структур не подходит, и придется комбинировать различные структуры для получения ЦАП с высоким разрешением и требуемыми характеристиками.

Подбор ЦАП

Для выбора подходящего ЦАП необходимо определить требования, которым должны соответствовать его параметры. В первую очередь это — разрядность, разрешение, время установления выходного сигнала (быстродействие), интерфейс подключения, напряжение питания и т.д. Обычно при проектировании устройства сначала выбирается его главный элемент — вычислительное ядро (процессор, ПЛИС, МК и т.д.), который определяет интерфейс обмена с остальными элементами схемы. В таблице 2 приведены четыре наиболее распространенных интерфейса для ЦАП.

АЦП осуществляется в два этапа. Первый этап – это квантование во времени непрерывного сигнала u(t). В результате получается последовательность импульсов-отсчетов, следующих с шагом Δt.

Рассмотрим подробнее данный этап.

Квантование (дискретизация) во времени – это замена непрерывной функции u(t), заданной на интервале 0≤tТ, последовательностью ее мгновенных значений-отсчетов u1=u(t1), u2=u(t2), … , un=u(tn). Они измеряются в моменты времени t1, t2, …, tn, отстоящие один от другого на величину Δt=tj-tj-1=T/n, называемую шагом квантования.

Возможность точного восстановления исходной функции u(t) по серии ее отсчетов доказана в теореме отсчетов Найквиста-Котельникова: любая функция, имеющая спектр, заключенный в ограниченной полосе частот 0. Fв, полностью определяется последовательностью отсчетов, взятых с шагом

Другими словами, частота квантования Fк=1/Δt должна удовлетворять условию Fк ≥ 2Fв.

Первая причина появления ошибок – это вынужденное нарушение требований теоремы отсчетов, т.е. квантование с частотой Fк fc.

Ошибка второго рода – это трансформация составляющих спектра сигнала u(t) с частотами fc Fв.

ограниченный спектр 0. FB, но из бесконечной серии его отсчетов, взятых с шагом Δt=1/2FВ, по линии связи была передана конечная последовательность, состоящая из n отсчетов, при восстановлении отрезка сигнала u(t), даже на интервале его передачи, возникнет ошибка.

Фактически, при передаче отрезка сигнала нарушены требования теоремы отсчетов. Рис. 2.4. иллюстрирует приемы точного анализа величины ошибки. Грубо величину ошибки можно определить по формуле

которая для статистически стационарного сигнала при n>>1 дает вполне удовлетворительную точность.

Второй этап – это оцифровка каждого отсчета. Подготовка к этой операции заключается в следующем. Диапазон возможных значений напряжений (umin, umax) делится на М интервалов длиной

каждый. Величина Δu называется шагом квантования по уровню (рис. 2.7). Далее интервалы нумеруют М-ичными цифрами снизу вверх, начиная с цифры 0.

Для оцифровки очередной импульс-отсчет ”прикладываем” к шкале и заменяем его М-ичной цифрой NM, равной номеру того интервала, в который попала вершина импульса. В итоге, вместо серии, состоящей из n отсчетов, передается последовательность М-ичных цифр длиной n.

Поскольку в технике наиболее часто для передачи используются двоичные символы, то значение М выбирают по формуле

и номер очередного интервала передается в виде k-разрядной двоичной комбинации (N2 на рис.2.7). В итоге количество передаваемых символов-цифр увеличивается в k раз.

Обратное, т.е. цифро-аналоговое преобразование (ЦАП) также проводится в два этапа.

Первый этап – это формирование импульсов, соответствующих каждой М-ичной цифре (или k-разрядной комбинации при передаче двоичных символов). В качестве подготовки к этой операции внутри каждого из М интервалов выбирается точка. Обычно она соответствует центру интервала – это точки u0, u1, …, uM-1 на рис.2.7. Тогда амплитуда очередного импульса, соответствующего цифре j, устанавливается равной uj. Таким образом, в итоге проводится округление значения каждого отсчета.

Ошибка такого округления e=u-uj, где u – истинное значение отсчета. Если шаг квантования Δu достаточно мал (соответственно, число интервалов М велико), величина случайной ошибки е имеет почти равномерное распределение в интервале ширины Δu, поэтому среднеквадратическое значение ошибки квантования по уровню равно

Второй этап ЦАП – это преобразование серии импульсов-отсчетов в непрерывную функцию – проводится как обычно (разд. 2.4) при помощи ФНЧ с прямоугольной частотной характеристикой.

Такое квантование по уровню, когда все М интервалов имеют одинаковую длину (2.10), называется равномерным и является наиболее простым в техническом отношении. При фиксированном значении М эта процедура обеспечивает минимальное значение среднеквадратической ошибки квантования лишь для таких сигналов u(t), у которых величина напряжения равномерно распределена в интервале (umin, umax). Реальные сигналы, такие как звуковой, характеризуются распределением вероятностей, имеющим узкий центральный пик и длинные “хвосты” (рис.2.8).

Для таких сигналов предпочтительней неравномерное квантование по уровню, когда длины интервалов берут меньшими в области наиболее вероятных значений напряжения и увеличивают их в области малых вероятностей.

Тот же эффект достигается более простыми техническими средствами. Сначала сигнал u(t) подвергают компрессии по уровню, т.е. пропускают через устройство, амплитудная характеристика которого линейна лишь в области малых значений входного напряжения, а при других значениях описывается логарифмической кривой (рис.2.9). В итоге распределение напряжения сигнала на выходе компрессора становится существенно ближе к равномерному.

После компрессии проводят стандартную процедуру АЦП с равномерным квантованием. В пункте приема, после стандартного ЦАП следует провести обратное нелинейное преобразование, хотя, как показывает практика, нередко можно обойтись и без него.

Для проведения АЦП телефонного сигнала используют стандартные значения параметров: Fк=8000 отсчетов/с, k=8 бит/отсчет, т.е. М=256. В итоге получается стандартный цифровой телефонный сигнал, который характеризуется скоростью цифрового потока на выходе АЦП, равной V=8000´8=64 кбит/с.

Серия двоичных импульсов, получаемая в результате такого преобразования телефонного сигнала, называется сигналом с импульсно-кодовой модуляцией (ИКМ).

37.Европейский и американский варианты плезиохронной цифровой иерархии. ИКМ-30, структура кадра.



Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰).


Папиллярные узоры пальцев рук - маркер спортивных способностей: дерматоглифические признаки формируются на 3-5 месяце беременности, не изменяются в течение жизни.


Общие условия выбора системы дренажа: Система дренажа выбирается в зависимости от характера защищаемого.

Мы поступим так:

Если все эти этапы осуществляются в одном устройстве, то оно будет называться цифровым датчиком. Они проще для работы, но дороже.

Теперь рассмотрим все эти этапы преобразования отдельно.

Собственно датчик и его параметр

На первом этапе мы имеем воздействие некоторой природы на наш датчик (в нашем случае это будет воздействие температуры на внутренний материал резистора KTY81/110 фирмы NXP). Что там внутри происходит, как и когда — это целиком зависит от конкретного датчика. Тут нет каких-либо общих характеристик. Но всегда есть некоторое изменение какого-либо электрического параметра (в нашем случае — сопротивление). Поэтому можно перечислить общие характеристики для любого датчика:

  • Физическая природа и электрический параметр. Это первый вопрос, который возникает при отборе датчиков. В большинстве случаев параметром будут изменение сопротивления, напряжения или емкости (для KTY81 это сопротивление).
  • Допустимый диапазон воздействия. Любой прибор всегда требует определенных условий для своей эксплуатации (для KTY81 это работа в диапазоне температур -55… +150оС).
  • Характеристика зависимости параметра от физического воздействия. Тут нет общего описания, для каждого типа датчика будет своя характеристика (для KTY81 дается температурный коэффициент, смещение сопротивления в зависимости от длительности использования). Также не забываем, что тело не мгновенно реагирует на физическое воздействие (у KTY81 дается температурная константа для измерения в воздухе, стоячей жидкости и текущей жидкости).
  • Собственно зависимость параметра от воздействия. Это таблица или график, который описывает изменение параметра при приложенном воздействии. Эта зависимость может быть линейной (что хорошо), а может и не быть (что хуже).
  • Описание корпуса. Датчик имеет корпус — микросхему. Это может быть трехножка, пятиножка, стоножка (да-да, и такое бывает!). Она может быть с торчащими выводами (DIP-корпусы), могут быть ножки в сторону (TQFP-корпусы), а могут быть вообще без торчащих ножек (всевозможные SMD-корпуса или — каково запаять такое пяльником. — BGA). Чтобы поразить свое воображение — посмотрите хотя бы здесь.
    Самая частая ошибка начинающих схемотехников — оставить вопрос выбора корпуса на потом. Это вроде бы мелочь, но потом, при монтаже и пайке готового изделия может вылиться в головняк. Каждая фирма придумывает свою маркировку и название для корпусов, расстояния между ножками и прочее. Бывает, что заказал один корпус и проглядел ничем не примечательную буковку в названии. А потом, в плату уже не впаивается из-за не тех размеров… (вот заказываете вы ATmega32U4 и видите, что есть ATmega32U4-AU и ATmega32U4-MU. Разница есть? Есть — у одной ноги торчат в сторону, у другой под пузо). Эту информацию надо учитывать (за KTY81 можно расслабиться — тут только один вариант корпуса).
Параметр датчика в напряжение

Следующим делом необходимо убедиться в том, что мы будем работать с напряжением, а не с чем-либо другим.

Тут все зависит от параметра. Если параметром является емкость, то разговор будет совсем особым. Если же датчик сразу дает напряжение, то этот шаг уже выполнен самим датчиком. А если (как у KTY81) параметром является сопротивление, то преобразование в напряжение необходимо выполнить.

Напряжение в код

Наконец-то мы подошли к самому сердцу работы цифрового датчика — аналогово-цифровому преобразованию. Сколько много их есть, АЦП (посмотрите, например, тут — у меня выпал список в 528 позиций)! Они отличаются массой характеристик, они задают основные свойства преобразования. Тут важна схема, разводка платы, окружающая электромагнитная обстановка. Тут все важно! Всего в своей статье я и описать не могу. Да и не надо оно вам поначалу. Вам надо задать основные характеристики — а дальше умный схемотехник за бутылку пива (или купленную ему новую машину — смотря что за задача) нарисует схему и укажет особенности разводки платы.

Тут бы самое то поговорить про особенности процесса АЦПирования, но вы тогда забудете про последний этап, который не менее важен. Поэтому подробно про АЦП будет сказано после, а сейчас — исключительно в двух словах.

Задача АЦП — выдать цифровой код для напряжения в заданном диапазоне, измерение проводится с заданной погрешностью. Ответ будет представлять собой целое число в четко заданном диапазоне. Для нашего случая это может быть измерение напряжения в диапазоне 0… 5 В.

Первый важный момент (его мне напомнили в комментариях): в процессе преобразования АЦП имеет дело с напряжением, которое накопилось на устройстве выборки-хранения — или конденсатор, коммутируемый аналоговым ключом. Это важно помнить, т. к. конденсатор заряжается не моментально из-за своей емкости.

Второй важный момент: АЦП производит преобразование непрерывной величины напряжения в дискретный код. Сейчас разъясню — покажу на примере.

Итак, мы имеем некоторое напряжение x. Мы уверены в том, что оно больше некоторого 0 и меньше некоторого +U. Уверены? Тогда смело подаем на вход АЦП, которое ограничено 0 и +U вольтами.

Есть много всяких разновидностей и вариантов процедуры измерения (вот, например, прекрасная статья про сигма-дельта АЦП), я же возьму самый простой и понятный.

Четвертый шаг — у нас середина будет 7 /16U, новое сравнение. Потом дальше и дальше…

UPD: меня попросили проверить правильность еще нескольких преобразований. Выложу тут результаты нескольких 16-битных преобразований для желающих поупражняться:

Каждый шаг занимает время — пусть и микроскопическое в масштабах Вселенной, но тем не менее вполне конечное (а часто недостаточно малое). Количество всех шагов и образует время преобразования — вторая фундаментальная величина (на самом деле оно — время преобразования — зависит еще и от массы других параметров, но они значительно меньше влияют на общее время, чем разрядность).

Разрядность и диапазон измерения прямым образом влияют на результирующую погрешность преобразования. Какова погрешность у нашего примера?

Первый шаг дает результат в 1 /2U (если у нас U = 5В, то точность будет 2.5В). Значит, точность первого шага — 50% от исходного диапазона. Если мы на этом остановимся, то точность у нас будет… хм… скромненькая, прямо скажем, поэтому мы двигаемся дальше.

Второй шаг еще раз делит искомую область пополам. Точность становится 1 /4U = 25% = 1.25В.

Третий шаг… Давайте, впрочем, изобразим это в таблице:

Но! Точность преобразования все равно конечна! И поэтому результат будет таким, каким был на картинке — ступеньками. Ступеньки могут быть сколь угодно малыми (почти сколь угодно. ), но все равно это будет ступенька. Это надо четко понимать. И подбирать параметры исходя из требуемой точности.

Диапазон самого последнего сравнения называют ценой младшего разряда. Этот параметр используется при преобразовании получившегося кода в величину.

Код в величину

Итак, мы имеем наконец-то код, который как-то соответствует исходной величине. Что с ним делать дальше?

Аппроксимация

Вопрос первый — какому все-таки реальному значению соответствует код.
Значит, у нас есть некоторый x — код, и функциональная зависимость y = F(x).

Что собою представляет эта функция F(x)? Если мы ее считаем линейной (для простоты), то ответ будет достаточно простой:

y = F(x) = K*x + B.
Простая линейная функция… И в большинстве случаев ее хватает. Но — опять же — только для линейной зависимости кода (с учетом всех перипетий его получения) от исходной величины. Углубляясь в дебри — можно использовать, если надо, квадратичную и более функцию. Я где-то слышал, что делали тензометр — измеритель веса. Он должен был работать в диапазоне от 0 до 5 тонн. И там с помощью кубической функции аппроксимации добились точности в пару килограмм — и это круто!

Так вот, задача теперь заключается в получении этих самых K и B. Как их узнать? Из математики известно, для получения этих констант достаточно знать два значения код-величина. И тогда получаем решение. Где их взять — эти две пары?

Тут есть 2 взаимодополняющих подхода для получения ответа — теоретический и экспериментальный. На практике один дополняет другой.

Для начала мы заглянули в описание KTY81/110и увидели, что при 20оС значение сопротивления у резистора равно… приблизительно… 961 Ом.… Угу, а еще оно равно минимум 950 Ом и максимум 972… Впрочем, я отвлекся.

Итак, для 20оС сопротивление равно 961 Ом. Дальше у меня был делитель напряжения. Допустим, там это сопротивление превратилось в 3.124В. Какой у нас там шаг? — 1.22мВ на один код (т. е. 12-битное АЦП). Т. е. мы должны взять 3.124В и разделить на этот шаг — получим код 2560. Прекрасно! А 100оС соответствует 1696 Ома — после делителя 4.076В — после АЦП код 3340.

Просчитали — и получили значение.

Но вся беда в том, что это только лишь тео-ория… А на практике завод не может гарантировать такую высокую точность KTY81/110 (о чем в описании честно и сказано). И мы не должны забывать о том, что используем делитель напряжения, где сверху резистор, и он тоже не шибко точный. А источник напряжения-то в делителе — тоже не идеален… Словом, от датчика к датчику будут различия. Что хорошо — величину этого различия можно всегда просчитать и вывести погрешность. Если она устраивает — все ОК, продаем датчик. Если же нет, то необходимо откалибровать данный датчик.

Для этого пары код-значения получают экспериментально.

Я это для измерителя температуры делал так.

Первая точка — моя температура тела 36.6оС (хочется верить). Засовываю датчик под мышку и смотрю — ага, код такой-то. Запомнили!

Вторая точка — кипящий чайник. Вот он, электрочайник, кипит и бурлит на столе (за час отладки программы я доливал туда воду не раз и в комнате было туманно. ) Засовываю датчик туда — ага, получил вторую точку!

В итоге получилось неплохо — в пределах погрешности, к которой я стремился.

Но вначале я записал в программу то, что было в документации. Потом исправлял для каждого нового датчика.

А что надо сделать для нелинейной характеристики? То же самое, только формула усложняется, больше точек код-значение и существенно сложнее формула получения констант.

В этом и заключается магия четкого отслеживания всех погрешностей и условий работы прибора: если в заданных условиях получившаяся у нас в результате всех преобразований погрешность допустима, то к большей точности стремиться не надо. У нас, скажем, допустима погрешность в 1оС. Попадаем в нее (в условиях комнатной температуры)? Да. Тогда считаем, что устройство работает правильно!

Дискретность преобразования

Значение получили — класс! Теперь давайте проанализируем что мы получили. Мы помним, что преобразование у нас — дискретное. И результат будет ступенчатый. Но что это за ступеньки будут?

Ширина ступеньки — это код. Высота ступеньки — это величина. Код у нас растет монотонно — все время увеличивается на 1-цу. Следовательно, у всех ступенек ширина будет одинаковая. А вот величина может быть и не очень равномерно-монотонной. Если у нас линейная аппроксимация, то высота будет везде одинаковая. Но вот если любая другая, то высота будет плавать в зависимости от диапазона.

Высота ступеньки — шаг изменения исходной величины — задает нам погрешность. В случае линейной аппроксимации погрешность для всего диапазона кодов (и, значит, исходной величины) одинаковая. Но в случае остальных вариантов погрешность будет зависеть от кода (и от величины). Это надо учитывать при последующей оценке погрешности измерений.

Впрочем, на практике это не очень важно, поэтому углубляться не будем, а перейдем к кой-чему, что было нами забыто.

Величину в… интерпретацию?

Для чего нам нужен датчик? Если нас просто интересует, допустим, температура, то на этом можно и остановиться — вот она, температура в Цельсиях! Но если температура, в свою очередь, описывает какой-то другой процесс?

Например, по ходу заряда аккумуляторы постепенно начинают нагреваться. Вначале процесса заряда они нагреваются несущественно, но к концу нагрев растет экспоненциально. Если 1) измерять температуру на аккумуляторах с высокой точностью, 2) знать их емкость и прочие характеристики, а также 3) четко управлять током заряда, то по температуре можно предсказать оставшееся время заряда.

Итоги преобразования

Итак, мы рассмотрели всю последовательность преобразования некоторого физического воздействия в цифровое его значение. Вначале мы подставили физическому воздействию датчик — подставили наш терморезистор под лампу. Это воздействие изменило свойства датчика — и изменился его какой-то электрический параметр. Следующим шагом мы превращаем изменение параметра в изменение напряжения — действие, хоть и условное, но всем удобное. Дальше мы должны преобразовать напряжение в числовой код, понятный микроконтроллеру. Этим занимается класс устройств под названием АЦП. В результате мы получаем дискретный код, который показывает изменение напряжения в некотором заданном диапазоне. В конце мы должны превратить код в число, соответствующее физической величине. По ходу дела приходится решать задачи аппроксимации.

Вкратце об АЦП

У нас осталась еще одна нерассмотренная тема — это АЦП. Вкратце о них было сказано выше, да и вообще тема очень изъеденная в Интернете, но все-таки для полноты картины нужно о них рассказать и тут. Я ограничусь самыми краткими сведениями — теми особенностями, которые надо учитывать при проектировании устройства.

Вы уже познакомились с зависимостью точности преобразования от разрядности? Нет. Тогда знакомьтесь, иначе дальше ничего не поймете! Ну а коли познакомились (не правда ли, приятное знакомство!), двигаемся дальше.

  1. Разрядность — эту тему обсудили.
  2. Скорость преобразования — это тоже было показано. Вернее, мы остановились на том, что разрядность прямо влияет на скорость преобразования.
  3. Опорное напряжение — то самое, в пределах которого производится измерение.

Скорость преобразования, или же, что корректней, частота дискретизации — это следующий ключевой момент, и его надо учитывать в случае периодических измерений. Допустим, у вас меняется ток в устройстве, и вы хотите быстро реагировать на эти изменения. Значит, вы должны уметь их быстро отслеживать. Насколько быстро? Это уже характеристика АЦП.

Вот такие времена наступили! Меньше 1k измерений в секунду уже никого (почти) не интересует. Дальше — больше: 100k (100 тысяч), 1M (1 миллион), 250+M (более 250 миллионов). Дык, мы уже доросли и до миллиарда измерений в секунду! Есть уже 58 GSPS — собственно, без таких АЦП невозможны современные оптические сети. Такие вот нынче цифры — меряет от доли микровольта до 5 Вольт меньше чем за микросекунду!

На практике необходимо прежде всего решить для себя — какая частота измерений вам нужна? Полоса частот видеосигнала, если я не ошибаюсь, составляет с десяток МГц — это будет один АЦП. Нужно измерять потребление тока в домашней электросети 50 Гц — там будет совсем другой АЦП.

Слишком быстрое АЦП тоже не нужно — микроконтроллер должен успевать обработать результат.

Лично я как максимальную величину устанавливаю ту скорость, что мне выдает мой контроллер (что мой алгоритм успеет обработать). Эта величина у меня никогда не была выше 1 MSPS. Минимальная величина — это предполагаемая частота, увеличенная (грубо) в 10 раз. Тут вы видите примеры различных частот дискретизации.

Если вы измеряете, например, обычные колебания (синусоиду), то необходимо учитывать ее частоту. Если вы выберете частоту АЦП, близкую к частоте колебаний, то вы можете получить красивую, но совсем неправильную информацию о колебаниях. На рисунке представлен как раз этот случай — исходные колебания (синя кривая) опрашиваются весьма, но недостаточно быстро (зеленые линии), в итоге получаем, по сути дела, эффект биения (красная кривая) — результат сложения двух колебаний близких частот.

А вообще — есть теорема Найквиста-Котельникова по поводу выбора частоты дискретизации. Исходя из этой теоремы надо оценить спектр сигнала, найти максимальную гармонику… Испугал? Если да, то запомните простое правило, которое я для себя вывел: нужно делать где-то в 10 раз бОльшую частоту дискретизации, чем частота изменения сигнала. UPD: это правило теоретически некорректное и не всегда правильное, но для быстрого подбора АЦП сойдет.

Тему АЦП можно мурыжить бесконечно — но тут я, наверное, и остановлюсь. Для начального понимания вопроса тут написано достаточно, а дальше нужно погружаться в описания микросхем и мучить вопросами специалистов.

[1] моя голова
[2] Интернет
[3] мои железяки, где используются датчики

АЦП является одним из основных функциональных элементов ЦИП. АЦП представляет собой устройство, обеспечивающее квантование, дискретизацию и кодирование аналогового сигнала. Исходя из указанной совокупности процессов, происходящих в АЦП, его обобщенную структурную схему принято представлять в виде трех взаимосвязанных элементов.


Рис. 8.4 Структурная схема АЦП.

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

В ЦИП значение сигнала измеряется только в фиксированные моменты времени . Частота дискретизации выбирается из противоречивых условий. Действительно, чем больше частота дискретизации , тем меньше потери измерительной информации, но это приводит к ужесточению требований по быстродействию АЦП и, следовательно, к его усложнению.

Задача правильного выбора частоты дискретизации это фактически задача выбора интервала интерполяции . При этом под правильно выбранной частотой дискретизации следует понимать такую частоту, при которой погрешность интерполяции оказывается не более заданной. При решении этой задачи принято рассматривать различные интерполяционные полиномы.

В устройстве квантования происходит процесс замены мгновенных значений непрерывной по размеру величины . Разность между двумя соседними уровнями называется шагом квантования. При квантовании, как и при дискретизации, теряется часть информации о непрерывной измеряемой величине , следовательно, квантующее устройство, как и дискретизирующее, является источником методической погрешности.


Рис. 8.5 Квантование и дискретизация аналогового сигнала.

Из сравнения реальной и идеальной функции преобразования следует, что погрешность квантования:

Из рисунка видно, что погрешность квантования имеет характер ломаной линии. При таком характере погрешности квантования СКО погрешности квантования, характеризуется средней мощностью за длительность одного импульса, определяется равенством:

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



Рис. 8.6 Диаграммы, поясняющие погрешность квантования: а – реальная и идеальная функции преобразования; б – кривая погрешности квантования.

Погрешность АЦП определяется суммой методической и инструментальной составляющих:

Методическая погрешность определяется принципом работы преобразователя и зависит от погрешности дискретизации и квантования, а инструментальная погрешность определяется нестабильностью работы узлов и элементов АЦП.

Кроме погрешности, АЦП характеризуются ценой деления, разрешающей способностью, чувствительностью, быстродействием.

В измерительных устройствах используют АЦП прямого и уравновешивающего преобразования.

Прямое АЦП реализуется одним из следующих способов:

· время - импульсное кодирование;

· число – импульсное кодирование;

· частотно – импульсное кодирование.

В ЦИП наибольшее распространение получили время – импульсное и частотно – импульсное кодирование.

АЦП время – импульсного кодирования работает на основе последовательного преобразования измеряемого напряжения в пропорциональный ему временной интервал. В течение этого интервала времени на электронный счетчик поступают импульсы с известной частотой повторения, число которых пропорционально величине измеряемого постоянного напряжения.



Рис. 8.7 АЦП время-импульсного действия: а - структурная схема; б – временная диаграмма.

Длительность интервала подсчета импульсов:

С другой стороны,

После соответствующих преобразований получим:

Поскольку значение численно соответствует скорости изменения пилообразного напряжения V, то

Для конкретных схем АЦП значение выбирается равным , при этом:

Суммарная погрешность АЦП данного типа определяется следующими причинами:

· погрешностью преобразования измеряемого напряжения в длительность прямоугольного импульса (нелинейность и нестабильность ГЛИН, погрешность компаратора);

· погрешностью преобразования интервала времени в код.

Общая погрешность такого АЦП составляет обычно 0,1 %.

Более помехоустойчивой является схема с двойным интегрированием (0,01%). Это объясняется тем, что рассматриваемый АЦП преобразует не мгновенное, а среднее значение входного напряжения.

Возможно, что вас заинтересуют учебные интернет-ресурсы для студентов, ссылки на которые расположены ниже.




Учебные сайты

Реклама

Сайты с общей тематикой

Это интересно


Лекция 4

Аналого-цифровой преобразователь (АЦП). Принцип аналого-цифрового преобразования. Виды АЦП

Аналого-цифровой преобразователь преобразует аналоговые сигналы в соответствующие им цифровые сигналы. Аналоговый сигнал может представляться определенным количеством амплитудных значений. Амплитуда измеряется через определенный промежуток времени. Соответствующие цифровые значения по очереди сохраняются и все вместе образуют цифровой сигнал. Иными словами, цифровой сигнал изменяющейся во времени величины представляет собой последовательность чисел. Эти числа могут быть представлены в любой системе счисления или коде. Чаще всего АЦП выдает результат в двоичной системе счисления или в двоично-десятичном коде.


Измеренные величины представляются в определенном масштабе. Если напряжение 4 В должно быть представлено с точностью до 1 мВ, то потребуется 4000 ступенек. Для их получения необходимо 12-разрядное двоичное число, так как 2 12 = 4096. Очевидно, что точность представления числа зависит от количества бит. Она называется разрешающей способностью АЦП (чем больше бит, тем выше разрешающая способность АЦП). Разрешающую способность АЦП (точность представления числа) не следует путать с точностью самого АЦП, которая зависит от правильности выданного результата. АЦП с высоким разрешением может иметь низкую точность. наилучшие АЦП имеют точность 10 -5 (отклонение от правильного результата не более чем на 1/100000 его величины). Частота измерений аналогового сигнала должна быть, как минимум, в два раза больше несущей частоты аналогового сигнала.


Такой АЦП оцифровывает аналоговый сигнал линейно-нарастающим эталонным напряжением пилообразной формы. Передний фронт начинается в отрицательной области напряжения. Если эталонное напряжение переходит через 0, то запускается двоичный счетчик. Он считает импульсы генератора. Как только напряжение аналогового сигнала достигнет эталонного напряжения, счетчик остановится.


Значение измеренного напряжения рассчитывается по формуле: u = Δt · tg α. Частоту генератора импульсов выбирают так, чтобы счетчик показывал напряжение в требуемых единицах измерения.


Этот АЦП работает в два этапа, поэтому его метод называют двухшаговым методом. Основным узлом АЦП является интегратор, состоящий из резистора R, конденсатора C и дифференциального усилителя. Выходное напряжение интегратора представляет собой два фронта с различным наклоном. На первом шаге интегрируется положительное аналоговое напряжение в течение заданного времени. Конденсатор интегратора заряжается. На втором шаге на вход интегратора подается отрицательное опорное напряжение. Конденсатор разряжается до нулевого выходного напряжения интегратора. Время, в течение которого происходит разрядка конденсатора, характеризует величину аналогового напряжения. В это время суммирующий счетчик производит подсчет импульсов, которые поступают с выхода генератора. В конце этого временного интервала счетчик показывает бинарную величину, характеризующую аналоговый сигнал в цифровой форме.


В АЦП компенсационного типа преобразуемое аналоговое напряжение сравнивается с компенсационным напряжением. На ЦАП подаются цифровые значения до тех пор, пока компенсационное напряжение не сравняется с преобразуемым.


В таком устройстве преобразуемый аналоговый сигнал преобразуется в переменное напряжение определенной частоты. Этот АЦП должен иметь хорошую линейную связь между напряжением и частотой.


АЦП прямого преобразования работает с компараторами, которые всегда переключают выходное состояние 0 в выходное состояние 1, если на положительном входе напряжение равно или больше, чем на отрицательном. Каждый выходной бит привязан к отдельному компаратору. Каждый компаратор получает заданное фиксированное опорное напряжение, которое подается на отрицательный вход. Опорные напряжения стандартизированы.

Читайте также: