Глава 9. Цифра и аналог: сопряжение, АЦП, ЦАП, ФАПЧ
9.4. АЦП на практике
Три законченных устройства: восьмиканальный регистратор с выборкой-хранением и АЦП последовательного приближения, цифровой вольтметр на 3½ знака с двухстадийным интегрированием и счётчик ампер-часов для аккумулятора на уравновешивании заряда.
9.4.1Восьмиканальный регистратор для стенда
- Тракт: мультиплексорМультиплексор — набор ключей с дешифратором: по двоичному адресу соединяет с выходом один из нескольких входов. с размыканием перед замыканием → выборка-хранение LF398 → 12-разрядный АЦП последовательного приближения.
- Сигнал ЗАНЯТ самого АЦП переводит LF398 в хранение; 10 мкс преобразования + 4 мкс захвата — около 71 000 отсчётов в секунду на все каналы.
- Для честных 12 разрядов нужна подстройка нуляУстановка (подстройка) нуля — внешний потенциометр на выводах ОУ, которым компенсируют напряжение сдвига при одной температуре.: сдвиги и ступенька инжекции заряда складываются в милливольты.
Задача: на испытательном стенде восемь датчиков (давление, температура, ускорения) выдают напряжения 0…+5 В, а микроконтроллер должен по очереди оцифровывать их с разрешением 12 бит и как можно чаще. Каждый узел тракта мы уже знаем по отдельности; посмотрим, как они работают вместе и где прячутся ошибки.
Что здесь что (7)
- Мультиплексор. 8 каналов, размыкание перед замыканием; входы могут выходить за питание без защёлкиванияЗащёлкивание — включение паразитного тиристора в КМОП-структуре током через защитные диоды (от ~20 мА): питание замыкается накоротко, микросхема может сгореть.
- Адрес A0…A2. номер канала выставляет микроконтроллер
- LF398. выборка-хранениеСхема выборки-хранения: ключ и конденсатор; замкнутый ключ — конденсатор следит за сигналом, разомкнутый — «запоминает» мгновенное значение для АЦП.: следит за входом, по сигналу ЗАНЯТ фиксирует его
- Конденсатор хранения 1000 пФ. компромисс между временем захвата, спадом и ступенькой инжекции
- АЦП. 12 разрядов, последовательное приближение, встроенные эталон и генератор
- Линия ЗАНЯТ. сама переводит LF398 в хранение на время преобразования
- Шина данных. 12 разрядов сразу или два чтения по 8-разрядной шине
Что делает каждый узел
Мультиплексор — восьмиканальный аналоговый КМОПКМОП — комплементарные МОП-транзисторы: n- и p-канальные приборы на одном кристалле. Основа почти всей цифровой логики и аналоговых ключей.-коммутатор с логическими входами (например, из того же семейства HI-50x, где есть и 16-канальный HI-506). Важны три его свойства. Ключи работают по принципу «разомкнуть, потом замкнуть»: при смене адреса два канала ни на миг не соединяются, и датчики не замыкаются друг на друга. Входные напряжения могут выходить за пределы питания, не вызывая тиристорного защёлкивания. И наконец, каналы мало влияют друг на друга.
Выборка-хранение LF398 — монолитная схема в восьмивыводном корпусе. Здесь она работает в режиме «слежение-хранение»: всё время повторяет вход и замирает только на время преобразования. С конденсатором 1000 пФ она устанавливается до 1 МЗРМЗР — младший значащий разряд: самый мелкий шаг преобразователя, . Погрешности ЦАП и АЦП меряют в долях МЗР. за 0,5 мкс после небольшого скачка, отслеживает полный скачок с точностью 0,1 % за 4 мкс (время захвата), а за время преобразования её выход «проседает» на единицы микровольт — в сотни раз меньше МЗР.
АЦП — экономичный 12-разрядный преобразователь последовательного приближенияАЦП последовательного приближения делает двоичный поиск: пробует разряды от старшего к младшему, n тактов на n разрядов. со встроенными эталоном и тактовым генератором; преобразование занимает около 10 мкс (у подобных микросхем, например AD7572, — 10–12 мкс). Он выдаёт сигнал ЗАНЯТ и позволяет прочитать 12-разрядный результат по 8-разрядной шине за два обращения.
Цикл одного отсчёта
- Адрес и пускмикроконтроллер выбирает канал и запускает АЦП сигналами «выбор кристалла» и «чтение»
- ЗАНЯТ → хранениеАЦП отвечает сигналом ЗАНЯТ, и он же переводит LF398 в хранение
- 10 мкс преобразованияможно опрашивать ЗАНЯТ, а можно просто выждать программной задержкой
- Чтение12 разрядов сразу или, при 8-разрядной шине, сначала младший байт, затем по сигналу «старший байт» — 4 старших разряда
- 4 мкс захватаLF398 снова догоняет вход с точностью 0,1 %; это время удобно потратить на чтение и смену адреса
Изящество схемы в том, что выборкой-хранением управляет сам АЦП: момент «замораживания» совпадает с началом преобразования без всякой программной синхронизации. Микроконтроллеру остаётся лишь не запускать следующее преобразование раньше, чем истекут 4 мкс захвата.
Откуда берутся ошибки и как с ними жить
- Ноль. Для настоящих 12 разрядов нужна подстройка нуля, потому что складываются три сдвига: собственный сдвиг входа выборки-хранения (до 7 мВ); ступенька при переходе в хранение — заряд, инжектированный через ёмкость затвора ключевого транзистора (раздел 3.3), с конденсатором 1000 пФ это довольно стабильные −10 мВ; сдвиг самого АЦП (до 4 МЗР, около 5 мВ на шкале 0…5 В). LF398 имеет вывод для подстройки, и изготовитель рекомендует пользоваться именно им.
- Конденсатор хранения. Маленький ускоряет захват, но увеличивает спад и ступеньку инжекции; большой — наоборот. 1000 пФ дают ничтожный спад и ступеньку около 8 МЗР — она постоянна и уходит вместе с подстройкой нуля.
- Полярность. Вход рассчитан на 0…5 В. Для двуполярных датчиков нужен ОУ со смещениемСмещение — постоянный режим транзистора (ток покоя, напряжения на выводах), при котором он работает в активном режиме в течение всего периода сигнала., и его ошибки тоже должны быть меньше 1 МЗР (1/4000). Многие АЦП выводят наружу прецизионное опорное напряжение как раз для такого смещения.
- Масштаб. Если датчики сильно различаются по уровню, полезен усилитель с программируемым усилением, которым управляет тот же микроконтроллер: AD526 (усиление 1, 2, 4, 8, 16 с точностью 0,02 % — хватает для 12 разрядов) или наборы LF13006/7 из резисторов и ключей (усиление 1…128 через 2 или 1…100 в ряду 1-2-5 с точностью 0,5 % — уровень 8 разрядов).
Почему именно последовательное приближение? При обходе каналов вход АЦП каждый раз меняется скачком, и нужен преобразователь, который быстро берёт отсчёт и не «помнит» предыдущий канал. Интегрирующий АЦП здесь проиграл бы в сотни раз. Стоимость тракта определяет в основном сам АЦП.
Проверим расчёт регистратора. (а) Если за 10 мкс преобразования выход LF398 с конденсатором 1000 пФ просел на 2 мкВ, какому току утечки (входной ток буфераБуфер — повторитель с : огромное входное и малое выходное сопротивление, развязывает источник и нагрузку. плюс утечка ключа) это соответствует? (б) Сколько отсчётов в секунду получает каждый из 8 каналов при циклическом опросе с наибольшей скоростью?
Решение
(а) А = 0,2 нА. МЗР равен мВ, так что спад в 600 раз меньше МЗР.
(б) Отсчёт занимает 10 + 4 = 14 мкс, всего отсчётов/с, на канал . По теореме отсчётов это позволяет оцифровывать сигналы с полосой до ≈ 4,5 кГц; на практике берут запас (до 2–3 кГц) и ставят на каждый вход фильтр против наложения спектровНаложение спектров (алиасинг): в дискретной по времени схеме частоты около частоты такта «переезжают» в полосу пропускания..
А нужна ли вообще выборка-хранение? Пусть её нет, и 12-разрядный АЦП со шкалой 0…5 В все 10 мкс сравнивает разряды прямо с входом. Найдите наибольшую частоту синусоиды полного размаха (5 В от пика до пика), при которой вход за время преобразования меняется не больше чем на ½ МЗР.
Решение
Синусоида меняется быстрее всего при переходе через середину: В/с. Половина МЗР мВ. Условие даёт Гц — смехотворно мало! С выборкой-хранением предел определяет уже неопределённость момента её срабатывания (наносекунды), и допустимая частота вырастает на три-четыре порядка.
9.4.2Мультиметр на одной микросхеме: 3½ знака
- Весь вольтметр — одна КМОП-БИС ICL7106: двухстадийное интегрированиеДвухстадийное интегрирование: заряд интегратора входом фиксированное время, затем разряд эталоном; время разряда пропорционально входу, R, C и такт сокращаются., автокоррекция нуля и прямое управление ЖК-индикатором.
- Показание : предел 1,999 В — эталон 1,000 В, предел 199,9 мВ — эталон 100 мВ.
- Время интегрирования 100 мс — целое число периодов и сети 50 Гц (5), и сети 60 Гц (6).
Откройте самый дешёвый карманный мультиметр — внутри, скорее всего, окажется капля компаунда или 40-выводная микросхема семейства ICL7106/7107. Это и есть двухстадийный АЦП из предыдущего раздела, доведённый до готового прибора: снаружи остаются только детали интегратораИнтегратор — схема, выход которой пропорционален интегралу входа по времени: . и тактового генератора, опорное напряжение и индикатор. ICL7106 управляет жидкокристаллическим индикатором и питается от батареи 9 В; её сестра ICL7107 рассчитана на светодиодные цифры.
Микросхема сама выполняет цикл автокоррекции нуляАвтокоррекция нуля: перед измерением на вход подают ноль, измеряют собственную ошибку прибора и вычитают её из результата. и выдаёт сигналы сегментов для четырёх цифр «3½ знака»: старшая цифра может быть только единицей или пустым местом, отсюда шкала ±1999. Другие пределы получают входным делителем или другим эталоном. Для вольтметра двухстадийный метод — идеальный выбор: хорошая точность благодаря автокоррекции, подавление сетевых помех и цена, от которой когда-то просили до 20 долларов, а теперь — копейки.
Что здесь что (8)
- Входной фильтр. 1 МОм и 0,01 мкФ срезают высокочастотные помехи
- R_инт 470 кОм. задаёт ток интегрирования: размах интегратора на полной шкале около 2 В
- C_инт 0,22 мкФ. конденсатор интегратора — полипропиленовый, с малой диэлектрической абсорбциейДиэлектрическая абсорбция — «память» конденсатора: после разряда на нём снова появляется часть прежнего напряжения. Мала у полипропилена, полистирола, тефлона.
- C_аз 0,047 мкФ. хранит ошибку нуля, измеренную в цикле автокоррекции
- ICL7106. интегратор, компараторКомпаратор — схема, которая сравнивает два напряжения и выдаёт логический ответ, какое больше., автокоррекция, счётчики и дешифраторы сегментов
- Эталон 1,000 В. внутренний опорный источник ИС и делитель с подстроечником; задаёт предел 1,999 В
- ЖК-индикатор. 3½ знака; ИС сама формирует переменное напряжение сегментов
- Генератор 40 кГц. делится на 4 — 10 кГц тактов
Как прибор считает. Генератор работает на 40 кГц, его частота делится на 4 — получаются такты 10 кГц. Каждый цикл состоит из трёх фаз: автокоррекция нуля, интегрирование входа ровно 1000 тактов, разряд эталоном — не более 2000 тактов. Счёт за время разряда и есть показание.
Отсюда и выбор эталона: для предела 1,999 В нужен ровно 1,000 В, для 199,9 мВ — 100,0 мВ. Время интегрирования 1000 тактов по 0,1 мс = 100 мс — это пять периодов сети 50 Гц и одновременно шесть периодов сети 60 Гц, так что один и тот же прибор не замечает сетевую помеху в любой стране. Полный цикл с автокоррекцией и разрядом укладывается в 0,4 с — около 2,5 измерения в секунду, как раз чтобы цифры не мельтешили. Если же генератор настроить на 48 кГц, интегрирование займёт 83,3 мс — ровно пять периодов только сети 60 Гц.
Тот же прибор переделывают в милливольтметр с пределом 199,9 мВ для измерения сигнала термопары. (а) Какое нужно опорное напряжениеОпорное напряжение — точное и стабильное напряжение, с которым схема сравнивает выход (стабилизатор, АЦП, ЦАП, вольтметр). Его стабильность ограничивает точность всего прибора.? (б) Каким взять , если мкФ, время интегрирования 100 мс, а размах интегратора на полной шкале должен остаться около 2 В? (в) Что покажет прибор при входе 73,4 мВ?
Решение
(а) , показание 1999 при 199,9 мВ → мВ.
(б) Чтобы за 0,1 с конденсатор 0,22 мкФ зарядился до 2 В, нужен ток мкА. При входе 0,2 В кОм — берём ближайший стандартный 47 кОм. Заодно конденсатор автокоррекции увеличивают до 0,47 мкФ: на чувствительном пределе шум важнее.
(в) — на индикаторе «73.4».
9.4.3Счётчик ампер-часов для аккумулятора
- Ампер-час-метр интегрирует ток: шунт → преобразователь напряжение → ток (ОУ + МОП-транзисторМОП-транзистор (металл — окисел — полупроводник) — полевой транзистор, затвор которого отделён от канала тонким слоем стекла ; ток затвора практически нулевой (входное сопротивление больше Ом).) → интегратор с уравновешиванием заряда → счётчик.
- Каждая порция заряда соответствует ровно 1 мКл, прошедшему через аккумулятор; 8-разрядный счётчик вмещает 27,8 А·ч.
- Нижний край динамического диапазонаДинамический диапазон — отношение наибольшего неискажённого сигнала к уровню шума, в децибелах. задаёт сдвиг входного ОУ: 10 мкВ на 0,1 В полной шкалы — это .
Владельцу электровелосипеда или солнечной электростанции хочется знать, сколько заряда осталось в аккумуляторе. Напряжение говорит об этом плохо, а надёжнее всего — честно проинтегрировать ток: прибор, измеряющий полный заряд за время, называют кулонометромКулонометр — прибор, измеряющий полный заряд (интеграл тока за время), в кулонах или ампер-часах.. Тот же прибор нужен в электрохимии (сколько металла осадил электролиз) и при электрофорезе. Ток при этом может меняться в тысячи раз — от долей ампера на стоянке до десятков ампер на подъёме, и интегрировать его надо одинаково точно во всём диапазоне.
Наша схема — интегратор тока с уравновешиванием заряда, прямой родственник дельта-сигмаДельта-сигма-преобразователь уравновешивает средний входной ток порциями эталонного заряда; число порций за цикл — результат.-АЦП.
Что здесь что (8)
- Шунт. четырёхпроводныйПодключение по Кельвину: по одной паре проводов течёт ток, по другой, без тока, снимают напряжение — падение в проводах не влияет на измерение. прецизионный резистор 5 мОм: 20 А → 0,1 В
- ОУ1. прецизионный ОУ с однополярным питанием: держит на R то же напряжение, что на шунте
- T₁ (МОП). нет тока базы — весь ток идёт в сток без ошибки
- R 1,00 кОм. 0,1 В на шунте → 100 мкА в стоке
- Ключ T₂. p-канальный МОП-транзистор: на каждом такте выдаёт или не выдаёт порцию эталонного тока 200 мкА
- Интегратор ОУ2. копит разность тока и порций через
- D-триггерЭлемент памяти на один бит с двумя устойчивыми состояниями (бистабильный мультивибратор).. запоминает решение компаратора на такт и управляет
- Счётчик и индикатор. 8 цифр: до порций по 1 мКл
Входная часть
Ток аккумулятора проходит через мощный четырёхпроводный шунт 5 мОм: при 20 А на нём 0,1 В, а потери всего 2 Вт. Отдельная пара проводов от шунта к ОУ1 нужна, чтобы падение на контактах силовых клемм не попало в измерение.
ОУ1 и МОП-транзистор превращают напряжение шунта в ток: ОУ подбирает напряжение на затворе так, чтобы на резисторе 1,00 кОм в истоке было то же напряжение, что и на шунте. Тогда ток стока — при 20 А это 100 мкА. Транзистор специально полевой: у биполярного часть тока ушла бы в базу мимо коллектора, и коэффициент передачи зависел бы от .
ОУ1 — прецизионный, с однополярным питанием (вход должен работать у самой «земли»), начальным сдвигом в десятки микровольт и дрейфом не более 1–2 мкВ/°C. Почему такие строгости, станет ясно в расчёте динамического диапазона.
Уравновешивание и счёт
Дальше — дельта-сигма-интегратор. Ток втекает в суммирующую точкуСуммирующая точка — инвертирующий вход ОУ в инвертирующей схеме: в ней складываются входные токи и ток обратной связи; потенциал — виртуальная земля. ОУ2 и заряжает его конденсатор. На каждом такте генератора 40 кГц D-триггер запоминает решение компаратора: если выход интегратора ушёл за порог, p-канальный ключ на весь следующий такт подключает к суммирующей точке эталонный ток 200 мкА противоположного знака, и одновременно счётчик прибавляет единицу. Средний ток в суммирующей точке поддерживается равным нулю.
Схема не ограничивает цикл фиксированным числом тактов, как АЦП, — она просто копит порции, пока её не сбросят. Восемь десятичных разрядов счётчика вмещают мКл = 100 000 Кл, т. е. 27,8 А·ч, — с запасом для аккумулятора электровелосипеда. Делитель на 3600 перед счётчиком превратил бы показания прямо в миллиампер-часы.
Тонкости проектирования
- Эталонный ток. Масштаб прибора определяют только , и (тактовая частота входит через число тактов и тоже должна быть кварцевой). Ток 200 мкА формирует источник на прецизионном эталоне напряжения; а порог компаратора и смещение интегратора можно задать простым стабилитрономСтабилитрон (диод Зенера) — диод, работающий в обратном пробое: в широком диапазоне токов напряжение на нём почти постоянно. — от их точности результат не зависит.
- Ключ. При каждом переключении его ёмкость стока перезаряжается, и в суммирующую точку попадает лишний заряд — это ошибка, пропорциональная числу порций, т. е. току. Её уменьшают малым транзистором и большим . Схема, где эталонный ток в паузах не выключается, а отводится в землю, здесь хуже: сдвиг интегратора давал бы постоянную ошибку при очень малых токах.
- Интегратор. ОУ2 с полевыми транзисторамиПолевой транзистор (ПТ) — затвор управляет током канала сток — исток напряжением; ток затвора — лишь утечка (пикоамперы). на входе (входной ток единицы пикоампер) не вносит заметной ошибки по току, но у таких ОУ больше напряжение сдвига — поэтому ключ и делают однополюсным.
- Питание. Удобно питать аналоговую часть и логику от одного напряжения 10–15 В — так проще управлять затвором ; если счётчик и индикатор рассчитаны на 5 В, уровни согласуют буфером.
- Два направления тока. Чтобы учитывать и заряд, и разряд, достаточно второго преобразователя с инвертирующим ОУ и реверсивного счётчикаРеверсивный счётчик — считает и вверх, и вниз: направление задаёт вход U/D ('191) или раздельные тактовые входы ('193). — или смещения нуля на половину шкалы.
Динамический диапазон
Самое интересное — нижний край. На стоянке через аккумулятор течёт, скажем, 50 мА, а на подъёме — 20 А, разница в 400 раз, и обе части нужно интегрировать одинаково честно. Ошибка по току, которую никакая калибровка шкалы не исправит, — это сдвиг ОУ1: прибор «видит» ток даже тогда, когда ток равен нулю. Поэтому у ОУ1 предусматривают тонкую подстройку нуля с узким диапазоном, около ±150 мкВ: обычная, на несколько милливольт, не позволила бы выставить ноль точно.
Поездка на электровелосипеде длилась 1,5 ч при среднем токе разряда 8 А. (а) Сколько порций насчитает прибор? (б) Какую ошибку тока вносит остаточный сдвиг ОУ1 10 мкВ и какую долю она составит, если велосипед ещё час простоит включённым с током 0,5 А?
Решение
(а) Кл; при цене порции 1 мКл счёт — счётчик на заполнен меньше чем наполовину (12 А·ч).
(б) 10 мкВ на шунте 5 мОм — ложный ток мА. На фоне 8 А это 0,025 %, но при токе стоянки 0,5 А — уже %, а на токе 50 мА — 4 %. Вот почему сдвиг входного ОУ и задаёт нижний край динамического диапазона.
Проверим выбор эталонного тока. Прибор рассчитан на длительный ток до 30 А, и при этом ключ должен открываться не более чем в 75 % тактов (запас на кратковременные броски). Каким должен быть и какой заряд несёт одна порция в цепи интегратора при такте 40 кГц?
Решение
При 30 А на шунте 0,15 В, ток — 150 мкА. Баланс средних токов: мкА → мкА. Одна порция — это ток в течение такта: нКл, что в масштабе шунта (×) и даёт 1 мКл. Запас больше — легче проглотить бросок тока, но меньше рабочий диапазонРабочий диапазон (compliance) — пределы напряжения на нагрузке, в которых источник тока держит ток; у транзисторного — пока транзистор не насыщен. при той же .