数字信号课程设计报告 联系客服

发布时间 : 星期五 文章数字信号课程设计报告更新完毕开始阅读51a8b28ff8c75fbfc67db213

Fs=10000;T=1/Fs;Tp=N*T; %采样频率Fs=10kHz,Tp为采样时间 t=0:T:(N-1)*T;k=0:N-1;f=k/Tp;

fc1=Fs/10; %第1路调幅信号的载波频率fc1=1000Hz, fm1=fc1/10; %第1路调幅信号的调制信号频率fm1=100Hz fc2=Fs/20; %第2路调幅信号的载波频率fc2=500Hz fm2=fc2/10; %第2路调幅信号的调制信号频率fm2=50Hz fc3=Fs/40; %第3路调幅信号的载波频率fc3=250Hz, fm3=fc3/10; %第3路调幅信号的调制信号频率fm3=25Hz xt1=cos(2*pi*fm1*t).*cos(2*pi*fc1*t); %产生第1路调幅信号 xt2=cos(2*pi*fm2*t).*cos(2*pi*fc2*t); %产生第2路调幅信号 xt3=cos(2*pi*fm3*t).*cos(2*pi*fc3*t); %产生第3路调幅信号 st=xt1+xt2+xt3; %三路调幅信号相加 fxt=fft(st,N); %计算信号st的频谱 figure(1);

subplot(2,1,1);

plot(t,st);title('三路调幅信号时域图') grid;

xlabel('t/s');ylabel('s(t)');

axis([0,Tp/2,min(st),max(st)]); title('(a) s(t)的波形'); subplot(2,1,2);

stem(f,abs(fxt)/max(abs(fxt)),'.'); grid;

title('(b) s(t)的频谱'); axis([0,Fs/5,0,1.2]); xlabel('f/Hz');ylabel('幅度');

Fs=10000;T=1/Fs; %采样频率

%调用信号产生函数mstg产生由三路抑制载波调幅信号相加构成的复合信号st

%低通滤波器设计与实现

fp=280;fs=450;

wp=2*fp/Fs;ws=2*fs/Fs;rp=0.1;rs=60; [N,wp]=ellipord(wp,ws,rp,rs); [B,A]=ellip(N,rp,rs,wp); y1t=filter(B,A,st);

[Hb,Wc]=freqz(B,A); figure(2);

subplot(2,1,1);

plot(Fs*Wc/(2*pi),20*log10(abs(Hb)));title('低通滤波器频域响应图') subplot(2,1,2);

plot(t,y1t);title('第一路低频信号时域图')

%带通滤波器设计与实现

fpl=440;fpu=560;fsl=275;fsu=900;

wp=[2*fpl/Fs,2*fpu/Fs];ws=[2*fsl/Fs,2*fsu/Fs];rp=0.1;rs=60; [N,wp]=ellipord(wp,ws,rp,rs); [B,A]=ellip(N,rp,rs,wp); y2t=filter(B,A,st);

[Hb1,Wc1]=freqz(B,A); figure(3);

subplot(2,1,1);

plot(Fs*Wc1/(2*pi),20*log10(abs(Hb1)));title('带通滤波器频域响应图') subplot(2,1,2);plot(t,y2t);title('第二路中频信号时域图')

%高通滤波器设计与实现 fp=890;fs=600;

wp=2*fp/Fs;ws=2*fs/Fs;rp=0.1;rs=60; ?指标(低通滤波器的通、阻带边界频) [N,wp]=ellipord(wp,ws,rp,rs); %调用ellipord计算椭圆DF阶数N和通带截止频率wp [B,A]=ellip(N,rp,rs,wp,'high'); %调用ellip计算椭圆带通DF系统函数系数向量B和A y3t=filter(B,A,st); %滤波器软件实现 [Hb2,Wc2]=freqz(B,A); figure(4);

subplot(2,1,1);

plot(Fs*Wc2/(2*pi),20*log10(abs(Hb2)));title('高通滤波器频域响应图') subplot(2,1,2);plot(t,y3t);title('第三路高频信号时域图')

四、心电信号的处理

1.设计要求:

(1)在MATLAB软件平台下,给原始的心电信号叠加上噪声或干扰,干扰类型分为如下几种:白噪声、工频干扰(50Hz)、谐波干扰(二次、三次谐波为主,分别为100Hz、150Hz)绘出叠加噪声后的心电信号时域和频谱图,在视觉上与原始心电信号图形对比,分析频域基本特征变化。

(2)给定滤波器的规一化性能指标(参考指标,实际中依据每个同学所叠加噪声情况而定),例如:通带截止频率wp=0.25*pi, 阻通带截止频率ws=0.3*pi; 通带最大衰减Rp=1 dB; 阻带最小衰减Rs=15 dB

(3)采用窗函数法设计各型FIR滤波器(低通、高通、带通、带阻中的至少2种类型),来对叠加干扰前后的心电信号进行滤波处理,绘出滤波器的频域响应及滤波后信号的时域波形和频谱,并对滤波前后的信号进行对比,分析信号的变化;在相同的性能指标下比较各方法的滤波效果,并从理论上进行分析或解释; (4)采用双线性变换法利用不同的原型低通滤波器(Butterworth型与切比雪夫I型)来设计各型IIR滤波器(低通、高通、带通、带阻中的至少2种类型)绘出滤波器的频域响应,并用这些数字滤波器对含噪心电信号分别进行滤波处理;比较不同方法下设计出来的数字滤波器的滤波效果,并从理论上进行分析或解释;

(5)心电信号波形观察、频谱观察,对滤波后的心电信号观察其时域、频域特征变化。

2.设计步骤:

(1)读取原始心电信号;

(2)心电信号加50HZ工频信号; (3)心电信号加入谐波; (4)心电信号加入白噪声;

(5)设计相应的滤波器进行不同噪声的滤除; (6)绘出相应的时域频域图;

3.设计实现:

(1)各时域频域图:

原始心电信号时域图以及加入个噪声后的时域图:

原始心电信号频域图以及加入个噪声后的时频域图:

(2)具体代码实现:

%原心电信号

xl=load('E:\\心电信号-新.txt'); x=xl(:,2); N=size(x,1); fs=1000;

t=(0:length(x)-1)/fs; f=fs/N*(0:(N+1)/2-1)+1; X=fft(x,N);

%加50hz工频干扰 y=x+sin(2*50*pi*t)'; Y=fft(y,N);

%加100hz、150hz谐波干扰

y1=x+sin(2*100*pi*t)'+cos(2*150*pi*t)'; Y1=fft(y1,N); %加白噪声 yb=awgn(x,20); Yd=fft(yb,N); figure(1);

subplot(4,1,1);

plot(t,x);title('原信号时域图') xlabel('时间(s)'); ylabel('幅度'); figure(2); subplot(4,1,1)