Добавил:
Студент, если у тебя есть завалявшиеся работы, то не стесняйся, загрузи их на СтудентФайлс! Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
12
Добавлен:
22.08.2022
Размер:
312.96 Кб
Скачать
  1. Выбор метода предварительной обработки сигнала

На данном этапе задается тип фильтра (ФНЧ, ФВЧ, ПФ или РФ), нужная амплитудная характеристика и разрешенные допуски, частота дискретизации.

    1. Спецификация требований к фильтрам.

 Амплитудно-частотная характеристика полосового КИХ-фильтра задается следующими параметрами:

– затухание в полосе подавления;

– неравномерность в полосе пропускания;

ширина полосы пропускания относительно центральной частоты фильтра  ;

– ширина полосы спада относительно граничной частоты среза фильтра. Расчет граничных частот фильтра выполняется по формулам (2.1-2.2)

             ,            (2.1)

             ,            (2.2)

где:  – нижняя граничная частота полосы пропускания;

 – верхняя граничная частота полосы пропускания;

– нижняя граничная частота полосы подавления;

– верхняя граничная частота полосы подавления.

На основании формул (2.1-2.2) для каждой центральной частоты из таблицы 1.2 заполнить таблицу 2.1.

Таблица 2.1 – Частоты фильтра

Частота, Гц

Полоса пропускания, Гц

Полоса подавления, Гц

1488

1648

1398

1738

2024

2184

1934

2274

2654

2814

2564

2904

По формулам (2.3) рассчитаны отклонения в полосе пропускания δs, результаты занесены в таблицу 2.2.

                     (2.3)

Таблица 2.2– Значения отклонений в полосе пропускания и подавления

0.0839

1.0000e-003

    1. Вычисление коэффициентов фильтра.

Стандартный КИХ-фильтр характеризуется следующими уравнениями:   ,             (2.4)     где h(k), k = 0,1,…, N-1 – коэффициенты импульсной характеристики, N – длина фильтра, т.е. число коэффициентов фильтра.

    Наиболее распространенным методом вычисления коэффициентов КИХ-фильтра является оптимизационный метод. Частотная характеристика оптимального фильтра имеет равные колебания в пределах полос пропускания и подавления: в полосе пропускания реальная характеристика осциллирует между значениями   и  ; в полосе подавления – между 0 и  .

    Расчет коэффициентов КИХ-фильтра выполняется в среде Matlab методом Парса-Мак Клелана (также можно пользоваться методом Ремеза). Для расчета необходимо сформировать вектор частотной характеристики F, вектор коэффициентов передачи A  в частотной области, вектор допустимых отклонений D амплитудно-частотной характеристики фильтра от заданной.     Вектор формируется по значениям из таблицы 2.1 в следующем виде:      . Вектор коэффициентов передачи  строится на основе таблицы 1.2:      . Вектор коэффициентов отклонений  строится на основе таблицы 2.2:      . Для оценки требуемого порядка фильтра  в среде Matlab используется функция firpmord. Для синтеза фильтра используется функция firpmord.

Текст программы Matlab для расчета коэффициентов фильтра и построения графиков на рисунке 2.2

clear;

clc;

As=60;

Ap=0.7;

dfp=80;

dfs=90;

fc1=1568;

fc2=2104;

fc3=2734;

flp1=fc1-dfp

flp2=fc2-dfp

flp3=fc3-dfp

fhp1=fc1+dfp

fhp2=fc2+dfp

fhp3=fc3+dfp

fls1=flp1-dfs

fls2=flp2-dfs

fls3=flp3-dfs

fhs1=fhp1+dfs

fhs2=fhp2+dfs

fhs3=fhp3+dfs

sgp=(10.^(Ap/20))-1

sgs=10.^(-As/20)

% Расчет коэффициентов фильтра в среде Matlab:

F = [fls1 flp1 fhp1 fhs1 fls2 flp2 fhp2 fhs2 fls3 flp3 fhp3 fhs3];

A = [0 1 0 1 0 1 0 ];

D = [sgs sgp sgs sgp sgs sgp sgs ];

[n, F0, A0, W] = firpmord(F, A, D, 44100);

b_filt = firpm(n, F0, A0, W);

xlim([0 10000])

% Построение графика АЧХ фильтра:

freqz(b_filt, 1, 1024, 44100);

xlim([0 10000])

set(gcf,'color','w')

% Сохранение коэффициентов фильтра:

save('b_filt.mat', 'b_filt');

Рисунок 2.2 – АЧХ и ФЧХ фильтра

На рисунке 2.4 показана идеальная характеристика и результат расчета передаточной характеристики фильтра.

Для примера вектор F = [fls1 flp1 flp1 fhp1 fhp1 flp2 flp2 fhp2 fhp2 flp3 flp3 fhp3 fhp3 fhs3];

Af = [0 0 1 1 0 0 1 1 0 0 1 1 0 0];

fs – начальное значение; fe – значение частоты, превышающее значение fh.

% Построение характеристики фильтра в среде Matlab:

clc;

clear;

As=60;

Ap=0.7;

dfp=80;

dfs=90;

fc1=1568;

fc2=2104;

fc3=2734;

flp1=fc1-dfp;

flp2=fc2-dfp;

flp3=fc3-dfp;

fhp1=fc1+dfp;

fhp2=fc2+dfp;

fhp3=fc3+dfp;

fls1=flp1-dfs;

fls2=flp2-dfs;

fls3=flp3-dfs;

fhs1=fhp1+dfs;

fhs2=fhp2+dfs;

fhs3=fhp3+dfs;

in = load('b_filt.mat');

b_filt = in. b_filt;

Af = [0 0 1 1 0 0 1 1 0 0 1 1 0 0];

F = [fls1 flp1 flp1 fhp1 fhp1 flp2 flp2 fhp2 fhp2 flp3 flp3 fhp3 fhp3 fhs3];

nf = 1024; % количество точек аппроксимации

[h, w] = freqz(b_filt, 1, nf);

plot(F, Af, 'color', 'r');

hold on;

f = 0:(44100/2)/nf: 44100/2-1;

plot(f, abs(h), 'color', 'b');

hold off;

legend('Идеальный', 'Результат расчета');

xlim([0 5000])

Рисунок 2.4 – Характеристика полосового фильтра

Соседние файлы в папке Еще еще курсач Давыдкин
  • #
    22.08.202214.98 Кб712.09.2016.xlsx
  • #
    22.08.2022125.95 Кб712.10.2016.xls
  • #
    22.08.202215.93 Кб72.ewb
  • #
    22.08.202217.15 Кб73.ewb
  • #
    22.08.2022526 б7AScan.txt
  • #
    22.08.2022312.96 Кб12Cerf.docx
  • #
    22.08.202262.46 Кб7Echo1.txt
  • #
    22.08.20221.32 Кб7F1.m
  • #
    22.08.20228 б7GoodJobMan.m
  • #
    22.08.2022478 б7graph.m
  • #
    22.08.2022439 б7keeeeeeker.m