Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методические материалы.doc
Скачиваний:
23
Добавлен:
07.02.2016
Размер:
962.05 Кб
Скачать

Порядок выполнения работы

  1. Используя методический материал, изучите командное окно системы «MATLAB».

  2. Вычислите следующие математические выражения

2+3

x=pi/4

2.301*sin(x)

4+ехр(3)/5

y=8

sqrt(y)/2

sin(pi/2)

  1. Сохранить содержание рабочего окна в файле.

  2. Очистить рабочее пространство.

  3. Стереть видимое содержимое рабочего пространства.

  4. Загрузить содержимое рабочего пространства из файла.

  5. Создать Файл-сценарий расчета трехчастотного сигнала на фоне сильного шума, создаваемого генератором случайных чисел в соответствие с таблицей 1. Щелкнув кнопку Run на панели инструментов редактора M-файлов, запустите программу. Появится график зашумленного сигнала. Записать Файл-сценарий на диск и запустить его с командной строки MATLAB.

Таблица 1

№ вар.

1

2

3

4

5

6

7

8

9

10

75

300

225

90

450

120

150

375

135

600

100

400

300

120

600

160

200

500

180

800

125

500

375

150

750

200

250

625

225

1000

  1. Создать Файл-сценарий для построения графика спектральной плотности полученного сигнала с помощью прямого преобразования Фурье, переводящего временное представление сигнала в частотное, исполнить полученный Файл-сценарий из командной строки и построить спектр синтезируемого сигнала.

  2. Создать М-функцию для расчета трехчастотного сигнала на фоне сильного шума, создаваемого генератором случайных чисел. Отладить ее и запустить из командной строки, используя в качестве входных данных данные из таб. 1

Контрольные вопросы

  1. Из каких частей состоит главное окно системы «MATLAB»?

  2. Какая часть главного окна называется командным окном системы «MATLAB»?

  3. Как записать в файл содержание рабочего пространства?

  4. Что такое строка ввода в системе «MATLAB»?

  5. Как стереть видимое содержимое рабочего пространства?

  6. Как создать протокол сеанса работы в пакете «MATLAB»?

  7. Что такое Файл-сценарий. Его структура.

Содержание отчета

  1. Цель работы.

  2. Протокол сеанса работы с «MATLAB».

  3. Ответы на контрольные вопросы.

  4. График синтезируемого сигнала.

  5. Спектр сигнала.

Лабораторная работа №.2 Расчет низкочастотного фильтра

Цель работы: освоить технологию проектирования цифровых фильтров средствами пакета «MATLAB»

Методические указания

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

Рассмотрим следующий пример. Пусть имеется дискретный сигнал

,

где ,и- частоты составляющих сигнала,- период дискретизации,- частота дискретизации сигнала;- гауссовский шум с нулевым средним и дисперсией. Требуется выделить синусоидальную составляющую с частотой. Для этого необходимо построить фильтр нижних частот с граничными значениями частот полосы пропусканияи полосы задержанияудовлетворяющих условию. Поскольку частота Найквиста, для нормализованных значенийиэто условие будет выглядеть

.

Следовательно, переходная полосаамплитудно-частотной характеристики фильтра (АЧХ) не должна превышать величину. Эти требования схематично показаны на рис.1

Рис.1

Для решения поставленной задачи спроектируем нерекурсивный фильтр с полосой пропускания от 0 до 210 Гц и полосой задерживания от 980 до 4000 Гц, т.е. до частоты Найквиста. Кроме того, потребуем, чтобы АЧХ в полосе пропускания находилась в пределах [0.99, 1.01], а в полосе задерживания не превышала значения 0.0001. Для этого воспользуемся функциями пакета «MATLAB», оценивающим по заданным требованиям порядок фильтра и рассчитывающим его коэффициенты. Эти действия удобно выполнить с помощью графической программы FDAtool. Загрузим эту программу с помощью инструкции FDAtool. На экране появится панель Filter Design & Analysis Tool (рис.2)

Рис.2

Чтобы рассчитать фильтр необходимо выполнить следующие действия:

  1. Выполнить команду меню Analysis| Filter Specifications…;

  2. В поле Filter Type установить опцию Lowpass (фильтр нижних частот);

  3. В поле Design Method установить опцию FIR\Equiripple (фильтр с конечной импульсной характеристикой);

  4. В поле Filter Order установить опцию Minimum order (минимальный порядок фильтра);

  5. В поле Frequency Specifications установить следующие опции:

  • Units:Hz ( Гц);

  • Fs: 8000 (частота дискретизации);

  • Fpass: 210 (верхняя частота полосы пропускания);

  • Fstop:980 (нижняя частота полосы задерживания);

  • В поле Magnitude Specifications установить опции:

    • Units : dB (логарифмическая АЧХ);

    • Apass=20*log(1.01)-20*log(0.99)=0.1737 (неравномерность АЧХ в полосе пропускания);

    • Astop=20*log(0.0001)=80 (ослабления в полосе задерживания).

    После введения всех исходных данных необходимо нажать кнопку Design Filter.

    После нажатия кнопки появится панель показанная на рис.2

    Рис.3

    В верхней части панели в поле Current Filter Information дается краткая информация о фильтре (тип фильтра, порядок фильтра, информация об устойчивости). В поле Magnitude Response in dB приводится график АЧХ. С помощь команд меню Analysis (рис.3) можно просмотреть основные характеристики фильтра:

    • Magnitude Response – АЧХ;

    • Phase Response – ФЧХ;

    • Magnitude Response and Phase Response - АЧХ и ФЧХ;

    • Impulse Response - импульсная характеристика фильтра;

    • Step Response - переходная характеристика фильтра;

    • Pole/zero Plot - распределение нулей и полюсов фильтра;

    Filter Coefficients - коэффициенты фильтра;

    Рис.4

    После того как фильтр синтезирован, необходимо создать файл, в котором хранится вся информация о фильтре. Сделать это можно с помощью следующей команды меню File|Save session|Name. Для записи коэффициентов фильтра в рабочее пространство «MATLAB» необходимо воспользоваться следующей командой File|Export.

    Порядок выполнения работы

    1. В соответствие с таблицей 2.1 выбрать верхнюю границу полосы пропускания , нижнюю границу полосы задерживания, частоту дискретизации, максимальноеHmax и минимальное Hmin значение АЧХ в полосе пропускания и коэффициент затухания Kзат фильтра в полосе задерживания;

    Таблица 2.1

    № вар.

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    100

    120

    220

    350

    600

    500

    600

    400

    300

    320

    200

    180

    280

    500

    900

    1500

    1000

    500

    500

    1200

    8000

    8000

    8000

    8000

    8000

    8000

    8000

    8000

    8000

    8000

    Hmax

    1.01

    1.01

    1.01

    1.01

    1.01

    1.01

    1.01

    1.01

    1.01

    1.01

    Hmin

    0.99

    0.99

    0.99

    0.99

    0.99

    0.99

    0.99

    0.99

    0.99

    0.99

    Kзат

    0.0001

    0.0001

    0.0001

    0.0001

    0.0001

    0.0001

    0.0001

    0.0001

    0.0001

    0.0001

    1. Рассчитать частоту Найквиста ;

    2. Рассчитать переходную полосу фильтра по формуле : ;

    3. Рассчитать величину неравномерности АЧХ в полосе пропускания фильтра Apass=20*log(Hmax)-20*log(Hmin)

    4. Рассчитать период дискретизации ;

    5. Рассчитать величину затухания фильтра в полосе задерживания Astop=20*log(Kзат);

    6. В командном окне «MATLAB» ввести команду FDAtool;

    7. Выполнить все необходимые действия для расчета фильтра;

    8. С помощью меню Analysis просмотреть основные характеристики фильтра:

    • Magnitude Response – АЧХ

    • Phase Response – ФЧХ

    • Impulse Response импульсная характеристика фильтра

    • Step Response переходная характеристика фильтра

    • Pole/zero Plot распределение нулей и полюсов фильтра

    • Filter Coefficients коэффициенты фильтра;

    1. Записать коэффициентов фильтра в рабочее пространство «MATLAB» . Для этого воспользоваться следующей командой File|Export.

    2. Создать файл, в котором хранится вся информация о фильтре. Сделать это можно с помощью следующей команды меню File|Save session|Name.

    3. Просмотреть коэффициенты фильтра в рабочем пространстве «MATLAB», для чего в командном окне набрать команду NUM;

    4. Записать коэффициенты фильтра в файл. Для этого необходимо набрать в командном окне следующие команды:

    fid= fopen('B.dat','wt')

    fprintf(fid,'%16.8f\n',Num)