数字信号报告解析文档格式.docx
《数字信号报告解析文档格式.docx》由会员分享,可在线阅读,更多相关《数字信号报告解析文档格式.docx(21页珍藏版)》请在冰点文库上搜索。
![数字信号报告解析文档格式.docx](https://file1.bingdoc.com/fileroot1/2023-4/29/1722e78e-2759-4834-a67d-bd991fa37585/1722e78e-2759-4834-a67d-bd991fa375851.gif)
1
0.9
0.8
0.7
0.6
0.5
图一:
单位采样序列
(2)实现程序:
x=-4:
5;
y=[zeros(1,5),1,zeros(1,5)];
stem(x,y)
0.4
0.3
0.2
0.1
-5 -4 -3 -2 -1 0 1 2 3 4 5
4.1.3.2单位阶跃序列
图二:
单位阶跃序列
-2-
u(n)=ì
1,n³
0
x=-5:
y=[zeros(1,5),1,ones(1,5)];
stem(x,y)
4.1.3.3矩形序列:
(1)序列定义:
RN(n)=ì
1,0£
n£
N-1
1.5
图三:
矩形波
0,others 1
(2)实现程序:
n=0:
9;
x=[1111111111];
stem(n,x,'
.'
);
axis([-11001.5])
-1 0 1 2 3 4 5 6 7 8 9 10
图四:
三角波
4.1.3.4三角波
y(n)=sin(vn)
0.6
-0.2
-0.4
3-
-0.6
-
-0.8
-1
-30 -20 -10 0 10 20 30
t=-30:
1:
30;
y=sawtooth(t,0.5);
plot(t,y);
4.1.3.5方波
(1)实现程序:
t=0:
0.0001:
0.615
y=square(t*2*pi*30,80);
4.1.3.6锯齿波
y=square(t);
4.1.3.7Sinc函数
y=sinc(t);
1.2
0.4 图六:
锯齿波
0 0.010.020.030.040.050.060.070.080.090.1
图五:
方波
0.2 0.3 0.4
图七:
Sinc函数
-4-0
4.2FFT频谱分析及应用
4.2.1实验目的
a.通过实验加深对FFT的理解。
b..熟悉应用FFT对典型信号进行频谱分析的方法。
4.2.2实验内容
被噪声污染的信号,比较难看出所包含的频率分量,如一个由50HZ和120HZ正弦信号构成的信号,受零均值随机噪声的干扰,数据采样率为1000HZ,使用FFT函数来分析其信号频率成分,要求:
①画出时域波形;
②分析信号功率谱密度。
注:
在MATLAB中,可用函数rand(1,N)产生均值为0,方差为1,长度为N的高斯随机序列。
4.2.3实验结果
-7-
程序:
0.001:
0.7;
x=sin(2*pi*50*t)+cos(2*pi*130*t);
y=x+1.5*randn(1,length(t));
subplot(3,1,1);
plot(t,x);
subplot(3,1,2);
plot(t,y);
%title('
pressanykey,continue```'
2
-2
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8
10
-10
%pause;
y=fft(y,512);
p=y.*conj(y)/512;
f=1000*(0:
255)/512;
subplot(3,1,3);
plot(f,p(1:
256));
150
100
50
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8
0 50 100 150 200 250 300 350 400 450 500
4.3信号的运算—卷积
4.3.1实验目的
a.掌握信号的线性卷积运算。
b.掌握信号的循环卷积运算。
c.掌握信号循环卷积计算线性卷积的条件。
4.3.2实验内容
a.如果信号x(n)=x1(n)*x2(n)利用线性卷积计算,用conv函数实现如下:
y=conv(x1,x2)。
b.假设卷积下面信号
x(n)=ì
(0.9)^n
0£
n<
12
h(n)=ì
选定循环卷积的长度为
else í
else
N=21.确定y1(n)=x(n)Ä
h(n)的哪些数值与线性卷积y2=x(n)*h(n)结果中的
数值相同。
编写程序代码并输出图形,并分析错误数据的原因,怎样才能使两者数据相同。
c.已知系统相应为输入为x(n)=exp(0.2*n)
10,画出用DFT方法实现求
系统输出的系统框图,编写用DFT实现的程序代码并输出图形。
4.3.3实验结果
x1(n)
h(n)
0 10 20 30
21位位位位位
8
□位位位
6 6
4 4
0 10
20 30
2
程序:
n1=0:
13;
x1=0.9.^n1;
h=ones(1,11);
N=length(x1)+length(h)-1;
n=0:
N-1;
ny=0:
20;
y1=circonvt(x1,h,21);
y2=circonvt(x1,h,N);
x1=[x1zeros(1,N-length(x1))];
h=[hzeros(1,N-length(h))];
X1=fft(x1,N);
H=fft(h,N);
X=X1.*H;
x=ifft(X);
x=real(x);
subplot(2,2,1);
stem(n,x1);
title('
x1(n)'
axis([0,33,0,1]);
subplot(2,2,2);
stem(n,h);
h(n)'
subplot(2,2,3);
stem(ny,y1,'
fill'
21点循环卷积'
axis([0,33,0,16]);
holdon;
subplot(2,2,4);
stem(n,x);
线性卷积'
axis([0,33,0,8]);
r'
'
--'
holdoff;
4.4线性卷积的快速处理方法——重叠相加法
4.4.1实验目的
a.掌握线性卷积的快速处理方法——重叠相加法的原理。
b.掌握线性卷积的快速处理方法——重叠相加法的实现方法。
c.掌握实验和分析深入了解重叠相加法。
4.4.2实验内容
编写一个实现块卷积重叠相加法的M文件函数。
该函数的输入之一应使段的长度M ,或者使FFT的长度。
循环卷积应在DFT域中进行。
最终,这将会使程序
最快的运行。
其中冲激响应为,h(n)=sin(0.3*n)+cos(0.6*n) 0£
20 输
入信号为x(n)=exp(0.4*n) 0£
10。
4.4.3实验结果
30
functiony=fftfilt(x,h,Nfft)
25
H=fft(h,Nfft);
M=Nfft-length(h)+1;
%----Section 20
Length\ 15
%
位位两位函位数位位卷位积结果
-8-
5
0 2 4 6 8 10 12 14 16 18
%*************assumethatlength(x)ismultipleofM******
forix=1:
M:
length(x)x_seg=x(ix:
ix+M-1);
X=fft(x_seg,Nfft);
Y=X.*H;
y.seg=ifft(Y);
y(ix:
ix+Nfft-1)=y(ix:
ix+Nfft-1)+y_seg(1:
Nfft);
end
%-----------checkforpurelyREALcase--------
if~any(imag(h))&
~any(imag(x))y=real(y);
%---------------------------------------------
(使用conv函数测试)
n1=0:
19;
hn=sin(0.3*n1)+cos(0.6*n1);
n2=0:
xn=exp(0.4*n2);
z=conv(hn,xn);
N=length(xn)+length(hn)-1;
hn=[hnzeros(1,N-length(hn))];
R=length(xn);
M=length(hn);
y=fftfilt(xn,hn,8);
k1=1:
length(y);
k=1:
N;
plot(k1,y,'
b-o'
k,z,'
g-x'
)xlabel('
Timeindexn'
ylabel('
Amplitude'
)legend('
y[n]'
z[n]'
)
-9-
4.5线性卷积的快速处理方法——重叠保留法
4.5.1实验目的
a.掌握线性卷积的快速处理方法——重叠保留法的原理。
b.掌握线性卷积的快速处理方法——重叠保留法的实现方法。
4.5.2实验内容
通过conv函数来测试此函数的正确性。
考虑使用下面信号
0£
17
sin(n*pi/13)
100
0 else î
0 else
4.5.3实验结果
xn=ones(1,17);
1:
100;
y
hn=sin(n1*pi/13);
hn=[hnzeros(1,N-length(hn))];
x(n)位h(n)位位位位位位位
6
4
-4
--61
0-
-80 20 40 60 80 100 120 140
n
R=length(xn);
M=length(hn);
y=ovrlpsav(xn,hn,10);
k=1:
x(n)和h(n)的循环卷积图像'
xlabel('
n'
ylabel('
y'
function[y]=ovrlpsav(x,h,N)Lenx=length(x);
M=length(h);
ifN<
M
N=M+2;
M1=M-1;
L=N-M1;
h=[h,zeros(1,N-M)];
x=[zeros(1,M1),x,zeros(1,N-1)];
K=floor((Lenx+M-1)/(L));
Y=zeros(K+1,N);
fork=0:
k
xk=x(k*L+1:
k*L+N):
Y(k+1,:
)=circonvt(xk,h,N);
endY=Y(:
M:
N);
y=(Y(:
));
functiony=circonvt(x1,x2,N)if(length(x1)>
N|length(x2)>
N)
error('
N必须大于等于x对的长度'
x2=[x2zeros(1,N-length(x2))];
X2=fft(x2,N);
X=X1.*X2;
-20-
y=ifft(X,N);
y=real(y);
end
4.6IIR数字滤波器的设计
4.6.1实验目的
a.掌握脉冲响应不变法和双线性变换法设计IIR数字滤波器的原理和方法。
b.观察双线性变换法和脉冲响应不变法设计的滤波器的频率特性,了解双线性变换法和脉冲响应不变法的特点和区别。
4.6.2实验内容
用双线性变换法设计一个Chebyshev1型数字带通滤波器,设计指标为T=1ms,Rp=1dB,Wp1=0.35π,Wp2=0.65π,Rs=60dB,Ws1=0.2πWs2=0.8π。
按实验步骤附上所设计滤波器的H(z)及相应的幅频特性曲线定性分析得到的图形,判断设计是否满足要求。
□位:
|Hz|
00.20.350.650.81
p
□位位
-0.5
00.20.350.605.81
7.5
7
6.5
5.5
□位
4.5
3.5
3
2.5
□位位
□位(dB)
ImaginaryPart
20 1
□位位位位位p位
□位位dB位
30
-1 0 1
RealPart
□位位位位位p位
%所设计的数字滤波器的指标Ts=0.001;
Fs=1/Ts;
Rp=1;
Rs=60;
wp1=0.35*pi;
wp2=0.60*pi;
ws1=0.2*pi;
ws2=0.8*pi;
%频率的预畸变Wp1=(2/Ts)*tan(wp1/2);
Wp2=(2/Ts)*tan(wp2/2);
Wp=[Wp1,Wp2];
%模拟滤波器的通带截止频率
Ws1=(2/Ts)*tan(ws1/2);
Ws2=(2/Ts)*tan(ws2/2);
Ws=[Ws1,Ws2];
%模拟滤波器的阻带截止频率
%模拟滤波器的带宽BW=Wp2-Wp1;
%模拟滤波器的中心频率
Omegaw0=sqrt(Wp1*Wp2);
%求模拟低通滤波器的阶数与边缘频率
[N,OmegaC]=cheb1ord(Wp,Ws,Rp,Rs,'
s'
%求切比雪夫模拟低通滤波器的零、极点与增益[z0,p0,k0]=cheb1ap(N,Rp);
%设计归一化的模拟原型带通滤波器
%求原型滤波器的分子系数AnalogB=k0*real(poly(z0));
%求原型滤波器的分母系数
AnalogA=real(poly(p0));
%模拟低通到模拟带通的分子、分母系数的变换[BandB,BandA]=lp2bp(AnalogB,AnalogA,Omegaw0,BW);
%双线性变换:
模拟带通与数字带通的分子分母系数的变换?
?
[DigitalB,DigitalA]=bilinear(BandB,BandA,Fs);
%变为二阶节级联结构?
[sos,G]=tf2sos(DigitalB,DigitalA);
%求数字带通滤波器的幅频、相频特性、及其群延迟?
%求数字带通滤波器的幅频特性[Hz,Wz]=freqz(DigitalB,DigitalA,1024,'
whole'
%将数字带通滤波器的幅频特性转化为分贝表示?
dbHz=20*log10((abs(Hz)+eps)/max(abs(Hz)));
%求数字带通滤波器的相频特性?
%φ=angle(Hz)?
%求数字带通滤波器的群延迟特性?
grd=grpdelay(DigitalB,DigitalA,Wz);
%作图?
subplot(2,3,1);
plot(Wz/pi,abs(Hz));
幅频响应'
'
),ylabel('
幅度:
|Hz|'
axis([0,1,0,1.1]);
set(gca,'
XTickMode'
manual'
XTick'
[0,ws1/pi,wp1/pi,wp2/pi,ws2/pi,1]);
grid;
subplot(2,3,4);
plot(Wz/pi,dbHz);
模值(dB)'
频率(单位:
\pi)'
分贝(dB)'
axis([0,1,-40,5]);
set(gca,'
YTickmode'
YTick'
[-50,-30,-2,0]);
Y