|
Міністерство освіти і науки України
Тернопільський національний технічний університет імені І.Пулюя
Кафедра БТ
Звіт
«Кореляційна обробка сигналів: процедура та приклади застосування»
Виконали
Студенти гр. Пм – 31
Яцук Н.
Ящишин С.
Тернопіль 2010
Мета роботи: 1) практично ознайомитися з реалізацією процедури вимірювання автокореляційної функції в середовищі Matlab; 2) змоделювати декілька прикладів застосування кореляційного аналізу випадкових процесів, а саме: а) виявления періодичного сигналу, що маскується шумом; б) вимірювання частоти основного тону голосового сигналу.
1.Введення числових значень параметрів
Rvh = -16; f0 = 200; 7-й варіант
2. Моделюваня задачі виявления періодичного сигналу, що маскується шумом
Dksi = 1
A = 10^((10*log10(2)+Rvh)/20)
B = 5000;
fi = rand(1)*2*pi;
f0B = f0/B;
Ngraf = ceil(3/f0B)*2+1
i = 1: Ngraf;
S = A*cos(pi*f0B*i+fi);
ksi = randn(1, Ngraf);
Sksi = S + ksi;
subplot(3,1,1); plot(i,S);
title(‘Сигнал’);
subplot(3,1,2); plot(i,ksi);
title(‘Шум’);
title(‘Сигнал плюс шум’);
Рис.1
Ngraf = 151
Покажемо, що кореляційний аналіз випадкового процесу допомагає вирішити задачу виявлення періодичного сигналу на тлі шуму.
Побудуємо графіки кореляційних функцій.
j = i;
Ks = A^2/2*cos(pi*f0B*j);
Kksi = sinc(j);
Ky = Ks + Kksi;
figure;
subplot(3,1,1); plot(i,Ks);
title(‘Кор.ф. сигналу’);
subplot(3,1,2); plot(i,Kksi);
title(‘Кор.ф. шуму’);
subplot(3,1,3); plot(i,Ky);
Рис.2
На практиці можна лише оцінити функцію кореляції. Відповідна програма обчислення має вигляд:
Rvyh=10;
N = 10^(0.1*(Rvyh-2*Rvh+10*log10(2)))
N = 3.1698e+004
figure;
N=ceil(N);
i = 1:N;
S = A*cos(pi*f0B*i+fi);
ksi = randn(1,N);
Sksi = S + ksi;
[K_y,tau] = xcorr(Sksi,Ngraf,'unbiased');
subplot(2,1,1); plot(tau,K_y);
title(‘Оцінка функції корел.суміші’);
subplot(2,1,2); plot(tau(Ngraf+2: 2*Ngraf+1),K_y(Ngraf+2: 2*Ngraf+1));
title(‘Фрагмент оцінки (додатні затримки)’);
3. Експерименталні вимірювання частоти основного тону голосового сигналу
Y = wavrecord(15000);
wavplay(Y);
Рис 4.
Fs = 11025
t1 = 0.816; t2 = 1.018;
j1 =ceil(t1*Fs); j2 = ceil(t2*Fs);
Рис 5.
[Kzvuk,lags] = xcorr(Y1,400);
Висновок:
На цій лабораторній роботі я практично ознайомився з реалізацією процедури вимірювання авто кореляційної функції в середовищі Matlab, змоделював декілька прикладів застосування кореляційного аналізу випадкових процесів, а саме:
а) виявлення періодичного сигналу, що маскується шумом;
б) вимірювання частоти основного тону голосового сигналу.
Дата добавления: 2015-09-29; просмотров: 25 | Нарушение авторских прав
<== предыдущая лекция | | | следующая лекция ==> |
вызывай такси сибирь, собирай купоны за поездки и участвуй в розыгрыше призов! ! ! 1) собери 40 купонов и участвуй в розыгрыше главного приза - микроволновая печь. 2) собери | | | Исследование двигателя постоянного тока параллельного возбуждения. |