Создайте объект фильтра RF
Используйте rffilter объект создать Баттерворта, Чебышева или Инверсию фильтр Чебышева РФ. Фильтр RF является объектом схемы с 2 портами, и можно включать этот объект как элемент схемы.
Для большего количества проекта информация смотрите, Параметры, чтобы Задать Советы Фильтра и Проекта.
Можно также преобразовать rffilter возразите против lcladder при помощи lcladder объект. LCLad = lcladdder(rffiltobj) где rffilterobj rffilter объект.
FilterType — Отфильтруйте тип'Butterworth' (значение по умолчанию) | 'Chebyshev' | 'InverseChebyshev'Отфильтруйте тип в виде 'Butterworth', 'Chebyshev', или 'InverseChebyshev'.
Пример: 'FilterType','Chebyshev'
Пример: rfobj.FilterType = 'Chebyshev'
Типы данных: char | string
ResponseType — Отфильтруйте тип ответа'Lowpass' (значение по умолчанию) | 'Highpass' | 'Bandpass' | 'Bandstop'Отфильтруйте тип ответа в виде 'Lowpass', 'Highpass', 'Bandpass', или 'Bandstop'. Для получения дополнительной информации см. Частотные характеристики.
Пример: 'ResponseType','Highpass'
Пример: rfobj.ResponseType = 'Highpass'
Типы данных: char | string
Implementation Внедрение фильтра'LC Tee' (значение по умолчанию) | 'LC Pi' | 'Transfer function'Отфильтруйте реализацию в виде 'LC Tee', 'LC Pi', или 'Transfer function'.
Пример: 'Implementation','Transfer function'
Пример: rfobj.Implementation = 'Transfer function'
Для 'Inverse Chebyshev' введите фильтр, можно только использовать 'Transfer function' реализация.
Типы данных: char | string
FilterOrder — Порядок фильтра (значение по умолчанию) | действительное конечное неотрицательное целое числоПорядок фильтра в виде действительного конечного неотрицательного целого числа. В lowpass или фильтре highpass, порядок задает количество смешанных запоминающих элементов. В полосовом или заграждающем фильтре количество смешанных запоминающих элементов является дважды значением порядка.
Примечание
FilterOrder имеет наивысший приоритет среди всех пар "имя-значение" в создании фильтра. Используя это наборы свойств UseFilterOrder свойство только для чтения к истине.
Пример: 'FilterOrder',4
Пример: rfobj.FilterOrder = 4
Типы данных: double
PassbandFrequency — Частота полосы пропусканияЧастота полосы пропускания в виде:
Скаляр в герц для lowpass и фильтров highpass.
Двухэлементный вектор в герц для полосовых или заграждающих фильтров.
По умолчанию значениями является 1e9 для фильтра lowpass, 2e9 для фильтра highpass и [2e9 3e9] для полосы пропускания и [[1e9 4e9] для заграждающих фильтров.
Пример: 'PassbandFrequency',[3e6 5e6]
Пример: rfobj.PassbandFrequency = [3e6 5e6]
Типы данных: double
StopbandFrequency — Частота полосы задерживанияЧастота полосы задерживания в виде:
Скаляр в герц для lowpass и фильтров highpass.
Двухэлементный вектор в герц для полосовых или заграждающих фильтров.
По умолчанию значениями является 2e9 для фильтра lowpass, 1e9 для фильтра highpass, [1.5e9 3.5e9] для полосовых фильтров и [2.1e9 2.9e9] заграждающие фильтры.
Пример: rffilter('ResponseType','lowpass','StopbandFrequency',[3e6 5e6])
Пример: rfobj.StopbandFrequency = [3e6 5e6]
Типы данных: double
PassbandAttenuation — Затухание полосы пропускания10*log10(2) (значение по умолчанию) | скалярЗатухание полосы пропускания в виде скаляра в дБ. Для полосовых фильтров это значение применяется одинаково к обоим ребрам полосы пропускания.
Пример: 'PassbandAttenuation',5
Пример: rfobj.PassbandAttenuation = 5
Типы данных: double
StopbandAttenuation — Затухание в полосе задерживания (значение по умолчанию) | скалярЗатухание в полосе задерживания в виде скаляра в дБ. Для заграждающих фильтров это значение применяется одинаково к обоим ребрам полосы задерживания.
Пример: 'StopbandAttenuation',30
Пример: rfobj.StopbandAttenuation = 30
Типы данных: double
Zin — Исходный импеданс (значение по умолчанию) | положительная действительная часть конечный скалярИсходный импеданс в виде положительной действительной части конечный скаляр в Омах.
Пример: 'Zin',70
Пример: rfobj.Zin = 70
Типы данных: double
Zout — Загрузите импеданс (значение по умолчанию) | положительная действительная часть конечный скалярЗагрузите импеданс в виде положительной действительной части конечный скаляр в Омах.
Пример: 'Zout',70
Пример: rfobj.Zout = 70
Типы данных: double
Name — Имя объекта фильтра RF 'Filter' (значение по умолчанию) | вектор символовИмя объекта фильтра RF в виде вектора символов. Два элемента в той же схеме не могут иметь того же имени. Все имена должны быть допустимыми именами переменных MATLAB®.
Пример: 'Name','filter1'
Пример: rfobj.Name = 'filter1'
Типы данных: char | string
NumPorts — Количество портовКоличество портов в виде 2Это свойство доступно только для чтения.
Типы данных: double
Terminals — Имена терминалов{'p1+','p2+','p1-','p2-'}Имена терминалов в виде {'p1 +','p2 + ','p1-','p2-'}. Это свойство доступно только для чтения.
Типы данных: char
DesignData — Данные о создании фильтраДанные о создании фильтра в виде структуры. Это свойство доступно только для чтения. Для получения дополнительной информации смотрите Данные проектирования для Мишени LC и Топологии Пи LC и Данные проектирования для Реализации Передаточной функции.
Типы данных: struct
UseFilterOrder — Использование порядка фильтра для создания фильтраtrue | falseИспользование порядка фильтра для создания фильтра в виде true или false. Это свойство является только для чтения.
Типы данных: логический
groupdelay | Групповая задержка S-объекта-параметра или объекта фильтра RF или объекта схемы RF Toolbox |
sparameters | S-объект-параметра |
set | Установите rffilter значения свойства объекта |
zpk | Преобразует rffilter в представление нулей, полюсов и усиления |
tf | Преобразовывает rffilter в передаточную функцию |
lcladder | Лестничный объект LC |
rfplot | Постройте входной коэффициент отражения и усиление преобразователя соответствия с сетью |
clone | Создайте копию существующего элемента схемы или объекта схемы |
circuit | Объект Circuit |
Создайте и просмотрите свойства объекта фильтра RF по умолчанию.
rfobj = rffilter
rfobj =
rffilter: Filter element
FilterType: 'Butterworth'
ResponseType: 'Lowpass'
Implementation: 'LC Tee'
FilterOrder: 3
PassbandFrequency: 1.0000e+09
PassbandAttenuation: 3.0103
Zin: 50
Zout: 50
DesignData: [1x1 struct]
UseFilterOrder: 1
Name: 'Filter'
NumPorts: 2
Terminals: {'p1+' 'p2+' 'p1-' 'p2-'}
rfobj.DesignData
ans = struct with fields:
FilterOrder: 3
Inductors: [7.9577e-09 7.9577e-09]
Capacitors: 6.3662e-12
Topology: 'lclowpasstee'
PassbandFrequency: 1.0000e+09
PassbandAttenuation: 3.0103
Создайте объект фильтра полосы пропускания Баттерворта под названием BFCG_162W с частотами полосы пропускания между 950 и 2 200 МГц, частотами полосы задерживания между 770 и 3 000 МГц, затуханием полосы пропускания 3,0 дБ и затуханием в полосе задерживания 40 дБ с помощью 'тип реализации' Мишени LC. Вычислите S-параметры фильтра на уровне 2,1 ГГц.
robj = rffilter('ResponseType','Bandpass','Implementation','LC Tee','PassbandFrequency',[950e6 2200e6], ... 'StopbandFrequency',[770e6 3000e6],'PassbandAttenuation',3,'StopbandAttenuation',40); robj.Name = 'BFCG_162W'
robj =
rffilter: Filter element
FilterType: 'Butterworth'
ResponseType: 'Bandpass'
Implementation: 'LC Tee'
PassbandFrequency: [950000000 2.2000e+09]
PassbandAttenuation: 3
StopbandFrequency: [770000000 3.0000e+09]
StopbandAttenuation: 40
Zin: 50
Zout: 50
DesignData: [1x1 struct]
UseFilterOrder: 0
Name: 'BFCG_162W'
NumPorts: 2
Terminals: {'p1+' 'p2+' 'p1-' 'p2-'}
Вычислите S-параметры на уровне 2,1 ГГц.
s = sparameters(robj,2.1e9)
s =
sparameters: S-parameters object
NumPorts: 2
Frequencies: 2.1000e+09
Parameters: [2x2 double]
Impedance: 50
rfparam(obj,i,j) returns S-parameter Sij
Создайте lcladder объект от rffilter объект. Этот объект lcladder может использоваться в схеме непосредственно и мог также использоваться для параметрического анализа через значения емкости и индуктор.
l = lcladder(robj)
l =
lcladder: LC Ladder element
Topology: 'bandpasstee'
Inductances: [1x11 double]
Capacitances: [1x11 double]
Name: 'lcfilt'
NumPorts: 2
Terminals: {'p1+' 'p2+' 'p1-' 'p2-'}
В качестве альтернативы получить доступ к индукторам и конденсаторам непосредственно от использования объекта фильтра:
L = robj.DesignData.Inductors; C = robj.DesignData.Capacitors;
Создайте фильтр lowpass Чебышева с частотой полосы пропускания 2 ГГц.
robj = rffilter('FilterType','Chebyshev','PassbandFrequency',2e9);
Установите порядка фильтра на 5 и реализация к LC Pi.
set(robj,'FilterOrder',5,'Implementation','LC Pi');
Вычислите групповую задержку фильтра на уровне 1,9 ГГц.
groupdelay(robj,1.9e9)
ans = 1.4403e-09
В этом примере показано, как спроектировать Фильтр Баттерворта lowpass с частотой полосы пропускания 3 кГц, частота полосы задерживания 7 кГц, затухание полосы пропускания 2 дБ и затухание в полосе задерживания 60 дБ. Отобразите порядка фильтра такого спроектированного фильтра и определите частоту полосы пропускания на уровне 3,0103 дБ. См. [2] на странице объекта rffilter.
Отфильтруйте параметры
Fp = 3e3; % Passband frequency, Hz Ap = 2; % Passband attenuation, dB Fs = 7e3; % Stopband frequency, Hz As = 60; % Stopband attenuation, dB
Спроектируйте фильтр
r = rffilter("FilterType","Butterworth","ResponseType","Lowpass","Implementation","Transfer function","PassbandFrequency",Fp, ... "PassbandAttenuation",Ap,"StopbandFrequency",Fs,"StopbandAttenuation",As);
Порядок фильтра спроектированного фильтра
N = r.DesignData.FilterOrder;
sprintf('Calculated filter order is %d',N)ans = 'Calculated filter order is 9'
Частота на уровне 3,0103 дБ
F_3dB = r.DesignData.PassbandFrequency/1e3;
sprintf('Frequency at 3.0103 dB is %d kHz',F_3dB)ans = 'Frequency at 3.0103 dB is 3.090733e+00 kHz'
Визуализируйте ответ величины
frequencies = linspace(0,2*Fs,1001); rfplot(r, frequencies)

Примечание: Чтобы использовать rfplot и график на той же фигуре используют setplot. Введите 'справку setrfplot' в командном окне для получения информации.
Ссылка
Ларри Д. Парманн, проект и анализ аналоговых фильтров: перспектива обработки сигналов, Kluwer академические издатели
Спроектируйте фильтр Чебышева lowpass с полосовой пульсацией на 0,1 дБ, частотой сокращения-0ff 1 рад/секунда и затуханием на 50 дБ в 1,1 рад/секунда. Отобразите порядка фильтра этого спроектированного фильтра [1].
Задайте параметры
Fp = 1/(2*pi); % Passband frequency, Hz Rp = 0.1; % Ripple in Passband, dB Fs = 1.1/(2*pi); % Stopband frequency, Hz As = 50; % Stopband attenuation, dB
Спроектируйте фильтр
r = rffilter("FilterType","Chebyshev","ResponseType","Lowpass","Implementation","Transfer function","PassbandFrequency",Fp, ... "PassbandAttenuation",Rp,"StopbandFrequency",Fs,"StopbandAttenuation",As)
r =
rffilter: Filter element
FilterType: 'Chebyshev'
ResponseType: 'Lowpass'
Implementation: 'Transfer function'
PassbandFrequency: 0.1592
PassbandAttenuation: 0.1000
StopbandFrequency: 0.1751
StopbandAttenuation: 50
Zin: 50
Zout: 50
DesignData: [1x1 struct]
UseFilterOrder: 0
Name: 'Filter'
NumPorts: 2
Terminals: {'p1+' 'p2+' 'p1-' 'p2-'}
Порядок фильтра спроектированного фильтра
N = r.DesignData.FilterOrder;
sprintf('Calculated filter order is %d',N)ans = 'Calculated filter order is 19'
Ссылка
G.Ellis, Майкл, анализ фильтра Sr.Electronic и синтез, дом Artech, 1994
Для топологии Мишени или Пи LC, DesignData возвращает индуктор и конденсаторные значения. Кроме того, DesignData включает другие расчетные параметры, относящиеся к типу ответа.
Ответ Lowpass/Highpass: Порядок фильтра, Частота Полосы пропускания, Затухание Полосы пропускания
Полосовой Ответ: Порядок фильтра, Частота Полосы пропускания, Затухание Полосы пропускания, Вспомогательное (Wx).
Ответ Bandstop: Порядок фильтра, Частота Полосы задерживания, Затухание Полосы пропускания, Вспомогательное (Wx).
Для bandstop ответа Wx является корректировкой к первой частоте, на которой прототип lowpass выполняет предписанной bandstop потере. Для полосового ответа Wx является корректировкой спецификации затухания полосы пропускания, не равного 3 дБ. Для получения дополнительной информации см. [1].
Для реализации передаточной функции, DesignData возвращает учтенные полиномиальные коэффициенты для S-параметров. Эти факторы группируют комплексно-сопряженные условия, чтобы сохранить точность. Все S-параметры имеют общий знаменатель, существующий в Denominator. Условия числителя для S11, S22 и S21 (S21 = S12) могут быть оценены с помощью учтенного полинома, существующего в числителях Numerator11, Numerator22, и Numerator21, соответственно.
Например, рассмотрите фильтр lowpass по умолчанию на уровне 1 ГГц. Можно найти данные S21 на уровне 1 ГГц для фильтра можно следующим образом:
r = rffilter('Implementation','Transfer function'); f = 1e9; num21 = [polyval(r.DesignData.Numerator21(1,:),1i*2*pi*f) ... polyval(r.DesignData.Numerator21(2,:),1i*2*pi*f)]; den = [polyval(r.DesignData.Denominator(1,:),1i*2*pi*f) ... polyval(r.DesignData.Denominator(2,:),1i*2*pi*f)]; s21_1GHz = prod(num21./den,2)
s21_1GHz = -0.5000 - 0.5000i
sparameters функция, чтобы вычислить пример:S = sparameters(r,1e9); S.Parameters(2,1)
ans = -0.5000 - 0.5000i
Кроме того, DesignData включает другие расчетные параметры, относящиеся к типу ответа для:
Ответ Lowpass/Highpass: Порядок фильтра, Частота Полосы пропускания, Вспомогательная (Полином Numerator21)
Примечание
Частота полосы пропускания на уровне 3 дБ для Фильтра Баттерворта.
Полосовой Ответ: Порядок фильтра, Частота Полосы пропускания, Вспомогательная (Wx, Полином Numerator21)
Ответ Bandstop: Порядок фильтра, Частота Полосы задерживания, Вспомогательная (Wx, Полином Numerator21)
Для bandstop ответа Wx является корректировкой к первой частоте, на которой прототип lowpass выполняет предписанной bandstop потере. Для полосового ответа Wx является корректировкой спецификации затухания полосы пропускания, не равного 3 дБ.
Некоторые дополнительные советы проекта:

| Отфильтруйте тип | Частотная характеристика |
|---|---|
| Lowpass |
|
| Highpass |
|
| Полоса пропускания |
|
| Bandstop |
|
Частотная характеристика типичного lowpass четный и нечетный порядок Чебышевские фильтры:

Частотная характеристика типичной низкой передачи четный и нечетный порядок Обратных Чебышевских фильтров:

Эта таблица показывает все параметры, требуемые спроектировать каждый фильтр правильно:

[1] G.Ellis, Майкл, анализ фильтра Sr.Electronic и синтез, дом Artech, 1994
[2] Ларри Д. Парманн, проект и анализ аналоговых фильтров, перспективы обработки сигналов с MATLAB Examples, Kluwer академические издатели, 2001.
[3] www.matheonics.com/Tutorials/Chebyshev.html
[4] www.matheonics.com/Tutorials/InverseChebyshev.html
lcladder | nport | rfbudget | sparameters
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.