Инструмент визуализации фильтра
Инструмент визуализации фильтра - это интерактивный инструмент, позволяющий отображать величину, фазовую характеристику, групповую задержку, импульсную характеристику, ступенчатую характеристику, график полюсов и коэффициенты фильтра. Можно экспортировать отображаемый ответ в файл с помощью команды Файл (File) > Экспорт (Export).
Если установлен продукт DSP System Toolbox™, FVTool может также визуализировать частотную характеристику фильтра System object™. При необходимости фильтрации потоковых данных в режиме реального времени рекомендуется использовать системные объекты. Дополнительные сведения см. в разделе fvtool(Панель системных инструментов DSP).

FVTool можно открыть программным способом, используя один из методов, описанных в Programmatic Use.
Отображение амплитудной характеристики эллиптического фильтра 6-го порядка. Задайте пульсацию полосы пропускания 3 дБ, затухание полосы останова 50 дБ, частоту дискретизации 1 кГц и нормированный край полосы пропускания 300 Гц. Запустите FVTool из командной строки.
[b,a] = ellip(6,3,50,300/500); fvtool(b,a)

Отображение и анализ нескольких фильтров FIR, запускающих FVTool из командной строки.
b1 = firpm(20,[0 0.4 0.5 1],[1 1 0 0]); b2 = firpm(40,[0 0.4 0.5 1],[1 1 0 0]); fvtool(b1,1,b2,1)

Просмотрите связанные параметры анализа, выбрав Анализ (Analysis) > Параметры анализа (Analysis Parameters).
.

Запустите FVTool из командной строки. Отображение амплитудной характеристики эллиптического фильтра 6-го порядка. Задайте пульсацию полосы пропускания 3 дБ, затухание полосы останова 50 дБ, частоту дискретизации 1 кГц и нормированный край полосы пропускания 300 Гц.
[b,a] = ellip(6,3,50,300/500); h = fvtool(b,a)

h =
Figure (filtervisualizationtool) with properties:
Number: 1
Name: 'Filter Visualization Tool - Magnitude Response (dB)'
Color: [0.9400 0.9400 0.9400]
Position: [358 291 560 420]
Units: 'pixels'
Use get to show all properties
Отображение фазовой характеристики фильтра.
h.Analysis = 'phase'
h =
Figure (filtervisualizationtool) with properties:
Number: 1
Name: 'Filter Visualization Tool - Phase Response'
Color: [0.9400 0.9400 0.9400]
Position: [358 291 560 420]
Units: 'pixels'
Use get to show all properties
Включите легенду печати и добавьте текст.
legend(h,'Phase plot')
Укажите частоту дискретизации 1 кГц. Отображение двухсторонней центрированной реакции.
h.Fs = 1000;
h.FrequencyRange='[-Fs/2, Fs/2)'
h =
Figure (filtervisualizationtool) with properties:
Number: 1
Name: 'Filter Visualization Tool - Phase Response'
Color: [0.9400 0.9400 0.9400]
Position: [358 291 560 420]
Units: 'pixels'
Use get to show all properties
Просмотрите все свойства графика. Свойства, характерные для FVTool, находятся в конце списка.
get(h)
Grid: on
Legend: 'on'
AnalysisToolbar: 'on'
FigureToolbar: 'on'
DesignMask: 'off'
SOSViewSettings: [1x1 dspopts.sosview]
Fs: 1000
Alphamap: [1x64 double]
CloseRequestFcn: 'closereq'
Color: [0.9400 0.9400 0.9400]
Colormap: [256x3 double]
ContextMenu: [0x0 GraphicsPlaceholder]
CurrentAxes: [1x1 Axes]
CurrentCharacter: ''
CurrentObject: [0x0 GraphicsPlaceholder]
CurrentPoint: [0 0]
DockControls: on
FileName: ''
IntegerHandle: on
InvertHardcopy: on
KeyPressFcn: ''
KeyReleaseFcn: ''
MenuBar: 'none'
Name: 'Filter Visualization Tool - Phase Response'
NextPlot: 'new'
NumberTitle: on
PaperUnits: 'inches'
PaperOrientation: 'portrait'
PaperPosition: [1.3333 3.3125 5.8333 4.3750]
PaperPositionMode: 'auto'
PaperSize: [8.5000 11]
PaperType: 'usletter'
Pointer: 'arrow'
PointerShapeCData: [16x16 double]
PointerShapeHotSpot: [1 1]
Position: [358 291 560 420]
Renderer: 'opengl'
RendererMode: 'auto'
Resize: on
ResizeFcn: ''
SelectionType: 'normal'
ToolBar: 'auto'
Type: 'figure'
Units: 'pixels'
WindowButtonDownFcn: ''
WindowButtonMotionFcn: ''
WindowButtonUpFcn: ''
WindowKeyPressFcn: ''
WindowKeyReleaseFcn: ''
WindowScrollWheelFcn: ''
WindowStyle: 'normal'
BeingDeleted: off
ButtonDownFcn: ''
Children: [15x1 Graphics]
Clipping: on
CreateFcn: ''
DeleteFcn: ''
BusyAction: 'queue'
HandleVisibility: 'on'
HitTest: on
Interruptible: on
Parent: [1x1 Root]
Selected: off
SelectionHighlight: on
Tag: 'filtervisualizationtool'
UserData: []
Visible: on
PolyphaseView: 'off'
FrequencyVector: [1x256 double]
Analysis: 'phase'
OverlayedAnalysis: ''
FrequencyScale: 'Linear'
PhaseUnits: 'Radians'
ShowReference: 'on'
NumberofPoints: 8192
FrequencyRange: '[-Fs/2, Fs/2)'
PhaseDisplay: 'Phase'
NormalizedFrequency: 'off'
Проектирование полосового FIR-фильтра 50-го порядка с частотами стоп-полосы 150 Гц и 350 Гц и частотами полосы пропускания 200 Гц и 300 Гц. Частота дискретизации составляет 1000 Гц. Визуализация величины и фазовой характеристики фильтра.
N = 50; Fstop1 = 150; Fstop2 = 350; Fpass1 = 200; Fpass2 = 300; Fs = 1e3; bpFilt = designfilt('bandpassfir','FilterOrder',N, ... 'StopbandFrequency1',Fstop1,... 'StopbandFrequency2',Fstop2,... 'PassbandFrequency1',Fpass1,... 'PassbandFrequency2',Fpass2,... 'SampleRate',Fs); fvtool(bpFilt,'Analysis','freq')

fvtool(b,a)fvtool( открывает FVTool и отображает амплитудную характеристику цифрового фильтра, определенного числителем b,a)b и знаменатель a.
fvtool(sos)fvtool( открывает FVTool и отображает амплитудную характеристику цифрового фильтра, определяемую матрицей L-by-6 сечений второго порядка:sos)
Строки sos содержат числитель и знаменатель коэффициентов bik и aik каскада сечений второго порядка H (z):
=g∏k=1Lb0k+b1kz−1+b2kz−21+a1kz−1+a2kz−2.
Число сечений L должно быть больше или равно 2. Если количество сечений меньше 2, fvtool считает входной сигнал числительным вектором.
fvtool(d)fvtool( открывает FVTool и отображает амплитудный отклик цифрового фильтра, d)d. Использовать designfilt произвести d на основе характеристик частотно-отклика.
fvtool(b1,a1,b2,a2,...,bN,aN)fvtool(b1,a1,b2,a2,...,bN,aN) открывает FVTool и отображает амплитудные характеристики нескольких фильтров, определенных числителями b1, …, bN и знаменатели a1, ..., aN.
fvtool(sos1,sos2,...,sosN)fvtool( открывает FVTool и отображает амплитудные характеристики нескольких фильтров, определенных матрицами сечений второго порядка sos1,sos2,...,sosN)sos1, sos2, ..., sosN.
fvtool(Hd)fvtool( открывает FVTool и отображает отклики величины для Hd)dfilt объект фильтра Hd или массив dfilt фильтровать объекты.
fvtool(Hd1,Hd2,...,HdN)fvtool( открывает FVTool и отображает отклики величин фильтров в Hd1,Hd2,...,HdN)dfilt объекты Hd1, Hd2, ..., HdN.
h = fvtool(___) возвращает дескриптор фигуры h = fvtool(___)h. Этот дескриптор можно использовать для взаимодействия с FVTool из командной строки. См. раздел Управление FVTool в командной строке MATLAB.
FVTool имеет две панели инструментов:
Расширенная версия панели инструментов редактирования печати MATLAB ®. В следующей таблице показаны значки панели инструментов, относящиеся к FVTool:
Символ | Описание |
|---|---|
Восстановить представление по умолчанию. В этом представлении отображаются буферные области вокруг данных и только значимые данные. Для просмотра ответа с помощью стандартной печати MATLAB, отображающей все значения данных, используйте команду «Вид» > «Полный вид». | |
Переключение легенды | |
Переключить сетку | |
Ссылка на конструктор фильтров (появляется только при запуске FVTool из конструктора фильтров) | |
Переключение режима добавления/замены (появляется только в том случае, если FVTool был запущен из конструктора фильтров) |
Панель инструментов анализа со следующими значками:
Отклик величины текущего фильтра. Посмотрите Чтобы увидеть отклик нулевой фазы, щелкните правой кнопкой мыши метку оси y на графике «Величина» и выберите в контекстном меню «Нулевая фаза». | |
Фазовый отклик текущего фильтра. Посмотрите | |
Амплитудный отклик и фазовый отклик текущего фильтра, наложенные друг на друга. Посмотрите | |
Групповая задержка текущего фильтра. Групповая задержка - средняя задержка фильтра как функция частоты. Посмотрите | |
Фазовая задержка текущего фильтра. Фазовая задержка - это временная задержка, которую фильтр накладывает на каждую составляющую входного сигнала. Посмотрите | |
Импульсная характеристика текущего фильтра. Импульсная характеристика - это характеристика фильтра на импульсный вход. Посмотрите | |
Отклик на шаг текущего фильтра. Ответ шага - это ответ фильтра на ввод шага. Посмотрите | |
График полюса и нуля, показывающий положение полюса и нуля текущего фильтра на плоскости Z. Посмотрите | |
Коэффициенты фильтра текущего фильтра, зависящие от структуры фильтра (прямой формы или решетки) в текстовом поле. Для SOS-фильтров каждый раздел отображается как отдельный фильтр. | |
Подробная информация о фильтре. |

В приложении «Конструктор фильтров» при выборе меню «Просмотр» > «Инструмент визуализации фильтра» или кнопки панели инструментов «Анализ в полном представлении
» при отображении анализа запускается FVTool для текущего фильтра. Можно синхронизировать конструктор фильтров и FVTool с помощью кнопки панели инструментов.
Любые изменения, внесенные в фильтр в конструкторе фильтров, немедленно отражаются в FVTool.
Два режима связи обеспечиваются с помощью кнопки
/: ![]()
Заменить
(Replace) - удаляет фильтр, отображаемый в данный момент в FVTool, и вставляет новый фильтр.
Добавить
- сохраняет фильтр, отображаемый в данный момент в FVTool, и добавляет новый фильтр на экран.
Второй отклик можно наложить на график, выбрав команду Анализ (Analysis) > Анализ наложения (Overlay Analysis) и выбрав доступный отклик. В правую часть графика отклика добавляется вторая ось Y. В диалоговом окне Параметры анализа (Analysis Parameters) отображаются параметры для оси X и обеих осей Y. Пример диалогового окна «Параметры анализа» см. в разделе Отображение параметров анализа.
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.