⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 这是利用小波分析进行信号处理的例程.txt

📁 这是利用小波分析进行信号处理的例程
💻 TXT
字号:
clear %清空工作空间
clc %清屏

dt=10^-3;
t=0:dt:200;
x1=(1+cos(0.5*2*pi*t)+cos(1.5*2*pi*t)).*cos(30*2*pi*t);
figure(1);
subplot(2,1,1);
plot(t,x1);axis([0 2 -3 3]);hold on;
plot([0,2],[0,0],'k');
title('原中频窄带信号时域波形图');
xlabel('t(us)');
ylabel('X(t)');

x1_f=abs(fftshift(fft(x1,1024)));x1_frez=x1_f./max(x1_f);

subplot(2,1,2);
Frequency=(-(length(x1_frez)-1)/2:(length(x1_frez)-1)/2)*10^3/length(x1_frez);
bar(Frequency,x1_frez,0.01,'r');axis([-100 100 0 1.2]);
title('原中频窄带信号归一化频谱图');
xlabel('f(MHz)');
ylabel('A(f)');
set(gcf,'color','w');

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%对信号进行带通采样
%将带宽视为4MHz,可得到最佳采样频率8MHz,这样m=8,具体实现如下所示:
Fs=8;%采样频率(MHz)
T=1/Fs;n=0:200/T;
x2=(1+cos(0.5*2*pi*n*T)+cos(1.5*2*pi*n*T)).*cos(30*2*pi*n*T);
figure(2);
subplot(2,1,1);
stem(n*T,x2);axis([0 10 -3 3]);hold on;
plot([0,10],[0,0],'k');
title('原中频窄带信号带通采样后时域波形图');
xlabel('t(us)');
ylabel('Y(t)');
x_f=abs(fft(x2,1024));x_frez=x_f./max(x_f);
FFrequency=(-(length(x_frez)-1)/2:(length(x_frez)-1)/2)*8/length(x_frez);

subplot(2,1,2);
bar(FFrequency,x_frez,0.01,'r');axis([0 4 0 1.2]);
title('原中频窄带信号带通采样后的归一化频谱图');
xlabel('f(MHz)');
ylabel('A(f)');
set(gcf,'color','w');
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%其后再将信号分为两路信号(I,Q)
figure(3);
f_tx=cos(2*pi*Fs/4*n*T);
f_zj=sin(2*pi*Fs/4*n*T);
x_I=x2.*f_tx;
x_Q=(1+cos(0.5*2*pi*n*T)+cos(1.5*2*pi*n*T)).*sin(30*2*pi*n*T).*f_zj;
subplot(2,1,1);
stem(n*T,x_I);axis([0 10 -3 3]);hold on;plot([0,10],[0,0],'k');title('I路信号时域波形图');xlabel('t(us)');ylabel('I(t)');

subplot(2,1,2);
stem(n*T,x_Q);axis([0 10 -1 1]);hold on;plot([0,10],[0,0],'k');title('Q路信号时域波形图');xlabel('t(us)');ylabel('Q(t)');
x_I_f=abs(fft(x_I,1024));x_I_frez=x_I_f./max(x_I_f);
x_Q_f=abs(fft(x_Q,1024));x_Q_frez=x_Q_f./max(x_Q_f);
figure(4)
subplot(2,1,1);
bar(FFrequency,x_I_frez,0.01,'r');axis([0 4 0 1.2]);title('I路信号归一化频谱图');xlabel('f (MHz)');ylabel('A(f)');

subplot(2,1,2);
bar(FFrequency,x_Q_frez,0.01,'r');axis([0 4 0 1.2]);title('Q路信号归一化频谱图');xlabel('f (MHz)');ylabel('A(f)');
set(gcf,'color','w');
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%低通滤波器设计,用fdatool工具实现。
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%通过低通滤波器后的时域波形和频谱
figure(5);
f_lowpass=[-0,-0.000844188886547,0,0.001095506780604,-0,-0.001583488155239,-0,0.00234804714408,-0,-0.003434689463627,0,0.004898296541993,-0,-0.006809637713341,0,0.009266789361139,-0,-0.012415950529276,0,0.016491658501925,-0,-0.021900949972421,0,0.029419646601675,-0,-0.04072478549664,0,0.060204099377406,-0,-0.104001660146994,0,0.317604821595529,0.5,0.317604821595529,0,-0.104001660146994,-0,0.060204099377406,0,-0.04072478549664,-0,0.029419646601675,0,-0.021900949972421,-0,0.016491658501925,0,-0.012415950529276,-0,0.009266789361139,0,-0.006809637713341,-0,0.004898296541993,0,-0.003434689463627,-0,0.00234804714408,-0,-0.001583488155239,-0,0.001095506780604,0,-0.000844188886547,-0]
dd=size(f_lowpass);
Xc=filter(f_lowpass,1,x_I);
Xs=filter(f_lowpass,1,x_Q);
%mm=size(Sc);
subplot(2,1,1);
stem(n*T,Xc);axis([0 20 -3 3]);hold on;plot([0,20],[0,0],'k');title('I路信号通过低通滤波器后时域波形图');xlabel('t (us)');ylabel('LI(t)');

subplot(2,1,2);
stem(n*T,Xs);axis([0 20 -3 3]);hold on;plot([0,20],[0,0],'k');title('Q路信号通过低通滤波器后时域波形图');xlabel('t (us)');ylabel('LQ(t)');
Xc_f=abs(fftshift(fft(Xc,1024)));Xc_frez=Xc_f./max(Xc_f);
Xs_f=abs(fftshift(fft(Xs,1024)));Xs_frez=Xs_f./max(Xs_f);
FFFrequency=(-(length(Xc_frez)-1)/2:(length(Xc_frez)-1)/2)*8/length(Xc_frez);
figure(6)
subplot(2,1,1);
bar(FFFrequency,Xc_frez,0.01,'r');axis([0 4 0 1.2]);title('I路信号通过低通后归一化频谱图');xlabel('f (MHz)');ylabel('A(f)');

subplot(2,1,2);
bar(FFFrequency,Xs_frez,0.01,'r');axis([0 4 0 1.2]);title('Q路信号通过低通后归一化频谱图');xlabel('f (MHz)');ylabel('A(f)');
set(gcf,'color','w');
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%对信号进行抽采后的时域波形以及频谱
figure(7)
for i=1:round(length(Xc)/2)
Ac(i)=Xc(i*2-1);
As(i)=Xs(i*2-1);
end
subplot(2,1,1);
stem(Ac);axis([0 80 -3 3]);hold on;plot([0,80],[0,0],'k');title('信号抽采后时域波形图');xlabel('t (us)');ylabel('Z(t)');

subplot(2,1,2);
stem(As);axis([0 80 -3 3]);hold on;plot([0,80],[0,0],'k');title('信号抽采时域波形图');xlabel('t (us)');ylabel('Z(t)');
Ac_f=abs(fft(Ac,1024));Ac_frez=Ac_f./max(Ac_f);
As_f=abs(fft(As,1024));As_frez=As_f./max(As_f);
FFFrequency=(0:(length(Ac_frez)-1))*4/length(Ac_frez);
figure(8)
subplot(2,1,1);
bar(FFFrequency,Ac_frez,0.01,'r');axis([0 4 0 1.2]);title('信号抽采后归一化频谱图');xlabel('f (MHz)');ylabel('A(f)');

subplot(2,1,2);
bar(FFFrequency,As_frez,0.01,'r');axis([0 4 0 1.2]);title('信号抽采后归一化频谱图');xlabel('f (MHz)');ylabel('A(f)');
set(gcf,'color','w');

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -