文档库 最新最全的文档下载
当前位置:文档库 › 信号与系统MATL实验及代码

信号与系统MATL实验及代码

信号与系统MATL实验及代码
信号与系统MATL实验及代码

实验一、MATLAB编程基础及典型实例

一、实验目的

(1)熟悉MATLAB软件平台的使用;

(2)熟悉MATLAB编程方法及常用语句;

(3)掌握MATLAB的可视化绘图技术;

(4)结合《信号与系统》的特点,编程实现常用信号及其运算。

示例一:在两个信号进行加、减、相乘运算时,参于运算的两个向量要有相同的维数,并且它们的时间变量范围要相同,即要对齐。编制一个函数型m文件,实现这个功能。

function [f1_new,f2_new,n]=duiqi(f1,n1,f2,n2)

a=min(min(n1),min(n2));

b=max(max(n1),max(n2));

n=a:b;

f1_new=zeros(1,length(n));

f2_new=zeros(1,length(n));

tem1=find((n>=min(n1))&(n<=max(n1))==1);

f1_new(tem1)=f1;

tem2=find((n>=min(n2))&(n<=max(n2))==1);

f2_new(tem2)=f2;

四、实验内容与步骤

? 2 t (2)绘制信号x(t)= e

sin( t=0:0.1:30; 2

3

t ) 的曲线,t的范围在0~30s,取样时间间隔为0.1s。

y=exp(-sqrt(2)*t).*sin(2*t/3); plot(t,y);

(3)在n=[-10:10]范围产生离散序列:x

( n)

=

?2 n ,

? 3

?

≤n ≤ 3

,并绘图。

?0, Other

n=-10:1:10;

z1=((n+3)>=0);

z2=((n-3)>=0);

x=2*n.*(z1-z2);

stem(n,x);

(4)编程实现如下图所示的波形。

t=-2:0.001:3;

f1=((t>=-1)&(t<=1));

f2=((t>=-1)&(t<=2));

f=f1+f2;

plot(t,f);

axis([-2,3,0,3]);

(5)设序列f1(k)={ 0 , 1 , 2 , 3 , 4 , 5 },f2(k)={ 6 , 5 , 4 , 3 , 2 , 1 , 0 }。

↓↓

k=0 k=0

利用duiqi.m 函数,求add_f(k)=f1(k)-f2(k),pro_f(k)=f1(k) ×f2(k),并以子图形式画出f1(k)、f2(k)、add_f(k)、pro_f(k)。

f1=0:5; stem(n1,f1); subplot(2,2,3)

f2=6:-1:0; xlabel('n1'); stem(n,add_f);

n1=-1:4; ylabel('f1'); xlabel('n');

n2=-5:1; grid on; ylabel('add-f(k)');

[f1_new,f2_new,n]=duiqi subplot(2,2,2) grid on;

(f1,n1,f2,n2); stem(n2,f2); subplot(2,2,4)

add_f=f1_new+f2_new; xlabel('n2'); stem(n,pro_f);

pro_f=f1_new.*f2_new; ylabel('f2'); xlabel('n');

subplot(2,2,1) grid on; ylabel('pro-f(k)');grid on;

五、实验报告要求

(1)再调用某一函数文件时,该文件中除了输入、输出变量外的其它

变量在调用函数结束后是否还存在?这些变量是全局还是局部变量?

答:不存在,是局部变量。

(2)设n=-10:0.2:20,你可以通过那些方法查看向量n的维数?经过关系运

算y=(n>=3)以后,y的维数是多少?y又等于什么?

答:Length()函数或Workspace中的变量类型。维度不变,

(3)通过MATLAB的帮助系统,学习fliplr函数的功能和使用方法。在此基础上,写出

n

能够产生如下图形的程序,其中x(n)= 2 ,?4 ≤n ≤ 4 。

n=-4:4;

x1=2.^n;

figure(1);

stem(n,x1);

x2=fliplr(x1);

figure(2);

stem(n,x2);

实验二、连续时间系统的时域分析

一、实验目的

(1)深刻理解卷积运算,掌握离散线性卷积、连续线性卷

积的计算方法;(2)加深对线性时不变系统中零状态响应

概念的理解,掌握其求解方法;(3)掌握给定连续系统的

冲击响应和阶跃响应。

实例2:利用conv函数,编制一个函数文件dconv,其输出为两个序列

卷积后的新序列以及与新序列对应的时间变量

function[f,k]=dconv(f1,f2,k1,k2)

f=conv(f1,f2);

k_start=k1(1)+k2(1);

k_end=length(f1)+length(f2)-2;

k=k_start:(k_start+k_end);

实例2:在dconv函数和(*)的基础上,编制一个函数文件cconv,利用

离散卷积和来近似计算连续卷积积分。

function[f,k]=cconv(f1,f2,k1,k2,td)

f=td*conv(f1,f2);

k_start=k1(1)+k2(1);

k_end=length(f1)+length(f2)-2;

k=k_start:td:(k_start+k_end*td);

四、实验内容与步骤

(2) (1) (1)

(1)已知系统微分方程为y (t) + 2 y ( t) + 2 y( t) = f ( t), f ( t) = ε( t) 。计算系统的

零状态响应y(t)、冲击响应δ (t) 和阶跃响应g(t),并画出相应的图形。

t=0:0.01:10; y3=step(sys,t);

f=ones(1001,1); subplot(1,3,1)

a=[1,2,2]; plot(t,y1);

b=[1,0]; subplot(1,3,2)

sys=tf(b,a); plot(t,y2);

y1=lsim(sys,f,t); subplot(1,3,3)

y2=impulse(sys,t); plot(t,y3);

(2)用MATLAB计算如下连续列的卷积和,绘出它们的时域波形。

f 1 ( k) = ?1 , k = 1

??2 , k = 0 ?1 , ?2 ≤ k ≤ 2? f 2 ( k) = ?

?1 , k = 1

?0 , 其它

t=-6:6;

z1=stepseq(-6,6,-1);

z2=stepseq(-6,6,2);

z3=delta(-6,6,0);

f1=z1-z2+z3;

z4=stepseq(-6,6,-2);

z5=stepseq(-6,6,3);

f2=z4-z5;

[y,k]=dconv(f1,f2,t,t); stem(k,y);axis([-6,6,0,5]) ?

0 ,

其它

(3)编程实现如下所示的两个波形;并利用cconv函数计算这两个信号

的卷积、画出卷积后的波形。

td=0.01;

t=-5:td:5;

z1=((t+1)>=0);

z2=((t-1)>=0);

y1=2*(z1-z2);

z3=((t+2)>=0);

z4=((t-2)>=0);

y2=z3-z4;

[y,k]=cconv(y1,y2,t,t,td);

plot(k,y)

axis([-10,10,0,5]);

五、实验报告要求

(1)在“实验内容与步骤”(1),零状态响应和阶跃响应是否

相同?为什么?

答:相同,因为零状态响应和阶跃响应在t<0时都没有输

入。

(2)两序列进行卷积后得到的新序列,说明新序列在时域长度、时域

区间上与与原来两序列的关系。

答:新序列的长度为原两个序列长度之和。区间为原两个序列的区间首尾相加。

实验三、连续时间系统的频域分析

一、实验目的

(1)理解周期信号的傅里叶分解,掌握傅里叶系数的计算方法;

(2)深刻理解和掌握非周期信号的傅里叶变换及其计算方法;

(3)熟悉傅里叶变换的性质,并能应用其性质实现信号的幅度调制;(4)理解连续时间系统的频域分析原理和方法,掌握连续系统的频率响应求解方法,并画出相应的幅频、相频响应曲线。

四、实验内容及步骤

(1)周期性三角波如下图所示,计算其傅里叶级数系数,演示其有限项级数逼近并绘图。

T=2; w=2*pi/T;

a0=quadl(@singftr,-1,1)*2/T;

N=10;an=zeros(1,N);bn=zeros(1,N);

for k=1:N

an(k)=quadl(@ftrcos,-1,1,[],[],k,w)*2/T;

bn(k)=quadl(@ftrsin,-1,1,[],[],k,w)*2/T;

end;

n=1:1:N;

figure(1);

subplot(1,2,1);stem(n,an,'-o');grid on;

subplot(1,2,2);stem(n,bn,'-o');grid on;

t=-3:0.01:3;

x=pulstran(t+0.5,-3:2:3,'tripuls',1,1);

figure(2);subplot(6,2,1);

plot(t,x);

axis([-3,3,-1,2]);grid on;

subplot(6,2,2);plot(t,a0/2);grid on;

wave=a0/2;

for k=1:10

wave=wave+an(k)*cos(k*w*t)+bn(k)*sin(k*w*t);

subplot(6,2,k+2);plot(t,wave);grid on;

end

2 (2)计算如下所示的信号(cos(t

πR=0.005;

t=-2:R:2;

f=cos(pi*t/2);

%f=(abs(t)<=1); ))的傅里叶变换,并验证尺度变换和时移变换性质。

subplot(2,1,1);plot(t,sf);

xlabel('t');ylabel('sf(t)');grid on;

subplot(2,1,2);plot(w,SFudu);

xlabel('w');ylabel('SF9jw)');grid on;

w1=40;N=1000;k=-N:N;w=k*w1/N;

F=f*exp(-j*t'*w)*R;

Fudu=real(F);

figure(1);

subplot(2,1,1);plot(t,f);

xlabel('t');ylabel('f(t)');grid on;

subplot(2,1,2);plot(w,Fudu);

xlabel('w');ylabel('F(jw)');grid on; on;

sf=cos(pi*t/4);

w1=40;N=1000;k=-N:N;w=k*w1/N;

SF=sf*exp(-j*t'*w)*R;

SFudu=real(SF);

figure(2); mf=f.*cos(10*pi*t);

figure(3);

subplot(3,1,1);plot(t,cos(10*pi*t)); ylabel('y(t)=cos(10*pi*t)');grid on; subplot(3,1,2);plot(t,mf);

ylabel('f1(t)=f(t)*cos(10*pi*t)');grid

MF=mf*exp(-j*t'*w)*R;

MFudu=real(MF);

subplot(3,1,3);plot(w,MFudu); xlabel('w');ylabel('MF(jw)');grid on;

(3)设信号f(t)为中心为0,范围从-1到1,最大幅值为1的三角波,载波是频率为10Hz

的余弦信号cos(20π t),用MATLAB实现调幅信号,并观察信号和调幅信号频谱。

R=0.005;

t=-2:R:2;

z1=((t+1)>=0);

z2=((t-1)>=0);

g=z1-z2;

f=t.*g;

%f=(abs(t)<=1);

w1=40;N=1000;k=-N:N;w=k*w1/N;

F=f*exp(-j*t'*w)*R;

Fudu=real(F); on; figure(1);

subplot(2,1,1);plot(t,f);

xlabel('t');ylabel('f(t)');grid on;

subplot(2,1,2);plot(w,Fudu); xlabel('w');ylabel('F(jw)');grid on;

mf=f.*cos(10*pi*t);

figure(2);

subplot(3,1,1);plot(t,cos(10*pi*t)); ylabel('y(t)=cos(10*pi*t)');grid on; subplot(3,1,2);plot(t,mf);

ylabel('f1(t)=f(t)*cos(10*pi*t)');grid

MF=mf*exp(-j*t'*w)*R;

MFudu=real(MF);

subplot(3,1,3);plot(w,MFudu); xlabel('w');ylabel('MF(jw)');grid on;

(4)求下列微分方程所描述系统频率响应并画出幅频、相频响应曲线:y ' (t) + 3y'(t) + 2 y(t) = f '(t)

b=[1 0];a=[1 3 2];w=linspace(0,5,200);

H=freqs(b,a,w);

figure(1);

subplot(2,1,1);

plot(w,abs(H));

xlabel('\omega');ylabel('|H(j\omega)|');

grid on;

subplot(2,1,2);

plot(w,angle(H));

xlabel('\omega');ylabel('\phi');grid on;

五、实验报告要求

(1)在“实验内容与步骤”(1)中,采用三角函数和指数形式的傅里

叶分解有何不同,

它们之间的关系是什么?采用不同项数的分解形式对原始函数进行逼

近,效果有何不同?为

什么?

答:采用三角函数和指数形式的傅里叶分解时每一项前的系数不同。

采用不同项数的分解形式时,项数越大,级数与原始函数的逼近程度

越好。

(2)综合考虑“实验内容与步骤”(2)和(3),比较傅里叶变换时移和平移的不同效

果。

答:时域右移信号在频域中所有频率“分量”相应落后相位ωt0 ,而其幅度保持不变。

频域右移

ω 0

,时域中信号

f (t ) 乘以因

子 e

jt ω 0

实验四、连续系统的复频域分析

一、实验目的

(1)深刻理解和掌握拉普拉斯变换的运算方法及其性质;

(2)熟练掌握利用部分分式展开的方法求解拉普拉斯逆变换,并能利用 MATLAB 实现; (3)理解复频域系统函数 H (s )的意义,并能熟练画出其频谱;

(4)利用复频域系统函数 H (s )的零、极点分布对连续时间系统进行复频域分析。 四、实验内容与步骤

5

(1)求函数 F

(s

) = s num=[5]; den=[1 1 4 4];

3 2

+ s + 4 s + 4

的拉式逆变换。 [r,p,k]=residue(num,den)

运行结果: x = 0.0625 0.1250

0.2500 0.5000 1.0000 2.0000 4.0000

8.0000

16.0000

r =

-0.5000 - 0.2500i -0.5000 + 0.2500i 1.0000 p =

-0.0000 + 2.0000i -0.0000 - 2.0000i -1.0000 k =

[]

(2)已知连续系统函数H

(s ) =

s 点图,并分析系统的稳定性。

num=[1 0 -4];den=[1 2 -3 2 1];

zs=roots(num);ps=roots(den);

figure(1);

2

s ? 4

3 3 2

+ 2s ? 3 s + 2 s +

1

,试用Matlab画出系统的零极

plot(real(zs),imag(zs),'o',real(ps),imag(ps),'ks','markersize',12);

axis([-4,3,-1,1]);grid on;

sys=tf(num,den);

figure(2);

pzmap(sys);

(3)已知系统函数为H

( s) =

| H (jω ) |。

num=[1];den=[1 2 2 1];

sys=tf(num,den);

t=0:0.01:10;

h=impulse(sys,t);

figure(1);

plot(t,h);

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

[H,w]=freqs(num,den);

figure(2);

plot(w,abs(H)); s

s + 4

2 ,求出系统的冲击响应h(t)和系统的幅频响应+

3 s + 2

xlabel('\omega(rad/s)');ylabel('|H(j\omega)|'); title('Magenitude Response');

五、实验报告要求

(1)利用系统函数采用Matlab进行系统稳定性分析时,所存在的前

提条件是什么?系统函数和频率响应函数之间的关系?

答:

(2)比较连续系统在频域和复频域进行分析时的不同方法和效果。说

明实验内容与步骤中(2)、(3)、(4)所描述的系统所起的作用。

答:在频域中用傅里叶变换,而在复频域进行分析时用拉普拉斯变换。

实验五、离散时间系统的时域、Z域分析

一、实验目的

(1)加深对线性时不变离散系统中零状态响应概念的理解,掌握其求解方法;

(2)深刻理解卷积和运算,掌握求离散序列卷积和的计算方法;

(3)掌握求解给定离散系统的单位序列响应和单位阶跃序列响应的方法;

(4)加深理解和掌握离散求序列信号Z变换和逆Z变换的方法;

(5)加深理解和掌握离散系统的系统函数零点、极点分布与系统时

域特性、系统稳定性的关系。

四、实验内容与步骤

k

(1)已知系统的差分方程为y[k]=0.7y[k-1]+0.1y[k-2]=7f[k]-2f[k-1],输入为f[k]= (0 4) u k [ ] 。

计算系统的零状态响应y[k]、单位序列响应h[k]和阶跃响应g[k],并画出相应的图形。

k=0:10; title('零状态响应');

a=[1 -0.7 0.1]; subplot(2,3,2)

b=[7 -2]; stem(k,h,'g');

f=0.4.^k; grid on;

filter(a,b,f); title('单位取样响应的近似值');

h=impz(b,a,k); subplot(2,3,3)

g=stepz(b,a,length(k)); grid on;

figure; stem(k,g,'b');

subplot(2,3,1) title('单位阶跃响应的近似值');

plot(k,f,'r'); grid on;

grid on;

k

(0 5) ( u [k ] ?u [k ? 5]) 。

(2)已知系统的单位序列响应为h[k]=u[k]-u[k-5],输入信号

为f[k]=

利用MATLAB计算:

a. y1[k]=h[k]*f[k]

b. y2[k]=h[k]*f[k-2]

画出h[k]、f[k]、y1[k]和y2[k]的波形。

k=0:4; subplot(2,2,3);

h=[1 1 1 1 1 ]; stem(t1,y1);

f=0.5.^k; subplot(2,2,4);

y1=conv(h,f); stem(t2,y2);

t1=0:length(y1)-1; subplot(2,2,1);

k1=2:6; stem(k,h);

f2=0.5.^k1; subplot(2,2,2);

y2=conv(h,f2); stem(k1,f);

t2=2:length(y2)+1;

(3)已知因果离散信号的系统函数为H ( z) =

z

2

z ? 2 z + 4

2

? 0 5 z + 0

25

。利用MATLAB计算系统

函数的零点、极点,在Z平面画出其零点、极点的分布,并分析系统的稳定性;求出系统函数的单位序列响应和频率响应,并分别画出其波形。

b=[1 -2 4]; A=[1 -0.5 0.25];

a=[1 -0.5 0.25]; figure;

[z,p,k]=tf2zp(b,a); zplane(B,A);

B=[1 -2 4];

B=[1 -2 4]; figure;

A=[1 -0.5 0.25]; subplot(2,1,1)

k=0:40; plot(w/pi,abs(H));

h=impz(B,A,k); xlabel('ang.freq.\Omega(rad/s)'); figure; ylabel('|H(e^j^\Omega)|'); stem(k,h); title('Magnitude response'); xlabel('k'); subplot(2,1,2)

ylabel('h[k]'); plot(w/pi,angle(H));

title('Impulse response'); xlabel('ang.freq.\Omega(rad/s)');

ylabel('Angle');

[H,w]=freqz(B,A); title('Angle response');

信号与系统实验

《信号与系统及MATLAB实现》实验指导书

前言 长期以来,《信号与系统》课程一直采用单一理论教学方式,同学们依靠做习题来巩固和理解教学内容,虽然手工演算训练了计算能力和思维方法,但是由于本课程数学公式推导较多,概念抽象,常需画各种波形,作题时难免花费很多时间,现在,我们给同学们介绍一种国际上公认的优秀科技应用软件MA TLAB,借助它我们可以在电脑上轻松地完成许多习题的演算和波形的绘制。 MA TLAB的功能非常强大,我们此处仅用到它的一部分,在后续课程中我们还会用到它,在未来地科学研究和工程设计中有可能继续用它,所以有兴趣的同学,可以对MA TLAB 再多了解一些。 MA TLAB究竟有那些特点呢? 1.高效的数值计算和符号计算功能,使我们从繁杂的数学运算分析中解脱出来; 2.完备的图形处理功能,实现计算结果和编程的可视化; 3.友好的用户界面及接近数学表达式的自然化语言,易于学习和掌握; 4.功能丰富的应用工具箱,为我们提供了大量方便实用的处理工具; MA TLAB的这些特点,深受大家欢迎,由于个人电脑地普及,目前许多学校已将它做为本科生必须掌握的一种软件。正是基于这些背景,我们编写了这本《信号与系统及MA TLAB实现》指导书,内容包括信号的MA TLAB表示、基本运算、系统的时域分析、频域分析、S域分析、状态变量分析等。通过这些练习,同学们在学习《信号与系统》的同时,掌握MA TLAB的基本应用,学会应用MA TLAB的数值计算和符号计算功能,摆脱烦琐的数学运算,从而更注重于信号与系统的基本分析方法和应用的理解与思考,将课程的重点、难点及部分习题用MA TLAB进行形象、直观的可视化计算机模拟与仿真实现,加深对信号与系统的基本原理、方法及应用的理解,为学习后续课程打好基础。另外同学们在进行实验时,最好事先预习一些MA TLAB的有关知识,以便更好地完成实验,同时实验中也可利用MA TLAB的help命令了解具体语句以及指令的使用方法。

数字信号处理实验二报告

实验二 IIR数字滤波器设计及软件实现 1.实验目的 (1)熟悉用双线性变换法设计IIR数字滤波器的原理与方法; (2)学会调用MATLAB信号处理工具箱中滤波器设计函数(或滤波器设计分析工具fdatool)设计各种IIR数字滤波器,学会根据滤波需求确定滤波器指标参数。 (3)掌握IIR数字滤波器的MATLAB实现方法。 (3)通过观察滤波器输入输出信号的时域波形及其频谱,建立数字滤波的概念。 2.实验原理 设计IIR数字滤波器一般采用间接法(脉冲响应不变法和双线性变换法),应用最广泛的是双线性变换法。基本设计过程是:①先将给定的数字滤波器的指标转换成过渡模拟滤波器的指标;②设计过渡模拟滤波器;③将过渡模拟滤波器系统函数转换成数字滤波器的系统函数。MATLAB信号处理工具箱中的各种IIR数字滤波器设计函数都是采用双线性变换法。第六章介绍的滤波器设计函数butter、cheby1 、cheby2 和ellip可以分别被调用来直接设计巴特沃斯、切比雪夫1、切比雪夫2和椭圆模拟和数字滤波器。本实验要求读者调用如上函数直接设计IIR数字滤波器。 本实验的数字滤波器的MATLAB实现是指调用MATLAB信号处理工具箱函数filter对给定的输入信号x(n)进行滤波,得到滤波后的输出信号y(n)。 3. 实验内容及步骤 (1)调用信号产生函数mstg产生由三路抑制载波调幅信号相加构成的复合信号st,该函数还会自动绘图显示st的时域波形和幅频特性曲线,如图1所示。由图可见,三路信号时域混叠无法在时域分离。但频域是分离的,所以可以通过滤波的方法在频域分离,这就是本实验的目的。 图1 三路调幅信号st的时域波形和幅频特性曲线 (2)要求将st中三路调幅信号分离,通过观察st的幅频特性曲线,分别确定可以分离st中三路抑制载波单频调幅信号的三个滤波器(低通滤波器、带通滤波器、高通滤波器)的通带截止频率和阻带截止频率。要求滤波器的通带最大衰减为0.1dB,阻带最小衰减为

信号与系统实验报告1

学生实验报告 (理工类) 课程名称:信号与线性系统专业班级:M11通信工程 学生学号:1121413017 学生姓名:王金龙 所属院部:龙蟠学院指导教师:杨娟

20 11 ——20 12 学年第 1 学期 金陵科技学院教务处制 实验报告书写要求 实验报告原则上要求学生手写,要求书写工整。若因课程特点需打印的,要遵照以下字体、字号、间距等的具体要求。纸张一律采用A4的纸张。 实验报告书写说明 实验报告中一至四项内容为必填项,包括实验目的和要求;实验仪器和设备;实验内容与过程;实验结果与分析。各院部可根据学科特点和实验具体要求增加项目。 填写注意事项 (1)细致观察,及时、准确、如实记录。 (2)准确说明,层次清晰。 (3)尽量采用专用术语来说明事物。 (4)外文、符号、公式要准确,应使用统一规定的名词和符号。 (5)应独立完成实验报告的书写,严禁抄袭、复印,一经发现,以零分论处。 实验报告批改说明 实验报告的批改要及时、认真、仔细,一律用红色笔批改。实验报告的批改成绩采用百分制,具体评分标准由各院部自行制定。 实验报告装订要求

实验批改完毕后,任课老师将每门课程的每个实验项目的实验报告以自然班为单位、按学号升序排列,装订成册,并附上一份该门课程的实验大纲。

实验项目名称:常用连续信号的表示 实验学时: 2学时 同组学生姓名: 无 实验地点: A207 实验日期: 11.12.6 实验成绩: 批改教师: 杨娟 批改时间: 一、实验目的和要求 熟悉MATLAB 软件;利用MATLAB 软件,绘制出常用的连续时间信号。 二、实验仪器和设备 586以上计算机,装有MATLAB7.0软件 三、实验过程 1. 绘制正弦信号)t Asin t (f 0?ω+=(),其中A=1,πω2=,6/π?=; 2. 绘制指数信号at Ae t (f =),其中A=1,0.4a -=; 3. 绘制矩形脉冲信号,脉冲宽度为2; 4. 绘制三角波脉冲信号,脉冲宽度为4;斜度为0.5; 5. 对上题三角波脉冲信号进行尺度变换,分别得出)2t (f ,)2t 2(f -; 6. 绘制抽样函数Sa (t ),t 取值在-3π到+3π之间; 7. 绘制周期矩形脉冲信号,参数自定; 8. 绘制周期三角脉冲信号,参数自定。 四、实验结果与分析 1.制正弦信号)t Asin t (f 0?ω+=(),其中A=1,πω2=,6/π?= 实验代码: A=1;

信号与系统实验报告一

1. 实验原理 2. 设描述连续时间系统的微分方程为: ) ()()()()()()()(01) 1(1) (01)1(1)(t f b t f b t f b t f b t y a t y a t y a t y a m m m m n n n n +'+++=+'+++---- 则可用向量a 和b 表示该系统,即 ],,,,[011a a a a a n n -= ],,,,[011b b b b b m m -= 注意,向量a 和b 的元素一定要以微分方程时间求导的降幂次序排列,且缺项要用0补齐。 如微分方程 )()()(2)(3)(t f t f t y t y t y +''=+'+'' 表示该系统的向量为 ]2 3 1[=a ]1 0 1[=b (1)求解冲激响应:impulse()函数 impulse()函数有以下四种调用格式: ① impulse(b,a) 该调用格式以默认方式绘制由向量a 和b 定义的连续时间系统的冲激响应的时域波形。 ② impulse(b,a,t) 该调用格式绘制由向量a 和b 定义的连续时间系统在t ~0时间范围内的冲激响应的时域波形。 ③ impulse(b,a, t1:p:t2) 该调用格式绘制由向量a 和b 定义的连续时间系统在21~t t 时间范围内,且以时间间隔 p 均匀抽样的冲激响应的时域波形。 ④ y=impulse(b,a,t1:p:t2) 该调用格式并不绘制系统冲激响应的波形,而是求出由向量a 和b 定义的连续时间系统在21~t t 时间范围内以时间间隔p 均匀抽样的系统冲激响应的数值解。 (2)求解阶跃响应:step()函数 step()函数也有四种调用格式: ① step(b,a) ② step(b,a,t) ③ step(b,a, t1:p:t2) ④ y=step(b,a,t1:p:t2) 上述调用格式的功能与impulse()函数完全相同。 (3)求解零状态响应:lsim()函数 lsim()函数有以下二种调用格式:

数字信号处理实验程序2.

2.1 clc close all; n=0:15; p=8;q=2; x=exp(-(n-p.^2/q; figure(1; subplot(3,1,1; stem(n,x; title('exp(-(n-p^2/q,p=8,q=2'; xk1=fft(x,16; q=4; x=exp(-(n-p.^2/q; subplot(3,1,2; xk2=fft(x,16; stem(n,x; title('exp(-(n-p^2/q,p=8,q=4'; q=8; x=exp(-(n-p.^2/q;

xk3=fft(x,16; subplot(3,1,3; stem(n,x; title('exp(-(n-p^2/q,p=8,q=8';%时域特性figure(2; subplot(3,1,1; stem(n,abs(xk1; title('exp(-(n-p^2/q,p=8,q=2'; subplot(3,1,2; stem(n,abs(xk2; title('exp(-(n-p^2/q,p=8,q=4'; subplot(3,1,3; stem(n,abs(xk3; title('exp(-(n-p^2/q,p=8,q=8';%频域特性%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%% p=8;q=8; figure(3; subplot(3,1,1; stem(n,x; title('exp(-(n-p^2/q,p=8,q=8';

xk1=fft(x,16; p=13; x=exp(-(n-p.^2/q; subplot(3,1,2; xk2=fft(x,16; stem(n,x; title('exp(-(n-p^2/q,p=13,q=8'; p=14; x=exp(-(n-p.^2/q; xk3=fft(x,16; subplot(3,1,3; stem(n,x; title('exp(-(n-p^2/q,p=14,q=8';%时域特性figure(4; subplot(3,1,1; stem(n,abs(xk1; title('exp(-(n-p^2/q,p=8,q=8'; subplot(3,1,2; stem(n,abs(xk2; title('exp(-(n-p^2/q,p=13,q=8'; subplot(3,1,3;

信号系统实验报告

电子工程系 信号与系统课程实验报告 2011-----2012学年第一学期 专业: 电子信息工程技术班级: 学号 : 姓名: 指导教师: 实常用连续时间信号的实现

一、实验目的 (1)了解连续时间信号的特点; (2)掌握连续时间信号表示的向量法和符号法; (3)熟悉MATLAB Plot函数等的应用。 二、实验原理 1、信号的定义 信号是随时间变化的物理量。信号的本质是时间的函数。 2、信号的描述 1)时域法 时域法是将信号表示成时间的函数f(t)来对信号进行描述的方法。信号的时间特性指的是信号的波形出现的先后,持续时间的长短,随时间变化的快慢和大小,周期的长短等。 2)频域(变换域)法 频域法是通过正交变换,将信号表示成其他变量的函数来对信号进行描述的方法。一般常用的是傅立叶变换。信号的频域特性包括频带的宽窄、频谱的分布等。 信号的频域特性与时域特性之间有着密切的关系。 3、信号的分类 按照特性的不同,信号有着不同的分类方法。 (1)确定性信号:可以用一个确定的时间函数来表示的信号。 随机信号:不可以用一个确定的时间函数来表示,只能用统计特性加以描述的信号。 (2)连续信号:除若干不连续的时间点外,每个时间点在t上都有对应的数值信号。离散信号:只在某些不连续的点上有数值,其他时间点上信号没有定义的信号。 (3)周期信号:存在T,使得等式f(t+T)=f(t)对于任意时间t都成立的信号。非周期信号:不存在使得等式f(t+T)=f(t)对于任意时间t都成立的信号。 绝对的周期信号是不存在的,一般只要在很长时间内慢走周期性就可以了。 (4)能量信号:总能量有限的信号。 功率信号:平均功率有限切非零的信号。 (5)奇信号:满足等式f(t)=--f(--t)的信号。偶信号:满足等式f(t)=f(--t)的信号。 三、涉及的MATLAB函数 1、plot函数 功能:在X轴和Y轴方向都按线性比例绘制二维图形。 调用格式: Plot(x,y):绘出相x对y的函数线性图。 Plot(x1,y1,x2,y2,…..):会出多组x对y的线性曲线图。 2、ezplot函数 功能:绘制符号函数在一定范围内的二维图形。简易绘制函数曲线。 调用格式: Ezplot (fun):在[-2π,2π]区间内绘制函数。 Ezplot (fun,[min,max]):在[min,max]区间内绘函数。 Ezplot (funx,funy):定义同一曲面的函数,默认的区间是[0, 2π]。】 3、sym函数 功能:定义信号为符号的变量。 调用格式:sym(fun):fun为所要定义的表达式。 4、subplot函数

北京理工大学信号与系统实验实验报告

实验1 信号的时域描述与运算 一、实验目的 1. 掌握信号的MATLAB表示及其可视化方法。 2. 掌握信号基本时域运算的MA TLAB实现方法。 3. 利用MA TLAB分析常用信号,加深对信号时域特性的理解。 二、实验原理与方法 1. 连续时间信号的MATLAB表示 连续时间信号指的是在连续时间范围内有定义的信号,即除了若干个不连续点外,在任何时刻信号都有定义。在MATLAB中连续时间信号可以用两种方法来表示,即向量表示法和符号对象表示法。 从严格意义上来说,MATLAB并不能处理连续时间信号,在MATLAB中连续时间信号是用等时间间隔采样后的采样值来近似表示的,当采样间隔足够小时,这些采样值就可以很好地近似表示出连续时间信号,这种表示方法称为向量表示法。表示一个连续时间信号需要使用两个向量,其中一个向量用于表示信号的时间范围,另一个向量表示连续时间信号在该时间范围内的采样值。例如一个正弦信号可以表示如下: >> t=0:0.01:10; >> x=sin(t); 利用plot(t,x)命令可以绘制上述信号的时域波形,如图1所示。 如果连续时间信号可以用表达式来描述,则还可以采用符号表达式來表示信号。例如对于上述正弦信号,可以用符号对象表示如下: >> x=sin(t); >> ezplot(X); 利用ezplot(x)命令可以绘制上述信号的时域波形 Time(seconds) 图1 利用向量表示连续时间信号

t 图 2 利用符号对象表示连续时间信号 sin(t) 2.连续时间信号的时域运算 对连续时间信号的运算包括两信号相加、相乘、微分、积分,以及位移、反转、尺度变换(尺度伸缩)等。 1)相加和相乘 信号相加和相乘指两信号对应时刻的值相加和相乘,对于两个采用向量表示的可以直接使用算术运算的运算符“+”和“*”来计算,此时要求表示两信号的向量时间范围和采样间隔相同。采用符号对象表示的两个信号,可以直接根据符号对象的运算规则运算。 2)微分和积分 对于向量表示法表示的连续时间信号,可以通过数值计算的方法计算信号的微分和积分。这里微分使用差分来近似求取的,由时间向量[N t t t ,,,21?]和采样值向量[N x x x ,,,21?]表示的连续时间信号,其微分可以通过下式求得 1,,2,1,|)('1-?=?-≈ +=N k t x x t x k k t t k 其中t ?表示采样间隔。MA TLAB 中用diff 函数来计算差分 k k x x -+1。 连续时间信号的定积分可以由MATLAB 的qud 函数实现,调用格式为 quad ('function_name',a,b) 其中,function_name 为被积函数名,a 、b 为积分区间。

信号与系统实验三

信号与系统实验实验三:信号的卷积 小组成员: 黄涛13084220 胡焰焰13084219 洪燕东13084217

一、实验目的 1. 理解卷积的物理意义; 2. 掌握运用计算机进行卷积运算的原理和方法; 3. 熟悉卷积运算函数conv的应用; 二、预习内容 1. 卷积的定义及物理意义; 2. 卷积计算的图解法; 3. 卷积的应用 三、实验原理说明 1.卷积的定义 连续时间和离散时间卷积的定义分别如下所示: 2.卷积的计算 由于计算机技术的发展,通过编程的方法来计算卷积积分和卷积和已经不再是冗繁的工作,并可以获得足够的精度,因此信号的时域卷积分析法在系统分析中得到了广泛的应用。 卷积积分的数值运算可以应用信号的分段求和来实现,即: 数值运算只求当时的信号值,则由上式可以得到: 上式中实际上就是连续信号等间隔均匀抽样的离散序列的卷积和,当足够小的时候就是信号卷积积分的数值近似。因此,在利用计算机计算两信号卷积积分时,实质上是先将其转化为离散序列,再利用离散卷积和计算原理来计算。 3.卷积的应用 3.1 求解系统响应 卷积是信号与系统时域分析的基本手段,主要应用于求解系统响应,已知一LTI系统的单位冲激响应和系统激励信号则系统响应为激励与单位冲激响应的卷积。 需要注意的是利用卷积分析方法求得的系统响应为零状态响应。 3.2 相关性分析 相关函数是描述两个信号相似程度的量。两信号之间的相关函数一般称之为互相关函数或者互关函数,定义如下: 若是同一信号,此时相关函数称为自相关函数或者自关函数: 对于相关函数与卷积运算有着密切的联系,由卷积公式与相关函数比较得: 可见,由第二个信号反转再与第一个信号卷积即得到两信号的相关函数。 4.涉及的Matlab函数 4.1 conv函数 格式w = conv(u,v),可以实现两个有限长输入序列u,v的卷积运算,得到有限冲激响应系统的输出序列。输出序列长度为两个输入序列长度和减一。 四、实验内容 给定如下因果线性时不变系统: y[n]+0.71y[n-1]-0.46y[n-2]-0.62y[n-3=0.9x[n]-0.45x[n-1]+0.35x[n-2]+0.002x[n-3] (1)不用impz函数,使用filter命令,求出以上系统的单位冲激响应h[n]的前20个样本; clc; N = 0:19;

数字信号处理实验一

一、实验目的 1. 通过本次实验回忆并熟悉MATLAB这个软件。 2. 通过本次实验学会如何利用MATLAB进行序列的简单运算。 3. 通过本次实验深刻理解理论课上的数字信号处理的一个常见方法——对时刻n的样本附近的一些样本求平均,产生所需的输出信号。 3. 通过振幅调制信号的产生来理解载波信号与调制信号之间的关系。 二、实验内容 1. 编写程序在MATLAB中实现从被加性噪声污染的信号中移除噪声的算法,本次试验采用三点滑动平均算法,可直接输入程序P1.5。 2. 通过运行程序得出的结果回答习题Q1.31-Q1.33的问题,加深对算法思想的理解。 3. 编写程序在MATLAB中实现振幅调制信号产生的算法,可直接输入程序P1.6。 4. 通过运行程序得出的结果回答习题Q1.34-Q1.35的问题,加深对算法思想的理解。 三、主要算法与程序 1. 三点滑动平均算法的核心程序: %程序P1.5 %通过平均的信号平滑 clf; R=51; d=0.8*(rand(R,1)-0.5);%产生随噪声 m=0:R-1; s=2*m.*(0.9.^m);%产生为污染的信号 x=s+d';%产生被噪音污染的信号 subplot(2,1,1); plot(m,d','r-',m,s,'g--',m,x,'b-.');

xlabel('时间序号n');ylabel('振幅'); legend('d[n]','s[n]','x[n]'); x1=[0 0 x];x2=[0 x 0];x3=[x 0 0]; y=(x1+x2+x3)/3; subplot(2,1,2); plot(m,y(2:R+1),'r-',m,s,'g--'); legend('y[n]','s[n]'); xlabel('时间序号n');ylabel('振幅'); 2. 振幅调制信号的产生核心程序:(由于要几个结果,因此利用subplot函数画图) %程序P1.6 %振幅调制信号的产生 n=0:100; m=0.1;fH=0.1;fL=0.01; m1=0.3;fH1=0.3;fL1=0.03; xH=sin(2*pi*fH*n); xL=sin(2*pi*fL*n); y=(1+m*xL).*xH; xH1=sin(2*pi*fH1*n); xL1=sin(2*pi*fL1*n); y1=(1+m1*xL).*xH; y2=(1+m*xL).*xH1; y3=(1+m*xL1).*xH; subplot(2,2,1); stem(n,y); grid; xlabel('时间序号n');ylabel('振幅');title('m=0.1;fH=0.1;fL=0.01;'); subplot(2,2,2); stem(n,y1); grid; xlabel('时间序号n');ylabel('振幅');title('m=0.3;fH=0.1;fL=0.01;'); subplot(2,2,3); stem(n,y2); grid; xlabel('时间序号n');ylabel('振幅');title('m=0.3;fH=0.3;fL=0.01;'); subplot(2,2,4); stem(n,y3); grid;

信号与系统实验报告_1(常用信号的分类与观察)

实验一:信号的时域分析 一、实验目的 1.观察常用信号的波形特点及产生方法 2.学会使用示波器对常用波形参数的测量 二、实验仪器 1.信号与系统试验箱一台(型号ZH5004) 2.40MHz双踪示波器一台 3.DDS信号源一台 三、实验原理 对于一个系统特性的研究,其中重要的一个方面是研究它的输入输出关系,即在一特定的输入信号下,系统对应的输出响应信号。因而对信号的研究是对系统研究的出发点,是对系统特性观察的基本手段与方法。在本实验中,将对常用信号和特性进行分析、研究。 信号可以表示为一个或多个变量的函数,在这里仅对一维信号进行研究,自变量为时间。常用信号有:指数信号、正弦信号、指数衰减正弦信号、复指数信号、Sa(t)信号、钟形信号、脉冲信号等。 1、信号:指数信号可表示为f(t)=Ke at。对于不同的a取值,其波形表现为不同的形式,如下图所示: 图1―1 指数信号 2、信号:其表达式为f(t)=Ksin(ωt+θ),其信号的参数:振幅K、角频率ω、与初始相位θ。其波形如下图所示:

图1-2 正弦信号 3、指数衰减正弦信号:其表达式为其波形如下图: 图1-3 指数衰减正弦信号 4、Sa(t)信号:其表达式为:。Sa(t)是一个偶函数,t= ±π,±2π,…,±nπ时,函数值为零。该函数在很多应用场合具有独特的运用。其信号如下图所示:

图1-4 Sa(t)信号 5、钟形信号(高斯函数):其表达式为:其信号如下图所示: 图1-5 钟形信号 6、脉冲信号:其表达式为f(t)=u(t)-u(t-T),其中u(t)为单位阶跃函数。其信号如下图所示: 7、方波信号:信号为周期为T,前T/2期间信号为正电平信号,后T/2期间信号为负电平信号,其信号如下图所示 U(t)

北京理工大学信号与系统实验报告2 LTI系统的时域分析

实验2 LTI 系统的时域分析 (基础型实验) 一. 实验目的 1. 掌握利用MATLAB 对系统进行时域分析的方法。 2. 掌握连续时间系统零状态响应、冲击响应和阶跃响应的求解方法。 3. 掌握求解离散时间系统响应、单位抽样响应的方法。 4. 加深对卷积积分和卷积和的理解。掌握利用计算机进行卷积积分和卷积和计算的方法。 二. 实验原理与方法 1. 连续时间系统时域分析的MATLAB 实现 1) 连续时间系统的MA TLAB 表示 LTI 连续系统通常可以由系统微分方程描述,设描述系统的微分方程为: (N)(N 1)(M)(M 1)1010(t)(t)...(t)b (t)b (t)...b (t)N N M M a y a y a y x x x ----++=++ 则在MATLAB 中可以建立系统模型如下: 1010[b ,b ,...,b ];a [a ,a ,...,a ];sys tf(b,a); M M N N b --=== 其中,tf 是用于创建系统模型的函数,向量a 和b 的元素是以微分方程求导的降幂次序来排列的,如果有缺项,应用0补齐,例如由微分方程 2''(t)y'(t)3y(t)x(t)y ++= 描述的系统可以表示为: >> b=[1]; >> a=[2 1 3]; >> sys=tf(b,a); 而微分方程由 ''(t)y'(t)y(t)x''(t)x(t)y ++=- 描述的系统则要表示成 >> b=[1 0 -1]; >> a=[1 1 1]; >> sys=tf(b,a); 2) 连续时间系统的零状态响应 零状态响应指系统的初始状态为零,仅由初始信号所引起的响应。MATLAB 提供了一个用于求解零状态响应的函数lism ,其调用格式如下: lism (sys,x,t )绘出输入信号及响应的波形,x 和t 表示输入信号数值向量及其时间向量。 y= lism (sys,x,t )这种调用格式不绘出波形,而是返回响应的数值向量。 3) 连续时间系统的冲激响应与阶跃响应

信号与系统实验DOC

信号与系统实验讲义 雷明东编 重庆文理学院 电子电气学院 2014年10月

实验注意事项 1、不准迟到早退,开始做实验前需要签字; 2、在离开实验室前,要整理好实验设备、桌椅、收拾好垃圾后,待老师检查完毕,方可离开实验室; 3、做实验期间不准大声喧哗,如有问题需举手示意; 4、不准在无老师授权的情况下随意拆卸实验设备; 5、在每次做新实验前,需交前个实验的实验报告。

实验一 常用信号的分类和观察 一 实验目的: 1、观察和了解常见信号的波形和特点。 2、理解相关信号参数的作用和意义。 3、掌握信号的FFT 变换。 3、熟练掌握示波器的使用。 二 实验原理: 描述信号的基本方法是写出它的数学表达式,此表达式是时间的函数,绘出函数的图像称为信号的波形。 对于各种信号,可以从不同的角度分类。如分成确定性信号与随机信号;周期信号与非周期信号;连续时间信号与离散时间信号等。 常见信号除了包括正弦波)sin()(0φω+=t A t x 、指数函数信号t Ke t x α=)(、抽样函数信号t t A t x /)(sin )(=、高斯函数信号τ/)(t Ke t x -=、方波、三角波、锯齿波,还包括一些直流信号。 三 预习练习: 1、预习有关信号的分类和描述。 2、理解信号的函数表达式和相关参数的意义。 四 实验内容及步骤: 1、 根据实验箱上函数信号发生器模块的提示选择相应的信号波形代码。 01:正弦波 02:方波 03:锯齿波 04:三角波

05:阶梯波 06:衰减指数信号 07:高斯函数信号 08:抽样函数信号 09:抽样脉冲 10:调幅信号 11:扫频信号 2、用示波器测量信号,读取信号的幅度和频率,并用坐标纸记录信号波形; 在信号与系统实验箱上的电源模块用电压表(或万用表)与示波器来观 测电源信号的特点,并测量电源的幅度。 3、在示波器上观测扫频信号的波形特征,大致画出扫频信号的波形。 4、利用示波器中的FFT函数,来观看信号的FFT变换形式。 5、用频谱分析仪观测各个信号的频谱(选做)。 五实验仪器: 1、信号系统实验箱(函数信号发生器模块) 2、双踪示波器 六实验报告内容: 1、根据实验测量所得数据,绘制各个信号的波形图。 2、绘制各个波形的FFT变换波形。 3、写出相应的函数表达式与频域变换表达式。 4、用示波器直流档观测函数信号的波形特点,并说明原因(提示:本函数发生器所产生的信号均由单片机AT89C51产生)。

数字信号处理实验报告(实验1_4)

实验一 MATLAB 仿真软件的基本操作命令和使用方法 实验容 1、帮助命令 使用 help 命令,查找 sqrt (开方)函数的使用方法; 2、MATLAB 命令窗口 (1)在MATLAB 命令窗口直接输入命令行计算3 1)5.0sin(21+=πy 的值; (2)求多项式 p(x) = x3 + 2x+ 4的根; 3、矩阵运算 (1)矩阵的乘法 已知 A=[1 2;3 4], B=[5 5;7 8],求 A^2*B

(2)矩阵的行列式 已知A=[1 2 3;4 5 6;7 8 9],求A (3)矩阵的转置及共轭转置 已知A=[1 2 3;4 5 6;7 8 9],求A' 已知B=[5+i,2-i,1;6*i,4,9-i], 求B.' , B' (4)特征值、特征向量、特征多项式 已知A=[1.2 3 5 0.9;5 1.7 5 6;3 9 0 1;1 2 3 4] ,求矩阵A的特征值、特征向量、特征多项式;

(5)使用冒号选出指定元素 已知:A=[1 2 3;4 5 6;7 8 9];求A 中第3 列前2 个元素;A 中所有列第2,3 行的元素; 4、Matlab 基本编程方法 (1)编写命令文件:计算1+2+…+n<2000 时的最大n 值;

(2)编写函数文件:分别用for 和while 循环结构编写程序,求 2 的0 到15 次幂的和。

5、MATLAB基本绘图命令 (1)绘制余弦曲线 y=cos(t),t∈[0,2π]

(2)在同一坐标系中绘制余弦曲线 y=cos(t-0.25)和正弦曲线 y=sin(t-0.5), t∈[0,2π] (3)绘制[0,4π]区间上的 x1=10sint 曲线,并要求: (a)线形为点划线、颜色为红色、数据点标记为加号; (b)坐标轴控制:显示围、刻度线、比例、网络线 (c)标注控制:坐标轴名称、标题、相应文本; >> clear;

信号与系统实验报告

实验三 常见信号的MATLAB 表示及运算 一、实验目的 1.熟悉常见信号的意义、特性及波形 2.学会使用MATLAB 表示信号的方法并绘制信号波形 3. 掌握使用MATLAB 进行信号基本运算的指令 4. 熟悉用MATLAB 实现卷积积分的方法 二、实验原理 根据MATLAB 的数值计算功能和符号运算功能,在MA TLAB 中,信号有两种表示方法,一种是用向量来表示,另一种则是用符号运算的方法。在采用适当的MA TLAB 语句表示出信号后,就可以利用MA TLAB 中的绘图命令绘制出直观的信号波形了。 1.连续时间信号 从严格意义上讲,MATLAB 并不能处理连续信号。在MATLAB 中,是用连续信号在等时间间隔点上的样值来近似表示的,当取样时间间隔足够小时,这些离散的样值就能较好地近似出连续信号。在MATLAB 中连续信号可用向量或符号运算功能来表示。 ⑴ 向量表示法 对于连续时间信号()f t ,可以用两个行向量f 和t 来表示,其中向量t 是用形如12::t t p t =的命令定义的时间范围向量,其中,1t 为信号起始时间,2t 为终止时间,p 为时间间隔。向量f 为连续信号()f t 在向量t 所定义的时间点上的样值。 ⑵ 符号运算表示法 如果一个信号或函数可以用符号表达式来表示,那么我们就可以用前面介绍的符号函数专用绘图命令ezplot()等函数来绘出信号的波形。 ⑶ 常见信号的MATLAB 表示 单位阶跃信号 单位阶跃信号的定义为:10()0 t u t t >?=? 0); %定义函数体,即函数所执行指令

数字信号处理实验及参考程序

数字信号处理实验实验一离散时间信号与系统及MA TLAB实现 1.单位冲激信号: n = -5:5; x = (n==0); subplot(122); stem(n, x); 2.单位阶跃信号: x=zeros(1,11); n0=0; n1=-5; n2=5; n = n1:n2; x(:,n+6) = ((n-n0)>=0); stem(n,x); 3.正弦序列: n = 0:1/3200:1/100; x=3*sin(200*pi*n+1.2); stem(n,x); 4.指数序列 n = 0:1/2:10; x1= 3*(0.7.^n); x2=3*exp((0.7+j*314)*n); subplot(221); stem(n,x1); subplot(222); stem(n,x2); 5.信号延迟 n=0:20; Y1=sin(100*n); Y2=sin(100*(n-3)); subplot(221); stem(n,Y1); subplot(222); stem(n,Y2);

6.信号相加 X1=[2 0.5 0.9 1 0 0 0 0]; X2=[0 0.1 0.2 0.3 0.4 0.5 0.6 0.7]; X=X1+X2; stem(X); 7.信号翻转 X1=[2 0.5 0.9 1]; n=1:4; X2=X1(5-n); subplot(221); stem(n,X1); subplot(222); stem(n,X2); 8.用MATLAB计算序列{-2 0 1 –1 3}和序列{1 2 0 -1}的离散卷积。a=[-2 0 1 -1 3]; b=[1 2 0 -1]; c=conv(a,b); M=length(c)-1; n=0:1:M; stem(n,c); xlabel('n'); ylabel('幅度'); 9.用MA TLAB计算差分方程 当输入序列为时的输出结果。 N=41; a=[0.8 -0.44 0.36 0.22]; b=[1 0.7 -0.45 -0.6]; x=[1 zeros(1,N-1)]; k=0:1:N-1; y=filter(a,b,x); stem(k,y) xlabel('n'); ylabel('幅度') 10.冲激响应impz N=64; a=[0.8 -0.44 0.36 0.22];

信号与系统实验报告

信号与系统实验报告

信号与系统实验报告 姓名: 学号: 软件部分: 表示信号与系统的MATLAB 函数、工具箱 一、实验项目名称:表示信号、系统的MATLAB 函数、工具箱 二、实验目的与任务: 目的:1、加深对常用离散信号的理解; 2、熟悉表示信号的基本MATLAB 函数。 任务:基本MATLAB 函数产生离散信号;基本信号之间的简单运算;判 断信号周期。 三、实验原理: 利用MATLAB 强大的数值处理工具来实现信号的分析和处理,首先就是要学会应用MATLAB 函数来构成信号。 四、实验内容及步骤: 常见的基本信号可以简要归纳如下: 实验内容(一)、 编制程序产生上述5种信号(长度可输入确定),并绘出其图形。 其中5种信号分别为单位抽样序列、单位阶跃序列、正弦序列、指数序列和复正弦序列。 实验内容(二)、 在[0,31]出下列图像 1223[]sin( )cos() 4 4 []cos ( ) 4[]sin()cos() 48 n n x n n x n n n x n πππππ=== 五、项目需用仪器设备名称:计算机、MATLAB 软件。

六、所需主要元器件及耗材:无 七、实验程序及数据 函 数 程序图片 单位冲击函数x=zeros(1,10); x(1)=1; stem(x) 单位阶跃函数x=ones(1,30); plot(x)

正弦序列n=0:30-1; x=sin(2*pi*n/10); stem(x) x=cos(1/4*pi*n).*cos(1/4*pi*n) ; stem(x) 复正弦序列n=0:29; x=exp(j*5*n); stem(x) 指数序列n=0:10; x=2.^n; stem(x)

数字信号处理上机实验代码

文件名:tstem.m(实验一、二需要) 程序: f unction tstem(xn,yn) %时域序列绘图函数 %xn:被绘图的信号数据序列,yn:绘图信号的纵坐标名称(字符串)n=0:length(xn)-1; stem(n,xn,'.'); xlabel('n');ylabel('yn'); axis([0,n(end),min(xn),1.2*max(xn)]); 文件名:tplot.m(实验一、四需要) 程序: function tplot(xn,T,yn) %时域序列连续曲线绘图函数 %xn:信号数据序列,yn:绘图信号的纵坐标名称(字符串) %T为采样间隔 n=0;length(xn)-1;t=n*T; plot(t,xn); xlabel('t/s');ylabel(yn); axis([0,t(end),min(xn),1.2*max(xn)]); 文件名:myplot.m(实验一、四需要)

%(1)myplot;计算时域离散系统损耗函数并绘制曲线图。function myplot(B,A) %B为系统函数分子多项式系数向量 %A为系统函数分母多项式系数向量 [H,W]=freqz(B,A,1000) m=abs(H); plot(W/pi,20*log10(m/max(m)));grid on; xlabel('\omega/\pi');ylabel('幅度(dB)') axis([0,1,-80,5]);title('损耗函数曲线'); 文件名:mstem.m(实验一、三需要) 程序: function mstem(Xk) %mstem(Xk)绘制频域采样序列向量Xk的幅频特性图 M=length(Xk); k=0:M-1;wk=2*k/M;%产生M点DFT对应的采样点频率(关于pi归一化值) stem(wk,abs(Xk),'.');box on;%绘制M点DFT的幅频特性图xlabel('w/\pi');ylabel('幅度'); axis([0,2,0,1.2*max(abs(Xk))]); 文件名:mpplot.m(实验一需要)

信号与系统实验报告3 (2)

信号与系统实验 实验三:信号的卷积 (第三次实验)

【实验目的】 1. 理解卷积的物理意义; 2. 掌握运用计算机进行卷积运算的原理和方法; 3. 熟悉卷积运算函数conv的应用; 【实验内容】 给定如下因果线性时不变系统: y[n]+0.71y[n-1]-0.46y[n-2]-0.62y[n-3=0.9x[n]-0.45x[n-1]+0.35x[n-2]+0.002x[n-3] (1)不用impz函数,使用filter命令,求出以上系统的单位冲激响应h[n]的前20个样本; 代码如下: clear all; N=[0:19]; num=[0.9 -0.45 0.35 0.002]; den=[1 0.71 -0.46 -0.62]; h=filter(num,den,N); stem(N,h); xlabel('ê±??Dòo?'); ylabel('??·ù'); title('μ¥??3??¤?ìó|'); grid; 图像如下:

(2)得到h[n]后,给定x[n],计算卷积输出y[n];并用滤波器h[n]对输入x[n]滤波,求得y1[n]; 代码如下: clear all; N=[0:19]; num=[0.9 -0.45 0.35 0.002]; den=[1 0.71 -0.46 -0.62]; h=filter(num,den,N); x=[1 -2 3 -4 3 2 1]; y=conv(h,x); n=0:25; subplot(2,1,1); stem(n,y); xlabel('时间序号n');ylabel('振幅'); title('用卷积得到的输出');grid; x1=[x zeros(1,19)]; y1=filter(h,1,x1); subplot(2,1,2); stem(n,y1);

数字信号处理实验

子程序: function myplot(B,A) %myplot(B,A) %时域离散系统损耗函数绘图 %B为系统函数分子多项式系数向量 %A为系统函数分母多项式系数向量 [H,W]=freqz(B,A,1000); m=abs(H); plot(W/pi,20*log10(m/max(m)));grid on; xlabel('\omega/\pi');ylabel('幅度(dB)') axis([0,1,-80,5]);title('损耗函数曲线'); function tplot(xn,T,yn) %时域序列连续曲线绘图函数 % xn:信号数据序列,yn:绘图信号的纵坐标名称(字符串) % T为采样间隔 n=0:length(xn)-1;t=n*T; plot(t,xn); xlabel('t/s');ylabel(yn); axis([0,t(end),min(xn),1.2*max(xn)]) 程序: %实验4程序exp4.m % IIR数字滤波器设计及软件实现 clear all;close all Fs=10000;T=1/Fs; %采样频率 %调用信号产生函数mstg产生由三路抑制载波调幅信号相加构成的复合信号st st=mstg; %低通滤波器设计与实现========================================= fp=280;fs=450; wp=2*fp/Fs;ws=2*fs/Fs;rp=0.1;rs=60; %DF指标(低通滤波器的通、阻带边界频)[N,wp]=ellipord(wp,ws,rp,rs); %调用ellipord计算椭圆DF阶数N和通带截止频率wp [B,A]=ellip(N,rp,rs,wp); %调用ellip计算椭圆带通DF系统函数系数向量B和A y1t=filter(B,A,st); %滤波器软件实现 % 低通滤波器设计与实现绘图部分 figure(2);subplot(3,1,1); myplot(B,A); %调用绘图函数myplot绘制损耗函数曲线 yt='y_1(t)'; subplot(3,1,2);tplot(y1t,T,yt); %调用绘图函数tplot绘制滤波器输出波形 %带通滤波器设计与实现==================================================== 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;

相关文档