没有合适的资源?快使用搜索试试~ 我知道了~
实验一 MATLAB方法实现信号波形和微分方程的建立与求解 (2).pdf
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 134 浏览量
2021-11-22
23:55:18
上传
评论
收藏 796KB PDF 举报
温馨提示
试读
16页
。。。
资源推荐
资源详情
资源评论
实验一 MATLAB 方法实现信号波形和微分
方程的建立与求解
一、实验目的
1、熟悉和掌握常用的用于信号与系统时域仿真分析的 MATLAB 函数;
2、掌握连续时间和离散时间信号的MATLAB 产生,掌握用周期延拓的方法将一个非周期信
号进行周期信号延拓形成一个周期信号的 MATLAB 编程;
3、牢固掌握系统的单位冲激响应的概念,掌握 LTI 系统的卷积表达式及其物理意义,掌握卷
积的计算方法、卷积的基本性质;
4、掌握利用 MATLAB 计算卷积的编程方法,并利用所编写的 MATLAB 程序验证卷积的常
用基本性质;
掌握 MATLAB 描述 LTI 系统的常用方法及有关函数,并学会利用 MATLAB 求解 LTI 系统响
应,绘制相应曲线。
基本要求:掌握用 MATLAB 描述连续时间信号和离散时间信号的方法,能够编写 MATLAB
程序,实现各种信号的时域变换和运算,并且以图形的方式再现各种信号的波形。掌握线性时不
变连续系统的时域数学模型用 MATLAB 描述的方法,掌握卷积运算、线性常系数微分方程的求
解编程。
二、实验原理
信号(Signal)一般都是随某一个或某几个独立变量的变化而变化的,例如,温度、压力、
声音,还有股票市场的日收盘指数等,这些信号都是随时间的变化而变化的,还有一些信号,例
如在研究地球结构时,地下某处的密度就是随着海拔高度的变化而变化的。一幅图片中的每一个
象素点的位置取决于两个坐标轴,即横轴和纵轴,因此,图像信号具有两个或两个以上的独立变
量。
在《信号与系统》课程中,我们只关注这种只有一个独立变量(Independent variable)的信
号,并且把这个独立变量统称为时间变量(Time variable),不管这个独立变量是否是时间变量。
在自然界中,大多数信号的时间变量都是连续变化的,因此这种信号被称为 连续时间信号
(Continuous-Time Signals)或模拟信号(Analog Signals),例如前面提到的温度、压力和声音
信号就是连续时间信号的例子。但是,还有一些信号的独立时间变量是离散变化的,这种信号称
为离散时间信号。前面提到的股票市场的日收盘指数,由于相邻两个交易日的日收盘指数相隔 24
小时,这意味着日收盘指数的时间变量是不连续的,因此日收盘指数是离散时间信号。
而系统则用于对信号进行运算或处理,或者从信号中提取有用的信息,或者滤出信号中某些
无用的成分,如滤波,从而产生人们所希望的新的信号。系统通常是由若干部件或单元组成的一
个整体(Entity)。系统可分为很多不同的类型,例如,根据系统所处理的信号的不同,系统可分
为连续时间系统(Continuous-time system)和离散时间系统(Discrete-time system),根据系统
所具有的不同性质,系统又可分为因果系统(Causal system)和非因果系统(Noncausal system)、
稳定系统(Stable system)和不稳定系统(Unstable system)、线性系统(Linear system)和非线
性系统(Nonlinear system)、时变系统(Time-variant system)和时不变系统(Time-invariant
system)等等。
然而,在信号与系统和数字信号处理中,我们所分析的系统只是所谓的线性时不变系统,这
种系统同时满足两个重要的基本性质,那就是线性性和时不变性,通常称为线性时不变(LTI)系
统。
1. 信号的时域表示方法
1.1 将信号表示成独立时间变量的函数
例如 x(t)=sin(ωt) 和 x[n]=n(0.5)
n
u[n]
分别表示一个连续时间信号和一个离散时间信号。在 MATLAB 中有许多内部函数,可以直接完
成信号的这种表达,例如:
sin():正弦信号
cos():余弦信号
exp():指数信号
1.2 用信号的波形图来描述信号
用函数曲线表示一个信号,图 1.1 就是一个连续时间信号和一个离散时间信号的波形图。
图 1.1 连续时间信号与离散时间信号的波形图
1.3 将信号用一个数据序列来表示
对于离散时间信号,还可以表示成一个数的序列,例如:
x[n]={...., 0.1, 1.1, -1.2, 0, 1.3, ….}
↑n=0
在《信号与系统》和《数字信号处理》课程中,上述三种信号的描述方法是经常要使用的。
2 用 MATLAB 仿真连续时间信号和离散时间信号
在 MATLAB 中,无论是连续时间信号还是离散时间信号,MATLAB 都是用一个数字序列来
表示信号,这个数字序列在 MATLAB 中叫做向量(vector)。通常的情况下,需要与时间变量相对
应。
如前所述,MATLAB 有很多内部数学函数可以用来产生这样的数字序列,例如 sin()、cos()、
exp()等函数可以直接产生一个按照正弦、余弦或指数规律变化的数字序列。
2.1 连续时间信号的仿真
MATLAB 提供了大量的生成基本信号的函数,例如指数信号、正余弦信号。
表示连续时间信号有两种方法,一是数值法,二是符号法。数值法是定义某一时间范围和取
样时间间隔,然后调用该函数计算这些点的函数值,得到两组数值矢量,可用绘图语句画出其波
形;符号法是利用 MATLAB 的符号运算功能,需定义符号变量和符号函数,运算结果是符号表
达的解析式,也可用绘图语句画出其波形图。
程序 Program1_1 是用
MATLAB 对一个正弦信号进行仿真的程序,请仔细阅读该程序,
并在计算机上运行,观察所得图形。
% Program1_1
% This program is used to generate a sinusoidal signal and draw its plot
clear, % Clear all variables
close all, % Close all figure windows
dt = 0.01; % Specify the step of time variable
t = -2:dt:0.2; % Specify the interval of time
x = sin(2*pi*t); % Generate the signal
plot(t,x) % Open a figure window and draw the plot of x(t)
title('Sinusoidal signal x(t)')
xlabel('Time t (sec)')
例 1-1 指数信号 指数信号在 MATLAB 中用 exp 函数表示。
如
f (t) Ae
,调用格式为 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 在 MATLAB 中用 sinc 函数表示。
定义为
Sa(t) sin c(t /
)
at
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 函数表示。
调用格式为 ft=tripuls(t,width,skew),产生幅度为 1,宽度为 width,且以 0 为中心左右各展开
width/2 大小,斜度为 skew 的三角波。width 的默认值是 1,skew 的取值范围是-1~+1 之间。一般
最大幅度 1 出现在 t=(width/2)*skew 的横坐标位置。
t=-3:0.01:3;
ft=tripuls(t,4,0.5);
plot(t,ft); grid on;
axis([-3,3,-0.5,1.5]);
例1-5 虚指数信号 调用格式是 f=exp((j*w)*t)
t=0:0.01:15;
w=pi/4;
X=exp(j*w*t);
Xr=real(X); %取实部
Xi=imag(X); %取虚部
Xa=abs(X); %取模
Xn=angle(X); %取相位
subplot(2,2,1),plot(t,Xr),axis([0,15,-(max(Xa)+0.5),max(Xa)+0.5]),
title('实部');
subplot(2,2,3),plot(t,Xi),axis([0,15,-(max(Xa)+0.5),max(Xa)+0.5]),
title('虚部');
subplot(2,2,2), plot(t,Xa),axis([0,15,0,max(Xa)+1]),title('模');
subplot(2,2,4),plot(t,Xn),axis([0,15,-(max(Xn)+1),max(Xn)+1]),title('相角');
%subplot(m,n,i) 命令是建立 m 行 n 列画图窗口,并指定画图位置 i
例1-6 复指数信号 调用格式是 f=exp((a+j*b)*t)
t=0:0.01:3;
a=-1;b=10;
f=exp((a+j*b)*t);
subplot(2,2,1),plot(t,real(f)),title('实部')
subplot(2,2,3),plot(t,imag(f)),title('虚部')
subplot(2,2,2),plot(t,abs(f)),title('模')
subplot(2,2,4),plot(t,angle(f)),title('相角')
例 1-7 矩形脉冲信号 矩形脉冲信号可用 rectpuls 函数产生,
调用格式为 y=rectpuls(t,width),幅度是 1,宽度是 width,以 t=0 为对称中心。
t=-2:0.01:2;
width=1;
剩余15页未读,继续阅读
资源评论
苦茶子12138
- 粉丝: 1w+
- 资源: 6万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功