Новосибирский Государственный Технический Университет
Кафедра Систем Сбора и Обработки Данных
Дисциплина «Теория и обработка сигналов», 6 - й семестр
Отчет
ПО ЛАБОРАТОРНОЙ РАБОТЕ № 11
«Случайные сигналы и их характеристики»
Факультет: АВТ
Группа: АТ-33
Вариант: 2
Студент: Швецов А. В. Преподаватель: доц. Щетинин Ю.И.
Новосибирск, 2006
Цель работы: изучение основных характеристик стационарных случайных сигналов (среднего значения, автокорреляционной функции, спектральной плотности мощности) и приобретение практических навыков их вычисления и анализа в среде Matlab.
randn() – функция Matlab, для генерации последовательности случайных величин, распределенных по нормальному закону распределения.
Matlab Function (mean_var.m)
%Функция генерирует последовательность случайных величин распределенных
%по нормальному закону, вычисляет среднее и дисперсию данной последовательности
%при помощи встроенных функций и математических формул, и строит график
%распределения данной последовательности, график плотности вероятности и
%гистограмму сигнала.
function [mat, disp, mean_matlab, var_matlab] = mean_var(N)
X=randn(1,N);
%вычисление среднего
sum=0;
for i=1:N,
sum=sum+X(i);
end
mat=sum/N;
%вычисление дисперсии
sum=0;
for i=1:N,
sum=sum + ((X(i)-mat)^2);
end
disp=sum/(N-1);
%вычисление среднего и дисперсии при помощи встроенных функций Matlab
mean_matlab=mean(X);
var_matlab=var(X);
%построение графика распределения
stem(X);
title('Распределение случайной величины по нормальному закону распределения ( N = 500)')
%построение гистограммы и
figure(2);
x=-4:0.1:4; % интервал для построения графика плотности вероятности
% нормальной случайной величины
f=(1/sqrt(2*pi*disp)).*exp(-1*power(x-mat,2)./(2*disp));
subplot(2,1,1)
plot(x,f)
title('График плотности вероятности')
subplot(2,1,2)
hist(X,20) % график гистограммы сигнала Х
title('Гистограмма сигнала')
>> [Mat, Disp, mean_matlab, var_matlab] = mean_var(500)
Mat =
-0.04080021564670
Disp =
1.06677298257495
mean_matlab =
-0.04080021564670
var_matlab =
1.06677298257495
Рис. 1. Распределение случайной величины по нормальному закону распределения (N = 500)
Комментарии:
График на Рис. 1. иллюстрирует распределение 500 значений случайной величины по нормальному закону распределения с = 0.
Дисперсия и среднее вычисленные по математическим формулам полностью совпадают с результатами функции mean() и var() (функции Matlab для вычисления среднего и дисперсии).
Плотность вероятности нормального распределения определяется следующим образом:
где - средне квадратичное отклонение случайного сигнала, , где DX - дисперсия.
- математическое ожидание (среднее).
Иначе формулу плотности вероятности можно записать следующим образом:
,.
Рис. 2. График плотности вероятности и гистограмма сигнала Х.
Комментарии:
Из графиков видно, что наиболее вероятным диапазоном значений распределения является интервал от -0,5 до +0,5, но в данной выборке отрицательных значений больше, что очень хорошо видно на гистограмме.
Определим аналитически АКФ выходного сигнала для системы с уравнением:
Импульсная характеристика системы, как реакция на поданную на вход δ-функцию:
Выражение связи между АКФ выходного и входного сигналов ЛДС:
Свертка импульсных характеристик h[n] и h[-n]:
АКФ выходного сигнала:
Matlab Script (labwork11_2.m)
%Построение графика АКФ выходного сигнала
X=randn(1,500);
h=[1 4 6 4 1];
x=xcorr(X,'biased');
y=conv(h,x);
subplot(1,1,1)
stem(y)
title('АКФ выходного сигнала')
Рис. 3. График АКФ выходного сигнала.
Рис. 4. График АКФ выходного сигнала(увеличенный масштаб).
Комментарии:
Автокорреляционная функция – важная статистическая характеристика случайного процесса, она показывает то, как сильно связаны между собой значения сигнала, так как любой реальный процесс имеет конечную инерционность.
Matlab Script (labwork11_3.m)
%Построение графиков рассеивания
X=randn(1,1000);
t=3:1000;
Y(t)=X(t)+2*X(t-1)+1*X(t-2);
i=1:900;
Y0(i)=Y(i);
Y1(i)=Y(i+1);
subplot(411)
plot(Y0,Y1,'.')
title('График рассеяния Yi,Yi+1')
Y2(i)=Y(i+2);
subplot(412)
plot(Y0,Y2,'.')
title('График рассеяния Yi,Yi+2')
Y3(i)=Y(i+3);
subplot(413)
plot(Y0,Y3,'.')
title('График рассеяния Yi,Yi+3')
Y4(i)=Y(i+4);
subplot(414)
plot(Y0,Y4,'.')
title('График рассеяния Yi,Yi+4')
Рис. 5. Графики рассеивания сигнала.
Комментарии:
Диаграммы рассеяния показывают степень коррелированности для различных случаев сигнала Y. На первом графике значения Yi и Yi+1 более коррелированны, исходя из этого, зная величину Yi, можно предсказывать среднее значение Yi+1 . На последующих графиках видно, что степень коррелированности значений уменьшается.
Matlab Script (labwork11_4.m)
%построение АКФ по пункту 3 и 5
%АКФ
X=randn(1,500);
h=[1 4 6 4 1];
x=xcorr(X,'biased');
Y1=conv(h,x);
figure(1);
subplot(2,1,1);
stem (Y1);
set(gca,'FontName', 'Times New Roman Cyr', 'FontSize', 10)
title('АКФ выходного cигнала (п.3)');
X=randn(1,500);
x=xcorr(X,'biased');
Y2=conv(h,x);
subplot(2,1,2);
stem (Y2);
set(gca,'FontName', 'Times New Roman Cyr', 'FontSize', 10)
title('АКФ выходного cигнала (п.5)');
%ВКФ
figure (2);
a=[1];
b=[2 -0.8 -0.5];
f=filter(b,a,X);
Y3=xcorr(f,X);
%построение графика выходного и входного сигнала для системы
stem(Y3/500);
set(gca,'FontName', 'Times New Roman Cyr', 'FontSize', 10)
title('ВКФ выходного и входного сигнала для системы');
Рис. 6. Графики АКФ выходного сигнала построенные по п.3 и п.5
Рис. 7. График взаимной корреляционной функции.
Комментарии:
Взаимная корреляционная функция (ВКФ) - это функция корреляции между двумя случайными процессами X и Y.
MatlabScript (labwork11_5.m)(основан на Приложении 4 Лабораторной работы 11)
% Формирование частотной шкалы
% и построение частотной характеристики фильтра
Ts=0.01; T=10; % интервал отсчетов и длительность сигнала
df=1/T; Fmax=1/Ts;
f=0:df:Fmax/2; % частотная шкала
d1=length(f);
% Частотная характеристика фильтра
H=2./(1+0.8*exp(-j*2*pi*f*Ts)+0.5*exp(-j*4*pi*f*Ts));
figure(1)
subplot(3,1,1), plot(f,abs(H))
title(' АЧХ фильтра')
% Вычисление и построение спектра мощности входного шума
t=0:Ts:T;
X=randn(1, length(t)); % Генерирование входного шума
[Sxx, f1]=psd(X,d1, Fmax); % Вычисление спектра мощности входа
subplot(3,1,2), stem(f1,Sxx)
title(' Спектр мощности входа')
% Вычисление и построение спектра мощности выхода
i=2:length(X);
Y=zeros(1, length(X));
% Формирование выходного сигнала фильтра
b=2; a=[1 0.8 0.5];
Y=filter(b,a,X);
[Syy, f2]=psd(Y,d1,Fmax); % Спектр мощности выхода
subplot(3,1,3), stem(f2,Syy)
title(' Спектр мощности выхода')
xlabel(' Частота, Гц')
Рис. 8. График АЧХ фильтра, спектральной плотности мощности
входного и выходного сигналов.
Комментарии:
Спектральная мощность выходного сигнала вычисляется следующим образом:
где – спектральная плотность входного сигнала, а - частотная характеристика фильтра. Это соответствует результатам изображенным на графике, а именно: при малых частотах сигнала, происходит незначительное увеличение мощности сигнала на выходе, а при высоких частотах, происходит увеличение мощности в несколько раз, так как исходное уравнение фильтра, соответствует фильтру высоких частот.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.