Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабы / Лабы Широ / ЛабыЦОС.doc
Скачиваний:
34
Добавлен:
17.04.2013
Размер:
4.85 Mб
Скачать

20

МГИЭТ (ТУ)

Кафедра ВТ

Факультет МП и ТК

Лабораторные работы №1–4 по курсу «Цифровая обработка сигналов»

Составил: д.т.н., профессор Широ Г.Э.

Москва, 2002 г.

Требования к выполнению лабораторных работ

Лабораторные работы выполняются с помощью прилагаемых программ, либо с помощью стандартных средств типа MATLAB, MathCAD.

По результатам лабораторных работ №№2, 3, 4 оформить отчет.

Срок представления и защиты отчетов по лабораторным работам №№2–4 – в дни проведения соответствующих лабораторных работ.

Отчет должен содержать:

а) титульный лист;

б) оглавление с перечнем проведенных экспериментов по пунктам руководства.

Отчет должен быть выполнен на листах белой бумаги формата А4. Все проведенные эксперименты должны быть отображены: построены графики и сопровождены текстовыми файлами, соответствующими ординатам графиков. Для «длинных» файлов приводить первые либо характерные точки.

Графики должны быть выполнены на клетчатой/миллиметровой бумаге либо компьютерным способом с применением средств визуализации настоящего лабораторного практикума или средств программы Excel.

Листы отчета должны быть жестко скреплены степлером либо с помощью дырокола.

Примечание: отчеты по лабораторным работам, сдаваемым в срок, допускается представлять преподавателю к защите на экране монитора.

Лабораторная работа №1

«Ознакомление с лабораторным практикумом по курсу «Цифровая обработка сигналов»

1. Оцифровка гармонического сигнала.

A·sin2ft  A·sin2nT)

A·cos2ft  A·cos2nT)

T=1/fs, fs – частота дискретизации.

Изучение особенностей формы оцифрованного сигнала при:

f<< fs, f  fs/2 (частота Найквиста), f  fs.

1.1 Запустить программу filter.exe

1.2. Выбрать частоту дискретизации fs = 50, для этого установить параметр Fs+1 (Size) равным 51.

1.3. Установить вид сигнала «синусоида» Sin, «косинусоида» Cos со следующими параметрами сигнала:

  • входная амплитуда Inp.Ampl. 2;

  • частота Freq 1 Гц.

Для масштабирования графиков выделить соответствующее окно и нажать «+» рядом с надписью «Смещение» Shift в разделе «Параметры окон» Windows param..

Для получения текстового файла соответствующего графика нажать «Сохр. сигн.» Save Output. Далее следует переименовать файл «output.sig» в файл с уникальным именем, например «sin1.sig».

Для отображения графика из существующего файла нажать «Загр. сигн.» Load .sig и выбрать имя файла.

Отобразить 2 графика – для Sin (рис. 1) и Cos.

1.4. Повторить п. 1.1-1.3 для той же частоты дискретизации fc, сигналов “синусоида”, “косинусоида”.

‑ входная амплитуда Inp.Ampl 2;

‑ частота Freq 24 Гц, 49 Гц, 51 Гц;

– отобразить 6 графиков.

0.0000000000000000

0.2506664671286085

0.4973797743297096

0.7362491053693559

0.9635073482034306

1.1755705045849463

1.3690942118573775

1.5410264855515785

1.6886558510040302

1.8096541049320392

1.9021130325903071

1.9645745014573774

-1.3690942118573766

-1.1755705045849452

-0.9635073482034306

-0.7362491053693557

-0.4973797743297090

-0.2506664671286076

а) б)

Рис. 1. Синусоида с входной амплитудой 2, частотой 1 и частотой дискретизации 50 (а) и текстовый файл sin1.sig (б)

2. Вычисление модуля и аргумента аналитического сигнала.

2.1. Сформировать файлы = Re + i·Im = 2cos2t + i·2sin2t, fs=50, Inp. Ampl.=2, Freq.=1Гц.

Для этого сформировать сигнал «косинусоида» Cos с соответствующими параметрами, сохранить его и переименовать в «RE2.SIG». Аналогично для синусоиды – «IM2.SIG».

2.2. С помощью программы «kombin.exe» вычислить:

; .

Формат вызова

kombin file1 +/-/*/m/f file2 [file3]

m – modul

f – arctg

file1, file2 - input file

file3 - output file

Внимание:

  • При отсутствии указания имени выходного файла file3 в явном виде, имя выходного файла будет сформировано с указанием имён исходных файлов и производимой операции.

Для указанного примера:

kombin im.sig m re.sig

будет сформирован выходной файл модуля «im-m-re.sig»

kombin im.sig f re.sig

будет сформирован выходной файл аргумента «im-f-re.sig».

Отобразить 4 графика.

Re.sig:

2.0000000000000000

1.9371663222572622

1.7526133600877272

1.4579372548428231

1.0716535899579931

0.6180339887498949

0.1255810390586266

-0.3747626291714496

Im.sig:

0.0000000000000000

0.4973797743297096

0.9635073482034306

1.3690942118573775

1.6886558510040302

1.9021130325903071

1.9960534568565431

1.9645745014573772

Im-m-re.sig:

2.000000

2.000000

2.000000

2.000000

2.000000

2.000000

2.000000

2.000000

Im-f-re.sig:

0.000000

14.400000

28.800001

43.200001

57.599998

72.000000

86.400002

Рис. 2. Вычисление модуля и фазы сигнала

2.3. Повторить пункт 2.1 и 2.2 для частоты 24.

3. Снятие переходных и импульсных характеристик цифровых фильтров.

3.1. Вызвать коэффициенты БИХ-фильтра с передаточной функцией .

Для этого нажать «Загр. коэф.» Load .kf и выбрать «08.kf».

3.2. Промоделировать переходной процесс фильтра при ступенчатом входном воздействии. Для этого выбрать вид сигнала «Ступенька» Stupenka, Inp. Ampl.=1. Отобразить переходной процесс, установив временную шкалу параметром Fs+1 (Size). Вычислить графически  – цифровую постоянную времени.

08.kf

output.sig

0.82

#

0.2

0.2000000000000000

0.3640000000000000

0.4984800000000000

0.6087536000000000

0.6991779520000000

0.7733259206400001

0.8341272549248000

0.8839843490383359

Рис. 3. Переходной процесс (фильтр «08.kf», Fs+1 (Size)=30)

3.3. Повторить пункт 3.2. для импульсной характеристики – при виде сигнала «Одиночный импульс» Pulse.

3.4. Задать параметры фильтра с передаточной функцией .

Для этого сформировать файл «05-1_1.kf»:

1

1

#

0.5

и повторить пункты 3.2, 3.3.

4. Снятие частотных характеристик фильтра.

4.1. Вызвать фильтр «08.kf».

4.2. Снять амплитудно-частотную характеристику фильтра.

Установить fs=500 (Fs+1 (Size) =501), вид сигнала «Синусоида» Sin с параметрами: амплитуда 1, частота f=1÷250. Измерять амплитуду выходного сигнала («вых. min» Outp. min в разделе «Параметры сигнала»). Найти частоту среза fс– частота, при которой коэффициент усиления фильтра снижается на –3дБ (0,71 по амплитуде). Построить график АЧХ (вручную).

Примечание: для получения точки f=0 выбрать вид сигнала «Ступенька» Stupenka.

F

K

0

1,1  

10

0,93

15

0,80

16

0,77

25

0,59

50

0,34

200

250

0,12

0,00

Рис. 4. Амплитудно-частотная характеристика фильтра 08.kf

4.3. Снять фазо-частотную характеристику фильтра.

На вход подать комплексный сигнал Ŝ с параметрами: амплитуда 1, частота f=1÷250. Для каждой частоты формируются 4 файла для входа и выхода фильтра: Ri.sig, Ii.sig, Ro.sig, Io.sig. Вычисляется фаза входного и выходного сигнала (in, out). Затем вычисляется разность фаз =out – in.

Пример.

Вызвать нулевой/единичный фильтр 0.kf.

Сформировать файл Ri.sig: вид сигнала «Косинусоида» Cos, Inp.Ampl. 1, Freq. f=18, Fs+1 (Size)=501.

Сформировать файл Ii.sig: вид сигнала «Синусоида» Sin, Inp.Ampl 1, Freq. f=18, Fs+1 (Size)=501.

С помощью программы «kombin» вычислить фазу сигнала:

kombin Ii.sig f Ri.sig

В результате будет сформирован выходной файл аргумента «Ii-f-Ri.sig».

Вызвать фильтр «08.kf».

Подать на вход сигнал «Косинусоида» Cos, амплитуда 1, f=18, Fs+1 (Size)=501.

Сохранить и переименовать в файл «Ro.sig» реакцию фильтра на заданное воздействие.

Подать на вход сигнал «Синусоида» Sin, амплитуда 1, f=18, Fs+1 (Size)=501.

Сохранить и переименовать в файл «Io.sig» реакцию фильтра на заданное воздействие.

С помощью программы «kombin» вычислить фазу сигнала:

kombin Io.sig f Ro.sig

В результате будет сформирован выходной файл аргумента «Io-f-Ro.sig».

С помощью программы «kombin» вычесть из фазы выходного сигнала фазу входного:

kombin Io-f-Ro.sig - Ii-f-Ri.sig

В результате будет сформирован выходной файл аргумента «Io-mn-Ii.sig».

Отобразить 3 графика (Ii-f-Ri.sig, Io-f-Ro.sig, Io-mn-Ii.sig)

Показаны 100 первых отсчетов (из 500)

Ii-f-Ri.sig

Io-f-Ro.sig

Io-mn-Ii.sig

0.00

12.96

25.92

38.88

51.84

64.80

77.76

90.72

103.68

116.64

129.60

142.56

155.52

168.48

-178.56

-165.60

-152.64

-139.68

-126.72

-113.76

-100.80

-87.84

-74.88

0.00

7.20

14.89

23.06

31.70

40.83

50.42

60.48

70.99

81.92

93.25

104.95

116.97

129.27

141.81

154.53

167.39

-179.65

-166.62

-153.56

-140.48

-127.40

-114.33

0.00

-5.76

-11.03

-15.83

-20.14

-23.97

-27.34

-30.24

-32.69

-34.72

-36.35

-37.61

-38.55

-39.21

320.37

320.13

320.03

-39.97

-39.90

-39.80

-39.68

-39.56

-39.45

Рис.5. Вычисление задержки фазы  на выходе фильтра “08.kf” (установившееся  = –39,15)

4.4. Повторить п. 4.3. для f=1, 15, 25, 50. (без отображения графиков). Построить ФЧХ фильтра.

Рис.6. Фазо-частотная характеристика фильтра “08.kf”

5. Исследование работы фильтра при наличии шума.

5.1. С помощью программы «shum_w.exe» сформировать сигнал шума с параметрами: длина 50, амплитуда 0,5, инициализация 1.

Формат вызова:

shum_w 50 0.5 1

Результирующий экран:

Dlina=50 Amplituda=0.500000 inic=1

MatOgidanie=-0.007175

SigmaKvadrat=0.067838

Rezultat v faile shum.sig

Nagmite klavishu.

В результате будет сформирован файл shum.sig

Отобразить сигнал шума.

shum.sig

-0.01

-0.17

-0.18

-0.27

0.35

-0.14

0.05

-0.28

0.08

Рис. 7. Сигнал шума с параметрами “50 0.5 1”

5.2 Сформировать сигнал «Синусоида» Sin: амплитуда 1, частота 1, частота дискретизации 50. (файл Si.sig»)

5.3 С помощью программы «kombin.exe» наложить шум на сигнал:

kombin si.sig + shum.sig

В результате будет сформирован файл si-pl-sh.sig

5.4 Вызвать фильтр «08.kf», подать на его вход «si-pl-sh.sig»

Сохранить реакцию фильтра в «output.sig»

Отобразить «si-pl-sh.sig» и «output.sig».

Si-pl-sh.sig

Output.sig

-0.01

-0.04

0.07

0.10

0.83

0.45

0.74

0.49

0.93

1.25

1.36

0.87

1.47

0.00

-0.01

-0.05

0.03

0.13

0.93

1.20

1.70

1.85

2.40

3.17

3.90

3.99

Рис. 8. Подавление шума фильтром “08.kf”

5.5. Повторить п. 5.1…5.4 со следующими параметрами.

Сигнал шума с параметрами: длина 50, амплитуда 0,25, инициализация 2.

Сигнал «Синусоида»: амплитуда 1, частота 2, частота дискретизации 50. (файл S2.sig»).

6. Исследование обработки шумоподобного сигнала (ШПС)

6.1. Вызвать КИХ-фильтр с импульсной характеристикой, соответствующей коду Баркера «Barker.kf».

1

1

1

1

1

-1

-1

1

1

-1

1

-1

1

#

0

Промоделировать импульсную характеристику, подав на вход фильтра импульсное воздействие. Параметр Fs+1 (Size)=14. Отобразить 1 график.

Output.sig

1

1

1

1

1

-1

-1

1

1

-1

1

-1

1

Рис. 9. Импульсная характеристика фильтра “Barker.kf”

Сравнить с параметрами фильтра «Barker.kf».

6.2. Подать на вход фильтра сигнал «Barker.sig». Отобразить результат обработки.

Output.sig

1

0

1

0

1

0

1

13

0

1

Рис. 10. Обработка (сжатие) сигнала фильтром “Barker.kf”

6.3. Повторить пункты 6.1, 6.2 для фильтра «M.kf».

7. Исследование обработки линейно-частотно модулированного сигнала (ЛЧМ).

7.1. Сформировать ЛЧМ-сигнал с помощью программы «lchmg.exe»:

Формат вызова:

lchmg N Name1.sig Name2.sig [k: A B C]

Name1.sig и Name2.sig – имена файлов, по которым будет записан сформированный сигнал (синусная и косинусная составляющие соотв.)

Пример. N=9, A=/16, В= – 0.45, С=0.

LCHMG.EXE 9 c.sig s.sig k: 0.196349538 -1.41371667 0

s.sig

0.000000

-0.938191

-0.891007

-0.619094

-0.587785

-0.831470

-0.987688

-0.271440

0.951057

c.sig

1.000000

0.346117

-0.453990

-0.785317

-0.809017

-0.555570

0.156435

0.962455

0.309017

Рис. 11. ЛЧМ-сигнал, сформированный программой “lchmg.exe”

7.2 Сформировать импульсную характеристику фильтра “c.sig”, “s.sig”с помощью программы зеркального отображения «zerk.exe».

Формат вызова:

zerk N name1.sig name2.sig name3.sig name4.sig

(input) (output)

Пример.

ZERK.EXE 9 C.sig S.SIG C_.sig S_.sig

s_.sig

-0.951057

0.271440

0.987688

0.831470

0.587785

0.619094

0.891007

0.938191

-0.000000

c_.sig

0.309017

0.962455

0.156435

-0.555570

-0.809017

-0.785317

-0.453990

0.346117

1.000000

Рис. 12. Импульсная характеристика фильтра “ЛЧМ”

7.3 Сформировать фильтр c.kf, s.kf

Переименовать файл c_.sig в c.kf,.

Переименовать файл s_.sig в s.kf.

Дополнить файлы «c.kf», «s.kf» заголовками символом #

c.kf

s.kf

0.309017

0.962455

0.156435

-0.555570

-0.809017

-0.785317

-0.453990

0.346117

1.000000

#

0

-0.951057

0.271440

0.987688

0.831470

0.587785

0.619094

0.891007

0.938191

-0.000000

#

0

Рис. 13. Коэффициенты фильтра “ЛЧМ”

7.4 Сформировать файлы сигналов, подаваемых на вход фильтра

Дополнить файлы «c.sig», «s.sig» N-1 нулями (в конце)

c.sig

s.sig

1.000000

0.346117

-0.453990

-0.785317

-0.809017

-0.555570

0.156435

0.962455

0.309017

0

0

0

0

0

0

0

0

0.000000

-0.938191

-0.891007

-0.619094

-0.587785

-0.831470

-0.987688

-0.271440

0.951057

0

0

0

0

0

0

0

0

Рис. 14. ЛЧМ-сигнал с добавленными нулями

7.5 С помощью программы «filter.exe» выполнить обработку и сформировать 4 файла

«cc.sig» - фильтр «c.kf» сигнал «c. sig»,

«cs.sig» - фильтр «c.kf» сигнал «s. sig»,

«ss.sig» - фильтр «s.kf» сигнал «s. sig»,

«sc.sig» - фильтр «s.kf» сигнал «c. sig».

cc

cs

Ss

sc

0.3090170000000000

1.0694110369890000

0.3492664094050000

-1.1810464359440001

-2.0781614268639998

-1.8862824090090000

-0.5351459949190001

1.9913757977890001

3.9520762620059999

1.9913757977890001

-0.5351459949190001

-1.8862824090090000

-2.0781614268639998

-1.1810464359440001

0.3492664094050000

1.0694110369890000

0.0000000000000000

-0.2899169682470000

-1.1783029290239999

-1.1956306218680000

-0.3956395792899999

0.3345262801819999

0.6041522172250002

0.7885097213870003

1.3815723251150001

1.5903664037710001

0.9131689854330002

0.0218116985410001

-0.9834252613589999

-1.7969757919650000

-1.5134083659099999

0.0577369956690000

0.0000000000000000

0.8922731178870000

0.5927358793590001

-0.5797012501300001

-1.2691444292009999

-1.2725448985070000

-1.4862018782930000

-3.0713476567350000

-5.0479234506840003

-3.0713476567350000

-1.4862018782930000

-1.2725448985070000

-1.2691444292009999

-0.5797012501300001

0.5927358793590001

0.8922731178870000

-0.9510570000000000

-0.0577369956690000

1.5134083659099999

1.7969757919650000

0.9834252613589999

-0.0218116985410001

-0.9131689854330002

-1.5903664037710001

-1.3815723251150001

-0.7885097213870003

-0.6041522172250002

-0.3345262801819999

0.3956395792899999

1.1956306218680000

1.1783029290239999

0.2899169682470000

Рис. 15. Промежуточные значения работы фильтра “ЛЧМ”

7.6 Вычислить реальную и мнимую составляющие выходного сигнала с помощью программы «kombin».

re=c·c – s·s

im=c·s + s·c

Cc-mn-ss.sig

0.309017

0.177138

-0.243469

-0.601345

-0.809017

-0.613738

0.951056

5.062724

9.000000

5.062724

0.951056

-0.613738

-0.809017

-0.601345

-0.243469

0.177138

Cs-pl-sc.sig

-0.951057

-0.347654

0.335106

0.601345

0.587786

0.312715

-0.309017

-0.801857

0.000000

0.801857

0.309017

-0.312715

-0.587786

-0.601345

-0.335106

0.347654

Рис. 16. Форма сигнала полученного с помощью фильтра “ЛЧМ”

7.7 Вычислить модуль выходного сигнала с помощью программы «kombin».

mod=. Отобразить. Дать текст вызова:

kombin cc-mn-ss.sig m cs-pl-sc.sig

Cc-m-cs.sig

1.000000

0.390181

0.414214

0.850430

1.000000

0.688814

1.000000

5.125832

9.000000

5.125832

1.000000

0.688814

1.000000

0.850430

0.414214

0.390181

Рис. 17. Модуль сигнала полученного с помощью фильтра ЛЧМ

7.2. Повторить п. 7.1..7.7 для N=32 A=/64 B= – 0.47, С=0.

8. Исследование работы фильтра, основанного на преобразовании Фурье.

8.1. Просинтезировать и обработать ЛЧМ-сигнал с помощью «lchmg.exe»:

Формат вызова:

lchmg N Name1.sig Name2.sig [k: A B C]

Пример. N=256, A=/510, B= – 0.45, С.

lchmg 256 re1.sig im1.sig k: 0.006159985 -1.41371667

(формирование ЛЧМ-сигнала)

zerk 256 re1.sig im1.sig re2.sig im2.sig

(формирование импульсной характеристики фильтра)

bpfa 512 re1.sig im1.sig a.sig b.sig 0.001

(прямое БПФ ЛЧМ-сигнала)

bpfa 512 re2.sig im2.sig c.sig s.sig 0.001

(прямое БПФ импульсной характеристики фильтра)

unit 512 a.sig b.sig c.sig s.sig u1.sig u2.sig 0.001

(перемножение БПФ сигнала на БПФ импульсной характеристики)

obpfa 512 u1.sig u2.sig out_re.sig out_im.sig 0.001

(обратное БПФ – получение результата обработки)

filter

(вызов программы визуализации)

Примечание:

здесь: константа 0.001 в программах bpfa, unit, obpfa задает ограничения в результатах соответствующих вычислениях.

Отобразить 2 графика результата обработки: out_re.sig out_im.sig в одном масштабе.

Out_re.sig

-375.100006

-30.200000

206.700003

7.400000

-61.500001

12.600000

-92.000001

131058.201953

Out_im.sig

-352.700005

-5.200000

454.600007

37.700001

-494.800007

-94.900001

485.400007

12987.30019

Рис. 18. Форма сигнала, полученного с помощью фильтра, основанного на преобразовании Фурье

8.2. Повторить пункт 8.1 для N=32, A=/64, B= – 0.45, С.

Лабораторная работа №2

«Исследование согласованной фильтрации линейно-частотно-модулированных (ЛЧМ) и шумоподобных сигналов»

Соседние файлы в папке Лабы Широ