Журнал РАДИОЛОЦМАН, сентябрь 2017
Jim Brannan
EDN
Объединение ШИМ с лестничным ЦАП на основе резисторной матрицы R-2R улучшает характеристики и того, и другого. Такой гибрид значительно снижает пульсации ШИМ и увеличивает разрешение ЦАП.
В этой статье восемь резисторов и три выхода управляющей микросхемы образуют модифицированную R-2R матрицу резисторов (Рисунок 1). Модификация состоит в том, что конец лестничной резисторной цепочки подключен к выходу ШИМ, а не к земле.
![]() |
||
Рисунок 1. | Гибридный ЦАП ШИМ/R-2R. |
Матрица делит напряжение VCC на восемь ступеней, каждая из которых заполняется ШИМ с уровнем от 0% до 100%. Это в восемь раз снижает пульсации и одновременно увеличивает разрешение на три старших бита. В качестве альтернативы вы можете взять эти три бита от верха исходного значения коэффициента заполнения ШИМ, умножив его частоту на восемь. Вы по-прежнему получите снижение пульсаций в отношении 8:1, но теперь увеличенная тактовая частота сдвинет шумы ШИМ в область, где фильтр будет подавлять их лучше.
Моделирование
Я промоделировал эту гибридную схему.
![]() |
||
Рисунок 2. | Схема для сравнения и моделирования. |
Сравнивая ее с обычным фильтром нижних частот (Рисунок 2), вы должны помнить, что выходное сопротивление матрицы R-2R равно R, и, поскольку сопротивление R я получал параллельным соединением двух резисторов 2R (10 кОм), выходное сопротивление равно 5 кОм. Именно такой резистор я и использовал в обычной схеме наряду с таким же конденсатором 1 мкФ. Коэффициент заполнения ШИМ я установил равным 50%, поскольку при таком значении пульсации имеют наибольший уровень. Результаты моделирования показывают (Рисунок 3), что при традиционном подходе пульсации составляют примерно 4 мВ, тогда как первый вариант гибридного ЦАП (добавление трех новых бит к исходным восьми) дает результат 493 мкВ, то есть, примерно одну восьмую. Второй вариант (увеличение частоты ШИМ в восемь раз при сохранении исходных восьми бит) позволяет снизить пульсации всего до 61 мкВ – примерно до одной шестьдесят пятой от пульсаций обычной схемы.
![]() |
||
Рисунок 3. | Результаты моделирования. |
На Рисунках 4а (ШИМ + ФНЧ) и 4б (11-битная гибридная схема) представлены результаты комплексного моделирования для случая медленного ступенчатого увеличения напряжения от 0 В до 5 В. Емкости конденсаторов фильтров преднамеренно выбраны очень низкими, чтобы иметь возможность видеть пульсации в этом масштабе. Обычная матрица R-2R добавляет ступенчатую зависимость (красный цвет на Рисунке 4б), чтобы показать, как ШИМ переходит от одного уровня к другому.
|
||||||
Рисунок 4. | Смоделированные пульсации обычного ШИМ ЦАП (а) и гибридного ЦАП (б). |
Эта схема может работать также, если вместо ШИМ использовать генератор с цифровым управлением (NCO). NCO (прибавляйте значение к аккумулятору и выводите бит переноса на выход) имеет преимущество перед ШИМ, поскольку снижает пульсации в области средних значений коэффициента заполнения (за счет увеличения частоты переходов), где пульсации ШИМ максимальны.
Кроме того, подобная схема может работать и с любым другим ЦАП: просто подключите сигнал ШИМ или NCO к старшему значащему биту.
Проверка
Теперь о некоторых результатах тестов. Резисторы, которые я использовал в матрице, имели допуск ±2%, но лишь потому, что других не нашлось под рукой. Вы можете взять более точные резисторы. Таймер 1 микроконтроллера ATmega328, работающего на частоте 16 МГц, я использовал для 8-битной ШИМ, а измерения выполнял с помощью 10-битного АЦП. Поскольку опорным уровнем для всех узлов – ШИМ, R-2R и АЦП – служит VCC, мы можем исключить это напряжение из рассмотрения и анализировать только значения, считываемые из АЦП для каждого из восьми уровней со скважностью ШИМ, устанавливаемой от 0% до 100%. В идеале 100% каждого предыдущего уровня должны быть равны 0% следующего уровня (с оговоркой, что согласно справочным данным на ATmega328, общая ошибка нелинейности может достигать двух бит). Реальные результаты измерений приведены в Таблице 1.
Таблица 1. | Результаты тестирования гибридного ЦАП. | ||||||||||||||||||||||||||||||
|
Они кажутся вполне разумными. Затем я воспользовался технологией, названной мною «Медленноскопия», которая основана на способности ATmega328 выполнять аналого-цифровые преобразования по сигналам таймера – того же таймера, который участвует в формировании ШИМ. Таким образом мы можем измерять пульсации в заданном цикле ШИМ. На Рисунке 5 представлен объединенный график для обычного ШИМ с фильтром нижних частот (зеленый) и гибридного ЦАП (черный + красный). В обоих случаях, чтобы разглядеть пульсации, использовались конденсаторы очень небольшой емкости.
![]() |
||
Рисунок 5. | Измеренные пульсации ШИМ и гибридного ЦАП. |
И, наконец, на Рисунке 6 показаны графики для несинхронизируемого аналого-цифрового измерения обоих гибридных ЦАП, позволяющего сделать их пульсации более или менее случайными. Для более реалистичных результатов здесь использовался конденсатор большей емкости.
![]() |
||
Рисунок 6. | Измеренные пульсации гибридных ЦАП. |
В конце концов, мы увидели, что в зависимости от вашего желания, можно заполнять импульсами ШИМ промежутки между уровнями R-2R ЦАП, или значительно сократить пульсации обычной комбинации ШИМ и фильтра с помощью матрицы R-2R. Или же сделать и то, и другое.