matlab信号与系统实验报告
- 格式:doc
- 大小:350.00 KB
- 文档页数:21
信号与系统软件实验报告班级:姓名:学号:指导教师:一.实验要求:绘出门函数()(2)(2)f t t t εε=+--的波形二.实验原理:在MATLAB 中,有一个专门用于表示单位阶跃信号的函数,即stepfun()函数,它是用数值计算法表示的单位阶跃函数()t ε。
其调用格式为:stepfun(t,t0),其中,t 是以向量形式表示的变量,t0表示信号发生突变的时刻,在t0以前,函数值小于零,t0以后函数值大于零。
有趣的是它同时还可以表示单位阶跃序列()k ε,这只要将自变量以及取样间隔设定为整数即可。
有关单位阶跃序列()k ε的表示方法,我们后面有专门论述,下面通过一个例子来说明如何调用stepfun()函数来表示单位阶跃函数。
三.Matlab 程序t=-4:0.01:4;%定义时间样本向量t1=-2;%指定信号发生突变的时刻u1=stepfun(t,t1);%产生左移位的阶跃信号(t+2)t2=2;%指定信号发生突变的时刻u2=stepfun(t,t2);%产生右移位的阶跃信号(t-2)g=u1-u2;%表示门函数plot(t,g)%绘制门函数的波形axis([-4,4,-0.5,1.5])%设定坐标轴范围-4<x<4,-0.5<y<1.5四.实验结果一.实验要求:若某连续系统的输入为e (t ),输出为r (t ),系统的微分方程为:''()5'()6()3'()2()y t y t y t f t f t ++=+①求该系统的单位冲激响应h (t )及其单位阶跃响应g (t )。
②若2()()t f t e t ε-=求出系统的零状态响应y(t )二.实验原理:对于连续的LTI 系统,当系统输入为f (t ),输出为y (t ),则输入与输出之间满足如下的线性常系数微分方程:()()00()()n mi j i j i j a y t b f t ===∑∑,当系统输入为单位冲激信号δ(t )时产生的零状态响应称为系统的单位冲激响应,用h(t)表示。
实验1 信号的时域描述与运算一、实验目的1. 掌握信号的MATLAB 表示及其可视化方法。
2. 掌握信号基本时域运算的MATLAB 实现方法。
3. 利用MATLAB 分析常用信号,加深对信号时域特性的理解。
二、实验原理与方法1. 连续时间信号的MATLAB 表示连续时间信号指的是在连续时间范围内有定义的信号,即除了若干个不连续点外,在任何时刻信号都有定义。
在MATLAB 中连续时间信号可以用两种方法来表示,即向量表示法和符号对象表示法。
从严格意义上来说,MATLAB 并不能处理连续时间信号,在MATLAB 中连续时间信号是用等时间间隔采样后的采样值来近似表示的,当采样间隔足够小时,这些采样值就可以很好地近似表示出连续时间信号,这种表示方法称为向量表示法。
表示一个连续时间信号需要使用两个向量,其中一个向量用于表示信号的时间范围,另一个向量表示连续时间信号在该时间范围内的采样值。
例如一个正弦信号可以表示如下:>> t=0:0.01:10; >> x=sin(t);利用plot(t,x)命令可以绘制上述信号的时域波形,如图1所示。
如果连续时间信号可以用表达式来描述,则还可以采用符号表达式來表示信号。
例如对于上述正弦信号,可以用符号对象表示如下:>> x=sin(t); >> ezplot(X);利用ezplot(x)命令可以绘制上述信号的时域波形012345678910-1-0.8-0.6-0.4-0.200.20.40.60.81Time(seconds)图1 利用向量表示连续时间信号-6-4-20246-1-0.50.51t图 2 利用符号对象表示连续时间信号sin(t)常用的信号产生函数 函数名 功能 函数名 功能 heaviside 单位阶跃函数 rectpuls 门函数sin 正弦函数 tripuls 三角脉冲函数 cos 余弦函数 square 周期方波sinc sinc 函数 sawtooth周期锯齿波或三角波 exp 指数函数2.连续时间信号的时域运算对连续时间信号的运算包括两信号相加、相乘、微分、积分,以及位移、反转、尺度变换(尺度伸缩)等。
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。
《信号与系统》课程实验报告《信号与系统》课程实验报告一图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 抽样函数信号仿真途中,通过对滑动块的控制修改信号的幅度、频率、相位,观察波形的变化。
一.实验目的1. 深入理解系统频率响应的物理意义2. 掌握利用Matlab 分析系统频率响应的方法3. 理解系统对信号的作用关系二.实验内容1. 一RC 电路如图:f (t )(1)对不同的RC 值,用freqs 画出系统的幅度响应曲线()H j ω。
(2)信号f(t)= cos(100t)+ cos(3000t)包含一个低频分量和一个高频分量。
试确定适当的RC 值,滤除信号f(t)的高频分量,并画出信号f(t)和滤波后的信号y(t)在0-0.2s范围内的波形。
(3)50Hz 的交流信号经过全波整流后可表示为=10sin(100)f(t)t π试取不同的RC 值,计算并画出f(t)通过系统的响应y(t)。
计算f(t )的直流分量。
2. 信号f 1(t)和f 2(t)见下图:(1)取t:0.05:2.5,计算信号f(t)=f 1(t)+f 2(t)*cos(50t)的值,并画出波形; (2)一可实现的系统的频率响应函数为443210()()26.131()341.42()2613.1()10000H j j j j j ωωωωω=++++用freqs 画出()H j ω的幅度响应和相位响应曲线。
(3)用lsim 函数求出信号f(t)和f(t)*cos(50t)通过上述系统的响应y 1(t)和y 2(t),并根据理论知识解释所得结果。
三.仿真分析1 分析:由电路分析可得该RC 电路的频率响应函数为:1/()RCH j ω=%(3)直流分量的计算:0.01()=10sin(100)0.01DCf t t dtππ⨯=≈⎰ 6.37%(3)四.实验总结0123-1012f(t)0123-112f(t)cos(50t)-0.0500.050.10.15f(t)的输出-0.0200.020.040.06f(t)cos(50t)的输出。
学号:14142500149信号与系统实验报告学生姓名石正禄班级电子14-1BF 院部物理与电子学院专业电子科学与技术任课老师王晓明指导老师王晓明二0一五——二0一六学年第二学期实验项目名称:离散线性时不变系统的分析实验成绩:实验日期:2016.06.14实验室:6404一、 实验目的1. 熟悉离散时间系统在任意信号激励下响应的求解方法。
2.熟悉零极点与频率响应的关系。
3.掌握极点与系统稳定性的关系。
4.了解利用MATLAB 实现离散系统的频率特性分析的方法。
二、 实验原理1.离散时间系统在调用MATLAB 函数时,需要利用描述该离散系统的系数函数。
对差分方程进行Z 变换即可得系统函数:在MATLAB 中可用向量a 和向量b 分别保存分母多项式和分子多项式的系数: 这些系数均从z 0按z 的降幂排列。
(1) 离散系统的单位冲激响应h [k ]的计算[h,k] = impz(b, a):计算系统的单位脉冲响应h[k]和相应的时间向量k ;也可简写为:h = impz(b, a)。
[h,k] = impz(b, a, n):计算n 点单位脉冲响应h[k];也可简写为:h = impz(b, a, n)。
impz(b, a):绘制单位脉冲响应h[k]的图形。
(2) 离散系统零状态响应y [k ]的计算y = filter(b, a, x):计算系统在输入x 作用下的零状态响应y[k];(3)离散系统全响应y [k ]的计算y = filter(b, a, x, zi):%计算系统在输入x 和初始状态作用下的完全响应y[k]。
zi 是由系统的初始状态经过filtic 函数转换而得到的初始条件:zi= filtic (b, a, Y0),Y0为系统的初始状态,Y0= [ y[-1],y[-2],y[-3],...]。
1(1)0111(1)11()()()()1()M M M M N N N N b b z b z b z Y z b z H z X z a z a z a z a z ----------++++===++++ ],,,,[110M M b b b b b -= ],,,,1[110-=N a a a a2.离散系统的频率响应当离散因果LTI 系统的系统函数H (z )的极点全部位于z 平面单位圆内时,系统的频率响应可由H (z )求出,即[H, w]=freqz(b, a, n);%计算系统的n 点频率响应H ,w 为频率点向量。
实验一 连续时间信号的表示及可视化(1)单位冲激信号)()(t t f δ=程序代码:t1=-10;t2=10;t0=0;dt=0.01; %定义时间常量 t=-10:dt:10; %对时间t 赋值 n=length(t); %计算时间长度 y=zeros(1,n);%计算x (t)所对应的函数值y(1,(-t0-t1)/dt+1)=1/dt; %定义冲激点与冲激的大小plot(t,x);xlabel('t');ylabel('y (t)');%绘制函数曲线的取值范围axis([-10,10,-5,105])%设置坐标轴ty (t )title('单位冲激函数'); (2)单位阶跃信号)()(t t f ε=程序代码:t=-5:0.1:5; %对时间变量赋值y=(t>=0); %计算变量所对应的函数值plot(t,y);xlabel('t');ylabel('y (t)');%绘制函数曲线axis([-5,5,-0.5,1.5])%设置坐标轴的取值范围title('单位阶跃信号');ty (t )(3)指数信号at e t f =)((分别取a>0及a<0)①a>0时,程序代码:t=-5:0.1:5; %对时间变量赋值y=exp(0.707*t); %计算变量所对应的函数值plot(t,y);xlabel('t'); ylabel('y(t)');%绘制函数曲线 title('指数信号 a>0');ty (t )②a<0时 程序代码:t=-5:0.1:5; %对时间变量赋值y=exp(-0.707*t);%计算变量所对应的函数值plot(t,y);xlabel('t'); ylabel('y(t)');%绘制函数曲线 title('指数信号 a<0');ty (t )(4)单位矩形信号)()(t R t f =程序代码:t=-5:0.01:5; %对时间变量赋值y=(t>=-3&t<=3); %计算变量所对应的函数值plot(t,y);xlabel('t');ylabel('y(t)');%绘制函数曲线axis([-5,5,-0.5,1.5])%设置坐标轴的取值范围title('单位矩形信号'); ty (t )(5)抽样信号)()(t Sa t f ω=程序代码:t=-4:0.01:4; %对时间变量赋值y1=sin(pi*t)./(pi*t);%计算变量所对应的函数值 y2=0; %定义过时间坐标轴plot(t,y1,t,y2);xlabel('t');ylabel('y(t)'); %绘制函数曲线 title('抽样信号');当ω=π时 当ω=2π时ty (t )ty (t )分析:当ω取不同的值时,抽样函数具有不同的过零点,其中第一图中,第一个过零点为t=1;第二图中,第一个过零点为t=0.5。
实验三连续时间LTI系统分析姓名学号班级通信一班一、实验目的(一)掌握使用Matlab进行连续系统时域分析的方法1、学会使用符号法求解连续系统的零输入响应和零状态响应2、学会使用数值法求解连续系统的零状态响应3、学会求解连续系统的冲激响应和阶跃响应(二)掌握使用Matlab进行连续时间LTI系统的频率特性及频域分析方法1、学会运用MATLAB分析连续系统地频率特性2、学会运用MATLAB进行连续系统的频域分析(三)掌握使用Matlab进行连续时间LTI系统s域分析的方法1、学会运用MATLAB求拉普拉斯变换(LT)2、学会运用MATLAB求拉普拉斯反变换(ILT)3、学会在MATLAB环境下进行连续时间LTI系统s域分析二、实验原理及实例分析(一)连续系统时域分析(详细请参见实验指导第二部分的第5章相关部分)(二)连续时间LTI系统的频率特性及频域分析(详细请参见实验指导第二部分的第8章相关部分)(三)拉普拉斯变换及连续时间系统的s域分析(详细请参见实验指导第二部分的第10、11章相关部分)三、实验过程(一)熟悉三部分相关内容原理(二)完成作业已知某系统的微分方程如下:)(3)()(2)(3)(t e t e t r t r t r +'=+'+''其中,)(t e 为激励,)(t r 为响应。
1、用MATLAB 命令求出并画出2)0(,1)0(),()(3='==---r r t u e t e t 时系统的零状态响应和零输入响应(零状态响应分别使用符号法和数值法求解,零输入响应只使用符号法求解);>> eq='D2y+3*Dy+2*y=0';>> cond='y(0)=1,Dy(0)=2';>> yzi = dsolve(eq,cond);yzi = simplify(yzi);>> eq1 = 'D2y+3*Dy+2*y=Dx+3*x';eq2 = 'x= exp(-3*t)*Heaviside(t)';cond = 'y(-0.01)=0,Dy(-0.001)=0';yzs = dsolve(eq1,eq2,cond);yzs = simplify(yzs.y)yzs =heaviside(t)*(-exp(-2*t)+exp(-t))>> yt = simplify(yzi+yzs)yt =-3*exp(-2*t)+4*exp(-t)-exp(-2*t)*heaviside(t)+exp(-t)*heaviside(t)>> subplot(3,1,1);>> ezplot(yzi,[0,8]);grid on;>> title ('rzi');>> subplot(3,1,2);>> ezplot(yzs,[0,8]);>> grid on;>> title('rzs');>> subplot(3,1,3);>> ezplot(yt,[0,8]);grid on;>> title('完全响应')sys = tf([1,3],[1,3,2]);t = ts:dt:te;f = exp(-3*t).*uCT(t);y = lsim(sys,f,t);plot(t,y),grid on;axis([0,8,-0.02,0.27]);xlable('Time(sec)'),ylable('y(t)'); title('零状态响应')2、)(3)()(2)(3)(t e t e t r t r t r +'=+'+''2)0(,1)0(),()(3='==---r r t u e t e t使用MATLAB 命令求出并画出系统的冲激响应和阶跃响应(数值法);用卷积积分法求系统的零状态响应并与(1)中结果进行比较;t = 0:0.001:4;sys = tf([1,3],[1,3,2]);h = impulse(sys,t);g = step(sys,t);subplot(2,1,1);plot(t,h),grid on;xlable('Time(sec)'),ylable('h(t)');title('冲激响应');subplot(2,1,2);plot(t,g),grid on;xlable('Time(sec)'),ylable('g(t)');title ('阶跃响应')_dt = 0.01;t1 = 0:dt:8;f1=exp(-3*t1);t2 = t1;sys = tf([1,3],[1,3,2]);f2 = impulse(sys,t2);[t,f]= ctsconv(f1,f2,t1,t2,dt)function[f,t] = ctsconv(f1,f2,t1,t2,dt)f = conv(f1,f2);f = f*dt;ts = min(t1)+min(t2);te = max(t1)+max(t2);t = ts:dt:te;subplot(1,1,1)plot(t,f);grid on;axis([min(t),max(t),min(f)-abs(min(f)*0.2),max(f)+abs(max(f)*0.2)]); title('卷积结果')3、)(3)()(2)(3)(t e t e t r t r t r +'=+'+''使用MATLAB 命令求出并画出此系统的幅频特性和相频特性;使用频域分析法求解系统的零状态响应并与(1)中结果进行比较;>> w = -3*pi:0.01:3*pi;b = [1,3];a = [1,3,2];H = freqs(b,a,w);subplot(2,1,1);plot(w,abs(H)),grid on;xlabel('\omega(rad/s)'),ylabel('|H(\omega)|');title ('H(w)的幅频特性');subplot(2,1,2);plot(w,angle(H)),grid on;xlabel('\omega(rad/s)'),ylabel('\phi(\omega)');title('H(w)的相频特性')H = sym('1/(i^2*w^2+3*i*w+2)'); H= simplify(ifourier(H)); subplot(3,1,1);ezplot(H,[0,8]),grid on;title('零状态响应')4、)(3)()(2)(3)(t e t e t r t r t r +'=+'+''使用MATLAB 命令求出并画出t t e 2cos )(=时系统的稳态响应;t = 0:0.1:20;w = 2;H = (j*w+3)/(j^2*w^2+3*j*w+2);f = cos(2*t);y = abs(H)*cos(w*t+angle(H));subplot(2,1,1);plot(t,f);grid on;ylabel('f(t)'),xlabel('Time(s)');title('输入信号的波形');subplot(2,1,2);plot(t,y);grid on;ylabel('y(t)'),xlabel('Time(sec)');title('稳态响应的波形')5、)(3)()(2)(3)(t e t e t r t r t r +'=+'+''若已知条件同(1),借助MATLAB 符号数学工具箱实现拉普拉斯正反变换的方法求出并画出2)0(,1)0(),()(3='==---r r t u e t e t 时系统的零状态响应和零输入响应,并与(1)的结果进行比较。
实验三常见信号的MATLAB表示及运算一、实验目的1. 熟悉常见信号的意义、特性及波形2. 学会使用MATLAB表示信号的方法并绘制信号波形3.掌握使用MATLAB进行信号基本运算的指令4.熟悉用MATLAB实现卷积积分的方法二、实验原理根据MA TLAB的数值计算功能和符号运算功能, 在MATLAB中, 信号有两种表示方法, 一种是用向量来表示, 另一种则是用符号运算的方法。
在采用适当的MATLAB语句表示出信号后, 就可以利用MATLAB中的绘图命令绘制出直观的信号波形了。
1.连续时间信号从严格意义上讲, MATLAB并不能处理连续信号。
在MATLAB中, 是用连续信号在等时间间隔点上的样值来近似表示的, 当取样时间间隔足够小时, 这些离散的样值就能较好地近似出连续信号。
在MATLAB中连续信号可用向量或符号运算功能来表示。
⑴向量表示法对于连续时间信号, 可以用两个行向量f和t来表示, 其中向量t是用形如的命令定义的时间范围向量, 其中, 为信号起始时间, 为终止时间, p为时间间隔。
向量f为连续信号在向量t所定义的时间点上的样值。
⑵符号运算表示法如果一个信号或函数可以用符号表达式来表示, 那么我们就可以用前面介绍的符号函数专用绘图命令ezplot()等函数来绘出信号的波形。
⑶常见信号的MATLAB表示单位阶跃信号单位阶跃信号的定义为:方法一: 调用Heaviside(t)函数首先定义函数Heaviside(t) 的m函数文件,该文件名应与函数名同名即Heaviside.m。
%定义函数文件,函数名为Heaviside,输入变量为x,输出变量为yfunction y= Heaviside(t)y=(t>0); %定义函数体, 即函数所执行指令%此处定义t>0时y=1,t<=0时y=0, 注意与实际的阶跃信号定义的区别。
方法二: 数值计算法在MATLAB中, 有一个专门用于表示单位阶跃信号的函数, 即stepfun( )函数, 它是用数值计算法表示的单位阶跃函数。
实验一 基本信号的产生与运算一、实验目的学习使用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、两个连续信号的卷积定义是什么?两个序列的卷积定义是什么?卷积的作用是什么?答:连续信号的卷积的定义:⎰∞∞--τττdtyx)()(序列的卷积定义:∑=-)()(mmnymx。
利用作图法即将其中一个信号图翻转,平移,两信号相乘,再相加。
傅立叶变换的卷积性质涵盖着时域相乘、频域卷积、频域相乘,时域卷积的对偶关系。
前者若代表两个信号相乘,则因发生调制作用,在频域一定出现频谱搬家(频移)。
后者若一个是信号,另一个代表系统,则系统起着加工处理的滤波作用。
任何信号与冲激函数相卷积,其结果是在冲激出现的时刻(位置)再生原信号。
卷积在实际中的应用有实现幅度调制与解调,实现多路频分复用,实现单边带调幅(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τ条件下,能够从样点集合完全恢复原来信号的频谱。