信号与系统MATLAB实验总汇

合集下载

信号与系统matlab实验报告

信号与系统matlab实验报告

信号与系统MATLAB实验报告实验目的本实验旨在通过MATLAB软件进行信号与系统的相关实验,探究信号与系统的特性与应用。

实验步骤1. 准备工作在正式进行实验之前,我们需要做一些准备工作。

首先,确保已经安装好MATLAB软件,并且熟悉基本的操作方法。

其次,准备好实验所需的信号与系统数据,可以是已知的标准信号,也可以是自己采集的实际信号。

2. 信号的生成与显示使用MATLAB编写代码,生成不同类型的信号。

例如,可以生成正弦信号、方波信号、三角波信号等。

通过绘制信号波形图,观察不同信号的特点和变化。

t = 0:0.1:10; % 时间范围f = 1; % 信号频率s = sin(2*pi*f*t); % 正弦信号plot(t, s); % 绘制信号波形图3. 系统的建模与分析根据实验需求,建立相应的系统模型。

可以是线性时不变系统,也可以是非线性时变系统。

通过MATLAB进行模型的建立和分析,包括系统的时域特性、频域特性、稳定性等。

sys = tf([1, 2], [1, 3, 2]); % 系统传递函数模型step(sys); % 绘制系统的阶跃响应图4. 信号与系统的运算对于给定的信号和系统,进行信号与系统的运算。

例如,进行信号的卷积运算、系统的响应计算等。

通过MATLAB实现运算,并分析结果的意义与应用。

x = [1, 2, 3]; % 输入信号h = [4, 5, 6]; % 系统响应y = conv(x, h); % 信号的卷积运算plot(y); % 绘制卷积结果的波形图5. 实验结果分析根据实验数据和分析结果,对实验进行结果总结与分析。

可以从信号的特性、系统的特性、运算结果等方面进行综合性的讨论和分析。

实验总结通过本次实验,我们学习了如何在MATLAB中进行信号与系统的实验。

通过生成信号、建立系统模型、进行运算分析等步骤,我们深入理解了信号与系统的基本原理和应用方法。

通过实验数据和结果分析,我们对信号与系统有了更深刻的认识,并掌握了MATLAB在信号与系统实验中的应用技巧。

信号与系统MATLAB实验报告

信号与系统MATLAB实验报告

实验报告实验课程:信号与系统—Matlab综合实验学生姓名:学号:专业班级:2012年5月20日基本编程与simulink仿真实验1—1编写函数(function)∑=m n k n 1并调用地址求和∑∑∑===++10011-8015012n n n n n n 。

实验程序:Function sum=qiuhe(m,k)Sum=0For i=1:m Sum=sum+i^k End实验结果;qiuhe(50,2)+qiuhe(80,1)+qiuhe(100,-1)ans=4.6170e+004。

1-2试利用两种方式求解微分方程响应(1)用simulink对下列微分方程进行系统仿真并得到输出波形。

(2)编程求解(转移函数tf)利用plot函数画图,比较simulink图和plot图。

)()(4)(6)(5)(d 22t e t e d d t r t r d d t r d tt t +=++在e(t)分别取u(t)、S(t)和sin(20пt)时的情况!试验过程(1)(2)a=[1,5,6]; b=[4,1]; sys=tf(b,a); t=[0:0.1:10]; step(sys)连续时间系统的时域分析3-1、已知某系统的微分方程:)()()()()(d 2t e t e d t r t r d t r tt t +=++分别用两种方法计算其冲激响应和阶跃响应,对比理论结果进行验证。

实验程序:a=[1,1,1];b=[1,1];sys=tf(b,a);t=[0:0.01:10];figure;subplot(2,2,1);step(sys);subplot(2,2,2);x_step=zeros(size(t));x_step(t>0)=1;x_step(t==0)=1/2;lsim(sys,x_step,t);subplot(2,2,3);impulse(sys,t);title('Impulse Response');xlabel('Time(sec)');ylabel('Amplitude');subplot(2,2,4);x_delta=zeros(size(t));x_delta(t==0)=100;[y1,t]=lsim(sys,x_delta,t);y2=y1;plot(t,y2);title('Impulse Response');xlabel('Time(sec)');ylabel('Amplitude');运行结果如下:3-2;请编写一个自定义函数[F,tF}=intl(f,tf,a)实现数值积分,其中f和tf分别用列矢量表示待积函数的抽样值和抽样时间,a表示积分的起始时间,F和tF分别表示积分结果的抽样值和抽样时间。

信号与系统 MATLAB综合实验

信号与系统    MATLAB综合实验

信号与系统MATLAB综合实验一、实验目的:1、学习MATLAB语言的编程方法及熟悉MATLAB指令。

2、掌握连续时间信号的卷积运算方式,分析建立信号波形间的联系。

3、通过使用MATLAB函数研究线性时不变离散时间系统的时域特性,以加深对线性时不变离散时间系统的时不变性的理解。

二、实验仪器1、计算机2、MATLAB 软件三、实验原理一个离散时间系统是将输入序列变换成输出序列的一种运算。

若以T[•]表示这种运算,则一个离散时间系统可由图1-1来表示,即→∙→(1-1)x n T y n()[]()图1-1 离散时间系统离散时间系统中最重要的、最常用的是“线性时不变系统”。

时不变系统系统的运算关系T[•]在整个运算过程中不随时间(也不随序列的先后)而变化,这种系统称为时不变系统(或称移不变系统)。

这个性质可用以下关系表示:若输入)(ny,则将输入序列移动任意位后,其输出序列除了跟着x的输出为)(n移位外,数值应保持不变,即若)ynm[mT--(m为任意整数)=(xn(()]()][nT=,则)yxn满足以上关系的系统就称为时不变系统。

四、实验内容及结论1、连续时间系统的时域分析已知微分方程: )(2)(3)(2)(3)(t f t f t y t y t y +'=+'+'',1)0(-='-y , 2)0(=-y 若激励信号为)()(t u t f =,利用阶跃响应函数step(sys,t) 求解画波形;利用零状态响应函数lsim 求解画波形;利用卷积函数求解画波形;比较结果。

程序如下:dt=0.001;t1=0:dt:10;f1=-1*exp(-t1)+4*exp(-2*t1);t2=t1;f2=u(t2);f=conv(f1,f2);f=f*dt;t3=0:dt:20;subplot(311)plot(t3,f);xlabel('时间(t)');ylabel('y(t)');title('零状态响应(卷积法)');b=[3 2];a=[1 3 2];sys=tf(b,a);t=0:0.01:10;x=stepfun(t,0);y=lsim(sys,x,t);subplot(312)plot(t,y);xlabel('时间(t)');ylabel('y(t)');title('零状态响应(阶跃函数求法)');sys=tf(b,a);t=0:0.1:10;y=step(sys,t);subplot(313)plot(t,y);xlabel('时间t)');ylabel('y(t)');title('阶跃响应');结论:上述三种方法求得的都是输入为阶跃函数时候的零状态响应,也为阶跃响应,通过图形我们可以看出,利用卷积法求出的零状态和另外两种方法求出的零状态响应图形有一点差别,三者在0到10区间上响应都一致,而利用卷积法求的响应却在下面的区间内发生了变化,我试图修改程序,无论怎么改,发现只要调用了卷积函数,求得的图形就像上述的卷积法求的图形一样,不得解。

《信号与系统》matlab仿真实验

《信号与系统》matlab仿真实验

《信号与系统》matlab仿真实验综合实验一《信号与系统》的MATLAB仿真实验一.实验目的1.熟悉MA TLAB软件平台、工具箱、高效的数值计算及符号计算功能。

2.熟悉MATLAB软件的信号处理编程方法和结果的可视化3.了解数字信号处理的计算机仿真方法4.进一步加深对信号与系统的基本原理、方法及应用的理解。

二.实验软件MATLAB 6.5 界面三.实验内容1.基本信号的表示及可视化2.连续信号的时域运算与时域变换3.线性系统的时域分析及Matlab实现4.连续时间信号的频域分析及Matlab实现四.实验原理方法及相关MATLAB函数1.基本信号的表示及可视化1.1 连续时间信号(1)表示出连续信号f(t)=Sa(t)=sin(t)/tMatlab命令如下:t=-10:1.5:10;%向量t时间范围t=t1:p:t2,p为时间间隔f=sin(t)./t;plot(t,f); %显示该信号的时域波形title(‘f(t)=Sa(t)’);xlabel(‘t’)axis([-10,10,-0.4,1.1])注:改变p可使信号波形更平滑,同学们可以试一试。

(2)单位阶跃信号定义阶跃函数function f=Heaviside(t)f=(t>0)调用阶跃函数t=-1:0.01:3;f=Heaviside(t)plot(t,f);axis([-1,3,-0.2,1.2]);(2)单位冲击信号 (t)定义冲击函数functionchongji(t1,t2,t0)dt=0.01;t=t1:dt:t2;n=length(t);x=zeros(1,n);x(1,(-t0-t1)/dt+1)=1/dt;stairs(t,x);axis([t1,t2,0,1.2/dt])title('单位冲击信号δ(t)')调用的是chongji(-1,5,0);可以试着给别的t1,t2,t0.1.2离散时间信号(1)单位阶跃序列ε(k)定义阶跃序列function jyxulie(k1,k2,k0)k=k1:-k0-1;kk=-k0:k2;n=length(k);nn=length(kk);u=zeros(1,n); %k0前信号赋值为零uu=ones(1,nn);%k0后信号赋值为一stem(kk,uu,’filled’)hold onstem(k,u,’filled’)holdofftitle(‘单位阶跃序列’)axis([k1 k20 1.5])调用阶跃序列函数jyxulie(-2,6,0)(3)单位序列δ(k)定义单位序列函数functiondwxulie(k1,k2,k0)k=k1:k2;n=length(k);f=zeros(1,n);f(1,-k0-k1+1)=1;stem(k,f,’filled’)axis([k1,k2,0,1.5])title(‘单位序列δ(k)’)调用单位序列函数dwxulie(-3,5,0)2.连续信号的时域运算与时域变换运算、变换的符号运算方法:相加、相乘、移位、反折、尺度变换、倒相已知信号)]2()2([)21()(--+⨯+=ttttfεε,用matlab求f(t+2),f(t-2),f(-t),f(2t),-f(t),并绘出时域波形。

信号与系统 MATLAB实验报告(可打印修改)

信号与系统 MATLAB实验报告(可打印修改)

0.8
0.6
0.4
0.2
0
-0.2
-0.4
-20
-15
-10
-5
0
5
10
15
20
对比可知此法做出的图像更加清晰美观。 (2)MATLAB 可以自动地根据曲线数据的范围选择合适的坐标系,从而使得 曲线尽可能清晰地显示出来,一般情况下不必选择坐标系。但是,如果对 MATLAB 自动产生的坐标轴不满意,可以利用 axis 命令对坐标轴进行调整。
title('f=R(t)')
axis([-5 5 -0.5 1.5])
(5) f (t) Sa(t)
ω=1 时:
t=-20:0.01:20 f=sin(t)./t 实现抽样函数
%调用正弦函数sin(),并用sin(t)./t
plot(t,f)
title('f(t)=Sa(t)')
axis([-20,-20,-0.5,1.1])
改进想法:
本题中函数的表示方法都不只一种。如阶跃函数可以借助符号函数来实现
可视化。其程序和结果如下:
t=-5:0.05:5 f=sign(t)
%调用符号函数 sign()
axis([-5,5,-1.1,1.1])
ff=1/2+1/2*f
%运用阶跃函数与符号函数的关系,表示出阶跃函数
ff
plot(t,ff)
实验程序:
(1)
n=-10:20
%设置变量范围,默认步长为1
f=heaviside(n)
x=heaviside(n)-heaviside(n-10) %阶跃函数直接相减
的,当取样时间间隔足够小时,这些离散的样值就能较好地近似出连续信号。 在 MATLAB 中 t = t1: p: t2 的命令定义时间范围向量,t1 为信号起始时间,t2 为终止时间,p 为时间间隔。

(完整版)信号与系统Matlab实验作业

(完整版)信号与系统Matlab实验作业

(完整版)信号与系统Matlab实验作业实验一典型连续时间信号和离散时间信号一、实验目的掌握利用Matlab 画图函数和符号函数显示典型连续时间信号波形、典型时间离散信号、连续时间信号在时域中的自变量变换。

二、实验内容1、典型连续信号的波形表示(单边指数信号、复指数信号、抽样信号、单位阶跃信号、单位冲击信号)1)画出教材P28习题1-1(3) ()[(63)(63)]t f t e u t u t =----的波形图。

function y=u(t) y=t>=0; t=-3:0.01:3;f='exp(t)*(u(6-3*t)-u(-6-3*t))'; ezplot(f,t); grid on;2)画出复指数信号()()j t f t e σω+=当0.4, 8σω==(0<t<10)时的实部和虚部的< p="">波形图。

t=0:0.01:10;f1='exp(0.4*t)*cos(8*t)'; f2='exp(0.4*t)*sin(8*t)'; figure(1) ezplot(f1,t); grid on; figure(2) ezplot(f2,t); grid on;t=-10:0.01:10; f='sin(t)/t'; ezplot(f,t); grid on;t=0:0.01:10;f='(sign(t-3)+1)/2'; ezplot(f,t);grid on;5)单位冲击信号可看作是宽度为?,幅度为1/?的矩形脉冲,即t=t 1处的冲击信号为11111()()0 t t t x t t t otherδ??<<+?=-=画出0.2?=, t 1=1的单位冲击信号。

t=0:0.01:2;f='5*(u(t-1)-u(t-1.2))'; ezplot(f,t); grid on;axis([0 2 -1 6]);2、典型离散信号的表示(单位样值序列、单位阶跃序列、实指数序列、正弦序列、复指数序列)编写函数产生下列序列:1)单位脉冲序列,起点n0,终点n f,在n s处有一单位脉冲。

信号与系统MATLAB实验(教师版)

信号与系统MATLAB实验(教师版)

信号与系统实验指导书及实验报告册班级:姓名:学号:目录实验一、基本信号在MATLAB中的表示和运算实验二、离散信号与系统的时域分析实验三、连续时间LTI系统的时域分析实验四、傅里叶变换、系统的频域分析实验五、信号抽样与恢复实验六、信号与系统复频域分析实验一基本信号在MATLAB中的表示和运算一、实验目的1.学会用MA TLAB表示常用连续信号的方法;2.学会用MA TLAB进行信号基本运算的方法;二、实验原理1.连续信号的MATLAB表示MATLAB提供了大量的生成基本信号的函数,例如指数信号、正余弦信号。

表示连续时间信号有两种方法,一是数值法,二是符号法。

数值法是定义某一时间范围和取样时间间隔,然后调用该函数计算这些点的函数值,得到两组数值矢量,可用绘图语句画出其波形;符号法是利用MATLAB 的符号运算功能,需定义符号变量和符号函数,运算结果是符号表达的解析式,也可用绘图语句画出其波形图。

例1-1指数信号 指数信号在MATLAB 中用exp 函数表示。

如atAe t f =)(,调用格式为 ft=A*exp(a*t) 程序是A=1; a=-0.4;t=0:0.01:10; %定义时间点ft=A*exp(a*t); %计算这些点的函数值plot(t,ft); %画图命令,用直线段连接函数值表示曲线grid on; %在图上画方格例1-2 正弦信号 正弦信号在MATLAB 中用 sin 函数表示。

调用格式为 ft=A*sin(w*t+phi)A=1; w=2*pi; phi=pi/6;t=0:0.01:8; %定义时间点ft=A*sin(w*t+phi); %计算这些点的函数值plot(t,ft); %画图命令grid on; %在图上画方格例1-3 抽样信号 抽样信号Sa(t)=sin(t)/t 在MA TLAB 中用 sinc 函数表示。

定义为 )/(sin )(πt c t Sa =t=-3*pi:pi/100:3*pi;ft=sinc(t/pi);plot(t,ft);grid on;axis([-10,10,-0.5,1.2]); %定义画图范围,横轴,纵轴title('抽样信号') %定义图的标题名字例1-4 三角信号 三角信号在MATLAB 中用 tripuls 函数表示。

matlab信号与系统实验报告材料

matlab信号与系统实验报告材料

实验一 根本信号的产生与运算一、 实验目的学习使用MATLAB 产生根本信号、绘制信号波形、实现信号的根本运算.二、 实验原理MATLAB 提供了许多函数用于产生常用的根本信号:如阶跃信号、脉冲信号、指数信号、正弦信号和周期方波等等.这些信号是信号处理的根底.1、 利用MATLAB 产生如下连续信号并作图.〔1〕51),1(2)(<<---=t t u t x〔2〕300),32sin()(3.0<<=-t t e t x t〔3〕1.01.0,3000cos 100cos )(<<-+=t t t t x〔4〕2000),8.0cos()1.0cos()(<<=t t t t x ππ答:〔1〕、>> t=-1:0.02:5;>> x=<t>1>;>> plot<t,-2*x>;>> axis<[-1,5,-3,1]>;>> title<'杨婕婕 朱艺星'>;>> xlabel<'x<t>=-2u<t-1>'>;〔2〕、>> t=0:0.02:30;>> x=exp<-0.3*t>.*sin<2/3*t>;>> plot<t,x>;>> title<'杨婕婕 朱艺星'>;>> xlabel<'x<t>=exp<-0.3*t>.*sin<2/3*t>'>;因为原函数在t=15后x<t>取值接近于零,所以将横坐标改成0到15,看得更清晰axis<[0,15,-0.2,0.6]>;〔3〕>> t=-0.1:0.01:0.1;x=cos<100*t>+cos<3000*t>;plot<t,x>;>> title<'杨婕婕 朱艺星'>;>>xlabel<'x=cos<100*t>+cos<3000*t>'>;因为t 的间隔取太大,以至于函数不够准确,缩小t 的间隔:t=-0.1:0.002:0.2;x=cos<100*t>+cos<3000*t>;plot<t,x>;title<'杨婕婕'>>> t=-0.1:0.0001:0.1;x=cos<100*t>+cos<3000*t>;>> plot<t,x>;title<'杨婕婕 朱艺星'>;>> xlabel<'x=cos<100*t>+cos<3000*t>'>;〔4〕、t=0:0.01:200;>> x=cos<0.1*pi*t>.*cos<0.8*pi*t>;>> plot<t,x>;>> title<'杨婕婕 朱艺星'>;>> xlabel<'x=cos<0.1*pi*t>.*cos<0.8*pi*t>'>;因为为周期函数,可以将横坐标t 间隔扩大以便于观察图像>> axis<[0,30,-1,1]>;2、 利用MATLAB 产生如下离散序列并作图.〔1〕⎩⎨⎧≤≤-=,055,1)(n n x 1515≤<-n〔2〕)]25.0cos()25.0[sin()9.0()(n n n x n ππ+=,2020≤<-n答:〔1〕、k=-15:15;x=[zeros<1,10>,ones<1,11>,zeros<1,10>];stem<k,x>axis<[-15,15,-0.2,1.2]>;title<'杨婕婕 朱艺星'>;xlabel<'x<n>'>;〔2〕、k=-20:20;x=<0.9>.^k.*<sin<0.25*pi*k>+cos<0.25*pi*k>>;stem<k,x>;title<'杨婕婕 朱艺星'>;xlabel<' x=<0.9>^k*<sin<0.25*pi*k>+cos<0.25*pi*k>>'>;将横坐标变小以便于观察>> axis<[-20,10,-12,8]>;3、 序列:]2,3,1,0,2,1[)(-=↑n x ,]1,1,1[)(-=↑n h ,计算离散卷积)()()(n h n x n y *=,并绘出其波形.答:>> x=[1,2,0,-1,3,2];>> h=[1,-1,1];>> y=conv<x,h>;>> stem<[-2:length<y>-3],y>;>> ylabel<'y[k]'>;xlabel<'k'>;>> title<'杨婕婕 朱艺星'>;三、 实验思考题1、两个连续信号的卷积定义是什么?两个序列的卷积定义是什么?卷积的作用是什么?答:连续信号的卷积的定义:⎰∞∞--τττd t y x )()( 序列的卷积定义:∑=-0)()(m m n y m x .利用作图法即将其中一个信号图翻转,平移,两信号相乘,再相加.傅立叶变换的卷积性质涵盖着时域相乘、频域卷积、频域相乘,时域卷积的对偶关系.前者假如代表两个信号相乘,如此因发生调制作用,在频域一定出现频谱搬家〔频移〕.后者假如一个是信号,另一个代表系统,如此系统起着加工处理的滤波作用.任何信号与冲激函数相卷积,其结果是在冲激出现的时刻〔位置〕再生原信号.卷积在实际中的应用有实现幅度调制与解调,实现多路频分复用,实现单边带调幅〔SSB-AM 〕.2、什么是单位冲激信号)(t δ?能够用MATLAB 产生单位冲激信号吗? 答:出现过程极短,能量极大的信号为冲激信号)(t δ,其定义式为:)(t δ=0,t 0≠⎰∞∞-=1)(dt t δ;上式明确,在t=0无定义,因为不能作为数学函数的取值.而且表示)(t δ与时间覆盖的面积或称)(t δ的强度始终等于 1.因为)(t δ属于奇异函数一类的信号,能量无限大,用MATLAB 不能产生该信号.函数ones<1,n>可以生成单位脉冲序列.3、产生连续信号时,首先要定义时间向量t=0:T :Tp.其中T 和Tp 是什么意思? 答:每两点之间的时间间隔为T,即步长为T.连续信号的时间从0到Tp.实验二 利用DFT 分析离散信号频谱一、 实验目的应用离散傅里叶变换〔DFT 〕,分析离散信号的频谱.深刻理解DFT 分析离散信号频谱的原理,掌握改善分析过程中产生的误差的方法.二、 实验原理根据信号傅里叶变换建立的时域与频域之间的对应关系,可以得到有限长序列的离散傅里叶变换〔DFT 〕与四种确定信号傅里叶变换之间的关系〔见教材〕,实现由DFT 分析其频谱.三、 实验内容1. 利用FFT 分析信号31,...,1,0),83cos()(==n n n x π的频谱; 〔1〕、确定DFT 计算的参数;此题中Ω/2π=3/16,如此周期N=16,因为此题信号无直流分量,所以取样点数可为2*N=32,但必须保证都是独立的样点. N=32;n=0:N-1;x=cos<3*pi/8*n>;X=fft<x,N>;subplot<2,1,1>;stem<n,abs<fftshift<X>>>;ylabel<'Magnitude'>;xlabel<'Frequency <rad>'>;title<'朱艺星 杨婕婕'>; subplot<2,1,2>;stem<n,angle<fftshift<X>>>;ylabel<'Phase'>;xlabel<'Frequency<rad>'>;附:另取N=16时:N=16;n=0:N-1;x=cos<3*pi/8*n>;X=fft<x,N>;subplot<2,1,1>;stem<n-N/2,abs<fftshift<X>>>;ylabel<'Magnitude'>;xlabel<'Frequency <rad>'>;title<'朱艺星 杨婕婕'>;subplot<2,1,2>;stem<n-N/2,angle<fftshift<X>>>;ylabel<'Phase'>;xlabel<'Frequency<rad>'>;附:N取64时;N=64;n=0:N-1;x=cos<3*pi/8*n>;X=fft<x,N>;subplot<2,1,1>;stem<n,abs<fftshift<X>>>;ylabel<'Magnitude'>;xlabel<'Frequency <rad>'>;title<'朱艺星杨婕婕'>; subplot<2,1,2>;stem<n,angle<fftshift<X>>>;ylabel<'Phase'>;xlabel<'Frequency<rad>'>;(2)进展理论值与计算值比拟,讨论信号频谱分析过程中误差原因与改善方法.答:在频谱分析过程中由于取样频率过低或者由于信号的截取长度不当将会产生误差.取样频率过低,可能会产生混频现象,可以适当提高取样率,增加样点数,来减少混叠对频谱分析所造成的误差.对于连续周期信号,其时域取样必须满足时域取样定理:其取样点数K≥2*N+1〔其中N为最高谐波分量〕,即kfo ≥2Nfo+fo;fs≥2fm+fo.截取信号长度不当,会产生功率泄露,对周期序列进展频谱分析时,为防止泄露应做到:截取的长度应取一个根本周期或根本周期的整数倍,假如待分析的周期信号事先不知道其确切的周期,如此可截取较长时间长度的样点进展分析,以减少功率泄露误差.当然,必须在取样频率满足取样定理的条件下进展,否如此混叠与泄露同时存在给频谱分析造成困难.此题)83cos()(n n x π=为周期信号,无直流分量,所以取样点数可为2*N=32,但必须保证都是独立的样点.从取样点数N=32和N=16可以看出,取样点数的不同,会造成频率谱和相位谱的不同.当N=16时,n=3或-3时有幅度值,而在N=32时,n=-10和22时有幅度值,在N=64时,n=-20和44时有幅度值,得到在N=32时,其频谱已经和N=64时一致〔刚好成2倍关系〕,且N=16时已经产生混频现象.综上得,此题取样点数可为32.附:对于非周期连续信号,时域取样定理:fs ≥2fm.频域取样定理:一个时间受限的信号其长度为2τ在频域取样间隔Fo<1/2τ条件下,能够从样点集合完全恢复原来信号的频谱.2. 利用FFT 分析信号)(8.0)(n u n x n =的频谱;(1) 确定DFT 计算的参数;当n 取30时n=0:30;x=<0.8>.^n;subplot<2,1,1>;stem<n,x>;title<'朱艺星 杨婕婕'>;subplot<2,1,2>;w=n-15;plot<w,abs<fftshift<fft<x>>>>;附:当n 取60时n=0:60;x=<0.8>.^n;subplot<2,1,1>;stem<n,x>;title<'朱艺星 杨婕婕'>;subplot<2,1,2>;w=n-15;plot<w,abs<fftshift<fft<x>>>>;(2) 进展理论值与计算值比拟,讨论信号频谱分析过程中误差原因与改善方法.答:信号)(8.0)(n u n x n =为离散非周期信号,且为无限长的信号.根据理论分析,一个时间有限的信号其频谱宽度为无限,一个时间无限的信号其频带宽度如此为有限,因此,对一个时间有限的信号,应用DFT 进展分析,频谱混叠难以防止.对一个时间无限的信号虽然频带有限,但在时间运算中,时间长度总是取有限值,所以频谱泄露难以防止.当原始信号事有限长,截取的长度等于原始信号的长度,如此可以不考虑泄露的影响.当原始的非周期信号为无限长或比拟长,而截取的长度有限或不等于原始信号的长度,如此需考虑频谱泄露引起的不良影响.为了减少泄露的影响,一般可适当增加长度To,也可以通过试探法,先取长度N1〔To=N1*T 〕,然后取N2=2*N1,进展运算.假如两者计算的结果很接近,如此可取N1作为截取长度,否如此继续去N3=2*N2,直至相邻两个长度的计算结果相近,取长度较小的N 为好.此题中,因为信号)(8.0)(n u n x n =为离散非周期信号,且为无限长的信号,用试探法:取n 为30和60,进展比拟,发现两者的频谱根本相似,所以取n 为30较好.因为n 取过大,fs 提高,要求存贮单元增加,硬件速度提高,其结果势必在经济上和技术上带来新的问题.3. 有限长脉冲序列]5,0,1,3,3,2[)(↑=n x ,利用FFT 分析其频谱. N=6;n=0:N-1;x=[2,3,3,1,0,5];subplot<3,1,1>;stem<n,x>;title<'朱艺星 杨婕婕'>;subplot<3,1,2>;w=n;plot<w,abs<fftshift<fft<x>>>>;subplot<3,1,3>;plot<w,angle<fftshift<fft<x>>>>;4. 〔选做题〕某离散序列,630),153.2cos(75.0)152cos()(≤≤+=n n n n x ππ利用FFT 分析其频谱.(1) 对)(n x 做N=64点FFT,绘出信号的频谱,能够分辨出其中的两个频率吗? 假设x<n>是由连续信号)3.2cos(75.0)2cos()(t t t x ππ+=以fs=15Hz 进展取样得来的,如此△f=〔2.3-2〕π/2π=0.15Hz,根据公式:N ≥fs/△f 得N 最小应该为100.假如取N=64,如此不能分辨其中的两个频率.N=64;n=0:N-1;x=cos<pi*2/15*n>+0.75*cos<2.3*pi/15*n>;X=fft<x,N>;subplot<2,1,1>;stem<n,abs<fftshift<X>>>;title<'朱艺星 杨婕婕'>;ylabel<'Magnitude'>;xlabel<'Frequency <rad>'>;subplot<2,1,2>;stem<n,angle<fftshift<X>>>;ylabel<'Phase'>;xlabel<'Frequency <rad>'>〔2〕对)(n x 补零到N=256点后计算FFT,能够分辨出其中的两个频率吗?时域补零的结果L 的数量增加到256,原本的频域N 为64,因为L 要小于等于N,所以此时的N 要扩大为256,致使频域的样点数也增加,所以此时采取时域补零的方法能提高频率分辨力.但如果是在时域补零法得到的L的个数仍小于频域样点数N,如此时域补零法并没有增加信息量,增加后但在频域的N并没有变化,所以采取时域补零的方法不能提高频率分辨力,因为分辨力主要取决于频域样点数N的变化.N=64;n=0:N-1;y=cos<pi*2/15*n>+0.75*cos<2.3*pi/15*n>;x=[y,zeros<1,256-64>];M=256;X=fft<x,M>;subplot<2,1,1>;stem<0:M-1,abs<fftshift<X>>>;title<'朱艺星杨婕婕'>;ylabel<'Magnitude'>;xlabel<'Frequency <rad>'>;subplot<2,1,2>;stem<0:M-1,angle<fftshift<X>>>;ylabel<'Phase'>;xlabel<'Frequency <rad>'>;〔3〕假如不能够很好地分辨出其中的两个频率,应采用哪些措施?答:可以提高取样频率,增加频域的取样点数.当然,如果在T不变条件下,真正增加时域取样长度L,使提供所载荷的信息量增加,功率泄露减少,也会在一定程度上改善频率分辨力,但这不是通过补零使时域长度延长的结果,因为补零不增加信息量.四、实验思考题1.既然可直接由DTFT定义计算序列DTFT,为何利用DFT分析序列的频谱?答:通过DFT 可以求出确定性信号相应的离散频谱或频谱的样值,变换到有限频谱序列,这样就可以用计算机实现对信号进展分析,数字化计算速度快,故提出了DFT 来分析序列的频谱2. 假如序列持续时间无限长,且无解析表达式,如何利用DFT 分析其频谱?答:当原始的非周期信号为无限长或比拟长,可截取一段时间内的序列值,长度为L,作N 点的DFT 变换,N ≥L.而截取的长度有限或不等于原始信号的长度,如此需考虑频谱泄露引起的不良影响.为了减少泄露的影响,一般可适当增加长度To,也可以通过试探法,先取长度L1〔To=L1*T 〕,然后取L2=2*L1,进展运算.假如两者计算的结果很接近,如此可取N1作为截取长度,否如此继续去L3=2*L2,直至相邻两个长度的计算结果相近,取长度较小的L 为好.再从L 点有限长序列x<n>相应的频谱X<Ω>中,在主周期[-π,π]内对X<Ω>进展离散化,随即得到N 个频谱样点 用公式可表示为3. 序列补零和增加序列长度到可以提高频谱分辨率吗?两者有何本质区别?答:如果采取时域补零法得到的L 的个数仍小于频域样点数N,如此时域补零法并没有增加信息量,增加后但在频域的N 并没有变化,所以采取时域补零的方法不能提高频率分辨力,因为分辨力主要取决于频域样点数N 的变化.但如果是补零后的时域序列个数增加到L2,且L2个数大于频域样点数N,因为要满足N 大于等于L,如此现在会使频域样点数也随之增加,所以此时采取时域补零的方法能提高频率分辨力.如果在T 不变条件下,真正增加时域取样长度L,使提供所载荷的信息量增加,功率泄露减少,也会在一定程度上改善频率分辨力,但这不是通过补零使时域长度延长的结果,因为补零不增加信息量.实验三 离散系统分析一、 实验目的深刻理解离散时间系统的系统函数在分析系统时域特性、频域特性与稳定性中的重要作用与意义,掌握根据系统函数的零极点设计简单的滤波器的方法.熟练掌握利用MATLAB 分析离散系统的响应求解、频响特性和零极点的方法.二、实验原理MATLAB 提供了许多可用于分析线性非时变离散系统的函数,主要包括有系数函数、系统时域响应、系统频域响应等分析函数.二、 实验内容1. 某离散LTI 系统的差分方程为(1) 初始状态2)2(,1)1(=-=-y y ,输入)()(n u n x =,计算系统的完全响应; N=100;b=[0.0675,0.1349,0.0675];a=[1,-1.143,0.4128];x=ones<1,N>;y=filtic <b,a,[1,2]>;y=filter <b,a,x,y>;<2> 当以下3个信号分别通过离散系统时,分别计算离散系统的零状态响应 <1>),()10cos()(1n u n n x π=N=100;n=0:N-1;x2=[ones<1,N>];b=[0.0675,0.1349,0.0675];a=[1,-1.143,0.4128];x=cos<pi/10*n>.*x2;y=filter<b,a,x>; <2>)()5cos()(2n u n n x π= N=100;n=0:N-1;x2=[ones<1,N>];b=[0.0675,0.1349,0.0675];a=[1,-1.143,0.4128]; x=cos<pi/5*n>.*x2;y=filter<b,a,x>; <3>)()107cos()(3n u n n x π= N=100;n=0:N-1;x2=[ones<1,N>];b=[0.0675,0.1349,0.0675];a=[1,-1.143,0.4128]; x=cos<pi*7/10*n>.*x2;y=filter<b,a,x>;〔3〕该系统具有什么特性.答:该系统是低通滤波器.频率越高,幅度衰减越大.X3频率最高,幅度衰减也最大.计算H 〔Ω〕,也看出此为低通滤波器.N=100;n=0:N-1;b=[0.0675,0.1349,0.0675];a=[1,-1.143,0.4128];h=impz<b,a,N>;H=fft<h,N>;subplot;stem<n-N/2,abs<fftshift<H>>>;title<'杨婕婕 H'>;2. 某因果LTI 离散系统的系统函数为(1) 计算系统的单位脉冲响应;(2) 当信号)()2cos()()4cos()()(n u n n u n n u n x ππ++=通过系统时,计算系统的零状态响应.<1>N=40;a=[1,-1.035,0.8246,-0.2605,0.04033,];b=[0.03571,0.1428,0.2143,0.1428,0.03571];y=impz<b,a,N>;stem<y>;xlabel<'n'>;title<'朱艺星 杨婕婕 h<n>'><2>N=100;n=0:N-1;x2=[ones<1,N>];a=[1,-1.035,0.8246,-0.2605,0.04033,];b=[0.03571,0.1428,0.2143,0.1428,0.03571];x=x2+cos<pi/4*n>.*x2+cos<pi/2*n>.*x2;y=filter<b,a,x>;stem<y>;xlabel<'n'>;title<'朱艺星杨婕婕'>;三、实验思考题1.系统函数的零极点对系统冲激响应有何影响?答:系统函数的零极点会影响系统的稳定性和因果性.因为为冲激响应,所以分析s域.极点对稳定系统的影响:假如极点只在s左半平面,不包括jw轴,如此该系统为渐进稳定、BIBO系统;假如极点不单只在左半平面,还有在jw轴上有单根,如此为临界稳定系统.假如极点在jw轴上有重根,或者存在域s域的右半平面,如此该系统不稳定.对因果性的影响:假如极点有在s域右半平面,如此该系统为非因果系统,假如极点只存在于s域的左半平面,如此为因果系统.要考虑零极点相消的情况,但实际很难做到零极相消,使系统不稳定.2.假如某因果系统不稳定,有哪些主要措施可使之稳定?答:应改变系统设计,使所有极点都出现在s域的左半平面,且防止零极相消..。

信号与系统 matlab实验报告

信号与系统 matlab实验报告

信号与系统 matlab实验报告信号与系统 Matlab 实验报告引言:信号与系统是电子信息类专业中的一门重要课程,它研究了信号的产生、传输和处理过程,以及系统对信号的响应和影响。

通过实验,我们可以更直观地理解信号与系统的基本概念和原理,并掌握使用 Matlab 进行信号与系统分析和处理的方法。

实验一:信号的产生与显示在信号与系统课程中,我们首先需要了解不同类型的信号,以及如何产生和显示这些信号。

在 Matlab 中,我们可以使用一些函数来生成常见的信号波形,如正弦波、方波、三角波等。

通过编写简单的 Matlab 程序,我们可以实现信号的产生和显示。

实验二:信号的采样与重构在实际应用中,信号通常以连续时间的形式存在,但在数字系统中需要将其转换为离散时间的信号进行处理。

这就需要进行信号的采样和重构。

在 Matlab 中,我们可以使用采样函数和重构函数来模拟这一过程,并观察采样率对信号重构质量的影响。

实验三:信号的滤波与频谱分析信号滤波是信号处理中的重要环节,它可以去除信号中的噪声和干扰,提高信号质量。

在 Matlab 中,我们可以使用滤波函数来实现不同类型的滤波器,并观察滤波对信号频谱的影响。

此外,我们还可以使用频谱分析函数来研究信号的频谱特性,如频谱密度、功率谱等。

实验四:系统的时域与频域分析系统是信号处理中的重要概念,它描述了信号在系统中的传输和变换过程。

在Matlab 中,我们可以使用系统函数来模拟不同类型的系统,并观察系统对信号的时域和频域响应。

通过实验,我们可以深入理解系统的时域特性和频域特性,如冲击响应、频率响应等。

实验五:信号的调制与解调信号调制是将信息信号转换为调制信号的过程,而解调则是将调制信号恢复为原始信号的过程。

在 Matlab 中,我们可以使用调制函数和解调函数来模拟不同类型的调制和解调方式,如调幅、调频、调相等。

通过实验,我们可以了解不同调制方式的原理和特点,并观察调制和解调对信号的影响。

信号与系统MATLAB实验(word文档良心出品)

信号与系统MATLAB实验(word文档良心出品)

2016-2017学年第一学期信号与系统实验报告班级:姓名:学号:成绩:指导教师:实验一 常见信号的MATLAB 表示及运算一.实验目的1.熟悉常见信号的意义、特性及波形2.学会使用MATLAB 表示信号的方法并绘制信号波形 3. 掌握使用MATLAB 进行信号基本运算的指令 4. 熟悉用MATLAB 实现卷积积分的方法二.实验原理信号一般是随时间而变化的某些物理量。

按照自变量的取值是否连续,信号分为连续时间信号和离散时间信号,一般用()f t 和()f k 来表示。

若对信号进行时域分析,就需要绘制其波形,如果信号比较复杂,则手工绘制波形就变得很困难,且难以精确。

MATLAB 强大的图形处理功能及符号运算功能,为实现信号的可视化及其时域分析提供了强有力的工具。

根据MATLAB 的数值计算功能和符号运算功能,在MATLAB 中,信号有两种表示方法,一种是用向量来表示,另一种则是用符号运算的方法。

在采用适当的MATLAB 语句表示出信号后,就可以利用MATLAB 中的绘图命令绘制出直观的信号波形了。

下面分别介绍连续时间信号和离散时间信号的MATLAB 表示及其波形绘制方法。

1.连续时间信号所谓连续时间信号,是指其自变量的取值是连续的,并且除了若干不连续的点外,对于一切自变量的取值,信号都有确定的值与之对应。

从严格意义上讲,MATLAB 并不能处理连续信号。

在MATLAB 中,是用连续信号在等时间间隔点上的样值来近似表示的,当取样时间间隔足够小时,这些离散的样值就能较好地近似出连续信号。

在MATLAB 中连续信号可用向量或符号运算功能来表示。

⑴ 向量表示法对于连续时间信号()f t ,可以用两个行向量f 和t 来表示,其中向量t 是用形如12::t t p t 的命令定义的时间范围向量,其中,1t 为信号起始时间,2t 为终止时间,p 为时间间隔。

向量f 为连续信号()f t 在向量t 所定义的时间点上的样值。

信号与系统MATLAB实验报告

信号与系统MATLAB实验报告

一、实验名称MATLAB对连续信号与系统的时域分析、频域分析和s域分析;MATLAB对离散信号与系统的时域分析。

二、实验目的1.学习用MATLAB描述常用信号的方法。

2.掌握连续时间信号和离散时间信号的描述。

3.利用MATLAB计算信号卷积。

4.掌握信号频谱的定义,理解非周期信号频谱密度的概念。

5.掌握用MATLAB分析并绘制连续系统零极点图以判断因果系统稳定的方法。

三、实验原理1.连续系统的冲击响应和阶跃响应(1)连续系统的冲击响应在MATLAB中,利用函数impulse可求解系统冲击响应,其调y=impulse(sys,t)式中:sys表示LTI系统模型,用来表示微分方程、差分方程、状态方程。

利用函数tf获得微分方程的LTI系统模型,其调用形式为:sys=tf(b,a)式中:b和a分别为微分方程右端和左端的各项系数向量。

2.常用连续信号的傅里叶变换在MTLAB中,利用函数fourier实现信号f(t)的傅里叶变换,其调用形式是:F=fourier(f)(1)矩形脉冲矩形脉冲函数可以表示为:f(t)=AGr(t)=A, |t||<τ/2;f(t)=0, |t|>τ/2其傅里叶变换为F(jw)=Aτsa(wτ/2)式中:sa(·)表示采样函数。

3.连续系统函数H(s)的零极点分布和稳定性MATLAB信号处理工具箱提供的zplane函数可以直接求解H(s)的零极点分布,其调用形式为:zplane(b,a)式中:b和a分别为系统函数H(s)的分子多项式和分母多项式的系数向量,该函数的作用是在平面上画出单位圆及系统的零点和极点。

MATLAB信号处理工具箱提供的roots函数可求解多项式的根,其调用形式为:poles=roots(a)4.常用离散信号的MATLAB表示(1)正弦序列离散正弦信号与连续正弦信号类似,就是连续信号的离散型式。

正弦序列的一般序列为:f(k)=Acos(Ωk+φ)式中:A、Ω、φ分别为正弦序列的振幅、数字角频率和初相位。

MATLAB信号与系统实验报告.doc

MATLAB信号与系统实验报告.doc

MATLAB信号与系统实验报告.doc实验目的:通过对MATLAB信号与系统工具箱中的函数学习和使用,掌握信号离散化、信号离散时间傅里叶变换、数字滤波器等信号处理方法并在MATLAB环境下实现,加深对信号与系统基础知识的理解。

实验原理:1.信号离散化:连续信号在计算机中只能被离散表示,因此需要对信号进行离散化处理。

MATLAB中有许多函数用于将连续信号离散化,包括‘sampling’和‘downsampling’函数。

2.离散时间傅里叶变换:离散时间傅里叶变换(DTFT)是信号处理中常用的方法,用于分析信号的频域特性。

使用MATLAB中的‘fft’(快速傅里叶变换)函数计算DTFT,其结果为复数。

3.数字滤波器:数字滤波器是在数字信号中进行滤波的一种方法。

MATLAB中提供了各种数字滤波器的函数,如‘designfilt’,‘filtfilt’,‘filter’等。

实验过程:1.信号离散化使用sinc函数生成一个连续信号,通过将其与离散时间通过平均取样的方法进行离散化,编写MATLAB代码将连续信号进行离散化,具体过程如下:Fs = 200; % sampling frequencyTs = 1/Fs; % sampling periodt = 0:Ts:1; % time vectorf1 = 5; % frequency of continuous signalsignal = sin(2*pi*f1*t); % continuous signalsampled = downsample(signal, 4); % downsample the signal by a factor of 4figure;plot(t, signal, 'b--', 'LineWidth', 1);hold on;stem(0:Ts*4:1, sampled, 'ro', 'LineWidth', 1.5);xlabel('Time (s)'); ylabel('Amplitude'); legend('Continuous', 'Sampled');其中,Fs表示采样频率,Ts为采样周期,t是时间向量,f1为连续信号的频率,signal为生成的连续信号。

MATLAB信号与系统实验

MATLAB信号与系统实验

信号与系统实验报告(2)连续信号的微积分和卷积实验目的1.学习Matlab的符号运算功能及编程方法2.掌握用Matlab计算微积分的数值方法和解析方法。

并应用于求解信号的功率或能量3.掌握用Matlab进行卷积运算的数值方法和解析方法。

加深对卷积积分的理解实验内容1、周期信号如题图2.3-9所示,试计算信号的功率解:(1)程序:>> P=int('(0.2*t+1.5)^2',-2.5,2.5)/7(2)运行结果:P =1.66666666666666666666666666666672、求图2.3-10中的信号的能量。

解:(1)程序disp('信号能量的数值计算')t图2.3-10y1=inline('(2*rectpuls(t-3,6)+2*rectpuls(t-3,2)).^2');E1=quad(y1,0,6)y2=inline('(2*rectpuls(t-3,6)+2*tripuls(t-3,2)).^2');E2=quad(y2,0,6)y3=('(6*tripuls(t-3,6)-2*tripuls(t-3,2)).^2');E3=quad(y3,0,6)(2)运行结果:信号能量的数值计算E1 =48.0000E2 =34.6667E3 =53.33333、用Matlab画出图2.3-11中的信号的卷积波形。

解:*(a)(b)图2.3-11*(c)(1)程序:f1='2*rectpuls(t,4)'; f2='3*rectpuls(t-0.5,3)'; figure(1)CSCONV(f1,-2,2,f2,-1,2)f1='2*rectpuls(t+1.5)+2*rectpuls(t-1.5)'; f2='2*rectpuls(t-2,4)'; figure(2)CSCONV(f1,-2,2,f2,0,4) f1='2*rectpuls(t,2)'; f2='t.*rectpuls(t,4)'; figure(3)CSCONV(f1,-1,1,f2,-2,2)(2)波形-4-3-2-11234012信号f1(t)的波形-4-3-2-101234-202信号f2(t)的波形-4-3-2-101234-4.013.99卷积f(t)=f1*f2的波形Time(sec)-3-2-11234567012信号f1(t)的波形-3-2-11234567012信号f2(t)的波形-3-2-11234567048卷积f(t)=f1*f2的波形Time(sec)-4-3-2-112345012信号f1(t)的波形-4-3-2-10123450123信号f2(t)的波形-4-3-2-10123450918卷积f(t)=f1*f2的波形Time(sec)4、用符号积分求下列函数的卷积积分:(a) )()()()(21t t f t t t f εε==,;(b) )3()()1()(221-=+=-t t f t e t f t εε,; (c) )1()(1+=t t t f ε, )()1()(2t t t f ε+=; (d) )()()()(3221t e t f t e t f t t εε--==,。

信号与系统matlab实验报告

信号与系统matlab实验报告

信号与系统matlab实验报告信号与系统MATLAB实验报告引言信号与系统是电子工程、通信工程和控制工程等领域中的重要基础课程。

通过实验,我们可以更好地理解信号与系统的概念和基本原理,并掌握使用MATLAB进行信号与系统分析的方法。

本报告将介绍我们在信号与系统实验中的实验过程、结果和分析。

实验一:连续时间信号的采样与重构在这个实验中,我们研究了连续时间信号的采样与重构。

首先,我们通过MATLAB生成了一个连续时间信号,并使用采样定理确定了采样频率。

然后,我们对连续时间信号进行采样,并通过重构方法将采样信号还原为连续时间信号。

最后,我们通过观察重构信号与原始信号的相似性来评估重构的效果。

实验二:线性时不变系统的频率响应在这个实验中,我们研究了线性时不变系统的频率响应。

首先,我们通过MATLAB生成了一个输入信号,并设计了一个线性时不变系统。

然后,我们通过将输入信号输入到系统中,并记录输出信号的幅度和相位,从而得到系统的频率响应。

最后,我们绘制了系统的幅频特性和相频特性曲线,并对其进行了分析和讨论。

实验三:离散时间信号的采样与重构在这个实验中,我们研究了离散时间信号的采样与重构。

首先,我们通过MATLAB生成了一个离散时间信号,并使用采样定理确定了采样周期。

然后,我们对离散时间信号进行采样,并通过重构方法将采样信号还原为离散时间信号。

最后,我们通过观察重构信号与原始信号的相似性来评估重构的效果,并讨论了离散时间信号的采样与重构的特点。

实验四:离散时间系统的差分方程在这个实验中,我们研究了离散时间系统的差分方程。

首先,我们通过MATLAB生成了一个输入信号,并设计了一个离散时间系统。

然后,我们通过将输入信号输入到系统中,并根据系统的差分方程计算输出信号。

最后,我们对输入信号和输出信号进行了分析和比较,并讨论了离散时间系统的差分方程的特点和应用。

实验五:连续时间信号的傅里叶变换在这个实验中,我们研究了连续时间信号的傅里叶变换。

信号与系统 matlab实验报告

信号与系统 matlab实验报告

信号与系统 matlab实验报告《信号与系统 Matlab实验报告》摘要:本实验报告通过使用 Matlab 软件进行信号与系统实验,探讨了信号与系统在数字领域的应用。

实验结果表明,Matlab 软件具有强大的信号处理和系统分析功能,能够有效地进行信号与系统的模拟和分析。

引言:信号与系统是电子工程领域中的重要基础课程,它研究了信号的产生、传输和处理,以及系统对信号的响应和影响。

在数字领域,信号与系统的理论和方法也得到了广泛的应用。

Matlab 软件作为一种强大的数学计算工具,为信号与系统的模拟和分析提供了便利和高效的途径。

实验一:信号的生成与显示在本实验中,我们首先使用 Matlab 软件生成了几种常见的信号,包括正弦信号、方波信号和三角波信号。

通过调整信号的频率、幅度和相位等参数,我们观察了信号的变化,并利用 Matlab 的绘图功能将信号图形显示出来。

实验结果表明,Matlab 软件能够方便地生成各种类型的信号,并能够直观地显示信号的波形和特性。

实验二:信号的采样与重构在本实验中,我们使用 Matlab 软件对信号进行了采样和重构。

我们首先对一个连续信号进行了离散采样,然后利用 Matlab 的插值函数对采样信号进行了重构。

实验结果表明,采样和重构过程中存在信号失真和频率混叠等问题,但通过适当的采样和重构方法,我们能够有效地还原原始信号。

实验三:系统的响应与分析在本实验中,我们使用 Matlab 软件对系统的响应进行了分析。

我们构建了几种常见的系统模型,包括线性时不变系统和滤波器系统,然后利用 Matlab 的系统分析工具对系统的频率响应、相位响应和单位脉冲响应等进行了分析。

实验结果表明,Matlab 软件能够有效地进行系统的模拟和分析,为系统设计和优化提供了有力的支持。

结论:通过本实验,我们深入了解了信号与系统在数字领域的应用,并掌握了使用 Matlab 软件进行信号与系统模拟和分析的方法。

信号与系统MATLAB实验全

信号与系统MATLAB实验全

实验篇 信号与系统实验指导实验一、MATLAB 编程基础及典型实例一、实验目的(1) 熟悉MATLAB 软件平台的使用; (2) 熟悉MATLAB 编程方法及常用语句; (3) 掌握MATLAB 的可视化绘图技术;(4) 结合《信号与系统》的特点,编程实现常用信号及其运算。

二、实验原理连续信号是指自变量的取值范围是连续的,且对于一切自变量的取值,除了有若干个不连续点以外,信号都有确定的值与之对应。

严格来说,MATLAB 并不能处理连续信号,而是用等时间间隔点的样值来近似表示连续信号。

当取样时间间隔足够小时,这些离散的样值就能较好地近似连续信号。

矩阵是MATLAB 进行数据处理的基本单元,矩阵运算是MATLAB 最重要的运算。

通常意义上的数量(也称为标量)在MATLAB 系统中是作为1×1的矩阵来处理的,而向量实际上是仅有一行或者一列的矩阵。

通常用向量表示信号的时间取值范围,如n = -5:5,但信号x(n)、向量n 本身的下标都是从1开始的,因此必须用一个与向量x 等长的定位时间变量n ,以及向量x ,才能完整地表示序列x(n)。

这一点详情可参考预备篇示例7的程序说明。

三、实验内容与步骤(1) 新建一个文件夹,以自己的汉语名字命名,以后就用该文件夹专门存放自己所编制的M 文件和产生的图形;将该文件夹设置成当前工作目录。

(2) 绘制信号t)32sin(e x(t)t 2-=的曲线,t 的范围在0 ~ 30s ,取样时间间隔为0.1s.(3) 在n = [-10:10] 范围产生离散序列:⎩⎨⎧≤≤-=其余n0,3n 32n,x(n) ,并绘图。

四、实验报告要求整理并给出“实验内容与步骤”(2)、(3)的程序代码与产生的图形;并回答下面的问题。

(1) 在调用某一函数文件时,该文件中除了输入、输出变量外的其它变量在调用函数结束后是否还存在?这些变量是全局还是局部变量?(2) 设n = -10:0.2:20,你可以通过哪些方法查看向量n 的维数?经过关系运算y = (n >= 3)以后,y 的维数是多少?y 又等于什么?(3) 通过MATLAB 的帮助系统,学习fliplr 函数的功能和使用方法。

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

实验一、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)绘制信号x(t)=)32sin(2t e t −的曲线,t 的范围在0~30s ,取样时间间隔为0.1s 。

t=0:0.1:30;y=exp(-sqrt(2)*t).*sin(2*t/3);plot(t,y);(3)在n=[-10:10]范围产生离散序列:⎩⎨⎧≤≤−=Othern n n x ,033,2)(,并绘图。

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=0k=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;f2=6:-1:0;n1=-1:4;n2=-5:1;[f1_new,f2_new,n]=duiqi (f1,n1,f2,n2);add_f=f1_new+f2_new; pro_f=f1_new.*f2_new; subplot(2,2,1)stem(n1,f1);xlabel('n1');ylabel('f1');grid on;subplot(2,2,2)stem(n2,f2);xlabel('n2');ylabel('f2');grid on;subplot(2,2,3)stem(n,add_f);xlabel('n');ylabel('add-f(k)');grid on;subplot(2,2,4)stem(n,pro_f);xlabel('n');ylabel('pro-f(k)');grid on;五、实验报告要求(1)再调用某一函数文件时,该文件中除了输入、输出变量外的其它变量在调用函数结束后是否还存在?这些变量是全局还是局部变量?答:不存在,是局部变量。

(2)设n=-10:0.2:20,你可以通过那些方法查看向量n 的维数?经过关系运算y=(n>=3)以后,y 的维数是多少?y 又等于什么?答:Length ()函数或Workspace 中的变量类型。

维度不变,(3)通过MATLAB 的帮助系统,学习fliplr 函数的功能和使用方法。

在此基础上,写出能够产生如下图形的程序,其中x(n)=44,2≤≤−n n。

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);四、实验内容与步骤(1)已知系统微分方程为)()(),()(2)(2)()1()1()2(t t f t f t y t y t y ε==++。

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

t=0:0.01:10;f=ones(1001,1);a=[1,2,2];b=[1,0];sys=tf(b,a);y1=lsim(sys,f,t);y2=impulse(sys,t);y3=step(sys,t);subplot(1,3,1)plot(t,y1);subplot(1,3,2)plot(t,y2);subplot(1,3,3)plot(t,y3);(2)用MATLAB 计算如下连续列的卷积和,绘出它们的时域波形。

⎪⎪⎩⎪⎪⎨⎧====其它,01,10,21,1)(1k k k k f ⎩⎨⎧≤≤−=其它,022,1)(2k k f 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])(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:Nan(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:10wave=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)计算如下所示的信号(cos(t π2))的傅里叶变换,并验证尺度变换和时移变换性质。

R=0.005;t=-2:R:2;f=cos(pi*t/2);%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);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;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);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;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)');gridon;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实现调幅信号,并观察信号和调幅信号频谱。

相关文档
最新文档