实验一信号基本运算的MATLAB实现

合集下载

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 产生下列离散序列并作图。

数字信号处理MATLAB实验1

数字信号处理MATLAB实验1

实验一熟悉MATLAB环境一、实验目的(1)熟悉MATLAB的主要操作命令。

(2)学会简单的矩阵输入和数据读写。

(3)掌握简单的绘图命令。

(4)用MATLAB编程并学会创建函数。

(5)观察离散系统的频率响应。

二、实验内容认真阅读本章附录,在MATLAB环境下重新做一遍附录中的例子,体会各条命令的含义。

在熟悉了MATLAB基本命令的基础上,完成以下实验。

上机实验内容:(1)数组的加、减、乘、除和乘方运算。

输入A=[1234],B=[3456],求C=A+B,D=A-B,E=A.*B,F=A./B,G=A.^B并用stem语句画出A、B、C、D、E、F、G。

(2)用MATLAB实现以下序列。

a)x(n)=0.8n0≤n≤15b)x(n)=e(0.2+3j)n0≤n≤15c)x(n)=3cos(0.125πn+0.2π)+2sin(0.25πn+0.1π)0≤n≤15(n)=x(n+16),绘出四个d)将c)中的x(n)扩展为以16为周期的函数x16周期。

(n)=x(n+10),绘出四个e)将c)中的x(n)扩展为以10为周期的函数x10周期。

(3)x(n)=[1,-1,3,5],产生并绘出下列序列的样本。

a)x 1(n)=2x(n+2)-x(n-1)-2x(n)b)∑=-=51k 2)k n (nx (n) x (4)绘出下列时间函数的图形,对x轴、y轴以及图形上方均须加上适当的标注。

a)x(t)=sin(2πt)0≤t≤10sb)x(t)=cos(100πt)sin(πt)0≤t≤4s(5)编写函数stepshift(n0,n1,n2)实现u(n-n0),n1<n0<n2,绘出该函数的图形,起点为n1,终点为n2。

(6)给定一因果系统)0.9z 0.67z -1)/(1z 2(1H(z)-2-1-1+++=求出并绘制H(z)的幅频响应与相频响应。

(7)计算序列{8-2-123}和序列{23-1-3}的离散卷积,并作图表示卷积结果。

matlab软件仿真实验(信号与系统)(1)

matlab软件仿真实验(信号与系统)(1)

matlab软件仿真实验(信号与系统)(1)《信号与系统实验报告》学院:信息科学与⼯程学院专业:物联⽹⼯程姓名:学号:⽬录实验⼀、MATLAB 基本应⽤实验⼆信号的时域表⽰实验三、连续信号卷积实验四、典型周期信号的频谱表⽰实验五、傅⽴叶变换性质研究实验六、抽样定理与信号恢复实验⼀MATLAB 基本应⽤⼀、实验⽬的:学习MATLAB的基本⽤法,了解 MATLAB 的⽬录结构和基本功能以及MATLAB在信号与系统中的应⽤。

⼆、实验内容:例⼀已知x的取值范围,画出y=sin(x)的图型。

x=0:0.05:4*pi;y=sin(x);plot(y)例⼆计算y=sin(π/5)+4cos(π/4)例三已知z 取值范围,x=sin(z);y=cos(z);画三维图形。

z=0:pi/50:10*pi;x=sin(z);y=cos(z);plot3(x,y,z)xlabel('x')ylabel('y')zlabel('z')例四已知x的取值范围,⽤subplot函数绘图。

参考程序:x=0:0.05:7;y1=sin(x);y2=1.5*cos(x);y3=sin(2*x);y4=5*cos(2*x);subplot(2,2,1),plot(x,y1),title('sin(x)')subplot(2,2,2),plot(x,y2),title('1.5*cos(x)')subplot(2,2,3),plot(x,y3),title('sin(2*x)')subplot(2,2,4),plot(x,y4),title('5*cos(2*x)')连续信号的MATLAB表⽰1、指数信号:指数信号Ae at在MATLAB中可⽤exp函数表⽰,其调⽤形式为:y=A*exp(a*t) (例取 A=1,a=-0.4)参考程序:A=1;a=-0.4;t=0:0.01:10;ft=A*exp(a*t);plot(t,ft);grid on;2、正弦信号:正弦信号Acos(w0t+?)和Asin(w0t+?)分别由函数cos和sin表⽰,其调⽤形式为:A*cos(w0t+phi) ;A*sin(w0t+phi) (例取A=1,w0=2π,?=π/6) 参考程序:A=1;w0=2*pi; phi=pi/6; t=0:0.001:8;ft=A*sin(w0*t+phi);plot(t,ft);grid on ;3、抽样函数:抽样函数Sa(t)在MATLAB中⽤sinc函数表⽰,其定义为:sinc(t)=sin(πt)/( πt)其调⽤形式为:y=sinc(t)参考程序:t=-3*pi:pi/100:3*pi;ft=sinc(t/pi);plot(t,ft);grid on;4、矩形脉冲信号:在MATLAB中⽤rectpuls函数来表⽰,其调⽤形式为:y=rectpuls(t,width),⽤以产⽣⼀个幅值为1,宽度为width,相对于t=0点左右对称的矩形波信号,该函数的横坐标范围由向量t决定,是以t=0为中⼼向左右各展开width/2的范围,width的默认值为1。

信号与信号实验

信号与信号实验

信号与信号实验MATLAB 部分实验一:基本信号在MATLAB 中的表示和运算 一、 实验目的;1、学会用MATLAB 表示常用连续信号的方法;2、学会用MATLAB 进行信号基本运算的方法;3、学会用MATLAB 实现连续时间信号的卷积的方法。

二、 实验内容:1、绘出下列信号的时域波形(1)f(t)=(2-e-2t)u(t) (2)f(t)=cos(πt)[u(t)-u(t-1)] (3)f(t)=u(-3t+2) (4)f(t)= -(1/2)tu(t+2) 解:t1=0:0.01:5; y1=(2-exp(-2*t1)).*(t1>0); subplot(221);plot(t1,y1);grid; title('f(t)=(2-e-2t)u(t)'); t2=0:0.01:5; y2=cos(pi*t2).*((t2>0)-(t2>1)); subplot(222);plot(t2,y2);grid; title('f(t)=cos(πt)[u(t)-u(t-1)]'); t3=-2:0.01:5; y3=(-3*t3+2>0); subplot(223);plot(t3,y3);grid; title('f(t)=u(-3t+2)'); t4=-3:0.01:5; y4=(-1/2)*t4.*(t4>-2); subplot(224);plot(t4,y4);grid; title('f(t)=-(1/2)tu(t+2)');00.511.52f(t)=(2-e-2t)u(t)图 1-1f(t)=cos(πt)[u(t)-u(t-1)]图1-200.51f(t)=u(-3t+2)图1-3f(t)=-(1/2)tu(t+2)图 1-42、用MATLAB 绘出下列信号的卷积积分f1(t)*f2(t)的时域波形(1) f1(t)=tu(t), f2(t)=u(t) (2) f1(t)=u(t)-u(t-4), f2(t)=sin(πt)u(t) (3) f1(t)= e-2t u(t), f2(t)= e-t u(t) (4) f1(t)= e-t u(t), f2(t)=u(t) 解:(1)fs=1000; t=-1:1/fs:4; x1=stepfun(t,0); x2=x1.*t; y=conv(x1,x2)/fs; n=length(y1); tt=(0:n-1)/fs-2; subplot(311),plot(t,x1),grid; title('f1(t)=tu(t)'); subplot(312),plot(t,x2),grid; title(' f2(t)=u(t)'); subplot(313),plot(tt,y),grid on; title('f1(t) * f2(t)');(2)fs=1000; t=-1:1/fs:4; x1=(t>0)-(t>4); x2=sin(pi*t).*(t>0); x=conv(x1,x2)/fs; n=length(x); tt=(0:n-1)/fs-2; subplot(311);plot(t,x1);grid; title('f1(t)=u(t)-u(t-4))'); subplot(312);plot(t,x2);grid; title('f2(t)=sin(πt)u(t)'); subplot(313);plot(tt,x);grid; title('f1(t) * f2');(3)t=0:1/fs:4; x1=exp(-2*t).*(t>0); x2=exp(-t).*(t>0); x=conv(x1,x2)/fs; n=length(x); tt=(0:n-1)/fs-0; subplot(311);plot(t,x1);grid; title('f1(t)= e-2t u(t)'); subplot(312);plot(t,x2);grid; title('f2(t)= e-t u(t)'); subplot(313);plot(tt,x);grid; title('f1(t) * f2(t)');(4)t=0:1/fs:2; x1=exp(-2*t).*(t>0); x2=(t>0); x=conv(x1,x2)/fs; n=length(x); tt=(0:n-1)/fs-0; subplot(311);plot(t,x1);grid; title(' f1(t)= e-t u(t))'); subplot(312);plot(t,x2);grid; title('f2(t)=u(t)'); subplot(313);plot(tt,x);grid; title('f1(t)*f2(t)');0.51 1.52 2.53 3.540.51 1.52 2.53 3.5412345678-1 -0.5 00.51 1.52 2.53 3.54? 2-1 -1 -0.5 00.51 1.52 2.53 3.54? 2-2 -2-112 3 4 5678? 2-3实验二:连续时间LTI 系统的时域分析一、实验目的:学会用MATLAB 求解连续系统的零状态响应、冲击响应和阶跃响应。

实验- 基本信号在 MATLAB中的表示和运算

实验- 基本信号在 MATLAB中的表示和运算

实验一基本信号在 MATLAB中的表示和运算一、[实验目的]1.学会常用连续信号的MATLAB表示方法;2.学会用MATLAB进行信号的基本运算,为信号分析和滤波器设计奠定基础;3. 通过信号的求导,观察信号在跳变点处的导数;4. 通过卷积积分运算,观察两个时限信号的卷积积分结果所具有的特点;5. 掌握信号相关与卷积的关系;6. 通过实验熟悉自相关和互相关性质在周期信号识别、延迟信号检测等场合中的应用。

三、[实验内容]1.验证实验原理中所述的有关程序;2.绘出下列信号的时域波形及其导数波形(注意在绘制导数波形图时,为便于观察结果,可调整坐标轴,如t=-3:h:4;并合理利用坐标轴调整函数axis)3.绘制如图所示信号及其积分波形。

4. 求如图所示函数f1(t)和f2(t )的卷积积分,并给出卷积结果的图形。

5. 编写信号相关的函数%Rxy为相关估计,消除步长的影响%tao为相关估计Rxy的序号向量%x为参加相关的信号,xt为信号 x的序号向量%y为需反转的信号,yt为 y的序号向量%dt为xt 或yt的步长(xt,yt的步长要一致)%信号反转可利用:ytf=fliplr(-yt);yf=fliplr(y);6.已知两信号x=rectpuls(t-0.5,1); y=rectpuls(t+0.5,1) ;调用自编函数[Rxy,tao]=my_xcorr(x,xt,y,yt,dt)计算 x 与 y 的时延差,即Rxy 取得最大值的时刻。

7. 已知频率为10Hz的余弦信号,分别求:(1)不带噪声的余弦信号的自相关;(2)分别求带有白噪声干扰的频率为 10Hz 的余弦信号和白噪声信号的自相关函数并进行比较,得出相应的结论。

主要信号如下:N=1000;Fs=500; %数据长度和采样频率n=0:N-1; t=n/Fs; %时间序列x=cos(2*pi*10*t); %频率为10Hz的余弦信号xz=cos(2*pi*10*t)+0.6*randn(1,length(t)); %带有白噪声干扰的频率为10Hz 的余弦信号noise_sig=randn(1,length(x)); %产生一与 x长度一致的随y=cos(2*pi*20*t); %频率为20Hz的余弦信号xy=x+y; 频率为10Hz, 20Hz的余弦信号的叠加信号…..调用 MATLAB 提供的函数[Rxx,tao]=xcorr(x,Lags,'unbiased')完成三个自相关运算。

MATLAB实验报告(1-4)

MATLAB实验报告(1-4)

信号与系统MATLAB第一次实验报告一、实验目的1.熟悉MATLAB软件并会简单的使用运算和简单二维图的绘制。

2.学会运用MATLAB表示常用连续时间信号的方法3.观察并熟悉一些信号的波形和特性。

4.学会运用MATLAB进行连续信号时移、反折和尺度变换。

5.学会运用MATLAB进行连续时间微分、积分运算。

6.学会运用MATLAB进行连续信号相加、相乘运算。

7.学会运用MATLAB进行连续信号的奇偶分解。

二、实验任务将实验书中的例题和解析看懂,并在MATLAB软件中练习例题,最终将作业完成。

三、实验内容1.MATLAB软件基本运算入门。

1). MATLAB软件的数值计算:算数运算向量运算:1.向量元素要用”[ ]”括起来,元素之间可用空格、逗号分隔生成行向量,用分号分隔生成列向量。

2.x=x0:step:xn.其中x0位初始值,step表示步长或者增量,xn 为结束值。

矩阵运算:1.矩阵”[ ]”括起来;矩阵每一行的各个元素必须用”,”或者空格分开;矩阵的不同行之间必须用分号”;”或者ENTER分开。

2.矩阵的加法或者减法运算是将矩阵的对应元素分别进行加法或者减法的运算。

3.常用的点运算包括”.*”、”./”、”.\”、”.^”等等。

举例:计算一个函数并绘制出在对应区间上对应的值。

2).MATLAB软件的符号运算:定义符号变量的语句格式为”syms 变量名”2.MATLAB软件简单二维图形绘制1).函数y=f(x)关于变量x的曲线绘制用语:>>plot(x,y)2).输出多个图像表顺序:例如m和n表示在一个窗口中显示m行n列个图像,p表示第p个区域,表达为subplot(mnp)或者subplot(m,n,p)3).表示输出表格横轴纵轴表达范围:axis([xmax,xmin,ymax,ymin])4).标上横轴纵轴的字母:xlabel(‘x’),ylabel(‘y’)5).命名图像就在subplot写在同一行或者在下一个subplot前:title(‘……’)6).输出:grid on举例1:举例2:3.matlab程序流程控制1).for循环:for循环变量=初值:增量:终值循环体End2).while循环结构:while 逻辑表达式循环体End3).If分支:(单分支表达式)if 逻辑表达式程序模块End(多分支结构的语法格式)if 逻辑表达式1程序模块1Else if 逻辑表达式2程序模块2…else 程序模块nEnd4).switch分支结构Switch 表达式Case 常量1程序模块1Case 常量2程序模块2……Otherwise 程序模块nEnd4.典型信号的MATLAB表示1).实指数信号:y=k*exp(a*t)举例:2).正弦信号:y=k*sin(w*t+phi)3).复指数信号:举例:4).抽样信号5).矩形脉冲信号:y=square(t,DUTY) (width默认为1)6).三角波脉冲信号:y=tripuls(t,width,skew)(skew的取值在-1~+1之间,若skew取值为0则对称)周期三角波信号或锯齿波:Y=sawtooth(t,width)5.单位阶跃信号的MATLAB表示6.信号的时移、反折和尺度变换:Xl=fliplr(x)实现信号的反折7.连续时间信号的微分和积分运算1).连续时间信号的微分运算:语句格式:d iff(function,’variable’,n)Function:需要进行求导运算的函数,variable:求导运算的独立变量,n:求导阶数2).连续时间信号的积分运算:语句格式:int(function,’variable’,a,b)Function:被积函数variable:积分变量a:积分下限b:积分上限(a&b默认是不定积分)8.信号的相加与相乘运算9.信号的奇偶分解四、小结这一次实验让我能够教熟悉的使用这个软件,并且能够输入简单的语句并输出相应的结果和波形图,也在一定程度上巩固了c语言的一些语法。

《信号与系统》课程实验报告

《信号与系统》课程实验报告

《信号与系统》课程实验报告《信号与系统》课程实验报告一图1-1 向量表示法仿真图形2.符号运算表示法若一个连续时间信号可用一个符号表达式来表示,则可用ezplot命令来画出该信号的时域波形。

上例可用下面的命令来实现(在命令窗口中输入,每行结束按回车键)。

t=-10:0.5:10;f=sym('sin((pi/4)*t)');ezplot(f,[-16,16]);仿真图形如下:图1-2 符号运算表示法仿真图形三、实验内容利用MATLAB实现信号的时域表示。

三、实验步骤该仿真提供了7种典型连续时间信号。

用鼠标点击图0-3目录界面中的“仿真一”按钮,进入图1-3。

图1-3 “信号的时域表示”仿真界面图1-3所示的是“信号的时域表示”仿真界面。

界面的主体分为两部分:1) 两个轴组成的坐标平面(横轴是时间,纵轴是信号值);2) 界面右侧的控制框。

控制框里主要有波形选择按钮和“返回目录”按钮,点击各波形选择按钮可选择波形,点击“返回目录”按钮可直接回到目录界面。

图1-4 峰值为8V,频率为0.5Hz,相位为180°的正弦信号图1-4所示的是正弦波的参数设置及显示界面。

在这个界面内提供了三个滑动条,改变滑块的位置,滑块上方实时显示滑块位置代表的数值,对应正弦波的三个参数:幅度、频率、相位;坐标平面内实时地显示随参数变化后的波形。

在七种信号中,除抽样函数信号外,对其它六种波形均提供了参数设置。

矩形波信号、指数函数信号、斜坡信号、阶跃信号、锯齿波信号和抽样函数信号的波形分别如图1-5~图1-10所示。

图1-5 峰值为8V,频率为1Hz,占空比为50%的矩形波信号图1-6 衰减指数为2的指数函数信号图1-7 斜率=1的斜坡信号图1-8 幅度为5V,滞后时间为5秒的阶跃信号图1-9 峰值为8V,频率为0.5Hz的锯齿波信号图1-10 抽样函数信号仿真途中,通过对滑动块的控制修改信号的幅度、频率、相位,观察波形的变化。

信息论编码实验一MATLAB的基本操作

信息论编码实验一MATLAB的基本操作

实验一 MATLAB 的基本操作一、实验目的1、掌握Matlab 软件使用的基本方法;2、熟悉Matlab 的数据表示、基本运算方法;3、熟悉Matlab 绘图命令及基本绘图控制。

二、实验仪器与软件1、PC 机 1台2、MATLAB7.0环境三、实验原理MATLAB 环境是一种为数值计算、数据分析和图形显示服务的交互式的环境。

MATLAB 有3种窗口,即:命令窗口(The Command Window )、m-文件编辑窗口(The Edit Window )和图形窗口(The Figure Window ),而Simulink 另外又有Simulink 模型编辑窗口。

1、命令窗口(The Command Window )当MATLAB 启动后,出现的最大的窗口就是命令窗口。

用户可以在提示符“>>”后面输入交互的命令,这些命令就立即被执行。

在MATLAB 中,一连串命令可以放置在一个文件中,不必把它们直接在命令窗口内输入。

在命令窗口中输入该文件名,这一连串命令就被执行了。

因为这样的文件都是以“.m ”为后缀,所以称为m-文件。

2、m-文件编辑窗口(The Edit Window )我们可以用m-文件编辑窗口来产生新的m-文件,或者编辑已经存在的m-文件。

在MATLAB 主界面上选择菜单“File/New/M-file ”就打开了一个新的m-文件编辑窗口;选择菜单“File/Open ”就可以打开一个已经存在的m-文件,并且可以在这个窗口中编辑这个m-文件。

如,计算3[(12)34)]2+⨯-÷,只需在提示符“>>”后输入“((1+2)*3-4)/2^3”,然后按Enter 键。

该命令行涉及加、减、乘、除及幂运算符,MATLAB 运算的执行次序遵循的优先规则为:从左到右执行;幂运算具有最高的优先级,乘法和除法具有相同的次优先级,加法和减法有相同的最低优先级;使用括号可以改变前述优先次序,并由最内层括号向外执行。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
信号的尺度变换、翻转、平移运算,实际上是函数自变量的运算。尺度变换中只要自变量乘以一个常数,可用算术符号“ ”来表示。在信号翻转中自变量乘以一个负号,可以在MATLAB中直接写出,也可用函数fliplr(f)函数实现。在信号平移中函数自变量加减一个常数,在MATLAB中用算术运算符“+”或“-”来实现。
2、画出如图所示序列f[2k]、f[-k]和f[k+2],f[k-2]的波形。并求f[k]的和
报告评分:
闽 江 学 院 电 子 系
实验报告
学生姓名:3142731
班级:
学号:
课程:《信号与系统》实验
一、(填实验几,例:试验一):实验一
二、实验地点:实验楼A210
实验目的:
1.学习如何利用Matlab实现信号的基本运算;
2.掌握信号的基本运算的原理,加深对书本知识的理解;
三、实验内容:
1.信号的尺度变换、翻转、平移运算
例:对一三角波f(t),画出f(2t)和f(-2t+1)的波形。
波形图如下:
2.信号的导数和积分
diff函数用来求f(x)对于x的导数,格式:y=diff(f(x)) /h,h为步长,
quad函数用来求连续信号的定积分,格式:q = quad(fun,a,b)。
例:对上题的三角波进行微分运算和从[-3,3Байду номын сангаас的定积分运算。
3.离散序列的差分与求和
差分用diff函数实现,调用格式为:y=diff(f),
求和用sum函数实现,调用格式为:y=sum(f(k1:k2)),
把k1和k2之间的所有样本f[k]加起来。
四、实验环境(使用的软硬件):
MATLAB
六、 思考练习:
1.(1)编写如图所示波形的MATLAB函数。
(2)试画出f(t),f,f(1-2t)的波形。
相关文档
最新文档