收藏 分销(赏)

Matlab产生信号的方法.doc

上传人:pc****0 文档编号:9439606 上传时间:2025-03-26 格式:DOC 页数:5 大小:107.50KB
下载 相关 举报
Matlab产生信号的方法.doc_第1页
第1页 / 共5页
Matlab产生信号的方法.doc_第2页
第2页 / 共5页
点击查看更多>>
资源描述
实验一 常用信号的Matlab表示及运算 一、实验目的 1、掌握Matlab中表示信号的方法. 2、掌握Matlab中信号运算的实现方法。 3、掌握在Matlab中画信号波形的方法。 二、实验原理 1、Matlab中表示信号的方法 信号可以分为连续时间信号与离散时间信号,由于Matlab是通过软件进行信号处理的,所以Matlab中的信号都是离散时间信号,不过在一定条件下,可以近似地表示连续信号。 Matlab语言中的基本数据类型是向量和矩阵,所以信号也用向量或矩阵来表示,列向量和行向量表示单通道信号,矩阵表示多通道信号,矩阵中的每一列表示一个通道。例如,输入语句 x=[1 2 3 5 7]’; 就定义了一个五采样点的离散信号x,以x为基础,可以定义3通道信号 y=[x x/2 2*x]; 结果为 y = 1.0000 0.5000 2.0000 2.0000 1.0000 4.0000 3.0000 1.5000 6.0000 5.0000 2.5000 10.0000 7.0000 3.5000 14.0000 需要注意的是,Matlab约定向量和矩阵的下标从1开始,如果用户要指定信号的真实时间下标,则应另外构造一个向量作为时间轴。例如表示离散信号 x(n)={x(-2) x(-1) x(0) x(1) x(2)}; 则应定义时间轴向量n n=[-2 -1 0 1 2]; 然后定义采样点向量 x=[1 2 3 5 7]; 键入命令 stem(n,x) axis([-3 2 0 8]) 就可以得到具有真实时间下标的信号x(n)的图形,见图1.1。 若要产生具有特定采样频率的信号,也需要定义时间轴向量。例如要产生一个采样频率为1000Hz的采样信号,应先定义时间轴 Fs=1000; t=0:1/ Fs:1; 然后定义采样信号 x=sin(2*pi*50*t)+2*sin(2*pi*120*t); 键入命令 stem(t(1:50),x(1:50)) 就可以画出信号x的前50个采样点的图形,见图1.2。 图1.1 图1.2 若要近似地表示连续信号 x=sin(2*pi*50*t)+2*sin(2*pi*120*t);前面定义时间轴和信号x的语句可保持不变,只需将画图的命令改成 plot(t(1:50),x(1:50)) 即可得到连续的波形,见图1.3。 图1.3 需要说明的是,Matlab中画离散信号的图形用stem命令,例如画图1.1和图1.2,画连续信号的波形用plot命令,例如画图1.3。 表1.1是常用序列的数学描述和Matlab表示。 表1.1 常用序列的数学描述和Matlab表示 名称 数学描述 Matlab表示 单位采样信号 x = zeros(1,N); x(1)=1; 单位阶跃信号 x = ones(1,N); 实指数信号 n=0:N-1; x=a.^n; 复指数信号 n=0:N-1; x=exp((sigema+j*w)*n); 正(余)弦信号 n=0:N-1; x=sin(w*n+sita); MATLAB提供了许多工具箱函数来产生信号,其中大部分函数都需要一个时间向量t作为参数。下面列举几种常用的函数: 正弦信号:用sin( )函数产生。 格式:x=sin(t); 产生周期为的正弦信号。 周期锯齿波或三角波信号:用sawtooth( )函数产生。 格式:x=sawtooth(t) 产生周期为,函数值从-1到+1的锯齿波,在的整数倍处,值为-1,从-1到+1这一段波形的斜率为1/。 x=sawtooth(t,0.5) 产生周期为,函数值从-1到+1的三角波。 方波信号:用square( )函数产生。 格式:x=square(t) 产生周期为,函数值为-1和+1的方波信号。 x=square(t,DUTY) 产生周期为,占空比为DUTY*1%,函数值为-1和+1的方波信号。 例:输入以下语句: t=[-2:0.001:2]; 时间向量作为参数(该句必不可少) x=square(pi*t); 形成周期为2的方波 plot(t,x);显示波形 axis([-2 2 -1.2 1.2]);规定横轴的范围为[-2 2],纵轴的范围为[-1.2 1.2] 显示的波形如图1.4: 图1.4 图1.5 Sinc函数或函数:用sinc( )函数产生。 格式:x=sinc(t) 产生sinc(t)信号,即 例:产生sinc函数波形,结果见图1.5: t=linspace(-5,5); x=sinc(t); plot(t,x) 2、Matlab中信号运算的实现方法 表1.2是信号运算的基本描述和Matlab实现。 表1.2 信号运算的基本描述和Matlab实现 运算名称 数学描述 Matlab表示 信号加 x = x1+x2; 信号乘 x = x1.*x2; 幅度变化 y=alpha*x; 位移 y=[zeros(1,n0) x]; 折叠 y=fliplr(x); n=-fliplr(n); 采样和 y=sum(x(n1:n2)); 采样积 y=prod(x(n1:n2)); N次幂(N为常数) y = x.^N; 三、实验内容和步骤 1、阅读本实验的实验原理。 2、用Matlab生成以下信号,并画出其图形。 。 四、实验报告要求 1、简述实验原理及目的。 2、给出完成实验内容所需的源程序和生成的信号波形。
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服