数字信号处理练习题

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数字信号处理查题目(用matlab实现,提

交代码和答案)

1自己设计一个模拟信号(几个不同频率简谐信号之和,再加一个白噪声)。用不同的采样频率把信号离散(满足和不满足采样定理)(1)画出信号波形;

(2)分别作信号的谱分析(幅值);对比采样频率的影响;

程序:

N=512;%数据点数

n=0:N-1;%时间序列

fs1=800;

fs2=200;%采样频率

T1=1/fs1;

T2=1/fs2; %采样周期

t=0:0.0001:0.2;

t1=(0:N-1)*T1;

t2=(0:N-1)*T2;

X=100*sin(2*pi*100*t)+100*cos(2*pi*120*t)+10*randn(1,length(t));%模拟信号

X1=100*sin(2*pi*100*t1)+100*cos(2*pi*120*t1)+10*randn(1,length(t1));%采样频率为800Hz

X2=100*sin(2*pi*100*t2)+100*cos(2*pi*120*t2)+10*randn(1,length(t2));%采样频率为200Hz

Y1_1=fft(X1,N); %对信号进行快速Fourier变换

Y1_2=fftshift(Y1_1);

Y2_1=fft(X2,N); %对信号进行快速Fourier变换

Y2_2=fftshift(Y2_1);

mag1=abs(Y1_2); %求得Fourier变换后的振幅

mag2=abs(Y2_2);

f1=n*fs1/N-fs1/2; %频率序列

f2=n*fs2/N-fs2/2;

figure(1);

subplot(2,1,1),plot(f1,mag1,'r'); %绘出随频率变化的振幅

xlabel('频率/Hz');

ylabel('振幅');title('图1:采样频率为800HzFFT','color','r');grid on; subplot(2,1,2),plot(f2,mag2,'b'); %绘出随频率变化的振幅xlabel('频率/Hz');

ylabel('振幅');title('图2:采样频率为200HzFFT','color','b');grid on; figure(2);

subplot(3,1,1);

plot(t,X,'r');

title('原信号波形图');

subplot(3,1,2);

stem(t1,X1,'.');

title('采样频率为800Hz波形图');

subplot(3,1,3);

stem(t2,X2,'.');

title('采样频率为200Hz波形图');

2自己设计一个模拟信号(3个不同频率简谐信号之和),采样后得到数字信号,

(1)画出信号波形和傅立叶频谱图;

(2)用参数估计法计算其功率谱;

(3)设计低通数字滤波器(去掉f2,f3),画出该滤波器幅频图、相频图,将原信号作为该滤波器的输入,计算响应;画出响

应时域波形和谱图;

(4)设计带通数字滤波器(去掉f1,f3),画出该滤波器幅频图、相频图,将原信号作为该滤波器的输入,计算响应;画出响

应时域波形和谱图;

(5)设计带阻数字滤波器(去掉f2),画出该滤波器幅频图、相频图,将原信号作为该滤波器的输入,计算响应;画出响应

时域波形和谱图;

(6)设计高通数字滤波器(去掉f1),画出该滤波器幅频图、相频图,将原信号作为该滤波器的输入,计算响应;画出响应

时域波形和谱图;

(1)波谱和波形

N=1024; %%%采样点数和傅里叶变换的点数相同

n=0:N-1;

fs=250; %%%采样频率

t=n/fs;

x=4*sin(2*pi*10*t)+2*sin(2*pi*50*t)+5*sin(2*pi*90*t) %原始信号

subplot(3,1,1);plot(t,x);

xlabel('时间/t');ylabel('x');title('原信号');

axis([0,0.4,min(x),max(x)])

grid on;

%%%求幅值谱

y=fft(x,N); %对信号进行快速Fourier变换

mag=abs(y); %求取Fourier变换的振幅

f=n*fs/N;

subplot(3,1,2);plot(f,mag); %绘出随频率变化的振幅

xlabel('频率/Hz');ylabel('振幅');title('原信号的幅值谱');

xlim([0,fs/2]);grid on;

%%%求相位谱

an=angle(y);

subplot(3,1,3);plot(f/2,an); %绘出随频率变化的振幅

xlabel('频率/Hz');ylabel('angle');title('原信号的相位谱');

(3)低通数字滤波器

fs=250;%采样频率

%%%%低通滤波器设计

wp=15; %单位是Hz

ws=30; %单位是Hz

Rp=2;As=30; %设置滤波器参数

Wp=wp*2/fs;Ws=ws*2/fs; %设计数字滤波器时要进行关于pi的归一化[N,Wn]=buttord(Wp,Ws,Rp,As); %求数字滤波器的最小阶数和归一化截止频率[B,A]=butter(N,Wn);

[H f]=freqz(B,A,512,fs); %512代表fft变换的点数,fs代表采样频率

figure(1);

subplot(2,1,1);plot(f,20*log10(abs(H)));grid on

xlabel('频率(Hz)');ylabel('幅度(dB)');title('滤波器幅值谱')

subplot(2,1,2);plot(f,angle(H));grid on

xlabel('频率(Hz)');ylabel('angle');title('滤波器相位谱')

t=linspace(0,1,fs);

x=4*sin(2*pi*10*t)+2*sin(2*pi*50*t)+5*sin(2*pi*90*t);

y=filter(B,A,x);

figure(2);

subplot(2,1,1);plot(t,x);grid on

xlabel('时间/s');title('原始信号')

subplot(2,1,2);plot(t,y,'r');grid on

相关文档
最新文档