Когда не помогает ЦАП. Цифровые потенциометры в деталях. Часть первая

b4b6049c223a4475a464ec18543fbddd.jpgПрогресс не обошёл стороной не только велосипед. Сегодня традиционные переменные и подстроечные резисторы в очень многих приложениях уступают место цифровым сопротивлениям. В англоязычных источниках их называют digital potentiometer, RDAC или digiPOT. Область применения этих устройств гораздо шире регулировки уровня звукового сигнала. В частности они приходят на помощь в очень многих случаях, когда требуется изменять параметры обратной связи, что трудно реализовать с помощью традиционных ЦАП.Особенно эффективно их применение в связке с операционными усилителями. Так можно получить регулируемые усилительные каскады, преобразователи разного рода величин, фильтры, интеграторы, источники напряжения и тока и многое многое другое. Словом эти очень недорогие и компактные устройства могут быть полезными каждому разработчику электроники и радиолюбителю…Изначально я хотел написать краткую статью, но в результате углубленного изучения темы материал с трудом уместился в две части. Сегодня я постараюсь рассказать об архитектуре данных устройств, их возможностях, ограничениях использования и тенденциях развития. В заключении вскользь затрону тему областей применения, поскольку конкретные примеры практической реализации схем на их основе будут рассмотрены во второй части. МНОГО примеров! Лично я за последние пять лет с успехом применял цифровые сопротивления в нескольких своих разработках, надеюсь что данный цикл статей окажется полезным для многих и поможет вам решать многие задачи более изящно и просто, чем сегодня. Людям, далёким от разработки электроники данная статья может просто расширить кругозор, показав как эволюционируют под натиском цифровых технологий даже такие простейшие вещи, как переменные резисторы.Архитектура.Для того, чтобы понять как работает данное устройство обратимся к функциональной схеме. На ней изображена аналоговая часть цифрового 8 битного сопротивления.385ac13e1d6e47889294eb84dac1da4e.pngОснова прибора — 255 резисторов одинакового номинала и выполненные по технологии КМОП двунаправленные электронных ключи. Цифровое значение в интервале 0–255 записывается в регистр с которого подаётся на дешифратор. В зависимости от значения, сохранённого в регистре, срабатывает необходимое количество ключей, подключающих требуемое количество сопротивлений.Выводы А и В — аналоги крайних выводов переменного сопротивления, W — среднего вывода к которому у обычных переменных резисторов крепится движок.08b466a49eed441db96d2fb8d3d83b9a.pngВозможные схемы включения также аналогичны традиционным переменным сопротивлениям…Рассмотрим как устанавливается требуемое сопротивление на примере 10 килоомного резистора. Для начала вычислим значение каждого из резисторов сборки, необходимых для формирования такого сопротивления Rs=10000/256=39,06 Oм. Допустим, мы пытаемся регулировать сопротивление между выводами W и B. Для получения нуля запишем это значение в управляющий регистр, но вместо желаемого нуля получим сопротивление в 100 Ом. Почему? Дело в том, что каждый из контактов прибора имеет своё внутреннее сопротивление и в рассматриваемом случае оно равно 50 Ом, поэтому и минимальное значение, которое можно получить с помощью данного потенциометра равно не нулю, а ста Омам — сопротивлению контактов W и B. Записав в регистр единицу получим 50+50+39=139 Ом.В общем случае вычислить сопротивление между выводами W и B в зависимости от значения регистра D можно по формуле: 430f27caf03c4f79af85b3bd766433ba.pngгде

D — значение регистра от 0 до 255 Rab — номинальное сопротивление Rw — сопротивление одного контакта Нетрудно догадаться что сопротивление между выводами W и А вычисляется как0854a3e2857f4e0d90259c83484f5aba.pngИнтерфейсы подключения. Рассмотрим теперь функциональную диаграмму всего устройства, имеющего интерфейс I2C.573944d296454701894b2013335ad6a8.pngТут некоторые вопросы может вызвать только вывод AD0. Он предназначен для возможности применения в одном канале I2C одновременно двух потенциометров. В зависимости от того, находится ли на нём логический ноль или единица, меняется адрес устройства на шине I2C. Схема подключения двух микросхем на одну шину показана ниже.029961e70abe47738ee990332801b4a2.pngКроме интерфейса I2C, для управления данными приборами часто используется SPI интерфейс. В этом случае также существует возможность управления несколькими устройствами по одной шине. Для этого они объединяются в цепочку. Например так:

87d4814b786347bfab3ba14b275ce0bf.pngВ данном режиме буферный регистр записи значений работает как сдвиговый. Каждый новый бит поступает на вход DIN и по стробу с SCLK записывается в его младший разряд. Одновременно бит старшего разряда выходит наружу через вывод SDO и переходит в следующий прибор в цепочке. После того, как записана информация во все устройства, поступает импульс стробирования SYNC, по которому новые значения регистров всех приборов входящих в цепочку перезаписывается из буферного в рабочий регистрор. Очевидный недостаток подобного решения — не существует способа записать информацию в отдельно взятый прибор. Для любого изменения значений требуется обновить содержание регистров во всей цепочке.Для решения подобного рода проблем, а так же экономии конечной цены решения изготавливают микросхемы, включающие в свой состав два, четыре и даже 6 цифровых сопротивлений одновременно.

Рабочие напряжение и ток. Пожалуй, самым существенным недостатком первых разработок было ограниченное напряжение, допустимое на выводах. Оно не должно превышать напряжения питания которое могло лежать в диапазоне от 2.7 до 5.5В, а главное не могло уходить в отрицательную область, из-за чего применение микросхем ограничивалось устройствами с однополярным питанием. Первым делом инженеры решили проблему двуполярности. Так появились приборы, способные работать как от однополярного напряжения вплоть до 5,5 Вольт, так и поддерживающие режим двуполярного питания вплоть до ± 2.75В. Затем стали появляться версии с максимальным питанием ±5.5 и даже ±16,5(до 33 вольт однополярного у AD5291/5292). Конечно по этому параметру традиционные сопротивления до сих пор сильно выигрывают, но для подавляющего большинства схем и 33 вольт вполне достаточно.Тем не менее, какое бы максимальное напряжение не поддерживал прибор, в случае если имеется возможность его выхода за пределы допустимого, следует применить хотя бы простейшую защиту с помощью диодов или супрессоров.d8f41f5c23e045fd82d26b63f5837769.pngЕщё одной серьёзной проблемой является низкий максимальный рабочий ток цифровых сопротивлений, который обусловлен в первую очередь их малыми размерами. Без риска деградации с течением времени средний постоянный ток для большинства моделей не должен превышать 3 мА. В случае, если протекающий ток имеет импульсный характер, его максимальное значение может быть выше.

Борьба за точность. Технология управляемого хаоса. К сожалению, существующая технология изготовления допускает возможность отклонения сопротивления интегральных резисторов, применяемыx в цифровых сопротивлениях, вплоть до 20 процентов от номинала. Однако, внутри одной партии и тем более одного конкретного прибора разница сопротивлений не превышает 0.1%. Для того, чтобы повысить точность установки, производитель стал измерять сопротивление резисторов как минимум на каждой пластине и прописывать в энергонезависимую память каждой из микросхем не номинальное, а реальное сопротивление, которое получилось в ходе производства, с точностью до 0.01 процента. Подобный механизм позволяет в частности в микросхемах AD5229/5235 вычислить реальную точность установки сопротивления c погрешностью недостижимой даже в многооборотных подстроечных резисторах — 0.01 процент. Основываясь на этом можно скорректировать операцию декодирования цифрового кода в сопротивление. Предположим, что элементарное сопротивление имеет значение 100 Ом. Тогда, чтобы выставить сопротивление в 1K вы устанавливаете в цифровом регистре 10. Но если в реальном приборе сопротивления имеют отклонение от номинала в большую сторону и равны 110 Ом, то при уровне 10 вы получите 1,1K. Однако, считав реальное значение сопротивления микроконтроллер может пересчитать код и подаст в действительности на дешифратор вместо десяти код 9. Тогда мы получим в реальности 9×110= 990 Ом.Кроме этого, AD запатентовала технологию калибровки значения сопротивлений с точностью 1%. К сожалению, я так и не смог найти информации каков её механизм работы.Для увеличения дискретности установки сопротивления были разработаны приборы с 10 битным дешифратором, обеспечивающие 1024 шага регулировки. Дальнейшее увеличение этого параметра можно достичь используя последовательное или параллельное соединение двух цифровых сопротивлений с разным номиналом.Температурная стабильность. Тут всё совсем не плохо. Применение резисторов, изготавливаемых по плёночным технологиям позволяет достичь уровня дрейфа не превышающего 35ppm/°C (0,0035%). Существуют приборы с термокомпенсацией, температурный дрейф которых находится на уровне 10ppm/°C. По этому параметру цифровые сопротивления превосходят многие движковые аналоги. Для приложений, в которых данный параметр не актуален, можно выбирать более дешёвые приборы с полупроводниковыми резисторами у которых дрейф находится на уровне 600 ppm/°C.Рабочий температурный диапазон большинства приборов от ADI находится в пределах от -40°C до +125°C, что достаточно для подавляющего большинства приложений.Ряд доступных сопротивлений. Конечно, тут не наблюдается такого разнообразия как у традиционных движковых резисторов, тем не менее есть из чего выбрать. Таблица ниже иллюстрирует зависимость доступных сопротивлений от разрядности прибора.cf672657168c41ee810af1980602a249.pngИскажение сигнала. Основные искажения, сигнала вносимые цифровыми усилителями можно разделить на два класса.Гармонические искажения или на западный манер total harmonic distortion (THD). 99d6f7b06b9047e686e82766d21d5413.pngЭти искажения возрастают с увеличением приложенного напряжения. Получить представление о их типичных значениях можно из следующей таблицы, составленной для микросхем AD9252…

378d6fc24c1e4e7186739ef102e4a42c.png

В отдельных случаях этот вид искажений может возрастать до -60 dB

Искажения вызванные нелинейностью АЧХ. Контактные площадки, электронные ключи и сами элементарные сопротивления имеют конечную паразитную ёмкость. В результате цифровые сопротивления являются своеобразным фильтром ФНЧ и на высоких частотах их сопротивление сигналу увеличивается.Влияние этого эффекта возрастает с увеличением сопротивления прибора. В таблице ниже показано на какой частоте наблюдается ослабление сигнала на 3 децибела для разных сопротивлений разных номиналов.7ae7b965435948b483c1c368be94d4df.png

Для большей наглядности приведу ещё графики зависимости передачи сигнала от установленного уровня сопротивления для микросхем AD5291 с разными номиналами 20 и 100 килоом.

40f07513573b4b45b5d29fd54344f203.png

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

«Фишечки» эволюции. Производители пытаются сделать работу с прибором наиболее комфортной, изобретая разные приятные мелочи. В результате цифровые сопротивления обзавелись внутренней энергонезависимой памятью, как однократно, так и многократно программируемой.Главное её предназначение — хранения начального значения сопротивления, которое автоматически устанавливается сразу после включения питания. Первые модели электронных резисторов устанавливались при подаче питания в среднее положение, потом появилась дополнительная ножка для сброса в ноль, затем уровень стало можно задавать с помощью записанного в память значения. В наиболее продвинутых моделях в память можно записать несколько предустановленных значений, между которыми потом пользователь может быстро переключаться нажатием кнопок.Кстати о кнопках — в некоторых моделях добавили две кнопочки для пошагового увеличения / уменьшения сопротивления.ae5f5802fd48401fa10905483034d979.png

Кроме этого, появился интерфейс для подключения энкодеров.

e5cd5e8cc2c744e490523e224c1b411c.png

Что бы ещё улучшить? Можно пофантазировать в каком направлении будет развиваться прогресс в производстве цифровых сопротивлений.Для достижения большей точности может измениться система коммутации.Например добавив в традиционную схему всего одно сопротивление в параллельном включении ну хорошо, два. ещё одно в верхнее плечо для симметрии можно увеличить точность установки сопротивлений в два раза! Объединение же в одной корпусе двух приборов даст возможность увеличения дискретности и точности в несколько раз.ded76f442f5242cfb3e88322b4bc624e.PNG

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

Области применения. Конкретные схемотехнические решения на основе цифровых сопротивлений я приведу в следующей части статьи, пока же просто рассмотрим области применения.Конечно, прежде всего приходит на ум усилители с регулируемым коэффициентом усиления.fddcf9af1abe464c97195975627c4760.png

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

361696a1af974a858c93a9b74170006d.png

Автоматическое или программное изменение контрастности жидкокристаллического индикатора можно организовать с помощью электронного сопротивления номиналом 10 Килоом.

1c3cf11ae6144a60bb095f9ed9466a2c.png

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

a835e01eb18349dbb7c5c45981843b7c.png

Логарифмический усилитель, со сравнительно высоким напряжением питания, на основе AD5292.

3b3a8183dded48cea74639cb4b02b280.png

Программно управляемый стабилизатор напряжения.

e9657cd4c9c44475b004d291db099eb1.png

Линейный ряд от ADI. В заключении приведу полную список доступных на сегодня электронных потенциометров от компании Analog Devices. При этом следует отметить, что подобные приборы выпускает далеко не только эта фирма. Например, MAXIM также давно делает неплохие микросхемы.Для начала приборы, которые не поддерживают программирование пользователем.

97b79ea40c32433ca1450a44f18db4bf.png

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

ae742e21508e47e99d5251f25ecd6666.png

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

© Habrahabr.ru