测量信号分析与处理第一次作业.docx
《测量信号分析与处理第一次作业.docx》由会员分享,可在线阅读,更多相关《测量信号分析与处理第一次作业.docx(20页珍藏版)》请在冰豆网上搜索。
![测量信号分析与处理第一次作业.docx](https://file1.bdocx.com/fileroot1/2023-2/8/a07a8c96-93f4-43ce-8e63-9024d9130536/a07a8c96-93f4-43ce-8e63-9024d91305361.gif)
测量信号分析与处理第一次作业
作业一
一、习题1-17
1、题目
在MATLAB/Simulink平台上构造图1-20所示的仿真系统,其中,线性系统用某一低通滤波器来仿真。
试分别用正弦信号、白噪声和伪随机序列作为系统的输入信号,从“示波器”观察输出波形;并说明如何选取恰当的输入信号,才能获得正确的系统辨识结果。
2、题目分析
2.1关键词释义:
1)低通滤波器:
容许低于截止频率的信号通过,但高于截止频率的信号不能通过的电子滤波装置。
2)白噪声:
一种理想化的数学模型,平均功率是无限的。
在实际中,如果噪声的频谱在一个比实际系统频带宽得多的范围内具有比较“平坦”的曲线,就可近似的当成白噪声来处理。
通常,把这种噪声称为限带白噪声。
白噪声的自相关函数是脉冲函数,与其它噪声几乎都互不相关,因此用白噪声作为输入信号能够排除其它干扰信号的影响。
3)伪随机序列:
二进制伪随机序列或PN序列是由1或0组成的序列,它的相关函数与白噪声很相似,近似为一个脉冲,但有一个重复周期T,最常用的PN序列是M序列。
2.2解题思路
搭建仿真平台——合理设置仿真参数——输出结果分析对比。
2.2.1用正弦信号作为系统的输入信号:
图正弦信号输入仿真系统框图
2.2.2用白噪声作为系统的输入信号:
图白噪声信号输入仿真系统框图
Band-LimitedWhiteNoise(限带白噪声)
Ø模块功能:
给一个连续系统引入白噪声
Ø模块说明:
Band-LimitedWhiteNoise模块生成正态分布的随机数,它适用于连续或者混合系统。
它以一定的采样率产生输出
Ø模块数据类型:
双精度类型实数信号
Ø模块参数对话框
Noisepower:
白噪声功率谱密度图的高度。
Sampletime:
噪声相关时间,Sampletime有对应公式,这是对仿真系统的要求,实际计算好后,是一个定值,理论上为0。
图中设置为0.1。
Seed:
发生随机数的开始种子。
如果不改变seed起始,每次使用此模块生成的高斯白噪声,不会发生任何变化,可以保证每次运行结果一致,噪声可控。
图中设置:
Band-LimitedWhiteNoise[21641]
Band-LimitedWhiteNoise1[23341]
2.2.3用伪随机序列作为系统的输入信号:
伪随机序列由PN序列产生,PN序列是一种伪噪声序列,这类序列具有类似随机噪声的一些统计特性,但和真正的随机信号不同,它可以重复产生和处理。
最常用的一种是最长线形反馈移位寄存器序列,也称作m序列,通常由反馈移位寄存器产生。
m序列的随机特性包括:
平衡特性、游程特性、相关特性。
伪随机序列的周期需要大于系统的调整时间(在单位阶跃信号激励下,系统瞬态响应趋于稳态值所经历的时间);
选取适当的伪随机序列的时钟周期,以确保伪随机序列的谱宽大于线性系统的谱宽。
图伪随机序列信号输入仿真系统框图
3、运行结果
1)用正弦信号作为系统的输入信号,“示波器”输出波形:
由上图可知,用正弦信号作为系统的输入,无法实现系统辨识,因为正弦信号是单频信号,它不可能覆盖线性系统的频带,因而不能得到正确的辨识结果。
2)用限带白噪声作为系统的输入信号,“示波器”输出波形:
由上图可知,用限带白噪声作为系统的输入,其相关函数近似为脉冲函数,可以近似的辨别出系统的单位脉冲响应函数。
3)用伪随机序列作为系统的输入信号,“示波器”输出波形:
由上图可知,用伪随机序列作为系统的输入,可以近似的辨别出系统的单位脉冲响应函数。
4、收获体会
第一次使用matlab的simulink模块进行仿真工作,从最开始看到题目的手足无措,然后一步步的开始查阅资料,熟悉仿真步骤,了解仿真模块的功能,以及如何设置仿真参数,直至看到最后的输出结果,内心的欣喜不言而喻。
本次仿真让我认识到了输入信号的合理选择可以决定系统的辨识结果的好坏。
图中延迟的作用:
为了取得精确的估计值,必须延长积分时间,计算互相关函数就要耗费大量的时间,从而影响在线辨识的实时性。
5、源代码
1)正弦信号输入(参见zhengxian1.m)
clc
clear
tao=0:
0.1:
9.9;
Ryx=ScopeData.signals.values;
hs=Ryx(1:
100:
10000);
plot(tao,hs);
title('正弦信号输出波形');
ylabel('hs(τ)');
xlabel('τ/s');
gridon;
2)白噪声输入(参见baizaosheng1.m)
clc
clear
tao=0:
0.1:
9.9;
Ryx=ScopeData.signals.values;
hw=Ryx(1:
100:
10000);
plot(tao,hw);
title('白噪声信号输出波形')
ylabel('hw(τ)')
xlabel('τ/s')
gridon
3)伪随机序列输入(参见weisuijixulie1.m)
clc
clear
tao=0:
0.1:
9.9;
Ryx=ScopeData.signals.values;
hp=Ryx(1:
100:
10000);
plot(tao,hp);
title('伪随机序列信号输出波形')
ylabel('hp(τ)')
xlabel('τ/s')
gridon
二、习题1-19
1、题目
设随机序列为
式中:
为标准高斯白噪声。
要求编写MATLAB程序,计算:
(1)随机序列
的均值、均方值和均方差;
(2)随机序列
的功率谱。
2、题目分析
2.1关键词释义:
1)高斯白噪声:
均匀分布于给定频带上的高斯噪声;所谓高斯白噪声中的高斯是指概率分布是正态函数,而白噪声是指它的二阶矩不相关,一阶矩为常数,是指先后信号在时间上的相关性。
这是考察一个信号的两个不同方面的问题。
如果一个噪声,它的幅度服从高斯分布,而它的功率谱密度又是均匀分布的,则称它为高斯白噪声。
2)标准高斯白噪声:
均值为0,方差为1的高斯随机序列。
3)功率谱:
功率谱是功率谱密度函数的简称,它定义为单位频带内的信号功率。
它表示了信号功率随着频率的变化情况,即信号功率在频域的分布状况。
2.2解题思路
根据采样定理,确定采样频率:
在进行模拟/数字信号的转换过程中,当采样频率fs大于信号中最高频率fmax的2倍时(fs>2fmax),采样之后的数字信号完整地保留了原始信号中的信息,一般实际应用中保证采样频率为信号最高频率的2.56~4倍;采样定理又称奈奎斯特定理。
(本次仿真按照4倍最高频率确定采样频率)
3、运行结果
随机序列xk的均值为-0.0097;
随机序列xk的均方值为3.4827;
随机序列xk的均方差为1.8671;
随机序列xk的功率谱如下图所示:
4、收获体会
功率谱分析方法多样,本次仿真采用的是直接法(又称周期图法),把随机序列x(k)的N个观测数据视为一能量有限的序列,直接计算x(k)的离散傅立叶变换,然后再取其幅值的平方,并除以N,作为序列x(k)真实功率谱的估计。
习题书中采用的psd命令,根据查阅相关资料,该命令现已被pwelch命令取代。
matlab标准高斯白噪声的生成方法:
生成高斯分布的随机数就用randn();MATLAB中产生高斯白噪声可以直接应用两个函数,一个是WGN,另一个是AWGN。
WGN用于产生高斯白噪声,AWGN则用于在某一信号中加入高斯白噪声。
在matlab中无论是wgn还是awgn函数,实质都是由randn函数产生的噪声。
即:
wgn函数中调用了randn函数,而awgn函数中调用了wgn函数。
本次仿真就采用了awgn函数。
5、源代码(参见onenineteen.m)
clc
clear
f1=0.05;
f2=0.12;
fs=4*max(f1,f2);%根据采样定理,确定采样频率
Ts=1/fs;%确定采样周期
N=1024;
t=0:
Ts:
(N-1)*Ts;
s=sin(2*pi*f1*t)+2*cos(2*pi*f2*t);
x=awgn(s,0);%加入信噪比为0db的高斯白噪声
%均值
av=mean(x);
fprintf('随机序列Xk的均值为%5.4f\n',av);
%均方值
af=mean(x.*x);
fprintf('随机序列Xk的均方值为%5.4f\n',af);
%均方差
ap=std(x);
fprintf('随机序列Xk的均方差为%5.4f\n',ap);
%功率谱
window=boxcar(length(x));
nffft=1024;
[Pxx,f]=periodogram(x,window,nffft,fs);
plot(f,10*log10(Pxx));
title('随机序列Xk的功率谱');
ylabel('PSD/(dB/Hz)');
xlabel('f(Hz)');
gridon;
三、习题1-20
1、题目
请编写MATLAB语言程序,分别计算样本函数
和高斯白噪声
的自相关函数。
2、题目分析
2.1关键词释义:
自相关函数:
描述随机信号x(t)在任意不同时刻t1,t2的取值之间的相关程度。
定义式:
主要性质有:
(1)自相关函数为偶函数,其图形对称于纵轴。
(2)连续型实自相关函数的峰值在原点取得
(3)周期函数的自相关函数是具有与原函数相同周期的函数。
2.2解题思路
查阅了解matlab进行自相关函数计算的函数xcorr的使用方法,进行计算即可。
3、运行结果
4、收获体会
通过对高斯白噪声进行自相关计算,可知高斯白噪声函数的自相关函数近似于冲激函数;
余弦函数的自相关函数为递减的周期性函数,并最终递减为0;
叠加了高斯白噪声的余弦函数的自相关函数在趋势上也呈现出了递减的周期性规律。
5、源代码(参见onetwenty.m)
clc
clear
f=10;
fs=4*f;%根据采样定理,确定采样频率
Ts=1/fs;%确定采样周期
N=256;%采样点数
t=0:
Ts:
(N-1)*Ts;
s=cos(20*pi*t);
w=randn(size(s));
x=s+w;
[a,b]=xcorr(s,'none');
[c,d]=xcorr(w,'none');
[m,n]=xcorr(x,'none');
figure
(1);
plot(b*Ts,a);
title('x(t)不含高斯白噪声的自相关函数');
ylabel('hs(τ)')
xlabel('τ/s')
gridon;
figure
(2);
plot(d*Ts,c);
title('高斯白噪声的自相关函数');
ylabel('hw(τ)')
xlabel('τ/s')
gridon;
figure(3);
plot(n*Ts,m);
title('x(t)的自相关函数');
ylabel('hx(τ)')
xlabel('τ/s')
gridon;
三、习题1-21
1、题目
请编写MATLAB语言程序,分别计算以下两个平稳随机序列
的自相关函数和互谱密度。
式中:
为均值为0、方差为1的白噪声。
2、题目分析
2.1关键词释义:
1)平稳序列(stationaryseries):
平稳序列是基本上不存在趋势的序列。
这类序列中的各观察值基本上在某个固定的水平上波动,虽然在不同的时间段波动的程度不同,但并不存在某种规律,其波动可以看成是随机的。
2)互谱密度:
互功率密度谱的简称,在频域内描述两个不同信号之间统计相关程度的一种方法。
对x(t)与y(t)的互相关函数进行傅里叶变换,获得其频域中的功率密度谱,即称为互功率密度谱,也称互频谱。
2.2解题思路
查阅了解matlab进行互功率谱密度计算的函数cpsd的使用方法,进行计算即可。
3、运行结果
由以上各图可知,x(k)与y(k)因为具有相同的频谱,所以二者的互谱功率密度的谐振峰值仍然位于f=0.05Hz(即50mHz)处。
4、收获体会
互谱功率密度描述了两个随机过程在频域的关联性。
通过查阅文献,了解到互谱密度函数一般与互相关函数具有同样的应用,但它提供的结果是频率的函数而不是时间的函数。
这—事实大大开拓了使用范围,因此在可以应用相关分析的工程问题中大大增加了互谱方法的应用。
互谱密度函数是有重要用途的,如频谱分析中能用互谱的测量结果来识别动力系统的特性以及计算频响函数的振幅比和相位角。
5、源代码(参见onetwentyone.m)
clc
clear
f=0.05;
fs=4*f;
Ts=1/fs;
N=50;
t=0:
Ts:
(N-1)*Ts;
x=sin(pi/10*t+pi/3);
w=randn(size(x));
t=-2*Ts:
Ts:
(N-3)*Ts;
x2=sin(pi/10*t+pi/3);
y=x2+w;
[a,b]=xcorr(x,'none');
[m,n]=xcorr(y,'none');
%画图
figure
(1);
plot(b*Ts,a);
title('x(k)的自相关函数');
ylabel('hx(τ)')
xlabel('τ/s')
gridon;
%画图
figure
(2);
plot(n*Ts,m);
title('y(k)的自相关函数');
ylabel('hy(τ)')
xlabel('τ/s')
gridon;
%画图
[c,d]=xcorr(x,y);
figure(3);
plot(d*Ts,c);
title('x(k)与y(k)的互相关函数');
ylabel('hxy(τ)')
xlabel('τ/s')
gridon;
%互谱密度
figure(4)
cpsd(x,y,[],[],[],fs,'twosided');
title('x(k)与y(k)的互谱功率密度');
ylabel('Sxy(f)')
xlabel('f/mHz')