Визуализируйте частотную характеристику фильтров DSP
fvtool(sysobj)
fvtool(sysobj,options)
fvtool(____,Name,Value)
fvtool(
отображает ответ значения Системы фильтра object™.sysobj
)
fvtool(
отображает ответ, который задан опциями.sysobj
,options
)
Например, чтобы визуализировать импульсный ответ КИХ фильтруют Системный объект, устанавливают options
на 'impulse'
.
Fs = 96e3; filtSpecs = fdesign.lowpass(20e3,22.05e3,1,80,Fs); firlp2 = design(filtSpecs,'equiripple','SystemObject',true); fvtool(firlp2,'impulse');
Для более входных опций смотрите fvtool
.
fvtool(____,
визуализирует ответ фильтра с каждым заданным набором свойств к заданному значению.Name,Value
)
Для более входных опций смотрите fvtool
.
Создайте lowpass децимирующий фильтр полуполосы для данных, выбранных на уровне 44,1 кГц. Уровень выходных данных является 1/2 входной уровень выборки, или 22,05 кГц. Задайте порядок фильтра быть 52 с шириной перехода 4,1 кГц.
Fs = 44.1e3; filterspec = 'Filter order and transition width'; Order = 52; TW = 4.1e3; firhalfbanddecim =dsp.FIRHalfbandDecimator('Specification',filterspec, ... 'FilterOrder',Order, ... 'TransitionWidth',TW, ... 'SampleRate',Fs);
Постройте импульсный ответ. Коэффициент нулевого порядка задерживается 26 выборок, который равен групповой задержке фильтра. Это приводит к причинному фильтру полуполосы.
fvtool(firhalfbanddecim,'Analysis','impulse')
Постройте значение и фазовый отклик.
fvtool(firhalfbanddecim,'Analysis','freq')
Создайте КИХ минимального заказа lowpass фильтр для данных, выбранных на уровне 44,1 кГц. Задайте частоту полосы пропускания 8 кГц, частоту полосы задерживания 12 кГц, пульсацию полосы пропускания 0,1 дБ и затухание полосы задерживания 80 дБ.
Fs = 44.1e3; filtertype = 'FIR'; Fpass = 8e3; Fstop = 12e3; Rp = 0.1; Astop = 80; FIRLPF = dsp.LowpassFilter('SampleRate',Fs, ... 'FilterType',filtertype, ... 'PassbandFrequency',Fpass, ... 'StopbandFrequency',Fstop, ... 'PassbandRipple',Rp, ... 'StopbandAttenuation',Astop);
Разработайте БИХ минимального заказа lowpass фильтр с теми же свойствами как КИХ lowpass фильтр. Измените свойство FilterType
клонированного фильтра к IIR
.
IIRLPF = clone(FIRLPF);
IIRLPF.FilterType = 'IIR';
Постройте импульсный ответ КИХ lowpass фильтр. Коэффициент нулевого порядка задерживается 19 выборками, который равен групповой задержке фильтра. КИХ lowpass фильтр является причинным КИХ-фильтром.
fvtool(FIRLPF,'Analysis','impulse')
Постройте импульсный ответ БИХ lowpass фильтр.
fvtool(IIRLPF,'Analysis','impulse')
Постройте значение и фазовый отклик КИХ lowpass фильтр.
fvtool(FIRLPF,'Analysis','freq')
Постройте значение и фазовый отклик БИХ lowpass фильтр.
fvtool(IIRLPF,'Analysis','freq')
Вычислите стоимость реализации КИХ lowpass фильтр.
cost(FIRLPF)
ans = struct with fields:
NumCoefficients: 39
NumStates: 38
MultiplicationsPerInputSample: 39
AdditionsPerInputSample: 38
Вычислите стоимость реализации БИХ lowpass фильтр. БИХ-фильтр более эффективен, чтобы реализовать, чем КИХ-фильтр.
cost(IIRLPF)
ans = struct with fields:
NumCoefficients: 18
NumStates: 14
MultiplicationsPerInputSample: 18
AdditionsPerInputSample: 14
Вычислите групповую задержку КИХ lowpass фильтр.
grpdelay(FIRLPF)
Вычислите групповую задержку БИХ lowpass фильтр. КИХ-фильтр имеет постоянную групповую задержку (линейная фаза), в то время как ее БИХ-дубликат не делает.
grpdelay(IIRLPF)
sysobj
— Введите фильтрВведите фильтр, заданный как один из следующих Системных объектов фильтра:
Пример: firFilt = dsp.FIRFilter('Numerator', fir1(130, 2000/(8000/2))); fvtool(firFilt)
опции
Отфильтруйте аналитические опции'magnitude'
(значение по умолчанию) | 'phase'
| 'freq'
| 'grpdelay'
| 'phasedelay'
| 'impulse'
| 'step'
| 'polezero'
| 'coefficients'
| 'info'
| 'magestimate'
| 'noisepower'
Отфильтруйте аналитические опции, заданные как одно из следующего:
'magnitude'
– Ответ значения
'phase'
– Фазовый отклик
'freq'
– Частотная характеристика
'grpdelay'
– Групповая задержка
'phasedelay'
– Задержка фазы
'impulse'
– Импульсный ответ
шаг
Переходной процесс
'polezero'
– Нулевой график полюса
'coefficients'
– Содействующий вектор
информация
Отфильтруйте информацию
'magestimate'
– Оценка ответа значения
'noisepower'
– Спектр мощности шума округления
Пример: fvtool(firFilt,'freq')
Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми.
Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение.
Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.
firFilt = dsp.FIRFilter('Numerator', fir1(130, 2000/(8000/2))); fvtool(firFilt,'Arithmetic','single')
'Fs'
— Выборка уровняВыборка уровня, заданного как скаляр. Это значение определяет интервал Найквиста [-Fs/2 Fs/2], в котором fvtool показывает частотную характеристику фильтров в channelizer.
Типы данных: single | double
Арифметика
Арифметический тип'double'
(значение по умолчанию) | 'single'
| 'Fixed'
Задайте арифметику, используемую во время анализа. Аналитический инструмент принимает фильтр с двойной точностью, когда арифметический вход не задан, и Системный объект фильтра разблокирован. Набор свойств 'Arithmetic'
к 'Fixed'
применяется только, чтобы отфильтровать Системные объекты со свойствами фиксированной точки.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.