计算机与信息技术学院设计性实验报告
一、 实验目的
1、 了解随机信号自身的特性,包括均值(数学期望)、均方值、方差、相关函
数、概率密度、频谱及功率谱密度等。
2、 研究随机信号通过线性系统后的均值、均方值、方差、相关函数、概率密度、
频谱及功率谱密度有何变化,分析线性系统受随机信号激励后的响应。
3、 掌握线性系统的设计与仿真 4、 掌握随机信号的分析方法。
二、 实验仪器或设备
装有MATLAB 软件的电脑一台
三、 总体设计(设计原理、设计方案及流程等)
线性动态系统分析的中心问题是给定一个输入信号求输出响应。
在确定信号输入的情况下,输出响应都有一个明确的表达式。
而对于随机信号而言,要想得到输出响应的确定表达是可能的。
然而,一个随机信号可以方便的通过其均值方差、相关函数、频谱及功率谱密度等特性来加以描述。
我们在这里研究的问题是如何根据线性系统输入随机信号的统计特性及线性系统的特性,确定线性系统输出的统计特性。
当输入离散信号为双侧平稳随机信号时,信号经过线性系统后的统计特性: 输出过程的均值为:
其中
y
m 是信号经线性系统后的均值,x m 是输入信号的均值。
输出过程的自相关函数为
)
(*)()(*)(*)()(m h m R m h m h m R m R xy x y -=-=
线性系统输出的自相关是输入的自相关同系统冲击响应的自相关的卷积。
输出过程的互相关函数为
)
(*)()(m R m h m R x xy =
输出信号的均方值(平均功率)为;
)
()()()]([00
2
j k R j h k h n Y E k j x -=∑∑∞=∞
=
输出的均值为常数,输出自相关函数只是m 的函数。
输出信号的功率谱密度:
频域分析:
)
(|)(|)(2ωωωx y S H S =
实验系统框图如图
线性系统:输入信号)(sin sin sin )(321t n t t t t x +++=ωωω,其中:1ω、2ω、3ω为1KHz 、2KHz 、3KHz ,幅值为1v ,n(t)为高斯白噪声。
四、 实验步骤(包括主要步骤、代码分析等) 源程序代码如下: clc
clear all close all Fs=16000;
t = 0:1/(Fs-1):0.01;
xi1=sin(1000*2*pi*t)+sin(2000*2*pi*t)+sin(3000*2*pi*t);
xi1 = awgn(xi1,5,'measured');%在信号X 中加入白噪声,信噪比为5 fl=(0:length(xi1)-1)'*Fs/length(xi1);
Xi1=fft(xi1); %对X 进行1024点快速离散傅立叶变换 subplot(221);plot(t,xi1);title('输入信号波形');
subplot(222);plot(fl(1:length(fl)/2),abs(Xi1(1:length(fl)/2)));title('输入信号频谱'); disp('平均值') x_mn=mean(xi1)
x_vr=var(xi1) %方差 x_st=x_vr+x_mn^2 %均方值 x_arr=xcorr(xi1) %自相关函数 %线性信号自相关函数
tau=(-length(xi1)+1:length(xi1)-1)/Fs; subplot(223);plot(tau,x_arr)
title('线性信号的自相关函数'); xlabel('\tau'),ylabel('R_x_i(\tau)'); grid on; hold on;
%线性信号的功率谱密度 X_arr=fft(x_arr);
cm=abs(X_arr);
fl=(0:length(X_arr)-1)'*44100/length(X_arr);
subplot(224);plot(fl(1:length(fl)/2),cm(1:length(fl)/2));
title('线性信号的功率谱')
xlabel('f'),ylabel('S_x_i(f)');
hold on;
grid on
运行结果如下:
clc
clear all
close all
Fs=16000;
t = 0:1/(Fs-1):0.05;
xi1=sin(1000*2*pi*t)+sin(2000*2*pi*t)+sin(3000*2*pi*t);
xi1 = awgn(xi1,5,'measured');
f=[1000,2000]; %表示频率向量,用于低通滤波器的通带
m=[1,0]; % 对应f各频率向量上的理想幅频响应
rp=0.8; %通带上的偏差
fs=40 %抽样频率
dat1=(10^(rp/20)-1)/(10^(rp/20)+1);
dat2=10^(-fs/20);
rip=[dat1,dat2];
[M,fo,mo,w]=remezord(f,m,rip,Fs); %由remezord求得滤波器的阶次M、频率向量fo、幅度向量mo和加权向量w
M=M+1;
hn=remez(M,fo,mo,w); % 实现线性相位fir数字滤波器的等波纹最佳逼近设计
[h,W]=freqz(hn,1,256,1); %将256个频点均匀设置在频率范围0到2pi上,计算频率响应
h=abs(h);
h=20*log10(h);
fl=(0:length(xi1)-1)'*Fs/length(xi1);
plot(W,h);
grid on;
xlabel('频率(归一化)');
ylabel('幅度(dB)');
title('滤波器特性曲线')
Xi1=fft(xi1);
figure(2)
subplot(221);plot(t,xi1);title('滤波前信号波形');
subplot(222);plot(fl(1:length(fl)/2),abs(Xi1(1:length(fl)/2)));title( '滤波前信号频谱');
xo1=fftfilt(hn,xi1);
Xo1=fft(xo1);
subplot(223);plot(t,xo1);title('FIR后信号波形');
subplot(224);plot(fl(1:length(fl)/2),abs(Xo1(1:length(fl)/2)));title( 'FIR后信号频谱');
运行结果如下:
五、结果分析与总结
本次实验综合性强,运用到了随机信号分析,数字信号处理,概率论,matlab 等课程知识。
首先让我了解到随机信号经过线性系统后,不会增加新的频率分量。
经过滤波器滤波后,可以从调制信号中得到特定频率范围内的信号,从而提取消息信号。
这是提取消息信号的有效方法。
其次,也锻炼了我探索能力,这次实验中有很多用到的理论知识仍然没有学到的知识。
我查阅了很多资料,终于对本次实验有了基本的了解。
并且深化学习了matlab语言的应用,为以后的学习提供了很多的方便。
教师签名:
年月日。