Создайте объект фильтра РФ
Используйте объект rffilter
создать фильтр Баттерворта или Чебышева РФ. Фильтр РФ является объектом схемы с 2 портами, и можно включать этот объект как элемент схемы.
Можно также преобразовать объект rffilter
в lcladder при помощи объекта lcladder
. LCLad = lacladdder(rffiltobj)
, где rffilterobj
является объектом rffilter
.
rfobj = rffilter
rfobj = rffilter(Name,Value)
FilterType
— Отфильтруйте тип'Butterworth'
(значение по умолчанию) | 'Chebyshev'
Отфильтруйте тип, заданный как 'Butterworth'
или 'Chebyshev'
.
Пример: 'FilterType','Chebyshev'
Пример: rfobj.FilterType = 'Chebyshev'
Типы данных: char | string
ResponseType
— Отфильтруйте тип ответа'Lowpass'
(значение по умолчанию) | 'Highpass'
| 'Bandpass'
| 'Bandstop'
Отфильтруйте тип ответа, заданный как 'Lowpass'
, 'Highpass'
, 'Bandpass'
или 'Bandstop'
. Для получения дополнительной информации см. Частотные характеристики.
Пример: 'ResponseType','Highpass'
Пример: rfobj.ResponseType = 'Highpass'
Типы данных: char | string
Реализация
Отфильтруйте реализацию'LC Tee'
(значение по умолчанию) | 'LC Pi'
| 'Transfer function'
Отфильтруйте реализацию, заданную как 'LC Tee'
, 'LC Pi'
или 'Transfer function'
.
Пример: 'Implementation','Transfer function'
Пример: rfobj.Implementation = 'Transfer function'
Типы данных: char | string
FilterOrder
— Отфильтруйте порядок3
(значение по умолчанию) | действительное конечное неотрицательное целое числоОтфильтруйте порядок, заданный как действительное конечное неотрицательное целое число. В lowpass или фильтре highpass, порядок задает количество смешанных запоминающих элементов. В полосовом или заграждающем фильтре количество смешанных запоминающих элементов является дважды значением порядка.
FilterOrder
имеет наивысший приоритет среди всех пар "имя-значение" в проекте фильтра. Используя это наборы свойств UseFilterOrder
свойство только для чтения к истине.
Пример: 'FilterOrder',4
Пример: rfobj.FilterOrder = 4
Типы данных: double
PassbandFrequency
— Частота полосы пропусканияЧастота полосы пропускания, заданная как:
Скаляр в герц для lowpass и фильтров highpass.
Двухэлементный вектор в герц для полосовых или заграждающих фильтров.
По умолчанию значениями является 1e9
для фильтра lowpass, 2e9
для фильтра highpass и [2e9 3e9]
для полосовых и заграждающих фильтров.
Пример: '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
— Затухание полосы задерживания40
(значение по умолчанию) | скалярЗатухание полосы задерживания, заданное как скаляр в дБ. Для заграждающих фильтров это значение применяется одинаково к обоим ребрам полосы задерживания.
Пример: 'StopbandAttenuation',30
Пример: rfobj.StopbandAttenuation = 30
Типы данных: double
Zin
— Исходный импеданс50
(значение по умолчанию) | положительная действительная часть конечный скалярИсходный импеданс, заданный как положительная действительная часть конечный скаляр в Омах.
Пример: 'Zin',70
Пример: rfobj.Zin = 70
Типы данных: double
Zout
— Загрузите импеданс50
(значение по умолчанию) | положительная действительная часть конечный скалярЗагрузите импеданс, заданный как положительная действительная часть конечный скаляр в Омах.
Пример: 'Zout',70
Пример: rfobj.Zout = 70
Типы данных: double
Имя
Имя объекта фильтра РФ 'Filter'
(значение по умолчанию) | вектор символовИмя объекта фильтра РФ, заданного как вектор символов. Два элемента в той же схеме не могут иметь того же имени. Все имена должны быть допустимыми именами переменных 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 Toolbox |
sparameters | S-объект-параметра |
set | Установите rffilter значения свойства объекта |
Создайте и просмотрите свойства объекта фильтра РФ по умолчанию.
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 дБ.
robj = rffilter('ResponseType','Bandpass','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
Создайте Чебышевский фильтр 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
Для топологии Мишени или Пи LC DesignData
возвращает индуктор и конденсаторные значения. Кроме того, DesignData
включает другие параметры проекта, относящиеся к типу ответа.
Ответ Lowpass/Highpass: Отфильтруйте порядок, Частоту Полосы пропускания, Затухание Полосы пропускания
Ответ Bandpass/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)
Полосовой Ответ: Отфильтруйте порядок, Частоту Полосы пропускания, Вспомогательную (Wx, Полином Numerator21)
Ответ Bandstop: Отфильтруйте порядок, Частоту Полосы задерживания, Вспомогательную (Wx, Полином Numerator21)
Для bandstop ответа Wx является корректировкой к первой частоте, на которой прототип lowpass выполняет предписанной bandstop потере. Для полосового ответа Wx является корректировкой спецификации затухания полосы пропускания, не равного 3 дБ.
Отфильтруйте тип | Частотная характеристика |
---|---|
Lowpass | |
Highpass | |
Полоса пропускания | |
Bandstop |
[1] G.Ellis, Майкл, анализ фильтра сэра Электроника и синтез, дом Artech, 1994
circuit
| groupdelay
| lcladder
| nport
| rfplot
| sparameters
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.