第5章_信号与系统_MATLAB

合集下载

信号与系统MATLAB实验课后习题答案

信号与系统MATLAB实验课后习题答案

a=[1,1,1]; b=[1,1]; sys=tf(b,a); t=[0:0.01:10]; figure;subplot(2,2,1); step(sys);subplot(2,2,2);x_step=zeros(size(t)); x_step(t>0)=1; x_step(t==0)=1/2; lsim(sys,x_step,t); subplot(2,2,3); impulse(sys,t);title('Impulse Response'); xlabel('Time(sec)'); ylabel('Amplitude'); subplot(2,2,4);x_delta=zeros(size(t)); x_delta(t==0)=100;[y1,t]=lsim(sys,x_delta,t); y2=y1;plot(t,y2);title('Impulse Response'); xlabel('Time(sec)'); ylabel('Amplitude');00.511.5Step ResponseTime (sec)A m p l i t u d e0.511.5Linear Simulation ResultsTime (sec)A m p l i t u d e510-0.500.51Impulse ResponseTime(sec) (sec)A m p l i t u d e510-0.50.51Impulse ResponseTime(sec)A m p l i t u d e函数int1如下:function [F,tF]=int1(f,tf,a)T=tf(2)-tf(1);F=zeros(size(tf)); tF=zeros(size(tf)); tF=tf; for n=1:length(tf)-1;F(n+1)=F(n)+T*f(n); end验证如下:t=[-1:0.01:4]; e=zeros(size(t)); e=(t>-1/2&t<1);[z,zz]=int1(e,t,-1); figure;plot(zz,z);-1-0.500.51 1.52 2.53 3.5400.511.5T1=1;N1=10000; t1=linspace(0,T1-T1/N1,N1)';f1=1-2*t1;OMG=32*pi;K1=100;omg=linspace(-OMG/2,OMG/2-OMG/K1,K1)';X1=T1/N1*exp(-j*kron(omg,t1.'))*f1;fs1=OMG/2/pi/K1*exp(j*kron(t1,omg.'))*X1;T2=5;N2=10000;t2=linspace(0,T2-T2/N2,N2)';fs2=0*t2;f2=sawtooth(t2*2*pi,0);X2=T2/N2*exp(-j*kron(omg,t2.'))*f2;fs2=fs2+OMG/2/pi/K1*exp(j*kron(t2,omg.'))*X2;figure;subplot(2,2,1);plot(omg,abs(X1),'r');xlabel('Frequency'),ylabel('Amplitude')title('单个锯齿周期幅频特性曲线');subplot(2,2,2);plot(t1,fs1,'r');xlabel('Time'),ylabel('Amplitude')title('Function after recovered');subplot(2,2,3);plot(omg,abs(X2),'r');xlabel('Frequency'),ylabel('Amplitude')title('五个锯齿周期幅频特性曲线');subplot(2,2,4);plot(t2,fs2,'r');xlabel('Time'),ylabel('Function after recovered')title('Function after recovered');-100-5005000.20.40.60.8FrequencyA m p l i t u d e单个锯齿周期幅频特性曲线00.51-1-0.500.51TimeA m p l i t u d eFunction after recovered-100-5005000.511.52FrequencyA m p l i t u d e五个锯齿周期幅频特性曲线246-2-1012TimeF u n c t i o n a f t e r r e c o v e r e dFunction after recovered4-2fsana 函数如下:function F=fsana(t,f,N)omg1=2*pi/(max(t)-min(t)); k=[-N:N]';F=1/length(t)*exp(-j*kron(k*omg1,t.'))*f; fssyn 函数如下:function f=fssyn(F,t)omg1=2*pi/(max(t)-min(t)); N=floor(length(F)/2); k=[-N:N];f=exp(j*kron(t,k*omg1))*F; 验证如下: clc clearclose allT1=1;N1=256; t=linspace(0,T1-T1/N1,N1)'; f=1-2*t;subplot(3,1,1); plot(t,f);title('验证原函数') N=25;F1=fsana(t,f,N); subplot(3,1,2); stem(abs(F1),'s');title('前N 项傅立叶级数系数幅度曲线') f2=fssyn(F1,t) ;subplot(3,1,3); plot(t,f2);xlabel('time[s]'),ylabel('Amplitude'); title('傅立叶逆变换后时域函数');00.10.20.30.40.50.60.70.80.91-101验证原函数00.20.4前N 项傅立叶级数系数幅度曲线00.10.20.30.40.50.60.70.80.91-202time[s]A m p l i t u d e傅立叶逆变换后时域函数。

第5章_信号与系统_MATLAB

第5章_信号与系统_MATLAB
信号的MATLAB表示
基本信号的MATLAB表示
指数信号Aeat 、指数序列ak 、抽样函数Sa(t)、 正弦型信号、矩形脉冲信号、三角脉冲信号
信号基本运算的MATLAB实现
尺度变换、翻转、时移、 相加、相乘、 差分与求和、微分与积分
一、基本信号的MATLAB表示
指数信号Aeat 指数序列ak 正弦型信号 y = A*exp(a*t); 幂运算a.^k实现 内部函数cos( ) 和sin( )
0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0 -3
-2
-1
0
1
2
3
1 0.9 0.8 0.7
ft=tripuls(t,4,1);
0.6 0.5 0.4 0.3 0.2 0.1 0 -3
-2
-1
0
1
2
3
一、基本信号的MATLAB表示
% unit impuls sequence k=-50:50; delta=[zeros(1,50),1,zeros(1,50)]; stem(k,delta)
y(t)
1
2
Time(sec)
3
4
5
例2 求系统 y" (t)+2y ' (t)+100y(t)=10x(t) 的零状 态响应,已知x(t) =d (t) 。
%连续时间系统的冲激响应 ts=0;te=5;dt=0.01; 1 sys=tf([10],[1 2 100]); 0.5 t=ts:dt:te; y=impulse(sys,t); 0 plot(t,y); -0.5 xlabel('Time(sec)') ylabel('h(t)') -1

信号与系统MATLAB程序代码

信号与系统MATLAB程序代码

1.傅立叶变换的时移性质若)()(ωF t f ↔,则[]00)(0)()()(t j t j e F e F t t f ωωϕωωω±±=↔±结论: )(t f 延时(或超前)0t 后,其对应的幅度谱保持不变,但相位谱中一切频率分量的相位均滞后(或超前)0t ω。

例:用matlab 画f(t)=t 与 f (t )=t-1图像程序:N=256; t=linspace(-2,2,N);f=t.*heaviside(t);f1=(t-1).*heaviside(t-1);dt=4/(N-1); M=401;w=linspace(-2*pi,2*pi,M);F=f*exp(-j*t'*w)*dt;F1=f1*exp(-j*t'*w)*dt;subplot(3,1,1);plot(t,f,t,f1,'r'),grid onxlabel('t');ylabel('f'),title('f(t),f(t-1)')subplot(3,1,2);plot(w,abs(F),w,abs(F1),'r'),grid onxlabel('w');ylabel(' f(t)和f(t-1)幅度谱');subplot(3,1,3);plot(w,angle(F),w,angle(F1),'r'),grid onxlabel('w');ylabel(' f(t)和f(t-1)相位谱')实验结果:2.傅立叶变换的对称性质博里叶变换的对称性可以表示为:若()()f t F j ω↔,则()()2F t f πω↔- 上式说明,如果函数()f t 的频谱函数为()F j ω,那么时间函数()F t 的频谱函数是()2f πω-,这称为傅里叶变换的对称性。

信号与系统_MATLAB ppt课件

信号与系统_MATLAB  ppt课件

矩形脉冲信号
y = rectpuls(t,width)
三角波脉冲信号 y = tripuls(t,width,skew) %skew:斜度
PPT课件
24
一、基本信号的MATLAB表示
%decaying exponential t=0:001:10; A=1; a=-0.4; ft=A*exp(a*t); plot(t,ft)
MATLAB简介
( Matrix Laboratory )
MATLAB的工作方式 如何获取帮助
表达式——变量、数值、算数运算符、 关系运算符、逻辑运算符、冒号运算符
数组及其运算
函数文件
循环(FOR、 WHILE 循环) 基本绘图语句
PPT课件
2
一、MATLAB的工作方式
(1)窗口命令方式 (2)运行以 .M 为扩展名磁盘文件
值为0时表示逻辑假(F),其它任何非零值表示 逻辑真。
PPT课件
9
三、表达式
运算符号
关系运算符 A<B A>B A <= B A >= B A == B A ~= B
小于 大于 小于等于 大于等于 等于 不等于
PPT课件
10
三、表达式
运算符号
冒号运算符
表达式 1:10 表示产生一个行向量,它的值为 1 2 3 4 5 6 7 8 9 10
0.8 0.7
0.6
delta=[zeros(1,50),1,zeros(1,50)]; 0.5
0.4
stem(k,delta)
0.3
0.2
function [f,k]=impseq(k0,k1,k2)
0.1 0 -50 -40 -30 -20 -10

信号与系统 matlab 书籍

信号与系统 matlab 书籍

信号与系统是电子信息类专业的一门重要课程,它涉及到信号的产生、传输、处理和系统对信号的响应等内容。

而对于学习该课程的学生来说,掌握好相关知识和技能对于以后的学习和工作都至关重要。

选择一本优质的信号与系统的 MATLAB 书籍就显得至关重要。

通过本文,我将向您推荐一本值得阅读的信号与系统的 MATLAB 书籍,并简要介绍其内容,希望能够给您的学习和工作带来帮助。

1. 《MATLAB仿真信号与系统建模教程》这本书由普林斯顿大学教授 Dennis S. Bernstein 和舒洛克教授撰写,是一本信号与系统领域的经典教材。

它通过 MATLAB 实例来解释信号与系统的基本概念,包括线性时不变系统(LTI 系统)、傅立叶分析、滤波器设计等内容。

考虑到大多数学生对 MATLAB 操作不熟练,本书还附带了 MATLAB 的简要入门教程,帮助读者快速掌握 MATLAB 在信号与系统中的应用。

2. 《MATLAB在信号与系统中的应用》这是一本由国内著名信号与系统专家刘琦编著的 MATLAB 信号与系统应用教程。

该书通过大量的仿真例子和 MATLAB 代码,详细介绍了信号与系统理论在 MATLAB 中的应用。

书中还包括了对信号处理工具箱和控制系统工具箱的介绍,使读者能够更好地应用 MATLAB 进行信号与系统的建模、仿真和分析。

3. 《MATLAB信号与系统实验教程》该书主要是按照实验的方式来学习信号与系统。

它从基本信号的产生与表示开始,介绍了常见的信号与系统模型,并通过 MATLAB 可视化和仿真实验帮助读者更直观地理解信号与系统的概念和原理。

书中还提供了丰富的 MATLAB 实验案例,如系统的频域和时域表示、信号的采样与重构、滤波器设计等,帮助读者巩固理论知识,提高实际操作能力。

在选择信号与系统的 MATLAB 书籍时,我们可以根据自己的学习需求和水平来进行选择。

如果是初学者,可以选择内容易懂、带有大量MATLAB 实例和案例的教材;如果是深入学习和研究该领域的同学,可以选择更加专业和深入的教材。

信号与系统 MATLAB综合实验

信号与系统    MATLAB综合实验

信号与系统MATLAB综合实验一、实验目的:1、学习MATLAB语言的编程方法及熟悉MATLAB指令。

2、掌握连续时间信号的卷积运算方式,分析建立信号波形间的联系。

3、通过使用MATLAB函数研究线性时不变离散时间系统的时域特性,以加深对线性时不变离散时间系统的时不变性的理解。

二、实验仪器1、计算机2、MATLAB 软件三、实验原理一个离散时间系统是将输入序列变换成输出序列的一种运算。

若以T[•]表示这种运算,则一个离散时间系统可由图1-1来表示,即→∙→(1-1)x n T y n()[]()图1-1 离散时间系统离散时间系统中最重要的、最常用的是“线性时不变系统”。

时不变系统系统的运算关系T[•]在整个运算过程中不随时间(也不随序列的先后)而变化,这种系统称为时不变系统(或称移不变系统)。

这个性质可用以下关系表示:若输入)(ny,则将输入序列移动任意位后,其输出序列除了跟着x的输出为)(n移位外,数值应保持不变,即若)ynm[mT--(m为任意整数)=(xn(()]()][nT=,则)yxn满足以上关系的系统就称为时不变系统。

四、实验内容及结论1、连续时间系统的时域分析已知微分方程: )(2)(3)(2)(3)(t f t f t y t y t y +'=+'+'',1)0(-='-y , 2)0(=-y 若激励信号为)()(t u t f =,利用阶跃响应函数step(sys,t) 求解画波形;利用零状态响应函数lsim 求解画波形;利用卷积函数求解画波形;比较结果。

程序如下:dt=0.001;t1=0:dt:10;f1=-1*exp(-t1)+4*exp(-2*t1);t2=t1;f2=u(t2);f=conv(f1,f2);f=f*dt;t3=0:dt:20;subplot(311)plot(t3,f);xlabel('时间(t)');ylabel('y(t)');title('零状态响应(卷积法)');b=[3 2];a=[1 3 2];sys=tf(b,a);t=0:0.01:10;x=stepfun(t,0);y=lsim(sys,x,t);subplot(312)plot(t,y);xlabel('时间(t)');ylabel('y(t)');title('零状态响应(阶跃函数求法)');sys=tf(b,a);t=0:0.1:10;y=step(sys,t);subplot(313)plot(t,y);xlabel('时间t)');ylabel('y(t)');title('阶跃响应');结论:上述三种方法求得的都是输入为阶跃函数时候的零状态响应,也为阶跃响应,通过图形我们可以看出,利用卷积法求出的零状态和另外两种方法求出的零状态响应图形有一点差别,三者在0到10区间上响应都一致,而利用卷积法求的响应却在下面的区间内发生了变化,我试图修改程序,无论怎么改,发现只要调用了卷积函数,求得的图形就像上述的卷积法求的图形一样,不得解。

matlab信号与系统实验报告

matlab信号与系统实验报告

matlab信号与系统实验报告Matlab信号与系统实验报告引言:信号与系统是电子工程、通信工程等领域中的重要基础课程,对于理解和应用各种信号处理技术具有重要意义。

本实验报告旨在通过使用Matlab软件,对信号与系统的基本概念和实验进行探讨和分析。

实验一:信号的基本特性分析在信号与系统的研究中,我们首先需要了解信号的基本特性。

通过Matlab软件,我们可以方便地对不同类型的信号进行分析和处理。

在本实验中,我们选择了常见的正弦信号和方波信号进行分析。

首先,我们生成了一个频率为1kHz,幅度为2V的正弦信号,并绘制了其时域波形图和频谱图。

通过观察时域波形图,我们可以看到正弦信号具有周期性和连续性的特点。

而通过频谱图,我们可以看到正弦信号在频域上只有一个峰值,说明其是单频信号。

接下来,我们生成了一个频率为1kHz,幅度为2V,占空比为50%的方波信号,并绘制了其时域波形图和频谱图。

与正弦信号不同,方波信号具有分段常值的特点。

通过频谱图,我们可以看到方波信号在频域上存在多个谐波分量,说明其是由多个频率的正弦信号叠加而成。

实验二:系统的时域响应分析在信号与系统中,系统的时域响应是描述系统对输入信号进行处理的重要指标。

通过Matlab软件,我们可以方便地分析和绘制系统的时域响应。

在本实验中,我们选择了一个一阶低通滤波器作为系统,输入信号为一个频率为1kHz,幅度为2V的正弦信号。

通过绘制输入信号和输出信号的时域波形图,我们可以观察到系统对输入信号进行了滤波处理,输出信号的幅度和相位发生了变化。

此外,我们还可以通过改变系统的参数,如截止频率和阶数,来观察系统的时域响应的变化。

通过对比不同参数下的输出信号波形图,我们可以得出不同参数对系统响应的影响。

实验三:系统的频域响应分析除了时域响应,频域响应也是描述系统特性的重要指标。

通过Matlab软件,我们可以方便地进行系统的频域响应分析。

在本实验中,我们选择了一个二阶巴特沃斯低通滤波器作为系统,输入信号为一个频率为1kHz,幅度为2V的正弦信号。

基于MATLAB的信号与系统实验教程

基于MATLAB的信号与系统实验教程

基于MATLAB的信号与系统实验教程第一部分 MATLAB基础第1章 MATLAB环境1.1 MATLAB界面图1.1 MATLAB主界面图1.2 Workspace图1.3 MATLAB.m文件编辑窗口界面1.2 文件类型图1.4 设置路径图1.5 例1-1运行结果1.3 系统和程序控制指令1.4 练习第2章 数据类型与数学运算2.1 数值、变量和表达式2.1.1 数值的记述2.1.2 变量命名规则2.1.3 运算符和表达式2.2 数组、矩阵及其运算2.2.1 复数和复数矩阵2.2.2 数组和矩阵的运算2.2.3 特殊矩阵(Specialized matrices)2.3 关系和逻辑运算2.4 练习第3章 数值计算与符号计算3.1 线性代数与矩阵分析3.1.1 线性代数3.1.2 特征值分解3.1.3 奇异值分解3.1.4 矩阵函数3.2 线性方程组求解3.2.1 确定性线性方程组求解3.2.2 线性最小二乘问题的方程求解3.3 数据分析函数图3.1 例3-4运行结果3.4 符号计算图3.2 数值型与符号型数据转换关系3.5 练习第4章 绘图4.1 基本绘图指令4.1.1 plot的基本调用格式图4.1 例4-1运行结果4.1.2 stem: 离散数据绘制(火柴杆图)图4.2 例4-2运行结果4.1.3 polar: 极坐标图图4.3 例4-3运行结果4.2 各种图形标记、控制指令图4.4 例4-4运行结果4.2.1 图的创建与控制4.2.2 轴的产生与控制4.2.3 分格线(grid)、坐标框(box)、图保持(hold)4.2.4 图形标志4.3 其他常用绘图指令4.3.1 其他类型图的绘制图4.5 例4-5运行结果图4.6 例4-6运行结果简易绘图指令图4.7 例4-7运行结果4.4 练习第5章 SIMULINK5.1 SIMULINK的基本使用方法图5.1 Simulink Library Browser窗口图5.2 Pulse Generator模块的参数设置5.2 SIMULINK模型概念及基本模块介绍图5.4 SIMULINK模型的一般结构5.2.1 常用的sources——信号源模块5.2.2 常用的sinks——信号显示与输出模块图5.5 示波器纵坐标设置对话框图5.6 示波器属性对话框5.2.3 math operations——数学运算单元模块5.2.4 continuous——连续系统模块5.2.5 discrete——离散系统模块5.3 SIMULINK模型的仿真5.3.1 仿真参数设置图5.7 仿真设置对话框5.3.2 建立子系统图5.8 例5-2的SIMULINK模型图5.9 例5-2的子系统模型图5.10 例5-2仿真输出波形5.4 练习第6章 M函数和工具箱6.1 M函数6.2 工具箱图6.1 演示程序中的工具箱(Toolbox)使用帮助6.3 练习第7章 MATLAB实用技术遴选7.1 图形用户界面设计7.1.1 设计原则与设计步骤7.1.2 界面与控件介绍图7.1 标准菜单样式7.1.3 GUI实例分析。

信号与系统MATLAB实验-实验二 Matlab中信号的运算

信号与系统MATLAB实验-实验二 Matlab中信号的运算

1、运用funtool对f(x)=sin(x)/x分别进行信号的尺度变换f(2x)、f(0.5x)和信号的移位运算f(x+1)、f(x-1)操作以及f(0.5x+1),分别记录相应波形。

f(x)=sin(x)/x f(x+1)f(2x) f(x-1)f(0.5x) f(0.5x+1)2、已知两连续时间信号如下图所示,1)写出信号的函数表达式,并计算f(t)=f1(t)* f2(t)的解析表达式; 2)用MATLAB 求f(t)=f1(t)* f2(t),并绘出f(t)的时域波形图。

(设定取样时间间隔为dt )【实验思考】:通过不断改变dt 的取值并对比所得到的实验效果,观察当取样时间dt 为多大时,函数conv_cs()的计算结果就是连续时间卷积f(t)=f1(t)* f2(t)的较好近似结果?3、已知两连续时间信号如下图所示,1)写出信号的函数表达式,并计算f(t)=f1(t)* f2(t)的解析表达式;2)用MATLAB 求f(t)=f1(t)* f2(t),并绘出f(t)的时域波形图。

(设定取样时间间隔为dt)【实验思考】:不断改变dt的取值并对比实验效果,当取样时间dt为多大时,函数conv_cs()的计算结果就是连续时间卷积f(t)=f1(t)* f2(t)的较好近似结果?clear alldt = 0.01;t1 = -3:dt:3;f1 = 2*(u(t1+1) - u(t1-1));figure;stairs(t1,f1);hold allgrid ont2 = -3:dt:3;f2 = u(t2+2)-u(t2-2);stairs(t2,f2)[fn, tn] = conv_cs(f1, t1, f2, t2, dt);plot(tn, fn)grid onlegend('f1', 'f2', 'f1*f2')。

matlab常用函数(信号与系统)

matlab常用函数(信号与系统)

MATLAB 信号处理常用函数【一】、波形产生函数名功能sawtooth 产生锯齿波或三角波Sinc 产生sinc或函数sin(pi*t)/(pi*t)Square 产生方波Diric 产生Dirichlet或周期sinc函数【二】、滤波器分析和实现函数名功能Abs 求绝对值(幅值)Freqs 模拟滤波器频率响应Angle 求相角Freqspace 频率响应中的频率间隔Conv 求卷积Freqz 数字滤波器频率响应Fftfilt 重叠相加法FFT滤波器实现Grpdelay 平均滤波器延迟(群延迟)Filter 直接滤波器实现Impz 数字滤波器的冲激响应Filtfilt 零相位数字滤波Zplane 离散系统零极点图Filtie Filter 函数初始条件选择【三】、线性系统变换函数名功能Convmtx 卷积矩阵Ss2tf 变系统状态空间形式为传递函数形式Ploy2rc 从多项式系数中计算反射系数Ss2zp 变系统状态空间形式为零极点增益形式Rc2ploy 从反射系数中计算多项式系数Tf2ss 变系统传递函数形式为状态空间形式Residuez Z变换部分分式展开或留数计算Tf2zp 变系统传递函数形式为零极点增益形式Sos2ss 变系统二阶分割形式为状态空间形式Zp2sos 变系统零极点形式为二阶分割形式Sos2zp 变系统二阶分割形式为零极点增益形式Zp2tf 变系统零极点增益形式为传递函数形式Ss2sos 变系统状态空间形式为二阶分割形式【四】、IIR滤波器设计Besself Bessel(贝塞尔)模拟滤波器设计Cheby2 Chebyshev(切比雪夫)II型模拟滤波器设计Butter Butterworth(巴特沃思)模拟滤波器设计Ellip 椭圆模拟滤波器设计Cheby1 Chebyshev(切比雪夫)I 型模拟滤波器设计Yulewalk 递归数字滤波器设计【五】、IIR滤波器阶选择Buttord Butterworth(巴特沃思)滤波器阶的选择Cheb2ord Chebyshev(切比雪夫)II型滤波器阶的选择Ehebord Chebyshev(切比雪夫)I 型滤波器阶的选择Clipord 椭圆滤波器设计阶的选择模拟原型滤波器设计Besselap Bessel模拟低通滤波器原型Cheb2ap Chebyshev(切比雪夫)II型低通滤波器原型Buttap Butterworth(巴特沃思)模拟低通滤波器原型Ellipap 椭圆模拟低通滤波器原型Cheb1ap Chebyshev(切比雪夫)I 型低通滤波器原型【六】、频率变换Lp2bp 低通到带通模拟滤波器转换Lp2bs 低通到带阻模拟滤波器变换Lp2hp 低通到高通模拟滤波器变换Lp2lp 低通到低通模拟滤波器转换【七】、滤波器离散化Blinear 双线性变换Impinvar 冲激响应不变法【八】、FIR滤波器设计Fir1 基于窗函数的FIR 滤波器设计—标准响应Intfilt 内插FIR滤波器设计Fir2 基于窗函数的FIR 滤波器设计—任意响应RemezFirls 最小二乘FIR滤波器设计Remezord Parks-McCellan 最优FIR 滤波器j阶估计【九】、窗函数Boxcar 矩形窗Hanning Hanning(汉宁)窗Triang 三角窗Blackman Blackman(布莱克曼)窗Bartlett Bartlett(巴特得特)窗Chebwin Chebyshev(切比雪夫)窗Hamming Hamming(汉明)窗Kaiser Kaiser(凯泽)窗【十】、变换Ctz 线性调频Z变换Fft 一维快速傅里叶变换Dct 离散余弦变换Ifft 一维快速傅里叶逆变换Idct 逆离散余弦变换Fftshift 重新排列fft的输出Dftmtx 离散傅里叶变换矩阵Hilbert Hilbert(希尔伯特)变换【十一】、统计信号处理Cov 协方差矩阵Psd 信号功率谱密度(PSD)估计Xcov 互协方差函数估计Tfe 从输入输出中估计传递函数Corrcoef 相关系数矩阵Periodogram 采用周期图法估计功率谱密度Xcoor 互相关系数估计Pwelch 采用Welch方法估计功率谱密度Cohere 相关函数平方幅值估计Rand 生成均匀分布的随机数Csd 互谱密度估计Randn 生成正态分布的随机数【十二】、自适应滤波器部分Adaptfilt.lms 最小均方(LMS)自适应算法Adaptfilt.rls 递推最小二乘(RLS)自适应算法Adaptfilt.nlms 归一化最小均方(NLMS)自适应算法【十三】、时频分析与小波变换部分Spectrogram 短时傅里叶变换Idwt 单级离散一维小波逆变换Waveinfo 介绍小波工具箱中所有小波的信息Wavedec 多级离散一维小波分解Cwt 连续一维小波变换Appcoef 一维小波变换近似系数Dwt 单级离散一维小波变换Detcoef 一维小波变换细节系数【十四】、二维信号处理Conv2 二维卷积Xcorr2 二维互相关参数Fft2 二维快读傅里叶变换Dwt2 单级离散二维小波变换Ifft2 二维逆快速傅里叶变换Idwt2 单级离散二维小波逆变换Filter2 二维数字滤波器Waverec2 多级离散二维小波分解。

信号与系统MATLAB仿真——信号及其运算

信号与系统MATLAB仿真——信号及其运算

信号与系统MATLAB仿真——信号及其运算1. 知识回顾(1)信号的分类:确定信号与随机信号;周期信号与⾮周期信号;周期信号在时间上必须是⽆始⽆终的f(t)=f(t+T)f[k]=f[k+N]连续时间信号和离散时间信号;连续信号是指在信号的定义域内,除若⼲个第⼀类间断点外,对于任意时刻都由确定的函数值的信号离散信号是指在信号的定义域内,只在某些不连续规定的时刻给出函数值,⽽在其他时刻没有给出函数的信号能量信号、功率信号与⾮功率⾮能量信号;时限与频限信号;物理可实现信号。

(2)信号能量:E=limT→∞∫T−T f2(t)dtP=limT→∞12T∫T−Tf2(t)dtE=limN→∞N∑k=−N|f[k]|2P=limN→∞12N+1N∑k=−N|f[k]|2能量信号:0<E<∞,P=0;功率信号:0<P<∞,E=∞。

(3)冲激函数的性质加权特性(筛选特性):f(t)δ(t−t0)=f(t0)δ(t−t0)取样特性:∫+∞−∞f(t)δ(t−t0)=f(t0)偶函数:f(t)=f(−t)展缩特性:δ(at)=1|a|δ(t)δ(at−t0)=1|a|δ(t−t0a)导数及其特性。

(4)正弦两个频率相同的正弦信号相加,即使其振幅和相位各不相同,但相加后结果仍是原频率的正弦信号;若⼀个正弦信号的频率是另⼀个正弦信号频率的整数倍时,则合成信号是⼀个⾮正弦周期信号,其周期等于基波的周期。

正弦型序列:f[k]=A sin(Ω0k+φ)2π/Ω0是正整数:周期序列,周期为N;2π/Ω0为有理数,2π/Ω0=N/m:周期序列,周期N=m(2π/Ω0);2π/Ω0为⽆理数:⾮周期序列,但包络仍为正弦函数。

(5)抽样信号Sa(t)=sin t t偶函数;Sa(0)=1;t=kπ为其零点;∫+∞−∞Sa(t)dt=π;limt→±∞Sa(t)=0。

(6)信号的分解分解为直流分量与交流分量;奇偶分解;分解为实部和虚部;分解为基本信号的有限项之和;因⼦分解;连续信号分解为矩形脉冲序列;正交分解。

matlab应用(信号与系统)课件

matlab应用(信号与系统)课件
y(n) x(n)
代码: y=fliplr(x)
5)累加求和
n2
y(n) x(n)
n n1
代码: y=sum(x(n1:n2));
6)信号能量和功率
Ex | x(n) |2
n
Px
1
N 1
| x(n) |2
N n0
代码: Ex=sum(abs(x).^2)); Px= sum(abs(x).^2))/N;
x=sin(2*pi*t);
序列的运算
1)信号加 x(n) x1(n) x2(n)
代码: x=x1+x2;
x1和x2长度相同,位置对应才能相加,否则应作处理。如:
function [y,n]=sigadd(x1,n1,x2,n2)
n_min=min(min(n1),min(n2));
n_max=max(max(n1),max(n2));
n=n_min:n_max;
y1=zeros(1,length(n)); y2=y1;
y1(find((n>=min(n1))&(n<=max(n1))==1))=x1;
y2(find((n>=min(n2))&(n<=max(n2))==1))=x2;
y=y1+y2;
例如 n1=-2:1; x1=1:4; n2=-1:2; x2=1:4;
解:首先用解析的方法求出信号的离散傅里叶变换为
X (e jw )
x(n)e jwn
e jw e jw 0.5
再画出相应的图形,代码如下:
w=[0:1:500]*pi/500; X=exp(j*w)./(exp(j*w)-0.5); magX=abs(X); angX=angle(X); realX=real(X); imagX=imag(X) ; subplot(2,2,1);plot(w/pi,magX);grid xlabel('freqency in pi units');ylabel('Magnitude'); subplot(2,2,3);plot(w/pi,angX);grid xlabel('freqency in pi units');ylabel('Angle') subplot(2,2,2);plot(w/pi,realX);grid xlabel('freqency in pi units');ylabel('Real') subplot(2,2,4);plot(w/pi,imagX);grid xlabel('freqency in pi units');ylabel('Image')

《信号与系统》MATLAB仿真实验讲义

《信号与系统》MATLAB仿真实验讲义

《信号与系统》MATLAB仿真实验讲义(第二版)肖尚辉编写宜宾学院电信系电子信息教研室《信号与系统》课程2004年3月 宜宾使用对象:电子专业02级3/4班(本科)实验一 产生信号波形的仿真实验一、实验目的:熟悉MATLAB软件的使用,并学会信号的表示和以及用MATLAB来产生信号并实现信号的可视化。

二、实验时数:3学时+3学时(即两次实验内容)三、实验内容:信号按照自变量的取值是否连续可分为连续时间信号和离散时间信号。

对信号进行时域分析,首先需要将信号随时间变化的规律用二维曲线表示出来。

对于简单信号可以通过手工绘制其波形,但对于复杂的信号,手工绘制信号波形显得十分困难,且难以绘制精确的曲线。

在MATLAB中通常用三种方法来产生并表示信号,即(1)用MATLAB软件的funtool符合计算方法(图示化函数计算器)来产生并表示信号;(2)用MATLAB软件的信号处理工具箱(Signal Processing Toolbox)来产生并表示信号;(3)用MATLAB软件的仿真工具箱Simulink中的信号源模块。

(一) 用MATLAB软件的funtool符合计算方法(图示化函数计算器)来产生并表示信号在MATLAB环境下输入指令funtool,则回产生三个视窗。

即figure No.1:可轮流激活,显示figure No.3的计算结果。

figure No.2:可轮流激活,显示figure No.3的计算结果。

figure No.3:函数运算器,其功能有:f,g可输入函数表达式;x是自变量,在缺省时在[-2pi,2pi]的范围内;自由参数是a;在分别输入完毕后,按下面四排的任一运算操作键,则可在figure No.1或figure No.2产生相应的波形。

学生实验内容:产生以下信号波形3sin(x)、5exp(-x)、sin(x)/x、1-2abs(x)/a、sqrt(a*x)(二) 用MATLAB软件的信号处理工具箱(Signal Processing Toolbox)来产生并表示信号一种是用向量来表示信号,另一种则是用符合运算的方法来表示信号。

《信号与系统》课程的MATLAB仿真——从一道例题展开

《信号与系统》课程的MATLAB仿真——从一道例题展开

1 带通滤波系统的MATLAB仿真
清华大学郑君里教授主编的教材《信号 与系统》(第三版,高等教育出版社)的上册第
301页有一道关于调幅信号作用于带通系统的 例题,题干如下(略作改动):
已知带通滤波器转移函数为
V.(s)
2s
日炉顾=/ + 2s+ 10001,激励信号为
x(0=(1+cosZ)cos( 100?),求稳态响应 y(t). 上述例题中激励信号是一种典型的调幅信
°° ....... \
Pole-Zero Diagram
^":
S
.............. T\-
频谱是《信号与系统》课程中极为重要的 概念,时域信号与频谱之间通过傅里叶变换联 系-频谱分析的目的是把复杂的时间历程波形, 经过傅里叶分析分解为诸多谐波分量来研究, 以获取动态信号中的各个频率成分幅度和相位 分布,从而得到主要幅度和能量分布的频率值, 完成对信号信息的定量解释-激励信号可以写 成x(/)=cos(100t)+0.5cos(101/)+0.5cos(9/),基于 MATLAB程序的时域波形及其频谱图如下: %%信号波形
从图1可以看出输入信号的包络线按照 1+cos/变化,变化周期为2it,最大振幅为2, 对应的位置点为2n“处.频谱图中采样频率 Z=100Hz,奈奎斯特频率为//2=50Hz,谱图对奈 奎斯特频率呈现对称性,频谱的峰值在16Hz左 右,对应于原信号中角频率为lOOras/s (线频率
陈昌兆:《信号与系统》课程的MATLAB仿真
第40卷第3期 2021 年 5 月
曲靖师范学院学报 JOURNAL OF QUJING NORMAL UNIVERSITY

信号与系统实验(MATLAB 西电版)实验2 常用离散时间

信号与系统实验(MATLAB 西电版)实验2  常用离散时间

实验2 常用离散时间信号的实现 图 2.3 数值法生成的单位阶跃序列
实验2 常用离散时间信号的实现
4) MATLAB
clf; c=-(1/12)+(pi/6)*i; K=2; n=0:40; x=K*exp(c*n); subplot(2,1,1);
实验2 常用离散时间信号的实现
stem(n,real(x)); ylabel(′幅值f(k)′); title(′实部′); subplot(2,1,2); stem(n,imag(x)); xlabel(′时间(k)′); ylabel(′幅值f(k)′); title(′虚部′); 用数值法生成的复指数序列如图2.4
实验2 常用离散时间信号的实现 图 2.6 数值法生成的正弦序列
实验2 常用离散时间信号的实现
7) 单位斜坡序列 MATLAB
clf; k1=-1; k2=20; k0=0; n=[k1:k2]; if k0>=k2 x=zeros(1,length(n)); elseif (k0<k2)&(k0>k1)
实验2 常用离散时间信号的实现 图 2.10 数值法生成的幅值调制序列
实验2 常用离散时间信号的实现
11) MATLAB clf; R=51; d=0.8*(rand(1,R)-0.5); % m=0:R-1; s=2*m.*(0.9.^m); % x=s+d; %
实验2 常用离散时间信号的实现
实验2 常用离散时间信号的实现 图 2.8 数值法生成的随机序列
实验2 常用离散时间信号的实现
9) 扫频正弦序列 MATLAB
n=0:100; a=pi/2/100; b=0; arg=a*n.*n + b*n; x=cos(arg); clf; stem(n,x); axis([0,100,-1.5,1.5]); grid; axis; title(′扫频正弦序列′) xlabel(′k′); ylabel(′f(k)′); 用数值法生成的扫频正弦序列如图2.9

信号与系统matlab实验线性时不变系统的时域分析(最新整理)

信号与系统matlab实验线性时不变系统的时域分析(最新整理)

答案
1. x n hn u n u n 4 ;
nx=0:9;x=ones(1,length(nx)); nh=0:4;h=ones(1,length(nh)); y=conv(x,h); % 下限=下限1+下限2 ny_min=min(nx)+min(nh); % 上限=上限1+上限2 ny_max=max(nx)+max(nh); ny=ny_min:ny_max; subplot(3,1,1);stem(nx,x); xlabel('n');ylabel('x(n)');axis([ny_min ny_max 0 max(x)]); subplot(3,1,2);stem(nh,h); xlabel('n');ylabel('h(n)');axis([ny_min ny_max 0 max(h)]); subplot(3,1,3);stem(ny,y); xlabel('n');ylabel('x(n)*h(n)');axis([ny_min ny_max 0 max(y)]);
到连续卷积的数值近似,具体算法如下:
y=conv(x,h)*dt
% dt 为近似矩形脉冲的宽度即抽样间隔
例 2-2:采用不同的抽样间隔 值,用分段常数函数近似 x t u t u t 1 与
h t sin t u t u t π 的 卷 积 , 并 与 卷 积 的 解 析 表 达 式
x(t)
h(t)
1 0.5
0 0 0.5 1 1.5 2 2.5 3 3.5 t
1 0.5
0 0 0.5 1 1.5 2 2.5 3 3.5 t

毕业设计(论文)—基于matlab的信号与系统实验仿真系统的设计-连续信号分析模块[管理资料]

毕业设计(论文)—基于matlab的信号与系统实验仿真系统的设计-连续信号分析模块[管理资料]

基于MATLAB的信号与系统实验仿真系统设计-连续信号分析模块[摘要]本文利用MATLAB可视化编程语言开发了一套“信号与系统”实验仿真系统,对实验系统的开发背景、开发平台软件作了简要介绍。

该系统界面友好,操作简单,参数设置方便,输出结果准确直观,为“信号与系统”实验提供了一种新的实现手段。

软件虚拟实验必将成为该课程实验教学的发展方向。

信号与系统是电子信息类专业的专业基础课程,由于信号与系统是一门很抽象,理论和实践结合较紧密的学科,因此实验教学在课程教学中占有十分重要的地位,本文基于MATLAB设计并实现了一套信号与系统试验系统。

引言《信号与系统》课程是一门实用性较强、涉及面较广的专业基础课,是高等学校电子信息、计算机技术、自动控制等专业的一门重要的必修基础课,在许多学校都被列为重点课程,具有十分重要的地位和作用。

该课程是将学生从电路分析的知识领域引入信号处理与传输领域的关键性课程,对后续专业课起着承上启下的作用。

该课程的基本方法和理论大量应用于计算机信息处理的各个领域,特别是在通信、数字语音处理、数字图像处理、数字信号分析领域的应用更为广泛。

因此,让学生掌握对信号与系统进行分析的基本方法和理论,无论是今后专业课的教学,还是学生毕业后从事专业工作的能力,都具有重要的意义。

在目前的教学工作中,《信号与系统》的教学主要是考虑课堂上重点讲授基本理论知识要点,但是《信号与系统》是一门以数学推导为核心的理论性很强的学科,其概念比较抽象,数学计算又比较繁琐并且较少开设实验。

长期以来《信号与系统》一直采用“教师——黑板——学生”的单一教学模式,学生仅依靠做课后习题来巩固和理解教学内容,对课程中大量的应用性较强的内容不能实际动手设计、调试、分析,使学生的课后实践受到相当大的限制,严重影响和制约了教学效果。

为了帮助学生理解与掌握课程中的基本概念、基本原理、基本分析方法以及培养学生综合应用所学知识解决实际问题的能力,特引入功能强大的Matlab仿真语言,在此基础上设计了基于Matlab软件平台仿真环境的课程实验系统。

信号与系统MATLAB实验全

信号与系统MATLAB实验全

实验篇 信号与系统实验指导实验一、MATLAB 编程基础及典型实例一、实验目的(1) 熟悉MATLAB 软件平台的使用; (2) 熟悉MATLAB 编程方法及常用语句; (3) 掌握MATLAB 的可视化绘图技术;(4) 结合《信号与系统》的特点,编程实现常用信号及其运算。

二、实验原理连续信号是指自变量的取值范围是连续的,且对于一切自变量的取值,除了有若干个不连续点以外,信号都有确定的值与之对应。

严格来说,MATLAB 并不能处理连续信号,而是用等时间间隔点的样值来近似表示连续信号。

当取样时间间隔足够小时,这些离散的样值就能较好地近似连续信号。

矩阵是MATLAB 进行数据处理的基本单元,矩阵运算是MATLAB 最重要的运算。

通常意义上的数量(也称为标量)在MATLAB 系统中是作为1×1的矩阵来处理的,而向量实际上是仅有一行或者一列的矩阵。

通常用向量表示信号的时间取值范围,如n = -5:5,但信号x(n)、向量n 本身的下标都是从1开始的,因此必须用一个与向量x 等长的定位时间变量n ,以及向量x ,才能完整地表示序列x(n)。

这一点详情可参考预备篇示例7的程序说明。

三、实验内容与步骤(1) 新建一个文件夹,以自己的汉语名字命名,以后就用该文件夹专门存放自己所编制的M 文件和产生的图形;将该文件夹设置成当前工作目录。

(2) 绘制信号t)32sin(e x(t)t 2-=的曲线,t 的范围在0 ~ 30s ,取样时间间隔为0.1s.(3) 在n = [-10:10] 范围产生离散序列:⎩⎨⎧≤≤-=其余n0,3n 32n,x(n) ,并绘图。

四、实验报告要求整理并给出“实验内容与步骤”(2)、(3)的程序代码与产生的图形;并回答下面的问题。

(1) 在调用某一函数文件时,该文件中除了输入、输出变量外的其它变量在调用函数结束后是否还存在?这些变量是全局还是局部变量?(2) 设n = -10:0.2:20,你可以通过哪些方法查看向量n 的维数?经过关系运算y = (n >= 3)以后,y 的维数是多少?y 又等于什么?(3) 通过MATLAB 的帮助系统,学习fliplr 函数的功能和使用方法。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
信号的MATLAB表示
基本信号的MATLAB表示
指数信号Aeat 、指数序列ak 、抽样函数Sa(t)、
正弦型信号、矩形脉冲信号、三角脉冲信号
信号基本运算的MATLAB实现
尺度变换、翻转、时移、 相加、相乘、 差分与求和、微分与积分
精品课件
一、基本信号的MATLAB表示
➢ 指数信号Aeat
y = A*exp(a*t);
-50 -40 -30 -20 -10
0
10 20 30 40 50
%产生 f[k]=u(k-k0);k1<=k<=k2
k=[k1:k2];f=[(k-k0)>=0];
k0=0;k1=-50;k2=50;
[f,k]=stepseq(k0,k1,k2);
stem(k,f) 精品课件
二、信号基本运算的MATLAB实现
plot(t,ft1) 精品课件
二、信号基本运算的MATLAB实现
3. 离散序列的差分与求和
➢ 差分
y=diff(f );
y = [f(2)-f(1) f(3)-f(2) ... f(m)-f(m-1)]
➢ 求和
y=sum(f(k1:k2));
y = f(k1)+f(k1+1)+..+f(k2)
连续信号的微分与积分
stem(k,f) 精品课件
一、基本信号的MATLAB表示
% unit step sequence
1
0.9
k=-50:50;
0.8
0.7
uk=[zeros(1,50), ones(1,51)]; 0.6
stem(k,uk)
0.5 0.4
0.3
0.2
0.1
function [f,k]=stepseq(k0,k1,k2) 0
0.3
0.2
0.1
function [f,k]=impseq(k0,k1,k2) 0
-50 -40 -30 -20 -10
0
10 20 30 40 50
%产生 f[k]=delta(k-k0);k1<=k<=k2
k=[k1:k2];f=[(k-k0)==0];
k0=0;k1=-50;k2=50;
[f,k]=impseq(k0,k1,k2);
1
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
0
1
2
3
4
5
6
7
8
9
10
一、基本信号的MATLAB表示
% rectpuls
t=0:0.001:4; T=1; ft=rectpuls(t-2*T,T); plot(t,ft) axis([0,4,-0.5,1.5])
1.5
1
0.5
0
-0.5
✓ 相加用算术运算符“+”实现 0.6
0.4
✓ 相乘用数组运算符“.*”实现 0.2
0
例:画信号Aeatcos(w0t+f)的波形
-0.2 -0.4
t=0:0.001:8;
-0.6
A=1; a=-0.4;
-0.8
0
1
2
3
4
5
6
7
8
w0=2*pi;phi=0;
ft1=A*exp(a*t).*sin(w0*t+phi);
精品课件
x(t) 1
x(2t) 1
0.8
0.8
0.6
0.6
0.4
0.4
0.2
0.2
0
-4
-2
0
2
4
0
-4
-2
0
2
4
x(-t) 1
x(t+1) 1
0.8
0.8
0.6
0.6
0.4
0.4
0.2
0.2
0
0
-4
-2
0
2
精4品课件
-4
-2
0
2
4
二、信号基本运算的MATLAB实现
2. 信号的相加与相乘
1
0.8
➢ 指数序列ak
幂运算a.^k实现
➢ 正弦型信号
内部函数cos( ) 和sin( )
➢ 抽样函数Sa(t)
sinc(t)
➢ 矩形脉冲信号 y = rectpuls(t,width)
➢ 三角波脉冲信号 y = tripuls(t,width,skew) %skew:斜

精品课件
一、基本信号的MATLAB表示
➢ 微分 y=diff(f)/h; h为数值计算所取时间间隔 ➢ 定积分 integral(function_handle,a,b); function_handle被积函数句柄,a和b定积分区间。
精品课件
二、信号基本运算的MATLAB实现
例:已知三角波x(t),画出其微分与积分的波

% 原始信号 h=0.01; t=-4:h:4; ft=tripuls(t,4,0.5); subplot(2,1,1);plot(t,ft); title('x(t)');grid on
1
2
3
1
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
-3
-2
-1
0
1
2
3
一、基本信号的MATLAB表示
% unit impuls sequence
1 0.9
k=-50:50;
0.8 0.7
delta=[zeros(1,50),1,zeros(1,50)00]..56;
0.4
stem(k,delta)
%decaying exponential 1 0.9
t=0:001:10;Biblioteka 0.80.7A=1;
0.6
0.5
a=-0.4;
0.4
0.3
ft=A*exp(a*t);
0.2
0.1
plot(t,ft)
0
0
1
2
3
4
5
6
7
8
9
10
t=0:0.1:10; A=1; a=-0.4; ft=A*exp(a*t); stem(t,f精t品)课件
1. 信号的尺度变换、翻转、时移(平移)
t=-4:0.001:4; ft=tripuls(t,4,0.5); % 原始信号 subplot(2,2,1); plot(t,ft); title('x(t)') ft1=tripuls(2*t,4,0.5); % 压缩 subplot(2,2,2); plot(t,ft1); title('x(2t)') ft2=tripuls(-t,4,0.5); % 翻转 subplot(2,2,3); plot(t,ft2); title('x(-t)') ft3=tripuls(t+1,4,0.5); % 平移 subplot(2,2,4); plot(t,ft3); title('x(t+1)')
for x=1:length(t) % 积分
y2(x)=integral(@(t)
tripuls(t,4,0.5),t(1),t(x));
0
0.5
1
1.5
2
2.5
3
3.5
4
精品课件
一、基本信号的MATLAB表示
% tripuls t=-3:0.001:3; ft=tripuls(t,4,0.5); plot(t,ft)
ft=tripuls(t,4,1);
精品课件
1
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
-3
-2
-1
0
相关文档
最新文档