信号与系统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实验报告(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语言的一些语法。
matlab信号与系统课程设计

matlab信号与系统课程设计一、引言信号与系统是电子信息类专业中的一门重要课程,Matlab作为一种常用的计算工具,可以帮助学生更好地理解和应用信号与系统的相关知识。
本文将介绍如何使用Matlab进行信号与系统课程设计。
二、实验目的本次实验旨在通过使用Matlab软件,帮助学生深入理解信号与系统的相关知识,并掌握Matlab软件在信号与系统中的应用。
三、实验内容本次实验分为两个部分:信号处理和系统分析。
1. 信号处理1.1 生成离散时间序列信号使用Matlab中的discrete函数生成一个离散时间序列信号。
要求该信号包含10个采样点,采样频率为100Hz,幅度随机取值。
1.2 时域分析对生成的离散时间序列信号进行时域分析。
计算出该信号的均值、方差、标准差和自相关函数,并画出该信号及其自相关函数的图像。
1.3 频域分析对生成的离散时间序列信号进行频域分析。
计算出该信号的功率谱密度,并画出该功率谱密度函数图像。
2. 系统分析2.1 系统建模使用Matlab中的tf函数建立一个一阶低通滤波器系统模型。
该系统的传递函数为H(s)=1/(s+1)。
2.2 系统分析对建立的一阶低通滤波器系统进行分析。
计算出该系统的单位脉冲响应、单位阶跃响应和零极点图,并画出相应的图像。
四、实验步骤4.1 生成离散时间序列信号首先,打开Matlab软件,新建一个m文件,命名为“signal_processing.m”。
在m文件中输入以下代码:t = 0:0.01:0.09;x = rand(1,10);stem(t,x);解释:t表示时间轴上的采样点,从0开始每隔0.01秒取一个采样点,共计10个采样点;x表示信号幅度,使用rand函数随机生成10个数作为幅度值;stem函数用于绘制离散时间序列信号图像。
4.2 时域分析在m文件中输入以下代码:mean_x = mean(x)var_x = var(x)std_x = std(x)rxx = xcorr(x);subplot(2,1,1);stem(t,x);title('Discrete Time Sequence');xlabel('Time (s)');ylabel('Amplitude');subplot(2,1,2);stem(-9:9,rxx);title('Autocorrelation Function');xlabel('Lag (s)');ylabel('Amplitude');解释:mean函数用于计算信号的均值;var函数用于计算信号的方差;std函数用于计算信号的标准差;xcorr函数用于计算信号的自相关函数。
MATLAB信号与系统实验报告19472[五篇范文]
![MATLAB信号与系统实验报告19472[五篇范文]](https://img.taocdn.com/s3/m/a72999dee109581b6bd97f19227916888486b9f2.png)
MATLAB信号与系统实验报告19472[五篇范文]第一篇:MATLAB信号与系统实验报告19472信号与系统实验陈诉(5)MATLAB 综合实验项目二连续系统的频域阐发目的:周期信号输入连续系统的响应可用傅里叶级数阐发。
由于盘算历程啰嗦,最适适用MATLAB 盘算。
通过编程实现对输入信号、输出信号的频谱和时域响应的盘算,认识盘算机在系统阐发中的作用。
任务:线性连续系统的系统函数为11)(+=ωωjj H,输入信号为周期矩形波如图 1 所示,用MATLAB 阐发系统的输入频谱、输出频谱以及系统的时域响应。
-3-2-1 0 1 2 300.511.52Time(sec)图 1要领:1、确定周期信号 f(t)的频谱nF&。
基波频率Ω。
2、确定系统函数 )(Ω jn H。
3、盘算输出信号的频谱n nF jn H Y&&)(Ω=4、系统的时域响应∑∞-∞=Ω=nt jnn eY t y&)(MATLAB 盘算为y=Y_n*exp(j*w0*n“*t);要求(画出 3 幅图):1、在一幅图中画输入信号f(t)和输入信号幅度频谱|F(jω)|。
用两个子图画出。
2、画出系统函数的幅度频谱|H(jω)|。
3、在一幅图中画输出信号y(t)和输出信号幅度频谱|Y(jω)|。
用两个子图画出。
解:(1)阐发盘算:输入信号的频谱为(n)输入信号最小周期为=2,脉冲宽度,基波频率Ω=2π/ =π,所以(n)系统函数为因此输出信号的频谱为系统响应为(2)步伐:t=linspace(-3,3,300);tau_T=1/4;%n0=-20;n1=20;n=n0:n1;%盘算谐波次数20F_n=tau_T*Sa(tau_T*pi*n);f=2*(rectpuls(t+1.75,0.5)+rectpuls(t-0.25,0.5)+rectpuls(t-2.25,0.5));figure(1),subplot(2,1,1),line(t,f,”linewidth“,2);%输入信号的波形 axis([-3,3,-0.1,2.1]);grid onxlabel(”Time(sec)“,”fontsize“,8),title(”输入信号“,”fontweight“,”bold“)%设定字体巨细,文本字符的粗细text(-0.4,0.8,”f(t)“)subplot(2,1,2),stem(n,abs(F_n),”.“);%输入信号的幅度频谱xlabel(”n“,”fontsize“,8),title(”输入信号的幅度频谱“,”fontweight“,”bold“)text(-4.0,0.2,”|Fn|“)H_n=1./(i*n*pi+1);figure(2),stem(n,abs(H_n),”.“);%系统函数的幅度频谱xlabel(”n“,”fontsize“,8),title(”系统函数的幅度频谱“,”fontweight“,”bold“)text(-2.5,0.5,”|Hn|“)Y_n=H_n.*F_n;y=Y_n*exp(i*pi*n”*t);figure(3),subplot(2,1,1),line(t,y,“linewidth”,2);%输出信号的波形 axis([-3,3,0,0.5]);grid onxlabel(“Time(sec)”,“fontsize”,8),title(“输出信号”,“fontweight”,“bold”)text(-0.4,0.3,“y(t)”)subplot(2,1,2),stem(n,abs(Y_n),“.”);%输出信号的幅度频谱xlabel(“n”,“fontsize”,8),title(“输出信号的幅度频谱”,“fontweight”,“bold”)text(-4.0,0.2,“|Yn|”)(3)波形:-3-2-1 0 1 2 300.511.52Time(sec)输入信号f(t)-20-15-10-5 0 5 10 15 2000.10.20.30.4n输入信号的幅度频谱|Fn|-20-15-10-5 0 5 10 15 2000.10.20.30.40.50.60.70.80.91n系统函数的幅度频谱|Hn|-3-2-1 0 1 2 300.10.20.30.4Time(sec)输出信号y(t)-20-15-10-5 0 5 10 15 2000.10.20.30.4n输出信号的幅度频谱|Yn| 项目三连续系统的复频域阐发目的:周期信号输入连续系统的响应也可用拉氏变更阐发。
信号与系统-MATLAB实验报告

《信号与系统》MATLAB实验报告院系:专业:年级:班号:姓名:学号:实验时间:实验地点:实验一 连续时间信号的表示及可视化实验题目:)()(t t f δ=;)()(t t f ε=;at e t f =)((分别取00<>a a 及); )()(t R t f =;)()(t Sa t f ω=;)2()(ft Sin t f π=(分别画出不同周期个数的波形)。
解题分析:以上各类连续函数,先运用t = t1: p:t2的命令定义时间范围向量,然后调用对应的函数,建立f 与t 的关系,最后调用plot ()函数绘制图像,并用axis ()函数限制其坐标范围。
实验程序:(1))()(t t f δ=t=-1:0.01:3 %设定时间变量t 的范围及步长 f=dirac(t) %调用冲激函数dirac () plot(t,f) %用plot 函数绘制连续函数 axis([-1,3,-0.5,1.5]) %用axis 函数规定横纵坐标的范围 (2))()(t t f ε=t=-1:0.01:3 %设定时间变量t 的范围及步长 f=heaviside(t) %调用阶跃函数heaviside () plot(t,f) %用plot 函数绘制连续函数 title('f(t)=heaviside(t)') %用title 函数设置图形的名称 axis([-1,3,-0.5,1.5]) %用axis 函数规定横纵坐标的范围 (3)at e t f =)(a=1时:t=-5:0.01:5 %设定时间变量t 的范围及步长 f=exp(t) %调用指数函数exp ()plot(t,f) %用plot 函数绘制连续函数 title('f=exp(t)') %用title 函数设置图形的名称 axis([-5,5,-1,100]) %用axis 函数规定横纵坐标的范围 a=2时: t=-5:0.01:5f=exp(2*t) %调用指数函数exp () plot(t,f)title('f=exp(2*t)') axis([-5,5,-1,100]) a=-2时: t=-5:0.01:5 f=exp(-2*t) plot(t,f)title('f=exp(-2*t)') axis([-5,5,-1,100]) (4))()(t R t f =t=-5:0.01:5f=rectpuls(t,2) %用rectpuls(t,a)表示门函数,默认以零点为中心,宽度为a plot(t,f) title('f=R(t)') axis([-5 5 -0.5 1.5]) (5))()(t Sa t f ω=ω=1时: t=-20:0.01:20f=sin(t)./t %调用正弦函数sin (),并用sin (t )./t 实现抽样函数 plot(t,f)title('f(t)=Sa(t)') axis([-20,-20,-0.5,1.1])ω=5时: t=-20:0.01:20 f=sin(5*t)./(5*t) plot(t,f)title('f(t)=Sa(5*t)') axis([-20,-20,-0.5,1.1]) (6))2()(ft Sin t f π=ω=1时: t=-10:0.01:10f=sin(t) %调用正弦函数sin () plot(t,f); title('f=sin(t)') axis([-10,10,-2,2]) ω=5时: t=-10:0.01:10 f=sin(5*t) plot(t,f);title('f=sin(5*t)') axis([-10,10,-2,2])实验结果;(1)-1-0.500.51 1.52 2.53-0.500.511.5(2)-1-0.500.51 1.52 2.53-0.500.511.5f(t)=heaviside(t)(3) a=1时:-5-4-3-2-1012345 a=2时:f=exp(2*t)-5-4-3-2-1012345 a=-2时:-5-4-3-2-1012345(4)-5-4-3-2-1012345-0.500.511.5f=R(t)(5) ω=1时:-20-15-10-505101520-0.4-0.20.20.40.60.81ω=5时:-20-15-10-505101520-0.4-0.20.20.40.60.81f(t)=Sa(5*t)(6) ω=1时:-10-8-6-4-20246810-2-1.5-1-0.500.511.52ω=5时:-10-8-6-4-20246810-2-1.5-1-0.500.511.52f=sin(5*t)实验心得体会:(1) 在 MATLAB 中,是用连续信号在等时间间隔点的样值来近似地表示连续信号的,当取样时间间隔足够小时,这些离散的样值就能较好地近似出连续信号。
《信号与系统》课程实验报告

《信号与系统》课程实验报告《信号与系统》课程实验报告一图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信号与系统实验报告引言:信号与系统是电子工程、通信工程等领域中的重要基础课程,对于理解和应用各种信号处理技术具有重要意义。
本实验报告旨在通过使用Matlab软件,对信号与系统的基本概念和实验进行探讨和分析。
实验一:信号的基本特性分析在信号与系统的研究中,我们首先需要了解信号的基本特性。
通过Matlab软件,我们可以方便地对不同类型的信号进行分析和处理。
在本实验中,我们选择了常见的正弦信号和方波信号进行分析。
首先,我们生成了一个频率为1kHz,幅度为2V的正弦信号,并绘制了其时域波形图和频谱图。
通过观察时域波形图,我们可以看到正弦信号具有周期性和连续性的特点。
而通过频谱图,我们可以看到正弦信号在频域上只有一个峰值,说明其是单频信号。
接下来,我们生成了一个频率为1kHz,幅度为2V,占空比为50%的方波信号,并绘制了其时域波形图和频谱图。
与正弦信号不同,方波信号具有分段常值的特点。
通过频谱图,我们可以看到方波信号在频域上存在多个谐波分量,说明其是由多个频率的正弦信号叠加而成。
实验二:系统的时域响应分析在信号与系统中,系统的时域响应是描述系统对输入信号进行处理的重要指标。
通过Matlab软件,我们可以方便地分析和绘制系统的时域响应。
在本实验中,我们选择了一个一阶低通滤波器作为系统,输入信号为一个频率为1kHz,幅度为2V的正弦信号。
通过绘制输入信号和输出信号的时域波形图,我们可以观察到系统对输入信号进行了滤波处理,输出信号的幅度和相位发生了变化。
此外,我们还可以通过改变系统的参数,如截止频率和阶数,来观察系统的时域响应的变化。
通过对比不同参数下的输出信号波形图,我们可以得出不同参数对系统响应的影响。
实验三:系统的频域响应分析除了时域响应,频域响应也是描述系统特性的重要指标。
通过Matlab软件,我们可以方便地进行系统的频域响应分析。
在本实验中,我们选择了一个二阶巴特沃斯低通滤波器作为系统,输入信号为一个频率为1kHz,幅度为2V的正弦信号。
成都理工大学MATLAB信号与系统课程设计实验报告

信号与系统课程设计(论文)设计(论文)题目离散系统的响应及卷积运算和灰度图像频域处理学院名称信息科学与技术学院专业名称电子信息科学与技术学生姓名邓泉铃学生学号201313020220任课教师杨斯涵设计(论文)成绩教务处制2015年 1 月6 日摘要此次的信号与系统课程设计的任务是在MATLAB 软件下进行离散系统的分析仿真及卷积运算。
技术内容是:根据时域分析原理,利用MATLAB 软件求解系统零状态响应,冲激响应。
对MATLAB 软件进行程序操作,同时利用MATLAB 软件也能对书本上的知识进行验证,在MATLAB 软件下编写函数程序,然后运行程序,与书本上的信号的求解进行对照分析和比较。
对MATLAB 软件进行一定的了解和运用之后,开始做此次课程设计——LTI 连续系统的分析仿真,用MATLAB 软件对此次课程设计的系统零状态响应、冲激响应进行绘图求解,并且记录其分析过程。
关键字:课程设计,函数程序,分析仿真。
一、基础设计离散系统的响应及卷积运算1.1、已知某LTI 离散系统的单位序列响应()()(3)h k k k εε=--,试用MATLAB 中的函数conv( )求解该系统在激励()()(4)f k k k εε=--时的零状态响应()y k ,绘出其时域波形图,并说明序列()f k 和()h k 的时域宽度与()y k 的时域宽度的关系。
调用conv 函数代码:function[f,k]=dconv(f1,f2,k1,k2)%The function of computer f=f1*f2f=conv(f1,f2)k0=k1(1)+k2(1);k3=length(f1)+length(f2)-2;k=k0:k0+k3subplot(2,2,1)stem(k1,f1)title('f1(k)')xlabel('k')ylabel('f1(k)')subplot(2,2,2)stem(k2,f2)title('f2(k)')xlabel('k')ylabel('f2(k)')subplot(2,2,3)stem(k,f);title('f(k)=f1(k)*f2(k)')xlabel('k')ylabel('f(k)')MATLAB代码如下:f1=ones(1,4);k1=0:3;f2=ones(1,3);k2=0:2;[f,k]=dconv(f1,f2,k1,k2)运行结果如右:f = 1 2 3 3 2 1k = 0 1 2 3 4 5f = 1 2 3 3 2 1k =0 1 2 3 4 5y(k)的时域宽度是f(k)与h(k)之和减一。
MATLAB课程设计报告

《信号与系统》课程设计说明书系(部) 电子与通信工程系专业(班级) 应用物理姓名董方林学号 2008041130 指导教师龙英、侯周国起止日期 2010.12.6-2010.12.10课程设计任务书课程名称《信号与系统》课程设计系别电子与通信工程系班级应用物理一班姓名董方林学号2008041130指导教师龙英、侯周国2010年12 月13 日目录1摘要 (11)2程序设计与实验仿真结果图 (11)3 程序调试 (28)4仿真结果分析 (29)5.结论与心得 (30)6.参考文献 (31)1 摘要通过本课程的理论教学、实验、课程设计使学生掌握信号与系统的基本概念,线性时不变系统的基本特性,信号通过线性系统的基本分析以及综合、设计的方法。
培养学生的抽象思维能力,提高分析问题、解决问题的能力,软件开发能力为后续课程的学习以及从事实际工作打下良好的基础。
通过设计要求学生掌握对线性系统进行模拟、仿真和滤波器的设计方法。
了解在MATLAB环境下系统模拟和仿真的方法和技术。
用MATLAB画出信号的波形。
2程序设计与实验仿真结果图3.1f1k程序如下: f2k程序如下: syms k; syms k;k=0:0.1:10 k=0:0.1:10f1=cos(k*pi/8); f2=cos(k*2);stem(k,f1); stem(k,f2);f1(k)=cos(kπ/8)的时域波形 f2(k)= cos(2k)的时域波形3.23.2.1 syms tf1=sym('(-t+4)*(u(t)-u(t-4))');subplot(1,2,1);ezplot(f1);y1=subs(f1,t,-2*t);f3=-(f1+y1);subplot(1,2,2);ezplot(f3)其中,u(t)子程序定义为function f=u(t)f=(t>0);图3.2.1311()[(2)()]f t f t f t =--+波形图3.2.2 syms tf1=sym('(-t+4)*(u(t)-u(t-4))'); y1=subs(f1,t,-2*t); f3=-(f1+y1); subplot(1,3,1); ezplot(f3);f2=sym('(sin(2*pi*t))'); subplot(1,3,2); ezplot(f2); f4=f2*f3; subplot(1,3,3); ezplot(f4)其中,u(t)子程序定义为function f=u(t) f=(t>0);图3.2.2423()()()f t f t f t =⨯波形图3.2.3 syms tf1=sym('(-t+4)*(u(t)-u(t-4))'); subplot(1,3,1); ezplot(f1);f2=sym('(sin(2*pi*t))'); subplot(1,3,2); ezplot(f2); f5=f1*f2; subplot(1,3,3); ezplot(f5)其中,u(t)子程序定义为function f=u(t) f=(t>0);图3.2.3512()()()f t f t f t =⨯波形图 3.2.4 syms tf1=sym('(-t+4)*(u(t)-u(t-4))'); y1=subs(f1,t,t-2) subplot(1,3,1); ezplot(y1);f2=sym('(sin(2*pi*t))'); subplot(1,3,2); ezplot(f2); f6=f1+f2; subplot(1,3,3); ezplot(f6)其中,u(t)子程序定义为 function f=u(t) f=(t>0);图3.2.4612()(2)()f t f t f t =-+波形图3.3 syms tf1=sym('(exp(-0.1))'); subplot(1,3,1); ezplot(f1);f2=sym('(sin(t*2/3))'); subplot(1,3,2); ezplot(f2); f3=f1*f2; subplot(1,3,3); ezplot(f3)其中,u(t)子程序定义为function f=u(t)f=(t>0);图3.3 f(t)=波形图4 . p=0.01;k1=-1:p:1;f1=2*ones(1,length(k1)); k2=-2:p:2;f2=ones(1,length(k2)); [f,k]=sconv(f1,f2,k1,k2,p);图4 f(t)=12()*()f t f t 波形图5.1 a=[2 1 8];b=[1];title('f1(t) 阶跃响应的时域波形'); xlabel('t(s)'); ylabel('f1(t) '); subplot(1,2,2);step(b,a,0:0.01:30);title('f2(t) 冲激响应的时域波形'); xlabel('t(s)'); ylabel('f2(t)'); subplot(1,2,1);impulse(b,a,0:0.01:30);图5.1 2y’’(t)+y’(t)+8y(t)=f(t)系统的时域波形图5.2 a=[1 -1 0.9]b=[1]subplot(1,3,1); impz(b,a); subplot(1,3,2); impz(b,a,60); subplot(1,3,3); impz(b,a,-10:40)图5.2 y(k)-y(k-1)+0.9y(k-3)=f(k)系统的时域波形图5.3连续时间系统21() 1.30.8s H s s s +=++的simulink 仿真及波形图:图 5.3.121()1.30.8sH ss s+=++系统在图 5.3.221()1.30.8sH ss s+=++系统单位冲激信号作用下的时域波形图周期矩形信号作用下的时域波形6.1.1 clear;syms t;x=t*exp(-2*t)*sym('Heaviside(t)');F=fourier(x);ezplot(abs(F))图6.1.12()()tf t te tε-=的傅立叶变换6.1.2 syms tc=sym('Heaviside(t)');s=subs(c,t,-t);f1=-s+c;subplot(1,2,1);ezplot(f1,[-4,4]); F=fourier(f1); subplot(1,2,2); ezplot(abs(F));图 6.1.2 1,0()sgn()1,0t f t t t >⎧==⎨-<⎩的傅立叶变换6.2clear; syms t w j;F=-j*(2*w/(4+w^2)); f=ifourier(F,t); ezplot(f)图 6.2 222()4w F jw jw=-+的逆傅立叶变换6.3图 6.3 f=e^(-2*(t))幅值图7clear;wm=1; %信号带宽wc=wm; %滤波器截止频率Ts=pi*1.5; %采样间隔ws=2*pi/Ts; %采样角频率n=-100:100; %时域采样点数nTs=n*Ts; %时域采样点f=sinc(nTs/pi);Dt=0.005;t=-15:Dt:15;fa=f*Ts*wc/pi*sinc((wc/pi)*(ones(length(nTs),1)*t-nTs'*ones(1,length(t)))); %信号重构error=abs(fa-sinc(t/pi)); %求重构信号与原信号的误差t1=-15:0.5:15;f1=sinc(t1/pi);subplot(3,1,1);stem(t1,f1);xlabel('kTs');ylabel('f(kTs)');title('sa(t)=sinc(t/pi)临界采样信号');subplot(3,1,2);plot(t,fa);xlabel('t');ylabel('fa(t)');title('由sa(t)=sinc(t/pi)的临界采样信号重构sa(t)');grid;subplot(3,1,3);plot(t,error);xlabel('t');ylabel('error(t)');图7.1系统采样信号波形图Ts=0.7π(令Ωm=1,Ωc=1.1Ωm)8.1.1clf;a=-2.5:0.08:2.5;b=-2.5:0.08:2.5;[a,b]=meshgrid(a,b);d=ones(size(a));c=a+i*b; %确定绘制曲面图的复平面区域e=c.*c;f=e+4.*d;c=c./f;c=abs(c); %计算拉普拉斯变换的样值mesh(a,b,c); %绘制曲面图surf(a,b,c);axis([-2.5,2.5,-2.5,2.5,0,18]);title('单边正弦信号拉氏变换曲面图');colormap(hsv);图8.1.1 )utt(tf 拉式变换图))(2cos(8.1.2clf;a=-3:0.08:3;b=-3:0.08:3;[a,b]=meshgrid(a,b);d=ones(size(a));c=a+i*b; %确定绘制曲面图的复平面区域c=(c+2).*(c+2);c=c+d;c=1./c;c=abs(c); %计算拉普拉斯变换的样值mesh(a,b,c); %绘制曲面图surf(a,b,c);axis([-3,3,-3,3,0,10]);title('单边正弦信号拉氏变换曲面图');colormap(hsv)图8.1.2 )etf t-=拉式变换图tu((2t)sin()8.2.1clf;a=-6:0.6: 6;b=-6: 0.6: 6;[a,b]=meshgrid(a,b);c=a+ i*b;d=(c+1)*(c+4);e=c.*(c+3)*(c+2);c=d./e;c=abs(c);mesh(a,b,c);surf(a,b,c);axis([-6, 6,- 6, 6,0,0.6]);title('拉普拉斯变换曲面图');colormap(hsv);view(-36,36)图6.2.18.2.2 clf; a=-6:0.6: 6; b=-6: 0.6: 6; [a,b]=meshgrid(a,b); c=a+i*b; d=c.*c-4; e=c.*c+4; c=d./e; c=abs(c); mesh(a,b,c); surf(a,b,c);axis([-6, 6,- 6, 6,0,8]); title('拉普拉斯变换曲面图'); colormap(hsv); view(-36,36)图8.2.2 44)(22+-=s s s F8.3.1a=[1 5 6 0]; b=[1 5 4]; [r,p,k]=residue(b,a) 运行结果:r =-0.66671.00000.6667p =-3.0000-2.0000k =[]可以看出,)(sF有三个极点p1=-3,p2=-2,p3=0所以f(t)=-2/3*exp(-3*t)*u(t)+exp(-2t)*u(t)+ 2/3*u(t)8.3.2实现过程:a=[1 2 2 1];b=[1];[r,p,k]=residue(b,a)运行结果:r =1.0000-0.5000 - 0.2887i-0.5000 + 0.2887ip =-1.0000-0.5000 + 0.8660i-0.5000 - 0.8660ik =[]由上述结果可以看出,)F有三个极点p =-1.0000 、-0.5000 + 0.8660i、-0.5000 - 0.8660i,(s为了求得共轭极点对应的信号分量,可用abs()和angle()分别求出部分分式展开系数的模和幅角,程序如下:abs(r)ans =1.00000.57740.5774angle(r)/pians =-0.83330.8333由此可得f(t)=18/5/pi*exp(-1/2*t)*cos(8/9*t+5/6)9function ljdt(A,B)% The function to draw the pole-zero diagram for discrete systemp=roots(A); %求系统极点q=roots(B); %求系统零点p=p'; %将极点列向量转置为行向量q=q'; %将零点列向量转置为行向量x=max(abs([p q 1])); %确定纵坐标范围x=x+0.1;y=x; %确定横坐标范围clfhold onaxis([-x x -y y]) %确定坐标轴显示范围w=0:pi/300:2*pi;t=exp(i*w);plot(t) %画单位园axis('square') plot([-x x],[0 0]) %画横坐标轴 plot([0 0],[-y y])%画纵坐标轴text(0.1,x,'jIm[z]') text(y ,1/10,'Re[z]') plot(real(p),imag(p),'x') %画极点 plot(real(q),imag(q),'o')%画零点 title('pole-zero diagram for discrete system') %标注标题hold off(1) (2) A=[2 0 0 -1]; A=[1 2 -4 1]; B=[0 1 -2 -1]; B=[0 1 0 2]; ljdt(A,B) ljdt(A,B)图9.12321()21z z H z z --=-零级点分布 图9.2 2322()241z H z z z z +=+-+零级点分布由绘出的零极点图可以看出两个系统的稳定性分别为:第(1)个系统稳定;第(2)个系统不稳定。
信号与系统-MATLAB综合实验课程设计

信号与系统-MATLAB综合实验课程设计一、课程设计的目的和意义在信号与系统学习中,MATLAB是非常重要的工具。
本课程设计主要目的是让学生通过实验,掌握使用MATLAB进行信号与系统分析和处理的方法和技巧。
同时,课程设计还能够加深学生对信号与系统理论知识的理解和掌握,提高其综合运用能力。
二、课程设计的内容和要求1. 实验一:信号的生成和绘制本实验主要包括以下内容:•生成几种基本信号(如正弦信号、方波信号、三角波信号等)。
•通过MATLAB绘制生成的信号,并加上合适的标注。
要求学生能够掌握信号的生成方法和MATLAB的绘图函数的使用。
2. 实验二:信号的运算与变换本实验主要包括以下内容:•对已有信号进行运算(如加、减、乘、除等)。
•对信号进行卷积、相关等线性变换操作。
•对信号进行傅里叶变换,并绘制幅度谱、相位谱等图形。
要求学生能够掌握信号的运算、变换方法和MATLAB的相应函数的使用。
3. 实验三:系统的分析和建立本实验主要包括以下内容:•对系统进行零极点分析,并绘制零极点图。
•对已有系统进行时域和频域分析(如阶跃响应、冲击响应、幅频响应等)。
要求学生能够掌握系统的分析方法和MATLAB的相应函数的使用。
4. 实验四:信号的滤波和降噪本实验主要包括以下内容:•对信号进行数字滤波(如低通滤波、高通滤波、带通滤波、带阻滤波等)。
•对信号进行去噪处理(如中值滤波、小波变换去噪等)。
要求学生能够掌握信号滤波、降噪方法和MATLAB的相应函数的使用。
三、课程设计的实施流程1.分组。
依据班级人数以及教学设备的数量,安排学生分为若干个小组,每个小组3-4人。
2.模拟分配实验。
询问小组成员们的意见,模拟分配每个小组所要完成的课程设计任务。
3.实验操作。
每个小组根据分配到的实验课程设计,使用MATLAB进行模拟操作。
4.结果展示。
每个小组进行结果展示,介绍自己的设计思路,并展示实验结果。
其他小组成员以及教师进行现场互相交流和讨论。
信号与系统课程设计报告---MATLAB在信号与系统中的使用

信号与系统课程设计报告---MATLAB在信号与系统中的使用《信号与系统》——课程设计报告报告题目: MATLAB在信号与系统中的使用所在系部:理学院所在专业:应用物理所在班级:物理092 作者姓名:郑xxx 作者学号: 20090012xxxx 指导教师: xxxxx 完成时间: 2011.6目录内容摘要———————————————————————— 3 MATLAB简介——————————————————————— 3 第一章 MATLAB应用功能简介1.1 基本概念——————————————————————— 5 1.2 基本运算——————————————————————— 6 1.3 可视化功能1.3.1 绘制二维图形——————————————————— 71.3.2 绘制三维图形——————————————————— 8 1.4 实例简介1.4.1 应用基础—————————————————————91.4.2 绘制二维图形———————————————————111.4.3 绘制三维图形———————————————————12 第二章信号与系统分析及MATLAB实现2.1 信号的时域分析2.1.1 信号的表示及可视化———————————————— 132.1.2 信号的时域运算、时域变换及MATLAB实现———————132.1.3 用MATLAB分析常用的时间信号特性——————————14 2.2 连续系统的是与分析及MATLAB实现2.2.1 离散时间序列卷积及MATLAB实现———————————152.2.2 连续时间信号卷积及MATLAB实现———————————15 2.3 实例简介2.3.1 信号与系统分析及MATLAB实现————————————162.3.2 连续系统的是与分析及MATLAB实现——————————21 第三章课程设计总结3.1课程设计体会—————————————————————26 3.2评语及成绩——————————————————————27 参考文献—————————————————————————28内容摘要通过本次课程设计,我首先学习了matlab7.0的应用基础。
信号系统MATLAB实验报告

信号系统MATLAB实验报告信号与系统实验报告桂林理工大学信息科学与工程学院电子信息工程实验二信号及其表示【实验目的】了解各种常用信号的表达方式掌握部分绘图函数【实验内容】一、绘出连续时间信号x(t)=te707.0 sin32t 关于t 的曲线,t 的范围为 0~30s ,并以0.1s 递增。
MATLAB 源程序为:t=0:0.1:30; %对时间变量赋值x=exp(-0.707*t).*sin(2/3.*t); %计算变量所对应得函数值plot(t,x);grid; %绘制函数曲线 ylabel('x(t)');xlabel('Time(sec)')二、产生周期为0.02的方波。
MATLAB源程序为:Fs=100000;t=0:1/Fs:1;x1=square(2*pi*50*t,20);x2=square(2*pi*50*t,80);subplot(2,1,1),plot(t,x1),axis([0,0.2,-1.5,1.5]); subplot(2,1,2),plot(t,x2),axis([0,0.2,-1.5,1.5]);三、产生sinc(x)函数波形。
MATLAB源程序为:x=linspace(-4,4);y=sinc(x);plot(x,y)四、绘制离散时间信号的棒状图。
其中x(-1)=-1,x(0)=1,x(1)=2,x(2)=1,x(3)=0,x(4)=-1,其他时间x(n)=0。
MATLAB源程序为:n=-3:5; %定位时间变量x=[0,0,-1,1,2,1,-1,0,0];stem(n,x);grid; %绘制棒状图line([-3,5],[0,0]); %画X轴线xlabel('n');ylabel('x[n]')五、单位脉冲序列δ(n-0n )={00...1...0n n n n =≠直接实现:x=zeros(1,N);x(1,n0)=1;函数实现:利用单位脉冲序列)(0n n -δ的生成函数impseq,即function[x,n]=impseq(n0,ns,nf) n=[ns:nf];x=[(n-n0)==0]; plot(n,x); stem(n,x);输入参数:impseq(0,0,9)——连续图形12345678900.10.20.30.40.50.60.70.80.91输入参数:impseq(0,0,9)——离散图形六、单位阶跃序列ε(n-0n )={00...1...0n n n n ≥<直接实现:n=[ns:nf];x=[(n-n0)>=0];函数实现:利用单位阶跃序列)(0n n -ε的生成函数stepseq ,即Function[x,n]=stepseq(n0,ns,nf) n=[ns:nf];x=[(n-n0)>=0]; plot(n,x);七、实指数序列 R a n a n x n∈?=,,)( 直接实现:n=[ns:nf]:x=a.^n;函数实现:利用实指数序列na n x =)(的生成函数rexpseq,即 Function[x,n]=rexpseq(a,ns,nf) n=[ns:nf];x=a,^n:八、复指数序列n e n x n j ?=+,)()(ωδ直接实现:n=[ns:nf];x=exp((sigema+jw)*n); 函数实现:利用复指数序列nj en x )()(ωδ+=的生成函数cexpseq,即Function[x,n]=cexpseq(sigema,w,ns,nf)n=[ns:nf];x=exp((sigema+j*w)*n);0123456789-3000-2000-10000100020003000400050006000九、正(余)弦序列 n wn n x ?+=),cos()(θ直接实现:n=[ns:nf];x=cos(w*n+sita);函数实现:利用正(余)弦序列x(n)=cos(wn+θ)的生成函数cosswq,即Function[x,n]=cosseq(w,ns,nf,sita) n=[ns:nf];x=cos(w*n+sita);输入参数:cosseq(3.14,0,9,30)——连续信号0123456789-0.2-0.15-0.1-0.0500.050.10.150.2输入参数:cosseq(3.14,0,9,30)——离散信号0123456789实验三信号的运算【实验目的】了解信号处理的基本操作。
信号与系统Matlab课程设计报告

一、连续信号的时域分析1. 信号的产生(1)阶跃函数function [t,y1]=jieyue(t1,t2,t0)dt=0.01;ttt=t1:dt:t0-dt;tt=t0:dt:t2;t=t1:dt:t2;n=length(ttt);nn=length(tt);u=zeros(1,n);uu=ones(1,nn);y1=[u,uu];return冲激函数function [t,y2]=chongji(t1,t2,t0)dt=0.01;t=t1:dt:t2;n=length(t);y2(1:n)=0;y2(1,(t0-t1)/dt+1)=1/dt;(2)调用上述函数产生信号)2-t ε(,)(4-t δ,-t e )(t ε,-6s ≤t ≤6s,并画出波形。
Command Windowsubplot(3,1,1);[t1,y1]=jieyue(-6,6,2);stairs(t1,y1);axis([-6 6 0 1.5]);subplot(3,1,2);[t2,y2]=chongji(-6,6,4);plot(t2,y2); subplot(3,1,3);[t3,y3]=jieyue(-6,6,0);y3=exp(-(t3)).*y3;plot(t3,y3);波形如下图所示:(3)根据f(t)画出f(2t)和f(1-0.5t)的波形t=-3:0.01:3;y=tripuls(t,4,0.6);subplot(3,1,1);plot(t,y);title('f(t)');xlabel('(a)');y1=tripuls(2*t,4,0.6);subplot(3,1,2);plot(t,y1);title('f(2t)');xlabel('(b)');t1=2-2*t;y2=tripuls(1-0.5*t1,4,0.6);subplot(3,1,3);plot(t1,y2);title('f(1-0.5*t)');xlabel('(c)');得到波形如下图所示:已知信号f(t)=(1+t/2)*(u(t+2)-u(t-2)),用matlab求f(t+2),f(t-2),f(-t).f(2t),-f(t),并绘出时域波形。
信号与系统Matlab实验报告

实验一MATLAB 程序入门和基础应用一、实验名称MATLAB 程序入门和基础应用二、实验目的1.学习Matlab软件的基本使用方法;2.了解Matlab的数值计算,符号运算,可视化功能;3. Matlab程序设计入门四、实验设备计算机MATLAB软件六、实验内容及具体步骤1、打开MATLAB的系统界面,对其功能做一个大致了解;2、学习变量的描述方法,掌握几个固定变量:I,j,pi,inf的使用。
注意,变量描述以字母开头,可以由字母、数字和下划线混合组成,区分字母大,小写字符长度不超过31个。
3、学习数值,矩阵,运算符,向量的矩阵运算,数组运算的描述方法。
(1)用一个简单命令求解线性系统3x1+ x2 - x3 =3.6x1+2x2+4x3 = 2.1-x1+4x2+5x3 = -1.4A=[3 1 -1;1 2 4;-1 4 5];b=[3.6;2.1;-1.4];x=A\b结果:x = 1.4818 -0.4606 0.3848(2)用简短命令计算并绘制在0≤x≤6范围内的sin(2x)、sinx2、sin2x。
x=linspace(0,6)y1=sin(2*x),y2=sin(x.^2),y3=(sin(x)).^2;plot(x,y1,x, y2,x, y3)4、Matlab符号运算功能(1)符号运算的过程在符号运算的整个过程中,所有的运算均是以符号进行的,即使以数字形式出现的量也是字符量。
做一个对sin(x/2)求导的过程。
在命令窗口中输入如下符号表达式按回车:f='sin(x/2)';dfdx=diff(f)显示结果如下:dfdx = 1/2*cos(1/2*x)整个求导的过程都是由符号变量和符号表达式完成,没有涉及到具体的数值运算,其中1/2也被当作是字符量。
注意:符号变量前先要进行定义,定义语句是:sym 或syms 变量名列表。
前者定义一个单一的符号变量,后者可以一次定义多个符号变量。
信号与系统 matlab实验报告

信号与系统 matlab实验报告信号与系统 Matlab 实验报告引言:信号与系统是电子信息类专业中的一门重要课程,它研究了信号的产生、传输和处理过程,以及系统对信号的响应和影响。
通过实验,我们可以更直观地理解信号与系统的基本概念和原理,并掌握使用 Matlab 进行信号与系统分析和处理的方法。
实验一:信号的产生与显示在信号与系统课程中,我们首先需要了解不同类型的信号,以及如何产生和显示这些信号。
在 Matlab 中,我们可以使用一些函数来生成常见的信号波形,如正弦波、方波、三角波等。
通过编写简单的 Matlab 程序,我们可以实现信号的产生和显示。
实验二:信号的采样与重构在实际应用中,信号通常以连续时间的形式存在,但在数字系统中需要将其转换为离散时间的信号进行处理。
这就需要进行信号的采样和重构。
在 Matlab 中,我们可以使用采样函数和重构函数来模拟这一过程,并观察采样率对信号重构质量的影响。
实验三:信号的滤波与频谱分析信号滤波是信号处理中的重要环节,它可以去除信号中的噪声和干扰,提高信号质量。
在 Matlab 中,我们可以使用滤波函数来实现不同类型的滤波器,并观察滤波对信号频谱的影响。
此外,我们还可以使用频谱分析函数来研究信号的频谱特性,如频谱密度、功率谱等。
实验四:系统的时域与频域分析系统是信号处理中的重要概念,它描述了信号在系统中的传输和变换过程。
在Matlab 中,我们可以使用系统函数来模拟不同类型的系统,并观察系统对信号的时域和频域响应。
通过实验,我们可以深入理解系统的时域特性和频域特性,如冲击响应、频率响应等。
实验五:信号的调制与解调信号调制是将信息信号转换为调制信号的过程,而解调则是将调制信号恢复为原始信号的过程。
在 Matlab 中,我们可以使用调制函数和解调函数来模拟不同类型的调制和解调方式,如调幅、调频、调相等。
通过实验,我们可以了解不同调制方式的原理和特点,并观察调制和解调对信号的影响。
信号与系统matlab实验报告

信号与系统matlab实验报告信号与系统MATLAB实验报告引言信号与系统是电子工程、通信工程和控制工程等领域中的重要基础课程。
通过实验,我们可以更好地理解信号与系统的概念和基本原理,并掌握使用MATLAB进行信号与系统分析的方法。
本报告将介绍我们在信号与系统实验中的实验过程、结果和分析。
实验一:连续时间信号的采样与重构在这个实验中,我们研究了连续时间信号的采样与重构。
首先,我们通过MATLAB生成了一个连续时间信号,并使用采样定理确定了采样频率。
然后,我们对连续时间信号进行采样,并通过重构方法将采样信号还原为连续时间信号。
最后,我们通过观察重构信号与原始信号的相似性来评估重构的效果。
实验二:线性时不变系统的频率响应在这个实验中,我们研究了线性时不变系统的频率响应。
首先,我们通过MATLAB生成了一个输入信号,并设计了一个线性时不变系统。
然后,我们通过将输入信号输入到系统中,并记录输出信号的幅度和相位,从而得到系统的频率响应。
最后,我们绘制了系统的幅频特性和相频特性曲线,并对其进行了分析和讨论。
实验三:离散时间信号的采样与重构在这个实验中,我们研究了离散时间信号的采样与重构。
首先,我们通过MATLAB生成了一个离散时间信号,并使用采样定理确定了采样周期。
然后,我们对离散时间信号进行采样,并通过重构方法将采样信号还原为离散时间信号。
最后,我们通过观察重构信号与原始信号的相似性来评估重构的效果,并讨论了离散时间信号的采样与重构的特点。
实验四:离散时间系统的差分方程在这个实验中,我们研究了离散时间系统的差分方程。
首先,我们通过MATLAB生成了一个输入信号,并设计了一个离散时间系统。
然后,我们通过将输入信号输入到系统中,并根据系统的差分方程计算输出信号。
最后,我们对输入信号和输出信号进行了分析和比较,并讨论了离散时间系统的差分方程的特点和应用。
实验五:连续时间信号的傅里叶变换在这个实验中,我们研究了连续时间信号的傅里叶变换。
信号与系统MATLAB实验

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 所定义的时间点上的样值; 说明: plot 是常用的绘制连续信号波形的函数;严格说来,MATLAB 不能表示连续信号,所以,在用plot 命令绘制波形时,要对自变量t 进行取值,MATLAB 会分别计算对应点上的函数值,然后将各个数据点通过折线连接起来绘制图形,从而形成连续的曲线;因此,绘制的只是近似波形,而且,其精度取决于t 的取样间隔;t 的取样间隔越小,即点与点之间的距离越小,则近似程度越好,曲线越光滑;例如:图1-1是在取样间隔为p=时绘制的波形,而图1-2是在取样间隔p=时绘制的波形,两相对照,可以看出图1-2要比图1-1光滑得多;在上面的f=sint . /t 语句中,必须用点除符号,以表示是两个函数对应点上的值相除;⑵ 符号运算表示法如果一个信号或函数可以用符号表达式来表示,那么我们就可以用前面介绍的符号函数专用绘图命令ezplot 等函数来绘出信号的波形; ⑶ 常见信号的MATLAB 表示对于普通的信号,应用以上介绍的两种方法即可完成计算函数值或绘制波形,但是对于一些比较特殊的信号,比如单位阶跃信号t 、符号函数sgnt 等,在MATLAB 中这些信号都有专门的表示方法; 单位阶跃信号单位阶跃信号的定义为:10()0t t t ε>⎧=⎨<⎩,单位阶跃信号是信号分析的基本信号之一,在信号与系统分析中有着非常重要的作用,通常,我们用它来表示信号的定义域,简化信号的时域表示形式;例如:可以用两个不同延时的单位阶跃信号来表示一个矩形门信号,即:2()(1)(1)G t t t εε=+--在MATLAB 中,可通过多种方法得到单位阶跃信号,下面分别介绍; 方法一: 调用Heavisidet 函数在MATLAB 的Symbolic Math Toolbox 中,有专门用于表示单位阶跃信号的函数,即Heavisidet 函数,用它即可方便地表示出单位阶跃信号以及延时的单位阶跃信号,并且可以方便地参加有关的各种运算过程;首先定义函数Heavisidet 的m 函数文件,该文件名应与函数名同名即;%定义函数文件,函数名为Heaviside,输入变量为x,输出变量为y function y= Heavisidety=t>0; %定义函数体,即函数所执行指令%此处定义t>0时y=1,t<=0时y=0,注意与实际阶跃信号定义的区别; 方法二:数值计算法在MATLAB 中,有一个专门用于表示单位阶跃信号的函数,即stepfun 函数,它是用数值计算法表示的单位阶跃函数()t ε;其调用格式为: stepfunt,t0其中,t 是以向量形式表示的变量,t0表示信号发生突变的时刻,在t0以前,函数值小于零,t0以后函数值大于零;有趣的是它同时还可以表示单位阶跃序列()k ε,这只要将自变量以及取样间隔设定为整数即可;有关单位阶跃序列()k ε的表示方法,我们后面有专门论述,下面通过一个例子来说明如何调用stepfun 函数来表示单位阶跃函数; 符号函数符号函数的定义为:10sgn()1t t t >⎧=⎨-<⎩在MATLAB 中有专门用于表示符号函数的函数sign ,由于单位阶跃信号 t和符号函数两者之间存在以下关系:1122()sgn()t t ε=+,因此,利用这个函数就可以很容易地生成单位阶跃信号;下面举个例子来说明如何利用sign 函数生成单位阶跃信号,并同时绘制其波形; 2.离散时间信号离散时间信号又叫离散时间序列,一般用()f k 表示,其中变量k 为整数,代表离散的采样时间点采样次数;三.实验内容1.分别用MATLAB 的向量表示法和符号运算功能,表示并绘出下列连续时间信号的波形:2[]()cos()()(4)2tf t t t πεε=--syms t;f=sym'costpit/2heavisidet-heavisidet-4'; ezplotf,-2,8; 423()(2)f t t t ε=+syms t;f=sym'2/3theavisidet+2'; ezplotf,-4,8;2.分别用MATLAB 表示并绘出下列离散时间信号的波形: 2[]()()(8)f t k k k εε=-- t=0:8; t1=-10:15;f=zeros1,10,t,zeros1,7; stemt1,faxis-10,15,0,10 4 ()(2)f k k ε=-+t=-20:10;f=ones1,23,zeros1,8; stemt,f stemt,f3.已知信号f t 的波形如下图所示,试用MATLAB 绘出满足下列要求的信号波形; 2(2)f t -t=-1::4; t0=0; t1=1; t2=2;ut=2stepfunt,t0-2stepfunt,t1+stepfunt,t1-stepfunt,t2;plott-2,ut axis-3,2,0,3 4(0.51)f t +t=-1::4;t0=0;t1=1; t2=2;ut=2stepfunt,t0-2stepfunt,t1+stepfunt,t1-stepfunt,t2; plott+1,ut axis-1,2,0,44.已知两信号1()(1)()f t t t εε=+-,2()()(1)f t t t εε=--,求卷积积分12()()()g t f t f t =*,并与例题比较;程序清单:t1=-1::0; t2=0::1; t3=3::5;f1=onessizet1; f2=onessizet2; g=convf1,f2; plott3,g 信号波形:5.已知两信号1()()f t t t ε=,20()()0t tt te t f t t eε-≥⎧=⎨<⎩,求卷积积分12()()()g t f t f t =*;程序代码:t1=0::5;t2=-5::5; t3=-5::10; f1=t1;f2=expt2.t2<0+t2.exp-t2.t2>=0; g=convf1,f2; plott3,g;运行结果截图:6.已知{}{}12()1,1,1,2,()1,2,3,4,5f k f k ==,求两序列的卷积和 ; 程序清单:f1=1,1,1,2,0; f2=1,2,3,4,5; f=convf1,f2; x=0:8;stemx,f,'filled' 信号波形:实验二 LTI 系统的响应一、实验目的1.熟悉连续时间系统的单位冲激响应、阶跃响应的意义及求解方法2.熟悉连续离散时间系统在任意信号激励下响应的求解方法3.熟悉应用MATLAB 实现求解系统响应的方法二、实验原理1.连续时间系统对于连续的LTI 系统,当系统输入为ft ,输出为yt ,则输入与输出之间满足如下的线性常系数微分方程:()()0()()nmi j i j i j a y t b f t ===∑∑,当系统输入为单位冲激信号δt 时产生的零状态响应称为系统的单位冲激响应,用ht 表示;若输入为单位阶跃信号εt 时,系统产生的零状态响应则称为系统的单位阶跃响应,记为gt ,如下图所示;系统的单位冲激响应ht 包含了系统的固有特性,它是由系统本身的结构及参数所决定的,与系统的输入无关;我们只要知道了系统的冲激响应,即可求得系统在不同激励下产生的响应;因此,求解系统的冲激响应ht 对我们进行连续系统的分析具有非常重要的意义;在MATLAB 中有专门用于求解连续系统冲激响应和阶跃响应, 并绘制其时域波形的函数impulse 和step ;如果系统输入为ft ,冲激响应为ht ,系统的零状态响应为yt ,则有:()()()y t h t f t =*;若已知系统的输入信号及初始状态,我们便可以用微分方程的经典时域求解方法,求出系统的响应;但是对于高阶系统,手工计算这一问题的过程非常困难和繁琐;在MATLAB 中,应用lsim 函数很容易就能对上述微分方程所描述的系统的响应进行仿真,求出系统在任意激励信号作用下的响应;lsim 函数不仅能够求出连续系统在指定的任意时间范围内系统响应的数值解,而且还能同时绘制出系统响应的时域波形图;2.离散时间系统LTI 离散系统中,其输入和输出的关系由差分方程描述:00()()n mi ji j a y k i bf k j ==+=+∑∑前向差分方程()()nmi ji j a y k i bf k n j ==-=-+∑∑ 后向差分方程当系统的输入为单位序列δk 时产生的零状态响应称为系统的单位函数响应,用hk 表示;当输入为 εk 时产生的零状态响应称为系统的单位阶跃应,记为:gk ,如下图所示;如果系统输入为ek ,冲激响应为hk ,系统的零状态响应为y k ,则有:()()()y k h k f k =*;与连续系统的单位冲激响应ht 相类似,离散系统的单位函数响应hk 也包含了系统的固有特性,与输入序列无关;我们只要知道了系统的单位函数响应,即可求得系统在不同激励信号作用下产生的响应;因此,求解系统的单位函数响应hk 对我们进行离散系统的分析也同样具有非常重要的意义;MATLAB 中为用户提供了专门用于求解离散系统单位函数响应, 并绘制其时域波形的函数impz ;同样也提供了求离散系统响应的专用函数filter ,该函数能求出由差分方程所描述的离散系统在指定时间范围内的输入序列作用时,产生的响应序列的数值解;当系统初值不为零时,可以使用dlsim 函数求出离散系统的全响应,其调用方法与前面连续系统的lsim 函数相似;另外,求解离散系统阶跃响应可以通过如下两种方法实现:一种是直接调用专用函数dstep ,其调用方法与求解连续系统阶跃响应的专用函数step 的调用方法相似;另一种方法是利用求解离散系统零状态响应的专用函数filter ,只要将其中的激励信号看成是单位阶跃信号εk 即可;三、实验内容1. 已知描述系统的微分方程和激励信号et 分别如下,试用解析方法求系统的单位冲激响应ht 和零状态响应rt ,并用MATLAB 绘出系统单位冲激响应和系统零状态响应的波形,验证结果是否相同;①''()4'()4()'()3()y t y t y t f t f t ++=+;()()t f t e t ε-=程序清单:a=1 4 4;b=1 3; impulseb,a,10 p=;t=0:p:10; x=exp-1t;y=filterb,a,xsubplot2,1,1,impulseb,a,10 subplot2,1,2,lsimb,a,x,t②''()2'()26()'()y t y t y t f t ++=;()()f t t ε= 单位冲激响应程序代码: a=1 2 26;b=1;subplot2,1,1, impulseb,a,4 subplot2,1,2, stepb,a,4 运行结果截图:零状态响应程序代码: a=1 2 26;b=1; p1=;t1=0:p1:10; x1=t1;lsimb,a,x1,t1 运行结果截图:③''()4'()3()()y t y t y t f t ++=;2()()t f t e t ε-=a=1 4 3;b=1; p=;t=0:p:10; x=exp-2ty=filterb,a,xsubplot2,1,1,impulseb,a,10 subplot2,1,2,lsimb,a,x,t④如下图所示的电路中,已知1234()R R R ===Ω,121()L L H ==,且两电感上初始电流分别为12(0)2(),(0)0()i A i A ==,如果以电阻3R 上电压()y t 作为系统输出,请求出系统在激励()12()f t t ε=v 作用下的全响应;程序清单:A=-8 4;4 -8;B=1;0;C=-4 4;D=0; x0=2;0; t=0::10;E=12.onessizet;r,x=lsimA,B,C,D,E,t,x0; plott,r信号波形:阶跃响应程序代码: a=1,-5/6,1/6;b=1,0,-1; k=0:20;x=heavisidek; y=filterb,a,xsubplot2,1,1,stemk,x title'输入序列'subplot2,1,2,stemk,y title'输出序列' 运行结果截图:④一带通滤波器可由下列差分方程描述:()0.81(2)()(2)y k y k f k f k +-=--,其中()f k 为系统输入, ()y k 为系统输出;请求出当激励[]()1010cos(/2)10cos()()f k kn kn k ε=++选取适当的n 值时滤波器的稳态输出;a=1,0,81/100; b=1,0,-1; k=0:20;x=10+10.cos1/2.k+10.cosk; y=filterb,a,xsubplot3,1,1,impzb,a,0:20, subplot3,1,2,dstepb,a,0:20, subplot3,1,3,stemk,y实验三连续时间信号的频域分析一、实验目的1.熟悉傅里叶变换的性质 2.熟悉常见信号的傅里叶变换3.了解傅里叶变换的MATLAB 实现方法二、实验原理傅里叶变换是信号分析 的最重要的内容之一;从已知信号()f t 求出相应的频谱函数()F j ω的数学表示为:()F j ω()j t f t e dt ω∞--∞=⎰()f t 的傅里叶变换存在的充分条件是()f t 在无限区间内绝对可积,即()f t 满足下式: ()f t dt ∞-∞<∞⎰但上式并非傅里叶变换存在的必要条件;在引入广义函数概念之后,使一些不满足绝对可积条件的函数也能进行傅里叶变换;傅里叶反变换的定义为:1()()2j tf t F j e d ωωωπ∞-∞=⎰; 在这一部分的学习中,大家都体会到了这种数学运算的麻烦;在MATLAB 语言中有专门对信号进行正反傅里叶变换的语句,使得傅里叶变换很容易在MATLAB 中实现;在MATLAB 中实现傅里叶变换的方法有两种,一种是利用MATLAB 中的Symbolic Math Toolbox 提供的专用函数直接求解函数的傅里叶变换和傅里叶反变换,另一种是傅里叶变换的数值计算实现法;1.直接调用专用函数法①在MATLAB 中实现傅里叶变换的函数为: F=fourier f对ft 进行傅里叶变换,其结果为FwF =fourierf,v对ft 进行傅里叶变换,其结果为FvF=fourier f,u,v对fu 进行傅里叶变换,其结果为Fv②傅里叶反变换f=ifourier F 对Fw 进行傅里叶反变换,其结果为fx f=ifourierF,U对Fw 进行傅里叶反变换,其结果为fu f=ifourier F,v,u 对Fv 进行傅里叶反变换,其结果为fu由于MATLAB 中函数类型非常丰富,要想了解函数的意义和用法,可以用mhelp 命令;如在命令窗口键入:mhelp fourier 回车,则会得到fourier 的意义和用法; 注意:1在调用函数fourier 及ifourier 之前,要用syms 命令对所有需要用到的变量如t,u,v,w 等进行说明,即要将这些变量说明成符号变量;对fourier 中的f 及ifourier 中的F 也要用符号定义符sym 将其说明为符号表达式;2采用fourier 及fourier 得到的返回函数,仍然为符号表达式;在对其作图时要用ezplot 函数,而不能用plot 函数;3fourier 及fourier 函数的应用有很多局限性,如果在返回函数中含有δω等函数,则ezplot 函数也无法作出图来;另外,在用fourier 函数对某些信号进行变换时,其返回函数如果包含一些不能直接表达的式子,则此时当然也就无法作图了;这是fourier 函数的一个局限;另一个局限是在很多场合,尽管原时间信号ft 是连续的,但却不能表示成符号表达式,此时只能应用下面介绍的数值计算法来进行傅氏变换了,当然,大多数情况下,用数值计算法所求的频谱函数只是一种近似值;三、 实验内容1.编程实现求下列信号的幅度频谱1求出1()(21)(21)f t t t εε=+--的频谱函数F1jω,请将它与上面门宽为2的门函数()(1)(1)f t t t εε=+--的频谱进行比较,观察两者的特点,说明两者的关系;f1t 函数程序代码: syms t w;Gt=sym'Heaviside2t+1-Heaviside2t-1'; Fw=fourierGt,t,w;FFw=maple'convert',Fw,'piecewise'; FFP=absFFw;ezplotFFP,-10pi 10pi;grid; axis-10pi 10pi 0 ; f1t 函数图像: 门函数程序代码: syms t w;Gt=sym'Heavisidet+1-Heavisidet-1'; Fw=fourierGt,t,w;FFw=maple'convert',Fw,'piecewise'; FFP=absFFw;ezplotFFP,-10pi 10pi;grid; axis-10pi 10pi 0 ; 门函数图像:2 三角脉冲21||||1()0||1t t f t t -≤⎧=⎨>⎩程序清单:f2t 函数程序代码:syms t wGt=sym'1+tHeavisidet+1-Heavisidet+1-tHeavisidet-Heavisidet-1'; Fw=fourierGt,t,w;FFw=maple'convert',Fw,'piecewise';FFP=absFFw;ezplotFFP,-10pi 10pi;grid;axis-10pi 10pi 0 ;f2t 函数图像:3 单边指数信号 3()()t f t e t ε-=程序清单:syms t wGt=sym'exp-1theavisidet';Fw=fourierGt,t,w;FFw=maple'convert',Fw,'piecewise';FFP=absFFw; ezplotFFP,-7pi 7pi;grid;axis-7pi 7pi 0信号波形:4 高斯信号23()t f t e -=程序清单:syms t w;Gt=exp-t.^2;Fw=fourierGt,t,wFFP=absFwezplotFw,-30 30;grid;axis-30 30 0 2信号波形:2.利用ifourier 函数求下列频谱函数的傅氏反变换 122()16F j j ωωω=-+ 程序清单:syms t wFw=sym '-j2w/16+w^2';ft=ifourier Fwft=ifourierFw,w,t;运行结果:ft=-jexp-4absxsignx1i222()58()()65j jF jj jωωωωω+-=++syms t wFw=sym'jw^2+5jw-8/jw^2+6jw+5';ft=ifourierFwft=ifourierFw,w,t;运行结果:ft =2pidiracx + piexp-x1i/jsignimag1/j3i/j -piexp-x5i/jsignimag1/j2i/j - piexp-x1i/jsignx3i/j +piexp-x5i/jsignx2i/j/2pi实验四离散信号与系统的时域分析一、实验目的1.学会用MATLAB表示常用离散信号的方法;2.学会用MATLAB实现离散信号卷积的方法;3.学会用MATLAB求解离散系统的单位响应;4.学会用MATLAB求解离散系统的零状态响应;二、实验原理1.离散信号的MATLAB表示表示离散时间信号fk需要两个行向量,一个是表示序号k= ,一个是表示相应函数值f= ,画图命令是stem;2.离散信号的卷积和两个有限长序列f1,f2卷积可调用MATLAB函数conv,调用格式是f=convf1,f2, f是卷积结果,但不显示时间序号,可自编一个函数dconv给出f 和k,并画图;3.离散系统的单位响应MATLAB提供画系统单位响应函数impz,调用格式是impzb,a 式中b和a是表示离散系统的行向量;impzb,a,n 式中b和a是表示离散系统的行向量,时间范围是0~n;impzb,a,n1,n2 时间范围是n1~n2 ;y=impzb,a,n1,n2 由y给出数值序列;4.离散系统的零状态响应MATLAB提供求离散系统零状态响应数值解函数filter,调用格式为filterb,a,x,式中b和a是表示离散系统的向量,x是输入序列非零样值点行向量,输出向量序号同x一样;三、上机实验内容1.验证实验原理中程序离散信号的MATLAB表示例2-1正弦序列信号 正弦序列信号可直接调用MATLAB 函数cos,例)cos(ϕω+k ,当ωπ/2是整数或分数时,才是周期信号;画)8/cos(ϕπ+k ,)2cos(k 波形程序是:k=0:40;subplot2,1,1stemk,coskpi/8,'filled'title'coskpi/8'subplot2,1,2stemk,cos2k,'filled'title'cos2k'2.已知)2(2)1(3)()2()1(2)(2-+-+=-+--k f k f k f k y k y k y ,画单位响应波形;a=2,-2,1;b=1,3,2;impzb,aimpzb,a,60impzb,a,-10:403.已知)()2(25.0)1()(k f k y k y k y =-+-+,输入)()(k t f ε=,画输出波形,范围0~15;a=1 1 ;b=1 ;t=0:15;x=t;y=filterb,a,xsubplot2,1,1stemt,xtitle'输入序列'subplot2,1,2stemt,ytitle'响应序列'实验五 连续信号与系统的S 域分析一、实验目的1. 熟悉拉普拉斯变换的原理及性质2. 熟悉常见信号的拉氏变换3. 了解正/反拉氏变换的MATLAB 实现方法和利用MATLAB 绘制三维曲面图的方法4. 了解信号的零极点分布对信号拉氏变换曲面图的影响及续信号的拉氏变换与傅氏变换的关系二、实验原理拉普拉斯变换是分析连续时间信号的重要手段;对于当t ∞时信号的幅值不衰减的时间信号,即在ft 不满足绝对可积的条件时,其傅里叶变换可能不存在,但此时可以用拉氏变换法来分析它们;连续时间信号ft 的单边拉普拉斯变换Fs 的定义为: 拉氏反变换的定义为:1()()2j st j f t F s e ds j σωσωπ+-=⎰显然,上式中Fs 是复变量s 的复变函数,为了便于理解和分析Fs 随s 的变化规律,我们将Fs 写成模及相位的形式:()()()j s F s F s e ϕ=;其中,|Fs|为复信号Fs 的模,而()s ϕ为Fs 的相位;由于复变量s=σ+jω,如果以σ为横坐标实轴,jω为纵坐标虚轴,这样,复变量s 就成为一个复平面,我们称之为s 平面;从三维几何空间的角度来看,|()|F s 和()s ϕ分别对应着复平面上的两个曲面,如果绘出它们的三维曲面图,就可以直观地分析连续信号的拉氏变换Fs 随复变量s 的变化情况,在MATLAB 语言中有专门对信号进行正反拉氏变换的函数,并且利用 MATLAB 的三维绘图功能很容易画出漂亮的三维曲面图;①在MATLAB 中实现拉氏变换的函数为:F=laplace f 对ft 进行拉氏变换,其结果为FsF=laplace f,v对ft 进行拉氏变换,其结果为FvF=laplace f,u,v对fu 进行拉氏变换,其结果为Fv②拉氏反变换f=ilaplace F对Fs 进行拉氏反变换,其结果为ftf=ilaplaceF,u 对Fw 进行拉氏反变换,其结果为fuf=ilaplaceF,v,u 对Fv 进行拉氏反变换,其结果为fu注意: 在调用函数laplace 及ilaplace 之前,要用syms 命令对所有需要用到的变量如t,u,v,w 等进行说明,即要将这些变量说明成符号变量;对laplace 中的f 及ilaplace 中的F 也要用符号定义符sym 将其说明为符号表达式;三、实验内容1.求出下列函数的拉氏变换式,并用MATLAB 绘制拉氏变换在s 平面的三维曲面图① 3()2()5()t t f t e t e t εε--=+函数程序代码:syms t sft=sym'2exp-tHeavisidet+5exp-3tHeavisidet';Fs=laplaceft运算结果:绘制三维曲面图的程序代码:syms x y ss=x+iy;FFs=2/s+1+5/s+3;FFss=absFFs;ezmeshFFss;ezsurfFFss;colormaphsv;运算结果截图:② ()()(2)f t t t εε=--函数程序代码:syms t sft=sym'Heavisidet-Heavisidet-2';Fs=laplaceft运算结果:绘制三维曲面图的程序代码:syms x y ss=x+iy;FFs=1/s-exp-2s/s;FFss=absFFs;ezmeshFFss;ezsurfFFss;colormaphsv;运算结果截图:③ 3()sin()()t f t e t t ε-=函数程序代码:syms t sft=sym'exp-3tsintHeavisidet';Fs=laplaceft运算结果:绘制三维曲面图的程序代码:syms x y ss=x+iy;FFs=1/s+3^2+1;FFss=absFFs;ezmeshFFss;ezsurfFFss;colormaphsv;运算结果截图:④ []()sin()()(2)f t t t t πεε=--函数程序代码:syms t sft=sym'sinpitHeavisidet-Heavisidet-2';Fs=laplaceft运算结果:绘制三维曲面图的程序代码:syms x y ss=x+iy;FFs= pi/s^2+pi^21/s-exp-2s/s;FFss=absFFs;ezmeshFFss;ezsurfFFss;colormaphsv;运算结果截图:2. 已知信号的拉氏变换如下,请用MATLAB 画出其三维曲面图,观察其图形特点,说出函数零极点位置与其对应曲面图的关系,并且求出它们所对应的原时间函数f t ①22(3)(3)()(5)(16)s s F s s s -+=-+ 函数程序代码:syms x y ss=x+iy;FFs=2s-3s+3/s-5s^2+16;FFss=absFFs;ezmeshFFss;ezsurfFFss;colormaphsv;运行结果截图:求原函数的程序代码:syms t sFs =sym'2s-3s+3/s-5s^2+16'ft=ilaplaceFs原函数:ft = 50cos4t/41 + 32exp5t/41 + 125sin4t/82 ②(1)(3)()(2)(5)s s F s s s s ++=++ 函数程序代码:syms x y ss=x+iy;FFs=s+1s+3/ss+2s+5;FFss=absFFs;ezmeshFFss;ezsurfFFss;colormaphsv;运行结果截图:求原函数的程序代码:syms t sFs =sym's+1s+3/ss+2s+5'ft=ilaplaceFs原函数:ft = exp-2t/6 + 8exp-5t/15 + 3/103. 已知连续时间信号[]()s(2)()(4)f t co t t t πεε=--,请分别求出该信号的拉氏变换()F s 及其傅里叶变换()F j ω,并用MATLAB 绘出()F s 的曲面图及振幅频谱()F j ω的波形,观察()F s 的曲面图在虚轴上的剖面图,并将它与信号的振幅频谱曲线进行比较,分析两者的对应关系;1拉氏变换:程序代码:syms t sft=sym'cos2pitHeavisidet-Heavisidet-4';Fs=laplaceft运算结果:Fs=laplaceHeavisidet, t, s-pi2i/2 + laplaceHeavisidet, t, s+pi2i/2 - laplaceHeavisidet - 4, t, s - pi2i/2 - laplaceHeavisidet - 4, t, s + pi2i/22傅里叶变换:程序代码:syms t wGt=sym'cos2pitHeavisidet-Heavisidet-4';Fw=fourierGt运算结果:Fw = fouriercos2pitHeavisidet, t, w - fourierHeavisidet - 4cos2pit, t, w四、总结报告由于平时都是在上课过程中学习理论知识,而这次实验是在理论知识的基础上来进行实验操作,但并是不全是上课时学习的理论知识,也存在许多的新知识;所以对于这次把上课时的理论知识并结合新知识一起应用于实践操作来说是有点困难的; 信号与系统的实验不同于大物实验,一开始说可以多人合作完成的实验,到最后是一个人单独完成;在为数不多的四次实验中,我深深感受到了团队合作在实验中的重要性;在自己对自己写出的代码,运行出现错误的时候,两个人或者多个人对实验的共同理解是实验高效、误差小完成的基础;参考文献: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实验报告

信号与系统 matlab实验报告《信号与系统 Matlab实验报告》摘要:本实验报告通过使用 Matlab 软件进行信号与系统实验,探讨了信号与系统在数字领域的应用。
实验结果表明,Matlab 软件具有强大的信号处理和系统分析功能,能够有效地进行信号与系统的模拟和分析。
引言:信号与系统是电子工程领域中的重要基础课程,它研究了信号的产生、传输和处理,以及系统对信号的响应和影响。
在数字领域,信号与系统的理论和方法也得到了广泛的应用。
Matlab 软件作为一种强大的数学计算工具,为信号与系统的模拟和分析提供了便利和高效的途径。
实验一:信号的生成与显示在本实验中,我们首先使用 Matlab 软件生成了几种常见的信号,包括正弦信号、方波信号和三角波信号。
通过调整信号的频率、幅度和相位等参数,我们观察了信号的变化,并利用 Matlab 的绘图功能将信号图形显示出来。
实验结果表明,Matlab 软件能够方便地生成各种类型的信号,并能够直观地显示信号的波形和特性。
实验二:信号的采样与重构在本实验中,我们使用 Matlab 软件对信号进行了采样和重构。
我们首先对一个连续信号进行了离散采样,然后利用 Matlab 的插值函数对采样信号进行了重构。
实验结果表明,采样和重构过程中存在信号失真和频率混叠等问题,但通过适当的采样和重构方法,我们能够有效地还原原始信号。
实验三:系统的响应与分析在本实验中,我们使用 Matlab 软件对系统的响应进行了分析。
我们构建了几种常见的系统模型,包括线性时不变系统和滤波器系统,然后利用 Matlab 的系统分析工具对系统的频率响应、相位响应和单位脉冲响应等进行了分析。
实验结果表明,Matlab 软件能够有效地进行系统的模拟和分析,为系统设计和优化提供了有力的支持。
结论:通过本实验,我们深入了解了信号与系统在数字领域的应用,并掌握了使用 Matlab 软件进行信号与系统模拟和分析的方法。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
南通大学电子信息学院信号与系统课程设计报告班级:信131姓名:罗开元学号:1311011022指导老师:张小美设计时间:2015.01.132014—2015学年第一学期一、连续信号的时域分析二、1. 信号的产生(1)阶跃函数function [t,y1]=jieyue(t1,t2,t0)dt=0.01;ttt=t1:dt:t0-dt;tt=t0:dt:t2;t=t1:dt:t2;n=length(ttt);nn=length(tt);u=zeros(1,n);uu=ones(1,nn);y1=[u,uu];return冲激函数function [t,y2]=chongji(t1,t2,t0)dt=0.01;t=t1:dt:t2;n=length(t);y2(1:n)=0;y2(1,(t0-t1)/dt+1)=1/dt;(2)调用上述函数产生信号)2-t ε(,)(4-t δ,-t e )(t ε,-6s ≤t ≤6s,并画出波形。
Command Windowsubplot(3,1,1);[t1,y1]=jieyue(-6,6,2);stairs(t1,y1);axis([-6 6 0 1.5]);subplot(3,1,2);[t2,y2]=chongji(-6,6,4);plot(t2,y2); subplot(3,1,3);[t3,y3]=jieyue(-6,6,0);y3=exp(-(t3)).*y3;plot(t3,y3);波形如下图所示:(3)根据f(t)画出f(2t)和f(1-0.5t)的波形t=-3:0.01:3;y=tripuls(t,4,0.6);subplot(3,1,1);plot(t,y);title('f(t)');xlabel('(a)');y1=tripuls(2*t,4,0.6); subplot(3,1,2);plot(t,y1);title('f(2t)');xlabel('(b)');t1=2-2*t;y2=tripuls(1-0.5*t1,4,0.6); subplot(3,1,3);plot(t1,y2);title('f(1-0.5*t)');xlabel('(c)');得到波形如下图所示:已知信号f(t)=(1+t/2)*(u(t+2)-u(t-2)),用matlab求f(t+2),f(t-2),f(-t).f(2t),-f(t),并绘出时域波形。
Command Windowsyms t;f=sym(‘(t/2+1)*(Heaviside(t+2)- Heaviside(t-2))’);subplot(2,3,1);ezplot(f,[-3,3]);y1=subs(f,t,t+2);subplot(2,3,2);ezplot(y1,[-5,1]);y2=subs(f,t,t-2);subplot(2,3,3);ezplot(y2,[-1,5]);y3=subs(f,t,-t);subplot(2,3,4);ezplot(y3,[-3,3]);y4=subs(f,t,2*t);subplot(2,3,5);ezplot(y4,[-2,2]);y5=-f;subplot(2,3,6);ezplot(y5,[-3,3]);仿真结果如下图所示:2、信号的卷积(1)f (t )=f1(t)*f2(t)function [k,f]=myconv(f1,f2,k1,k2,p)f=conv(f1,f2)*p;k0=k1(1)+k2(1);k3=length(f1)+length(f2)-2;k=k0:p:k0+k3*p;(2)求x1=[])()(2-t -t e t εε-和x2=δ(t+3)+δ(t-3)的卷积x1(t)*x2(t),并验证卷积的性质。
Command Window[t1,f11]=jieyue(-8,8,0);[t1,f12]=jieyue(-8,8,2);f1=f11-f12;x1=exp(-t1).*f1;[t2,f21]=chongji(-8,8,-3);[t2,f22]=chongji(-8,8,3);x2=f21+f22;subplot(3,1,1);plot(t1,x1);subplot(3,1,2);plot(t2,x2);[t3,f]=myconv(x1,x2,t1,t2,0.01)subplot(3,1,3);plot(t3,f);仿真结果:(3)已知⎩⎨⎧≤≤-<<=32,120,1t f 1t t )(,t 22e t f -=)(,0<=t<=10的卷积f(t)=f1(t)*f2(t)的时域波形图。
Command Windowt11=0;t12=3;t21=0;t22=10;t1=t11:0.001:t12;ft1=-sign(t1-2);t2=t21:0.001:t22;ft2=exp(-2*t2);t=t11+t21:0.001:t12+t22; ft=conv(ft1,ft2);ft=ft*0.001;subplot(2,2,1);plot(t1,ft1);title('f1(t)');subplot(2,2,2);plot(t2,ft2);title('f2(t)');subplot(2,2,3);plot(t,ft);title('f1(t)*f2(t)');仿真结果:例:已知两个信号f1(t)=u(t-1)-u(t-2),f2(t)=u(t)-u(t-1),求f(t)=f1(t)*f2(t)的时域波形图。
Command Windowt1=1;t2=2;t3=0;t4=1;t=0:T:t2+t4;x1=ones(size(t)).*((t>t1)-(t>t2));x2=ones(size(t)).*((t>t3)-(t>t4));y=conv(x1,x2)*T;subplot(3,1,1),plot(t,x1);ylabel('x1(t)');subplot(3,1,2),plot(t,x2);ylabel('x2(t)');subplot(3,1,3),plot(t,y(1:(t2+t4)/T+1));ylabel('y(t)=x1*x2');xlable('---t/s');仿真结果:3.连续系统的响应(1)已知系统的微分方程为y''(t)+5y'(t)+6y(t)=f(t),求系统的单位冲激响应h(t)和单位阶跃响应g(t);CommandWindowb=[1];a=[1,5,6];subplot(2,1,1);impulse(b,a);subplot(2,1,2);step(b,a);仿真结果:(2)对于上述系统,请画出激励f(t)分别为)(t e -t ε、)(t e -2t ε、)()(t t 2cos ε、)(t t 2ε时系统的零状态响应的波形,分析与理论计算的结果是否相符。
Command Windowb=[1];a=[1,5,6];t=0:0.1:10;f1=exp(-t);f2=cos(2*t);f3=t.^2;f4=(exp(-2*t));subplot(2,2,1);lsim(b,a,f1,t);grid;title('f(t)=exp(-t)');subplot(2,2,2);lsim(b,a,f2,t);grid;title('f(t)=cos(2*t)');subplot(2,2,3);lsim(b,a,f3,t);grid;title('f(t)=t.^2');subplot(2,2,4);lsim(b,a,f4,t);grid;title('f(t)=exp(-2*t)');仿真结果:(3)已知系统的微分方程为y ’’(t)+3y ’(t)+2y(t)=3f(t)+f ’(t),初始条件:y(0+)=1,y ’(0-)=2,求:1)系统的零输入响应)(t y x ; 2)激励为f(t)=)(t e -3t 时,系统的零状态响应)(t y f 和全响应y(t),分析与理论计算的结果是否相符。
二.离散系统的时域分析(1)已知离散系统的差分方程为:y(k)+1/3y(k-2)=1/6f(k)+1/2f(k-1)+1/2f(k-2)+1/6f(k-3),画出单位序列响应、单位阶跃响应的波形。
Command Windowk=0:1:32;a=[1,0,1/3,0];b=[1/6,1/2,1/2,1/6];subplot(2,1,1);hk=impz(b,a,k);stem(k,hk,'k');subplot(2,1,2);gk=dstep(b,a,k);stem(k,gk,'r');仿真结果:(2)已知离散系统的差分方程为:y(k)-1.5y(k-1)+0.5y(k-2)=f(k)满足初始条件y(-1)=4,y(-2)=10,用filtic和filter子函数求系统的激励为f(k)=(0.25) ^k*u(k)时的零输入、零状态以及完全响应。
Command Windowa=[1,-1.5,0.5];b=[1];N=20;k=0:N-1;f=0.25.^k;f0=zeros(1,N);y01=[4,10];fi=filtic(b,a,y01);y0=filter(b,a,f0,fi);fi0=filtic(b,a,0);y1=filter(b,a,f,fi0);y=filter(b,a,f,fi);y2=((1/2).^k+1/3*(1/4).^k+2/3).*ones(1,N);subplot(2,3,1);stem(k,f);title('输入信号f(k)');subplot(2,3,2);stem(k,y0);title('零输入响应');subplot(2,3,3);stem(k,y1);title('零状态响应');subplot(2,3,4);stem(k,y);title('用filter求完全响应');subplot(2,3,5);stem(k,y2);title('用公式求完全响应');仿真结果:(3)已知离散系统的差分方程为y (k )+3y(k-1)+2y(k-2)=f(k),(a )画出单位阶跃响应、单位序列响应的波形;(b )画出激励)()(k 2k f k ε=时的系统零状态响应波形。