Как определить постоянную времени RC в ШИМ цифро-аналоговом фильтре нижних частот?


17

Я ищу лучшую постоянную времени RC и ее причину в ШИМ для преобразования цифрового сигнала в аналоговый на основе коэффициента заполнения, частоты и других параметров. Частота ШИМ 10 кГц.


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

Ответы:


25

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

RC фильтр первого порядка имеет частоту среза

есзнак равно12πрС

и спад 6 дБ / октава = 20 дБ / декада. График показывает частотную характеристику для частоты среза 0,1 Гц (синий), 1 Гц (фиолетовый) и 10 Гц (другой цвет).

введите описание изображения здесь

Таким образом, мы можем видеть, что для фильтра 0,1 Гц фундаментальный сигнал на 10 кГц сигнала ШИМ подавляется на 100 дБ, это неплохо; это даст очень низкую пульсацию. Но!

введите описание изображения здесь

Этот график показывает пошаговый отклик для трех частот среза. Изменение коэффициента заполнения является шагом в уровне постоянного тока и некоторыми сдвигами в гармониках сигнала 10 кГц. Кривая с наилучшим подавлением 10 кГц реагирует медленнее всего, ось x - секунды.

введите описание изображения здесь

На этом графике показан отклик времени RC 30 мкс (частота среза 5 кГц) для 50% -ного коэффициента заполнения 10 кГц. Существует огромная пульсация, но она реагирует на изменение от 0% рабочего цикла за 2 периода, или 200 мкс.

введите описание изображения здесь

Это время RC 300 мкс (частота среза 500 Гц). Все еще некоторая пульсация, но переход от 0% к 50% рабочего цикла занимает около 10 периодов или 1 мс.

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

На этой веб-странице рассчитывается, что для R = 16 кОм и C = 1 мкФ у нас есть частота среза 10 Гц, время установления до 90% 37 мс для пиковой пульсации 8 мВ при максимуме 5 В.

редактировать
Вы можете улучшить свой фильтр, перейдя к более высоким порядкам:

введите описание изображения здесь

Синяя кривая представляла собой или простой RC-фильтр со спадом 20 дБ / десятилетие. Фильтр второго порядка (фиолетовый) имеет спад 40 дБ / декаду, поэтому для той же частоты среза будет подавление 120 дБ на частоте 10 кГц вместо 60 дБ. Эти графики довольно идеальны и могут быть лучше всего достигнуты с помощью активных фильтров, таких как Sallen-Key.

введите описание изображения здесь

уравнения

Пиковое пульсационное напряжение для RC-фильтра первого порядка как функция частоты ШИМ и постоянной времени RC:

ВряппLезнак равное-dепWMрС(е1епWMрС-еdепWMрС)(1-еdепWMрС)1-е1епWMрСВ+

E & OE. «d» - рабочий цикл, 0..1. Пульсация наибольшая для d = 0,5.

Шаг реакции на 99% конечного значения составляет 5 х RC.

Частота среза для фильтра Sallen-Key:

есзнак равно12πр1 р2 С1 С2

Для фильтра Баттерворта (максимально плоский): R1 = R2, C1 = C2


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

Хорошие графики! Какое программное обеспечение вы использовали?
м.Алин

1
@ m.Alin - 1, 2 и 5: Mathematica, 3 и 4: некоторые старые вещи, которые я когда-то делал в Excel.
stevenvh

TNX много для вашего ответа. это было очень полезно
Азин

1
@ m.Alin - см. мой комментарий на 2 см выше :-)
stevenvh

8

Как сказал Стивен, это компромисс между ослаблением частоты ШИМ и временем отклика. Вот почему любое такое решение должно начинаться с спецификации того, что вы хотите от полученного аналогового сигнала. Какое отношение сигнал / шум должно быть, или, по крайней мере, сколько шума на частоте ШИМ вы можете терпеть? Как быстро он должен опуститься до уровня минимального уровня шума? Или наоборот, какая верхняя частота вас волнует?

Обратите внимание, что может быть невозможно соответствовать определенному набору критериев с определенным выходом ШИМ. Допустим, вы хотели получить качественный голосовой вывод. Мы скажем, что это сигнал с шумом до 8 кГц и 60 дБ. Этого не произойдет ни с одним разумно настраиваемым аналоговым фильтром с широтно-импульсной модуляцией 20 кГц, и уж точно не с такими простыми, как одиночные R и C.

В качестве примера, давайте поработаем в обратном направлении и посмотрим, какими должны быть характеристики ШИМ для поддержки приведенного выше примера голоса с одним фильтром R, C. Мы уже говорили, что частота спада -3 дБ составляет 8 кГц, поэтому мы установили R и C на. Частота спада одиночного фильтра R, C составляет:

  F = 1 / (2 π RC)

Когда R в Омах, C в Фарадах, тогда F в Герцах. Должно быть очевидно, что это уравнение можно переставить для решения для любого из R, C или F с учетом двух других. Я держу 1 / (2 π) = .15915 всегда в регистре в моем калькуляторе, потому что это вычисление регулярно появляется в электронике. Затем я просто делю это на два из R, C или F, чтобы получить третий.

У нас есть две степени свободы, и приведенное выше уравнение только прибивает одну из них. Другое можно рассматривать как полное сопротивление, которое вы хотите получить в результате сигнала. Давайте стрелять примерно на 10 кОм, это то, что мы сделаем R только для того, чтобы посмотреть, к чему приходит C:

  1 / (2 π 8 кГц, 10 кОм) = 1,99 нФ

Это в основном стандартное значение конденсатора 2 нФ, так что мы просто пойдем с этим. Если бы это не получило общего значения, мы бы выбрали близкое значение, затем вернулись бы и скорректировали R соответственно. Резисторы доступны в гораздо более тонких вариациях и с более высокими допусками, чем обычные конденсаторы, поэтому вы обычно находите близкое значение конденсатора, а затем позволяете этому приводить точное значение резистора.

Итак, мы остановились на R = 10 кОм и C = 2 нФ. Обратите внимание, что это связано с требованием к верхней частоте 8 кГц. У нас больше нет выбора, поэтому время установления и отношение сигнал / шум будут такими, какими они будут. Все, что мы можем сейчас сделать, это определить, будет ли он достаточно хорошим или, наоборот, какие характеристики ШИМ будут необходимы для поддержки характеристик выходного сигнала.

Поскольку спецификация представляла собой отношение сигнал / шум 60 дБ, это означает, что шум должен составлять менее 1 части на 1000 напряжения, что означает, что частота ШИМ должна быть значительно уменьшена. Один фильтр R, C затухает обратно пропорционально частоте после частоты спада. Это приближение, которое разбивается вблизи частоты спада и ниже, но в большинстве случаев достаточно хорошо после октавы или двух после частоты крена. Другими словами, 16 кГц будут ослаблены на 2 с некоторой ошибкой, 32 кГц на 4 с меньшей ошибкой, и после этого вы можете просто разделить интересующую частоту на частоту спада, чтобы получить ослабление. Мы хотим, чтобы частота ШИМ была уменьшена на 1000, что означает, что она должна быть 8 МГц или выше. Это высоко, но выполнимо с некоторыми процессорами. Например,

Теперь давайте посмотрим на разрешение ШИМ. Опять же, это обусловлено спецификацией сигнал-шум 60 дБ, что, как мы знаем, уже означает 1: 1000. Для этого потребуется разрешение ШИМ не менее 999 (вы всегда получаете на один выходной уровень больше, чем разрешение ШИМ). Это означает, что внутренняя тактовая частота среза ШИМ должна работать в 999 раз больше выходной частоты ШИМ 8 МГц, или, в основном, 8 ГГц. Не случится с разумно доступными с полки деталями.

Тем не менее, есть способ обойти эти ограничения, а именно использовать больше, чем один фильтр R, C. Когда мне нужен хороший аналоговый сигнал, я обычно использую два или три из них подряд. Давайте посмотрим, как использование трех последовательных фильтров R, C меняет ситуацию.

Мы первоначально сказали, что наша верхняя частота интереса была 8 кГц, что означает, что мы можем допустить, чтобы это было на 3 дБ ниже, если мы не скажем иначе. Один R, C-фильтр будет ослабляться на 3 дБ на частоте спада, поэтому мы установили его на 8 кГц. У нас не может быть трех фильтров на 8 кГц, так как они будут ослабляться на 9 дБ в совокупности. Таким образом, мы перемещаем фильтры по количеству полюсов (в данном случае отдельные фильтры R, C).

Таким образом, три фильтра R, C (три полюса) работают на частоте 24 кГц. Похоже, что мы потеряли самообладание, но большое преимущество заключается в том, что частоты выше, которые теперь ослабляются отношением в кубе, а не просто отношением, как с одним полюсом. Опять же, мы хотим, чтобы частота ШИМ была ослаблена на 1000, что составляет 10 ^ 3, поэтому нам нужно всего лишь в 10 раз превышать частоты спада фильтра, что означает, что 240 кГц достаточно высока. Это большая разница с 8 МГц. Теперь внутренняя тактовая частота или частота среза ШИМ должна быть только 240 МГц. Это все еще высоко, но достижимо.

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


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

@azin: Рабочий цикл не имеет к этому никакого отношения, но частота ШИМ имеет, как я подробно описал в своем ответе.
Олин Латроп

2

Можно улучшить производительность по одному RC с помощью каскадных RC этапов. Нельзя получить такую ​​хорошую производительность в чистом многоступенчатом RC пассивном фильтре, какую можно получить из активных фильтров, но производительность, тем не менее, может быть лучше, чем в одной ступени. К сожалению, я не знаю каких-либо конкретных хороших методов для вычисления оптимальных значений RC.

Следует также отметить, что, хотя широтно-импульсная модуляция является наиболее распространенной формой модуляции коэффициента заполнения, она не является единственной. Один простой подход, который может быть очень полезен в тех случаях, когда целевое выходное напряжение не будет меняться слишком часто и когда выходной сигнал с большей вероятностью будет находиться ближе к центру диапазона, чем на краях, - это генерировать набор сигналов. вычисляя (текущее значение счетчика «а не» предыдущее значение счетчика) и обрабатывая этот сигнал с битами желаемого значения данных, в обратном порядке (так что MSB значения данных получает «И» с xor текущего счетчика LSB и предыдущий). Использование такого подхода с, например, шестибитовой модуляцией рабочего цикла будет означать, что волна рабочего цикла 32/64 будет представлена ​​частотой, равной половине тактового сигнала ШИМ, а не прямоугольная волна с частотой 1/64 тактовой частоты ШИМ. Рабочий цикл 33/64 будет представлен в основном частотой, равной половине тактовой частоты ШИМ, но с добавлением нескольких сверхвысоких импульсов.

Вот демонстрация того, о чем я говорю.


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

@supercat - кажется, ваш ответ описывает технику, обладающую общими свойствами, о которых я думал и искал (гораздо более высокая частота, чем базовая частота ШИМ). Вы знаете название этой техники?
gbulmer

@gbulmer: я не знаю названия для этого подхода, но это можно увидеть в дизайне CD4089 (см. таблицу данных ti.com/lit/ds/symlink/cd4089b.pdf ).
суперкат

0

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

Когда вы рассматриваете «лучшее количество RC?», Какие допущения необходимо учитывать для любого дизайна;

  1. Что такое полное сопротивление фильтра относительно полного сопротивления источника и нагрузки?

    Если не критично, выберите R между источником и нагрузкой. Но скажем, если драйвер CMOS имеет значение 10 ~ 100 Ом и допустимая нагрузка 100 кОм, но вы хотите погрешность 0,3% при потере постоянного тока, то выберите R << 0,3% от R-нагрузки или, как я это называю, «метод отношения импедансов» для соображений загрузки, поэтому здесь R <0,003 * 1e5 = 300Ω. Этот выбор R не является критичным, но вы должны позаботиться о том, чтобы не загружать фильтр, поэтому вы можете выбирать по коэффициентам импеданса для быстрого расчета потерь постоянного тока и отклонения переменного тока.

    • если вы хотите, чтобы шум при 10 кГц ШИМ составлял <1% от источника, тогда выберите импеданс Zc (f) <1% от R для LPF серии RC.
    • если вы хотите, чтобы пульсации> 80 дБ были ниже по всем гармоникам выше 0,5 МГц по причинам помех, скажем, на радио AM или тестах FCC / CE, снова посмотрите на коэффициент полного сопротивления, включая ESR, относительно R, оцените значение C, затем выберите немного большее с поле для темп. терпимости и подумайте, сколько маржи вам нужно. Вы знаете, что фильтры 1-го порядка имеют наклон 20 дБ / декаду, и тогда вы можете решить, достаточно ли фильтра 1-го порядка. Каскадные RC-фильтры должны учитывать эффекты загрузки на каждом этапе. LC-фильтры стоят дороже, и может потребоваться активный фильтр.

Предполагая, что вы знаете импеданс критериев отношения импеданса конденсатора, является простым решением. В противном случае, чтобы найти полное сопротивление в середине источника и нагрузки, рассмотрим один метод Rf = √ (Rs * Rl), где Rf - значение RC фильтра для источника, Rs и нагрузка Rl как один метод для среднего диапазона.

Хорошая вещь в дизайне, в зависимости от ваших критериев, часто есть несколько «лучших» ответов для значения RC. :)


0

Определить лучшую постоянную времени RC в ШИМ-цифро-аналоговом фильтре нижних частот?

Лучший ответ зависит от разных вопросов;

? Каков спектр исходных данных? BW =? ? Насколько приемлем отказ от ШИМ-носителя? Atten = 40 дБ? 60? 10 ??

При разработке фильтра, основанного только на постоянной времени, пренебрегают большей важностью понимания сохранения данных. Лучше всего определить исходный сигнал, чтобы можно было создать простой «оптимальный согласованный фильтр». Нам нужно заботиться о сохранении исходного сигнала и отклонении сигнала несущей (ШИМ f).

Вы можете выбрать любой LPF N-го порядка, чтобы фильтр соответствовал исходному сигналу. Простые фильтры с 1 микросхемой и активными фильтрами дадут наилучшие результаты. Тип ФНЧ зависит от критериев соответствия исходного сигнала.

Выбор Пика = максимально плоская частота. ответ, или задержка mf группы или самые крутые юбки, или фильтр Найквиста до 1/2 ШИМ f.

Тогда следующий лучший метод:

определить величину джиттера в напряжении от несовершенных RC-фильтров.

Если кто-то проектировал PLL VCXO для RF и использовал PWM для управления шлейфом, вы можете позаботиться о паразитных боковых полосах от PWM, поэтому вам нужно рассмотреть LPF с меткой на PWM. Это легко, как только вы получите ответ;

Насколько приемлем отказ от ШИМ-носителя

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.