Широтно-импульсная модуляция (ШИМ) – это простой и недорогой (поэтому популярный) способ реализации цифро-аналогового преобразования с умеренными характеристиками (например, 8-битное разрешение с низкой скоростью), но импровизация дешевых ЦАП – это не единственное, на что способна ШИМ. Например, схема на Рисунке 1 иллюстрирует использование ШИМ для цифровой установки аналогового усиления универсального надежного входного каскада с буферизованным выходом и высокоомным (1 МОм) входом постоянного тока в диапазоне ослабления/усиления около 16 бит (65280:1, то есть от –48 дБ до +48 дБ).
![]() |
|
Рисунок 1. | Входной каскад усилителя/аттенюатора, управляемый ШИМ. |
Вот как это работает. 8-битный ШИМ сигнал частотой 1 МГц (период T = 256 мкс) синхронно управляет тремя однополюсными двухпозиционными КМОП коммутаторами HC4053, обозначенными на схеме как U1a, U1b и U1c. При изменении G от 1 до 255 мкс его коэффициент заполнения G/T меняется от 0.4% до 99.6%.
Коммутатор U1b действует как программируемый входной аттенюатор, попеременно направляя входной ток
в землю или в суммирующую точку операционного усилителя A1, устанавливая входной масштабный коэффициент
программируемый почти от нуля
(при G = 1 мкс) до значения
близкого к единице (при G = 255 мкс). Кроме того, благодаря почти нулевому потенциалу суммирующей точки, поддерживаемому на выводе 15 усилителя U1 за счет переключения тока, диапазон входных напряжений VIN очень широк и ограничен в основном допустимым напряжением R1, которое для резисторов ¼ Вт с аксиальными выводами обычно составляет 200 В. В то же время милливольтовые уровни сигналов, поддерживаемые на выводах коммутатора U1b (на несколько порядков меньше, чем условия испытаний, указываемые в технических описаниях), снижают вносимые коммутатором токи утечки до значений, намного меньших 1 нА, минимизируя таким образом обусловленные утечками напряжения смещения до пренебрежимо малых уровней, несмотря на мегаомное сопротивление резистора R1.
При этом U1a, выборочно коммутируя ток, реализует обратную связь с выхода усилителя A1 к суммирующей точке через резистор R2, эффективное сопротивление которого программируется с коэффициентом (1 – G/T):
При этом разности напряжений поддерживаются на уровне, измеряемом милливольтами, минимизируя утечки на ключах коммутатора U1a.
Таки образом, выражение для коэффициента усиления имеет вид
При изменении G от 1 мкс до 255 мкс коэффициент усиления изменяется от
до
то есть, от –1/255 до –256, что составляет 96 дБ. Но как насчет этого надоедливого знака минус и пресловутых пульсаций ШИМ?
Инвертирование сигнала и подавление пульсаций выполняются функцией выборки и хранения, реализованной на элементах U1c и A2, что, в конечном счете, позволяет получить сигнал без пульсаций:
как показано на графиках в линейном масштабе на Рисунке 2 и в логарифмическом масштабе на Рисунке 3.
![]() |
|
Рисунок 2. | График зависимости усиления от длительности импульса ШИМ в линейном масштабе (красный – от 0 до 5, синий – от 0 до 255). |
Напряжения положительной (VDD) и отрицательной (VEE) шин питания некритичны и нечувствительны к помехам, но в идеале они должны быть хотя бы приблизительно симметричными и обычно равны +5 В и –5 В, соответственно. Общий потребляемый ток составляет менее 2 мА. C1 и C3 должны иметь низкие утечки; рекомендуется использовать конденсаторы с полистирольным диэлектриком. Время отклика на ступенчатое изменение входного сигнала или коэффициента усиления в некоторой степени зависит от усиления, но обычно имеет порядок 2 мс. Обратите внимание, что постоянная времени R1C1 составляет ~4T = 1 мс. Это не совсем то, что можно было бы назвать молниеносным, но мы все-таки говорим о ШИМ!
![]() |
|
Рисунок 3. | График зависимости усиления от длительности импульса ШИМ в логарифмическом масштабе. |