文档详情

【练习】matlab信号产生.doc

发布:2017-06-10约7.39千字共14页下载文档
文本预览下载声明
第二篇 基于MATLAB下的软件实验 目 录 实验一 基本信号的产生 ………………………………………………………35 实验二 时域抽样与频域抽样…………………………………………………40 实验三 连续系统分析………………………………………………………………43 实验一 基本信号的产生 一、实验目的 学习使用MATLAB产生基本信号、绘制信号波形、实现信号的基本运算,为信号分析和系统设计奠定基础。 二、实验原理 MATLAB提供了许多函数用于产生常用的基本信号:如阶跃信号、脉冲信号、指数信号、正弦信号和周期矩形波信号等。这些基本信号是信号处理的基础。 (一 ) 基本信号的产生: 1. 连续阶跃信号的产生 产生阶跃信号的MATLAB程序如下: t= -2: 0.02: 6; x=(t=0); plot(t,x); axis([-2,6,0,1.2]); 图一 连续阶跃信号 2. 连续指数信号的产生 产生随时间衰减的指数信号的MATLAB程序如下: t = 0: 0.001: 5; x = 2*exp(-1*t); plot(t,x); 图二 连续指数信号 3. 连续正弦信号的产生 利用MATLAB提供的函数cos和sin可产生正弦和余弦信号。产生一个幅度为2, 频率为4Hz, 相位为p/6的正弦信号的MATLAB程序如下: f0=4; w0=2*pi*f0; t = 0: 0.001: 1; x = 2*sin(w0*t+ pi/6); plot(t,x);; 图三 连续正弦信号 4.连续矩形脉冲信号的产生 函数rectpulse(t,w)可产生高度为1、宽度为w、关于t=0对称的矩形脉冲信号。 产生高度为1、宽度为4、延时2秒的矩形脉冲信号的MATLAB程序如下: t=-2: 0.02: 6; x=rectpuls(t-2,4); plot(t,x); 图四 连续矩形脉冲信号 5. 连续周期矩形波信号的产生 函数square(w0*t)产生基本频率为w0 (周期T=2p/w0)的周期矩形波信号。 函数square(w0*t, DUTY)产生基本频率为w0 (周期T=2p/w0)、占空比DUTY= t/T*100的周期矩形波。 τ为一个周期中信号为正的时间长度。τ=T/2,DUTY=50,square(w0*t, 50)等同于square(w0*t)。 产生一个幅度为1, 基频为2Hz,占空比为50%的周期方波的MATLAB程序如下: f0=2; 图五 连续周期矩形波信号 t = 0:.0001:2.5; w0=2*pi*f0; y = square(w0*t, 50); %duty cycle=50% plot(t,y); axis([0,2.5,-1.5,1.5]); 6. 连续抽样信号的产生 可使用函数sinc(x)计算抽样信号, 函数sinc(x)的定义为 。 产生信号的MATLAB程序如下: t= -10:1/500:10; x=sinc(t/pi); plot(t,x); 图六 连续抽样信号 单位脉冲序列的产生 函数zeros(1,n) 可以生成单位脉冲序列。 函数zeros(1,n)产生1行n列的由0组成的矩阵。 产生成单位脉冲序列的MATLAB程序如下: k= -4: 20; x=[zeros(1,7),1,zeros(1,17)]; stem(k,x) 图七 单位脉冲序列 单位阶跃序列的产生 函数ones(1,n) 可以生成单位阶跃序列。 函数ones(1,n)产生1行n列的由1组成的矩阵。 产生单位阶跃序列的MATLAB程序如下: k= -4:20;
显示全部
相似文档