mkfilter

Сгенерируйте фильтр Бесселя, Баттерворта, Чебышева или RC

Синтаксис

sys = mkfilter(fc,ord,type)
sys = mkfilter(fc,ord,type,psbndr)

Описание

sys = mkfilter(fc,ord,type) возвращает аналоговый фильтр нижних частот с одним входом и одним выходом sys как ss объект. Частота отсечения (Hertz) fc и порядок фильтра следующий ord, положительное целое число. Аргумент type задает тип фильтра и может быть одним из следующих:

type значение

Описание

'butterw'

Фильтр Баттерворта

'cheby'

Фильтр Чебышева

'bessel'

Фильтр Бесселя

'rc'

Серия резисторов/конденсаторов

Коэффициент усиления dc каждого фильтра (кроме четного Чебышёва) устанавливается на единицу.

sys = mkfilter(fc,ord,type,psbndr) содержит входной параметр psbndr который задает неравномерность в полосе пропускания Чебышева (в дБ). На частоте среза величина составляет - psbndr дБ. Для четных фильтров Чебышева коэффициент усиления также -psbndr дБ.

Примеры

свернуть все

Сгенерируйте несколько различных типов фильтров и сравните их частотные характеристики.

butw = mkfilter(2,4,'butterw'); 
cheb = mkfilter(4,4,'cheby',0.5); 
rc = mkfilter(1,4,'rc'); 
bode(butw,'-',cheb,'--',rc,'-.')
legend('Butterworth','Chebyshev','RC filter')

Figure contains 2 axes. Axes 1 contains 3 objects of type line. These objects represent Butterworth, Chebyshev, RC filter. Axes 2 contains 3 objects of type line. These objects represent Butterworth, Chebyshev, RC filter.

Ограничения

Фильтры Бесселя вычисляются с помощью рекурсивной полиномиальной формулы. Это плохо обусловлено для фильтров высокого порядка (order > 8).

См. также

Представлено до R2006a