Почему бы не использовать чип аудиокодека в качестве измерительного АЦП/ЦАП?

Я работаю над проектом, который требует одновременного АЦП/ЦАП. Спецификации встроенного АЦП в типичных микроконтроллерах довольно слабые, а отдельные АЦП с хорошими характеристиками намного дороже аудиокодеков. Например, сравните эти три варианта:

(A) STM32F373 имеет три 16-разрядных АЦП с максимальной скоростью 50 тыс/с, которые достигают эффективной разрядности чуть менее 15 разрядов. Возможно, это лучший вариант от ST для АЦП высокого разрешения; он также имеет несколько высокоскоростных 12-разрядных АЦП и несколько ЦАП. Цена: 3,26 доллара.

(B) аудиокодек на основе I2S, PCM3168A имеет шесть 24-битных АЦП со скоростью 96 кс/с и 17,5 эффективных бит (если мое прочтение таблицы данных верно). Он также имеет восемь ЦАП с аналогичными характеристиками. Все входы/выходы полностью дифференциальные, а фильтр высоких частот на АЦП можно отключить. Цена: 4,90 доллара.

(C) самым дешевым АЦП TI с аналогичными характеристиками является ADS1271, 24-разрядный АЦП со скоростью 105 тыс/с и также ~17,5 эффективных разрядов. Однако это деталь стоимостью 6,31 доллара и имеет только один канал! Четырехканальная часть стоит 14,65 долларов.

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

Почему бы не сделать это? Есть ли неожиданные недостатки в использовании аудиокодеков для измерения?

Ограничения пропускной способности? Входное сопротивление? Точность и линейность постоянного тока? Это может подойти для вашего проекта, но также стоит проверить таблицы данных.
Производительность и дрейф постоянного тока - основная проблема кодеков, которые не предназначены для обеспечения точности постоянного тока.
@Andyaka: Спасибо, интересно. Определяется ли производительность постоянного тока цифровым фильтром верхних частот или чем-то еще? Можете ли вы рассказать немного больше о дрифте? Не стесняйтесь публиковать в качестве ответа ...

Ответы (2)

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

звуковые карты обычно связаны по переменному току, но сколько на самом деле устройств аудиокодеков? Например, упомянутый выше ADS1271 имеет характеристики точности по постоянному току, что подразумевает связь по постоянному току.
@BrianDrummond: ADS1271 — это дельта-сигма АЦП, разработанный специально для промышленных приложений, в которых важна точность постоянного тока. Я бы не назвал это «аудиокодеком». И, как указал ОП, это тоже не особенно дешево.
@DaveTweed: Однако упомянутый выше PCM3168A также имеет связь по постоянному току, и это аудиокодек :)
Хорошая мысль о масштабном коэффициенте. Это лечится калибровкой?
Ах ха! Спецификации PCM3168A: ошибка нуля по постоянному току 1%, ошибка усиления 2%, что довольно много. Вы определенно указали на большую часть ответа прямо здесь, коэффициент масштабирования - это одна из вещей, на которую следует обратить внимание.
Есть еще один вопрос, подобный этому, и он также относится к проблеме с фильтром верхних частот. Кодек может иметь внутренний фильтр верхних частот — некоторые чипы позволяют его отключить, некоторые — нет. Информацию можно найти в техническом описании вашего кодека. Другой вопрос: electronics.stackexchange.com/questions/43172/… Пример таблицы данных с информацией о highpass: hardwaresecrets.com/datasheets/CS4245.pdf

Проблема может быть перефразирована так: можно ли применять детали с плохой стабильностью усиления и смещения в приложениях, требующих обратного. Ответ – решительное да, но с некоторой изобретательностью.

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

ЦАП

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

схематический

смоделируйте эту схему - схема, созданная с помощью CircuitLab

В приведенном выше примере показан 4-канальный ЦАП, используемый для получения 3 выходов. Положения переключателя следующие:

  • Калибровка CH1, выход CH2-4: SW1 замкнут, SW11 вниз, SW12 вниз, SW13 вниз.

  • Калибровка CH2, выход CH1,3-4: SW2 замкнут, SW11 вверх, SW12 вниз, SW13 вниз.

  • Калибровка CH3, выход CH1-2,4: SW3 замкнут, SW11 вверх, SW12 вверх, SW13 вниз.

  • (показано) Калибровка CH4, выход CH1-3: SW4 замкнут, SW11 в верхнем положении, SW12 в верхнем положении, SW13 в верхнем положении.

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

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

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

АЦП

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

схематический

смоделируйте эту схему

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

  • Калибровка CH1, вход CH2-4: SW1 замкнут, SW11 вниз, SW12 вниз, SW13 вниз.

  • Калибровка CH2, вход CH1,3-4: SW2 замкнут, SW11 вверх, SW12 вниз, SW13 вниз.

  • Калибровка CH3, вход CH1-2,4: SW3 замкнут, SW11 вверх, SW12 вверх, SW13 вниз.

  • (показано) Калибровка CH4, вход CH1-3: SW4 замкнут, SW11 в верхнем положении, SW12 в верхнем положении, SW13 в верхнем положении.

Многоуровневые конструкции

Ту же концепцию можно применить к эталонному преобразователю. Предположим, у вас есть 6-канальный аудиокодек с 6 входами и 6 выходами. Вы можете применить его к 4-канальной схеме аналогового ввода-вывода, оставив 5 ЦАП для выходов и один ЦАП для вторичного опорного сигнала, 5 АЦП для входов и один АЦП для вторичного опорного сигнала. Наконец, вам нужен только один первичный эталонный АЦП или ЦАП. Этот можно использовать для калибровки вторичного эталона, этот можно использовать для калибровки другого вторичного эталона, и, наконец, вторичные эталоны используются для калибровки АЦП и ЦАП, используемых для преобразования данных ввода-вывода. Лаборатория стандартов в миниатюре :)