- •Расчет аналоговых и цифровых фильтров
- •Содержание
- •1. Общая теория
- •1.1. Свойства цифровых фильтров
- •1.2. Представление цифрового фильтра в виде разностного уравнения
- •1.3 Аналоговые фильтры-прототипы
- •1.3.1. Фильтры Баттерворта
- •1.3.2. Фильтры Чебышева
- •1.3.3. Эллиптические фильтры
- •1.3.4. Фильтры Бесселя
- •1.4. Преобразования полосы частот для аналоговых фильтров
- •1.5. Преобразование полосы для цифровых фильтров
- •1.6. Методы дискретизации аналогового фильтра
- •1.6.1. Метод инвариантного преобразования импульсной характеристики
- •1.6.2. Метод билинейного преобразования
- •1.7. Методы синтеза ких-фильтров.
- •1.7.1. Прямоугольное окно
- •1.7.2. Обобщенное окно Хэмминга
- •1.7.3. Окно Блэкмана
- •1.7.4. Окно Кайзера
- •1.8. Методы синтеза бих-фильтров.
- •1.9. Методы реализации цифровых фильтров
- •1.9.1. Прямая форма
- •1.9.2. Прямая каноническая форма
- •1.9.3. Каскадная форма
- •1.9.4. Параллельная форма
- •2. Задание на курсовую работу в таблице 2.1. Представлены варианты на курсовую работу. Вариант выбрается в соответсвии с указанием преподавателя.
- •3. Порядок выполнения задания №1. Расчет аналогового фильтра.
- •Порядок фильтра.
- •Аппроксимация ачх фильтров - общие замечания.
- •Аппроксимация по Баттерворту.
- •Аппроксимация по Чебышеву первого рода.
- •Аппроксимация по Чебышеву второго рода.
- •Аппроксимация по Кауэру. Эллиптический фильтр.
- •Сравнение порядков фильтров при различных способах аппроксимации ачх. Решение уравнения порядка фильтра.
- •Порядок расчет первого задания.
- •4. Порядок выполнения задания №2. Расчет цифрового фильтра методом частотной выборки с использованием окон.
- •Порядок расчет второго задания.
- •5. Порядок выполнения задания №3. Реализация цифрового фильтра в среде Simulink.
- •6. Проектирование цифровых фильтров в среде matlab
- •6.1. Анализ фильтров и выполнение
- •Filtic – cоздание начального состояния для функции filter:
- •Freqs – частотная характеристика аналогового фильтра:
- •Freqspace – формирование последовательности отсчетов частоты:
- •Freqz – частотная характеристика цифрового фильтра.
- •Grpdelay – групповая задержка цифрового фильтра:
- •Impz – импульсный отклик цифрового фильтра:
- •Unwrap – корректировка фазовых углов:
- •Zplane – отображение нулей и полюсов цифрового фильтра:
- •7.2. Проектирование цифровых бих-фильтров besself – проектирование аналогового фильтра Бесселя:
- •Butter – проектирование цифрового и аналогового фильтров Баттерворта:
- •Cheby1 – проектирование цифрового и аналогового фильтров Чебышева – первого типа:
- •Cheby2 – проектирование цифрового и аналогового фильтров Чебышева второго типа:
- •Ellip – проектирование эллиптического цифрового и аналогового фильтров:
- •Yulewalk – проектирование рекурсивного фильтра с использованием метода наименьших квадратов по заданной амплитудно-частотной характеристике:
- •7.3. Выбор порядка бих-фильтра buttord – выбор порядка фильтра Баттерворта:
- •Cheb1ord – выбор порядка для фильтра Чебышева первого порядка:
- •Cheb2ord – выбор порядка для фильтра Чебышева первого порядка:
- •Ellipord – выбор порядка эллиптического фильтра:
- •7.4. Проектирование ких-фильтров fir1 – фильтр fir проектируется с использованием метода окна:
- •Fir2 – проектирование фильтра fir с использованием оконного метода для произвольной формы фильтра:
- •Firls – проектирование ких-фильтра с использованием минимизации ошибок методом наименьших квадратов (мнк):
- •Intfilt – расчет интерполирующего ких-фильтра:
- •Remez – синтез оптимального fir-фильтра с равномерной (чебышевской) аппроксимацией на основе алгоритма Паркса – Мак-Клелана:
- •7.5. Преобразования
- •Dftmtx – матрица дискретного преобразования Фурье (дпф):
- •Impinvar – метод инвариантной импульсной характеристики для перевода аналогового фильтра в цифровой:
- •Список литературы
Freqspace – формирование последовательности отсчетов частоты:
FREQSPACE возвращает последовательности отсчетов частоты.
FREQSPACE полезна для получения желаемых частотных ответов для FSAMP2, FWIND1 и FWIND2 так же, как для различных 1D-приложений.
[F1,F2] = FREQSPACE(N) возвращает 2D-частотный диапазон векторов F1 и F2 для матрицы размером
[F1,F2] = FREQSPACE([M N]) возвращает 2D-частотный диапазон векторов для матрицы
Для 2D-векторов и n нечетного .
Для 2D-векторов и n четного
[F1,F2] = FREQSPACE(...,'meshgrid') – эквивалентно [F1,F2] = freqspace(...); [F1,F2] = meshgrid(F1,F2);
F = FREQSPACE(N) возвращает 1D-частотный вектор F, предполагающий наличие интервалов на единичной окружности. Для 1D-векторов . F = FREQSPACE(N,'whole') возвращает все интервалов, поэтому .
Смотри также FSAMP2, FWIND1, FWIND2.
Freqz – частотная характеристика цифрового фильтра.
Когда целое, [H,W] = FREQZ(B,A,N) возвращает для вектора частот в радианах -точечную комплексную частотную характеристику в векторе фильтра :
.
Частота отклика оценивается в точках одинаково расположенных интервалов верхней половины единичной окружности. Если не определено, то по умолчанию равно 512.
[H,W] = FREQZ(B,A,N,'whole') использует точек по всей окружности.
H = FREQZ(B,A,W) возвращает частоту отклика на частотах, назначенных в векторе , в радианах (нормально между 0 и ).
[H,F] = FREQZ(B,A,N,Fs) и [H,F] = FREQZ(B,A,N,'whole',Fs) на заданной частоте дискретизации (в герцах) возвращают вектор частот (в герцах).
H = FREQZ(B,A,F,Fs) на заданной частоте дискретизации (в герцах) возвращает комплексную частоту ответа на частотах, определенных в векторе (в герцах).
FREQZ(B,A,...) без выходных аргументов рисует амплитуду и развернутую частоту в текущем графическом окне.
Смотри также FILTER, FFT, INVFREQZ, FREQS и GRPDELAY.
Grpdelay – групповая задержка цифрового фильтра:
[Gd,W] = GRPDELAY(B,A,N) возвращает -мерные вектора и , содержащие групповую задержку и частоты (в радианах), на которых будет производиться оценка. Групповая задержка определяется как производная – . Частота отклика оценивается в точках, равномерно расположенных на верхней половине единичной окружности. Когда – степень 2, то вычисления производятся быстрее с использованием FFT. Если вы не определили , то по умолчанию оно равно 512.
GRPDELAY(B,A,N,'whole') использует N точек по всей окружности.
[Gd,F] = GRPDELAY(B,A,N,Fs) и [Gd,F] = GRPDELAY(B,A,N,'whole',Fs) на заданной частоте дискретизации (в герцах) возвращает вектор (в герцах).
Gd = GRPDELAY(B,A,W) и Gd = GRPDELAY(B,A,F,Fs) возвращают задержку группы, оцениваемую в точках (в радианах) или (в герцах), где – частота дискретизации (в герцах).
GRPDELAY(B,A,...) без выходных аргументов рисует задержку группы как функцию нормализованной частоты (Nyquist == 1) в текущем графическом окне.
Смотри также FREQZ.
Impz – импульсный отклик цифрового фильтра:
[H,T] = IMPZ(B,A) считает импульсный отклик фильтра , выбирая число выборок, и возвращает отклик в векторе-столбце и вектор промежутков времени (или образца интервалов) в ( = [0, 1, 2, ...]').
[H,T] = IMPZ(B,A,N) считает выборок импульсного отклика.
[H,T] = IMPZ(B,A,N,Fs) вычисляет выборок и шкалу так, что образцы разделены на . по умолчанию.
[H,T] = IMPZ(B,A,[],Fs) выбирает число выборок и шкалу так, что шаблоны разделены на .
IMPZ без выходных аргументов рисует импульсный отклик, используя STEM(T,H), в текущем графическом окне.
Смотри также IMPULSE в "Controls Toolbox for continuous systems".