资源预览内容
第1页 / 共6页
第2页 / 共6页
第3页 / 共6页
第4页 / 共6页
第5页 / 共6页
第6页 / 共6页
亲,该文档总共6页全部预览完了,如果喜欢就下载吧!
资源描述
实验八实验八 MATLAB 在在信号与系统信号与系统中的应用中的应用一、实验目的一、实验目的1 学会用 MATLAB 表示常用连续信号的方法; 2 学会用 MATLAB 进行信号基本运算的方法; 3 学会用 MATLAB 表示常用离散信号的方法; 4 2学会用 MATLAB 实现离散信号卷积的方法; 5 学会用 MATLAB 求解离散系统的单位响应; 6 学会用 MATLAB 求解离散系统的零状态响应;二、实验原理二、实验原理1 连续信号的连续信号的 MATLAB 表示表示 MATLAB 提供了大量的生成基本信号的函数,例如指数信号、正余弦信号。 表示连续时间信号有两种方法,一是数值法,二是符号法。数值法是定义某一时间范围和 取样时间间隔,然后调用该函数计算这些点的函数值,得到两组数值矢量,可用绘图语句 画出其波形;符号法是利用 MATLAB 的符号运算功能,需定义符号变量和符号函数,运 算结果是符号表达的解析式,也可用绘图语句画出其波形图。 2 离散信号的离散信号的 MATLAB 表示表示 表示离散时间信号 f(k)需要两个行向量,一个是表示序号 k= ,一个是表示相应函 数值 f= ,画图命令是 stem。1 实现实现)3(sin)()(ttttStfa)(sin)sin()sin(sin)()(tctt tttttStfam11.m t=-3*pi:0.01*pi:3*pi; % 定义时间范围向量 t f=sinc(t/pi); % 计算 Sa(t)函数 plot(t,f); % 绘制 Sa(t)的波形 运行结果:运行结果:2 信号相加:信号相加:tttf20cos18cos)(m13.m syms t; % 定义符号变量 t f=cos(18*pi*t)+cos(20*pi*t); % 计算符号函数 f(t)=cos(18*pi*t)+cos(20*pi*t) ezplot(f,0 pi); % 绘制 f(t)的波形 运行结果:运行结果:3 信号的调制:信号的调制:tttf50cos)4sin22()(m14.m syms t; % 定义符号变量 t f=(2+2*sin(4*pi*t)*cos(50*pi*t) % 计算符号函数 f(t)=(2+2*sin(4*pi*t)*cos(50*pi*t) ezplot(f,0 pi); % 绘制 f(t)的波形 运行结果:运行结果:4 实现卷积实现卷积,其中:,其中:)(*)(thtf)2()()(),1()( 2)(ttthtttfm21.m p=0.01; % 取样时间间隔 nf=0:p:1; % f(t)对应的时间向量 f=2*(nf=0)-(nf=1); % 序列 f(n)的值 nh=0:p:2; % h(t)对应的时间向量 h=(nh=0)-(nh=2); % 序列 h(n)的值 y,k=sconv(f,h,nf,nh,p); % 计算 y(t)=f(t)*h(t) subplot(3,1,1),stairs(nf,f); % 绘制 f(t)的波形 title(f(t);axis(0 3 0 2.1); subplot(3,1,2),stairs(nh,h); % 绘制 h(t)的波形 title(h(t);axis(0 3 0 1.1); subplot(3,1,3),plot(k,y); % 绘制 y(t)=f(t)*h(t)的波形 title(y(t)=f(t)*h(t);axis(0 3 0 2.1);子程序子程序 sconv.m % 此函数用于计算连续信号的卷积 y(t)=f(t)*h(t) function y,k=sconv(f,h,nf,nh,p) % y:卷积积分 y(t)对应的非零样值向量 % k:y(t)对应的时间向量 % f:f(t)对应的非零样值向量 % nf:f(t)对应的时间向量 % h:h(t)对应的非零样值向量 % nh:h(t)对应的时间向量 % p:取样时间间隔 y=conv(f,h); % 计算序列 f(n)与 h(n)的卷积和 y(n) y=y*p; % y(n)变成 y(t) left=nf(1)+nh(1) % 计算序列 y(n)非零样值的起点位置 right=length(nf)+length(nh)-2 % 计算序列 y(n)非零样值的终点位置 k=p*(left:right); % 确定卷积和 y(n)非零样值的时间向量 运行结果:运行结果:5 实现卷积实现卷积,其中:,其中:)(*)(thtf)()(),2()( 2)(tethtttftm22.m p=0.01; % 取样时间间隔 nf=0:p:2; % f(t)对应的时间向量 f=2*(nf=0)-(nf=2); % 序列 f(n)的值 nh=0:p:4; % h(t)对应的时间向量 h=exp(-nh); % 序列 h(n)的值 y,k=sconv(f,h,nf,nh,p); % 计算 y(t)=f(t)*h(t) subplot(3,1,1),stairs(nf,f); % 绘制 f(t)的波形 title(f(t);axis(0 6 0 2.1); subplot(3,1,2),plot(nh,h); % 绘制 h(t)的波形 title(h(t);axis(0 6 0 1.1); subplot(3,1,3),plot(k,y); % 绘制 y(t)=f(t)*h(t)的波形 title(y(t)=f(t)*h(t);axis(0 6 0 2.1);运行结果:运行结果:6 如图所示周期矩形脉冲,试求其幅度谱。如图所示周期矩形脉冲,试求其幅度谱。f(t)-0.50.5t 0143.54.5-4-4.5-3.5m31.m: clear all syms t n T tao A T=4;A=1;tao=1; f=A*exp(-j*n*2*pi/T*t); fn=int(f,t,-tao/2,tao/2)/T; % 计算傅立叶系数 fn=simple(fn); % 化简 n=-20:-1,eps,1:20; % 给定频谱的整数自变量,eps 代表 0 fn=subs(fn,n,n); % 计算傅立叶系数对应各个 n 的值 subplot(2,1,1),stem(n,fn,filled); % 绘制频谱 line(-20 20,0 0); % 在图形中添加坐标线 title(周期矩形脉冲的频谱); subplot(2,1,2),stem(n,abs(fn),filled); % 绘制频谱 title(周期矩形脉冲的幅度谱); axis(-20 20 0 0.3); 运行结果:运行结果:
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号