filt2block

Сгенерируйте блок фильтра Simulink

Синтаксис

filt2block(b)
filt2block(b,'subsystem')
filt2block(___,'FilterStructure',structure)
filt2block(b,a)
filt2block(b,a,'subsystem')
filt2block(___,'FilterStructure',structure)
filt2block(sos)
filt2block(sos,'subsystem')
filt2block(___,'FilterStructure',structure)
filt2block(d)
filt2block(d,'subsystem')
filt2block(___,'FilterStructure',structure)
filt2block(___,Name,Value)

Описание

пример

filt2block(b) генерирует Discrete FIR Filter block с коэффициентами фильтра, b.

filt2block(b,'subsystem') генерирует блок подсистемы Simulink®, который реализует КИХ-фильтр с помощью суммы, усиления и блоков задержки.

пример

filt2block(___,'FilterStructure',structure) задает фильтр structure для КИХ-фильтра.

пример

filt2block(b,a) генерирует Discrete Filter block с коэффициентами числителя, b, и коэффициентами знаменателя, a.

filt2block(b,a,'subsystem') генерирует блок Подсистемы Simulink, который реализует БИХ-фильтр с помощью суммы, усиления и блоков задержки.

пример

filt2block(___,'FilterStructure',structure) задает фильтр structure для БИХ-фильтра.

filt2block(sos) генерирует Biquad Filter block с матрицей разделов второго порядка, sos. sos является матрицей K-6, где количество разделов, K, должно быть больше, чем или равным 2. Необходимо было установить программное обеспечение DSP System Toolbox™, чтобы использовать этот синтаксис.

пример

filt2block(sos,'subsystem') генерирует блок Подсистемы Simulink, который реализует фильтр biquad с помощью суммы, усиления и блоков задержки.

filt2block(___,'FilterStructure',structure) задает фильтр structure для фильтра biquad.

filt2block(d) генерирует блок Simulink, который реализует цифровой фильтр, d. Используйте функциональный designfilt, чтобы создать d. Блоком является Discrete FIR Filter block, если d является КИХ и Biquad Filter block, если d является БИХ.

filt2block(d,'subsystem') генерирует блок Подсистемы Simulink, который реализует d с помощью суммы, усиления и блоков задержки.

пример

filt2block(___,'FilterStructure',structure) задает фильтр structure, чтобы реализовать d.

пример

filt2block(___,Name,Value) дополнительные опции использования заданы одним или несколькими аргументами пары Name,Value.

Примеры

свернуть все

Разработайте КИХ-фильтр 30-го порядка с помощью метода окна. Задайте частоту среза π/4 рада/выборки. Создайте блок Simulink®.

b = fir1(30,0.25);
filt2block(b)

Разработайте БИХ-Фильтр Баттерворта 30-го порядка. Задайте частоту среза π/4 рада/выборки. Создайте блок Simulink®.

[b,a] = butter(30,0.25);
filt2block(b,a)

Разработайте КИХ-фильтр 30-го порядка с помощью метода окна. Задайте частоту среза π/4 рада/выборки. Создайте блок Simulink® с прямой формой, я транспонировал структуру.

b = fir1(30,0.25);
filt2block(b,'FilterStructure','directFormTransposed')

Разработайте БИХ-Фильтр Баттерворта 30-го порядка. Задайте частоту среза π/4 рада/выборки. Создайте блок Simulink® с прямой формой, которую я структурирую.

[b,a] = butter(30,0.25);
filt2block(b,a,'FilterStructure','directForm1')

Разработайте 5-й порядок Фильтр Баттерворта с частотой среза π/5 рада/выборки. Получите фильтр в biquad, формируют и генерируют блок подсистемы Simulink® от разделов второго порядка.

[z,p,k] = butter(5,0.2);
sos = zp2sos(z,p,k);
filt2block(sos,'subsystem')

Сгенерируйте блок подсистемы Simulink®, который реализует КИХ lowpass фильтр с помощью суммы, усиления и блоков задержки. Задайте входную обработку, чтобы быть элементами как каналами путем определения 'FrameBasedProcessing' как false.

B = fir1(30,.25);
filt2block(B,'subsystem','BlockName','Lowpass FIR',...
              'FrameBasedProcessing',false)

Разработайте highpass эллиптический фильтр с нормированной частотой полосы задерживания 0.45 и нормированной частотой полосы пропускания 0.55. Задайте затухание полосы задерживания 40Design highpass эллиптический фильтр с нормированной частотой полосы задерживания 0.45 и нормированной частотой полосы пропускания 0.55. Задайте затухание полосы задерживания 40 дБ и пульсацию полосы пропускания 0,5 дБ. Реализуйте фильтр как Прямую Форму II структур, вызовите его "HP" и поместите его в новую модель Simulink®.

d = designfilt('highpassiir','DesignMethod','ellip', ...
               'StopbandFrequency',0.45,'PassbandFrequency',0.55, ...
               'StopbandAttenuation',40,'PassbandRipple',0.5);

filt2block(d,'subsystem','FilterStructure','directForm2', ...
             'Destination','new','BlockName','HP')

Входные параметры

свернуть все

Коэффициенты фильтра числителя, заданные как строка или вектор-столбец. Коэффициенты фильтра упорядочены в убывающих степенях z –1 с первым элементом, соответствующим коэффициенту для z 0.

Пример: b = fir1(30,0.25);

Типы данных: single | double
Поддержка комплексного числа: Да

Коэффициенты фильтра знаменателя, заданные как строка или вектор-столбец. Коэффициенты фильтра упорядочены в убывающих степенях z –1 с первым элементом, соответствующим коэффициенту для z 0. Первый коэффициент фильтра должен быть 1.

Типы данных: single | double
Поддержка комплексного числа: Да

Матрица раздела второго порядка, заданная как K-by-2 матрица. Каждая строка матрицы содержит коэффициенты для биквадратной рациональной функции в z –1. Z-преобразование K th рациональный биквадратный системный импульсный ответ

Hk(z)=Bk(1)+Bk(2)z1+Bk(3)z2Ak(1)+Ak(2)z1+Ak(3)z2

Коэффициенты в K th строка матрицы, sos, упорядочены можно следующим образом:

[Bk(1)Bk(2)Bk(3)Ak(1)Ak(2)Ak(3)]

Частотная характеристика фильтра является своей передаточной функцией, оцененной на модульном круге с z = e j 2πf.

Типы данных: single | double
Поддержка комплексного числа: Да

Цифровой фильтр, заданный как объект digitalFilter. Используйте designfilt, чтобы сгенерировать цифровой фильтр на основе спецификаций частотной характеристики.

Пример: d = designfilt('lowpassiir','FilterOrder',3,'HalfPowerFrequency',0.5) задает третий порядок Фильтр Баттерворта с нормированной частотой на 3 дБ 0.5π рад/выборка.

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

Входной параметрОтфильтруйте структуры
b'directForm' (значение по умолчанию), 'directFormTransposed', 'directFormSymmetric', 'directFormAntiSymmetric', 'overlapAdd'. Структура 'overlapAdd' только доступна, когда вы не используете 'subsystem', и требует лицензии на программное обеспечение DSP System Toolbox.
a'directForm2' (значение по умолчанию), 'directForm1', 'directForm1Transposed', 'directForm2', 'directForm2Transposed'
sos'directForm2Transposed' (значение по умолчанию), 'directForm1', 'directForm1Transposed', 'directForm2'
d
  • Для КИХ-фильтров: 'directForm' (значение по умолчанию), 'directFormTransposed', 'directFormSymmetric', 'directFormAntiSymmetric', 'overlapAdd'. Структура 'overlapAdd' только доступна, когда вы не используете 'subsystem', и требует лицензии на программное обеспечение DSP System Toolbox.

  • Для БИХ-фильтров: 'directForm2Transposed' (значение по умолчанию), 'directForm1', 'directForm1Transposed', 'directForm2'

Аргументы в виде пар имя-значение

Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: filt2block(...,'subsystem','BlockName','Lowpass FIR','FrameBasedProcessing',false)

Место назначения для Simulink фильтрует блок, заданный как скаляр строки или вектор символов. Можно добавить блок фильтра в текущую модель с 'current', добавить блок фильтра в новую модель с 'new' или задать имя существующей модели.

Пример: filt2block([1 2 1],'Destination','MyModel','BlockName','New block')

Типы данных: char | string

Имя блока, заданное как вектор символов или скаляр строки.

Типы данных: char | string

Перезапишите блок, заданный как логический false или true. Если вы используете значение для 'BlockName', который совпадает с существующим блоком, значение 'OverwriteBlock' определяет, перезаписывается ли блок. Значением по умолчанию является false.

Типы данных: логический

Сопоставьте коэффициенты с портами, заданными как логический false или true.

Типы данных: логический

Содействующие имена переменных, заданные как массив ячеек из символьных векторов или массив строк. Эта пара "имя-значение" только применима, когда 'MapCoefficientsToPorts' является true. Значениями по умолчанию является {'Num'}, {'Num','Den'} и {'Num','Den','g'} для КИХ, БИХ и фильтров biquad.

Типы данных: cell | string

Основанная на кадре или основанная на выборке обработка, заданная как логический true или false. Значением по умолчанию является true, и основанная на кадре обработка используется.

Типы данных: логический

Удалите блоки нулевого усиления, заданные как логический true или false. Нулевым усилением по умолчанию блоки удалены.

Типы данных: логический

Замените блоки усиления единицы на прямую связь, заданную как логический true или false. Значением по умолчанию является true.

Типы данных: логический

Замените отрицательные блоки усиления единицы на изменение знака в самом близком блоке, заданном как логический true или false. Значением по умолчанию является true.

Типы данных: логический

Замените расположенные каскадом задержки на одну задержку, заданную как логический true или false. Значением по умолчанию является true.

Типы данных: логический

Смотрите также

|

Введенный в R2013a