MATLAB连续LTI系统的时域分析(十)

这篇具有很好参考价值的文章主要介绍了MATLAB连续LTI系统的时域分析(十)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

1、实验目的:

2、实验内容:


1、实验目的:

1)掌握利用MATLAB对系统进行时域分析的方法

2)掌握连续时间系统零输入响应的求解方法

3)掌握连续时间系统零状态响应、冲激响应和阶跃响应的求解方法

4)掌握利用计算机进行卷积积分和卷积和计算的方法

2、实验内容:

2-1)、已知某系统可以由如下微分方程描述y′′(t)+ y′(t)+6y(t)=x(t)利用MATLAB绘出该系统冲激响应和阶跃响应的时域波形。(注:题中时域范围可取[0 10],参考函数tfimpulsestep

a = [1 1 6]; b = [1];      %微分方程左右两端多项式的系数矩阵
time = 0:0.01:10;          %时域范围[0 10]
sys = tf(b,a);
y1 = impulse(sys,time);    %系统的冲激响应
y2 = step(sys,time);       %系统的阶跃响应
subplot(1,2,1), plot(time,y1), xlabel('时间t'), title('冲激响应');
subplot(1,2,2), plot(time,y2), xlabel('时间t'), title('阶跃响应');

2-2)、编程实现如下图所示的两个波形的卷积,并绘制出卷积后的波形。(要求:先构建两信号卷积函数,而后通过调用该函数实现做题) 

MATLAB连续LTI系统的时域分析(十)

编写的卷积函数

function [t,x] = sss_conv(x1,x2,t1,t2,dt)
%文件名与函数名对应
%自写的卷积函数
x = conv(x1,x2)*dt;
t0 = t1(1) + t2(1);
L = length(x1) + length(x2)-2;
t = t0:dt:(t0+L*dt);
end

功能实现

dt = 0.01;
x1 = -1 : dt : 1; 
f1t = 2*(heaviside(x1+1) - heaviside(x1-1));
% plot(x1,f1t);
x2 = -2 : dt : 2; 
f2t = heaviside(x2+2) - heaviside(x2-2);
% plot(x2,f2t);
[t, f] = My_conv(f1t, f2t, x1, x2, dt);    %调用卷积函数
plot(t, f); 
axis([-4 4 -1 5]);

2-3)、已知系统的微分方程为:,x(t)为e-tu(t),用数值法求零状态响应y(t)并绘图。(注:题中时域范围可取[0 10]

MATLAB连续LTI系统的时域分析(十)

a = [1 4 4]; b = [1 3]; dt = 0.1; t = 0:dt:10; % 微分方程左侧系数向量a,微分方程右侧系数向量b
[r,p] = residue(b,a); % 用residue函数(参见12.1.2节)求出其特征根p1、p2和相应的留数r1、r2

h = r(1)*exp(p(1)*t)+r(2)*exp(p(2)*t);  %叠加各根分量
subplot(1,2,1), plot(t,h), title('冲激响应');
x = exp(-t);    % t已经大于0了
y = conv(x,h)*dt;   % 求x和h的卷积,长度为2*length(t)-1
subplot(1,2,2), plot(t,y(1:length(t))), title('零状态响应');

2-4)、分别用数值法和符号法求齐次微分方程在给定初始条件下的零输入响应波形,y′′(t)+2y(t)=0,y(0_)=3,y′(0_)=4。(注:题中时域范围可取[0 10],以实现方法作为图形标题名称)

% (1)数值法
a = [1 0 2];            % 方程左端系数向量
n=length(a)-1;          % 微分方程的阶数(即根的数量)
Y0 = [3 4];             % 初始条件向量
p=roots(a);		        % 求特征方程的根
V=rot90(vander(p));     % 生成范德蒙特矩阵
C= V\Y0';	            % 求对应于各特征根的系数   左除
dt = 0.1; tf = 10;      % 时域取值范围[0 10]
t = 0:dt:tf;            % 时域取值范围[0 10]
y = zeros(1,length(t));
for k=1:n  y = y + C(k)*exp(p(k)*t); end       % 将各分量叠加,得到零输入响应的通式
subplot(121);
plot(t, y), xlabel('t'), ylabel('real(y)');    %零输入响应的实部随时间变化的趋势
title('数值法');

% 符号法
eq='D2y+2*y=0'; con='y(0)=3, Dy(0)=4';
y = dsolve(eq, con); y=simplify(y);
subplot(122);
ezplot(y, t);       %一定要加参数t,限制时间的范围,保证波形正确
axis([0 10 -5 5]);  % 限制xy轴范围
title('符号法'); 

2-5)、求系统,y′(0+)=-1;y(0+)=0的全响应。(注:题中时域范围可取[0 10],参考函数tf2sslsim

MATLAB连续LTI系统的时域分析(十)

clear
b = [1]; a = [1 0 1];
t = 0:0.1:10; x = cos(t);
sys1 = tf(b,a);      %系统函数模型
y1 = lsim(sys1,x,t); %零状态响应
% subplot(1,2,1),plot(t,y1);
xlabel('时间');title('零状态响应');
[A B C D] = tf2ss(b,a); %系统函数模型转化成状态空间模型参数
sys2 = ss(A,B,C,D) ;zi = [-1 0]; %产生状态空间模型和初始状态矩阵
y2 = lsim(sys2,x,t,zi);          %全响应
% subplot(1,2,2);
plot(t,y2);
xlabel('时间t');title('全响应');

MATLAB连续LTI系统的时域分析(十)文章来源地址https://www.toymoban.com/news/detail-427947.html

到了这里,关于MATLAB连续LTI系统的时域分析(十)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 新手入门matlab之线性系统的时域分析

    ##  matlab是一个基于矩阵运算的数学软件,又称矩阵实验室,所以里面的所有东西都是以矩阵的形式来进行运算的  ## ##   首先我们先介绍一下构建传递函数的基本格式,以及一些函数的用法 ## 一.首先打开matlab,直接在命令行窗口新建对应闭环传递函数的矩阵    ***上面是

    2024年02月06日
    浏览(35)
  • MATLAB连续时间信号的实现和时域基本运算(八)更新中...

    1)熟悉常用连续时间信号的实现方法; 2)掌握连续时间信号的时域基本运算; 3)掌握实现基本函数及其运算的函数的使用方法; 4)加深对信号基本运算的理解。 2-1)、利用 数值法 编程实现 冲激信号δ(t-2)和阶跃信号u(t-1) ,并绘制两者的波形。(注:t取值范围[-1, 4])

    2023年04月26日
    浏览(49)
  • 实验三 连续时间系统的频域与复频域分析

    浙江理工大学信号与系统实验报告 实验三 连续时间系统的频域与复频域分析 一、实验目的 1.学习连续时间系统的傅里叶变换、拉普拉斯变换; 2.运用 MATLAB 进行连续时间系统的频域分析; 3.运用 MATLAB 进行连续时间系统的复频域分析。 二、实验仪器 装有MATLAB软件的微型

    2024年02月07日
    浏览(28)
  • 【具有非线性反馈的LTI系统识别】针对反馈非线性的LTI系统,提供非线性辨识方案(Simulink&Matlab代码实现)

     💥💥💞💞 欢迎来到本博客 ❤️❤️💥💥 🏆博主优势: 🌞🌞🌞 博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️ 座右铭: 行百里者,半于九十。 📋📋📋 本文目录如下: 🎁🎁🎁 目录 💥1 概述 📚2 运行结果 🎉3 参考文献 🌈4 Matlab代码、Simulink仿真

    2024年02月14日
    浏览(41)
  • matlab数字信号处理实验(5)时域采样与频域采样

    一、实验目的 1、理解时域采样理论与频域采样理论; 2、掌握模拟信号采样前后频谱的变化,以及如何选择采样频率才能使采样后的信号 不丢失信息; 3、掌握频率域采样会引起时域周期化的原因,频率域采样定理及其对频域采样点数 选择的指导作用; 4、对信号在某个表示

    2024年02月07日
    浏览(33)
  • MATLAB-自动控制原理-时域分析

    目录 step函数(求阶跃响应): impulse函数(求脉冲响应): lsim函数(求输出): 1,求二阶系统不同阻尼比条件下的阶跃响应曲线 2,求二阶负反馈系统的动态性能指标  利用MATLAB可以方便地进行控制系统的时域分析。洋相判断系统的稳定性,只要求出系统的闭环极点,即闭环传

    2024年02月04日
    浏览(26)
  • 【自控笔记】线性系统时域分析法

    二阶系统单位阶跃

    2024年04月11日
    浏览(31)
  • 数字信号处理实验---LSI系统的分析 Matlab代码

    1.试用Matlab计算其幅频特性和相频特性,并绘图。 代码: n = 0:10; %定义采样点n w = [0:1:500]*2*pi/500; % [0,pi]轴被分成1002个点 x1 = power(0.9*exp(1i*pi/3),n); %定义输入序列 x2 = exp(-1i*n); %定义一个系统的冲激响应 x = zeros(1,length(w)); %定义空数组存储系统的频域响应 for i=1:length(x1)     x=x

    2024年01月15日
    浏览(35)
  • 【控制工程基础】四、系统的动态性能指标与时域分析

    本节内容可参考这篇 自动控制原理笔记三(线性系统的时域分析)_派大星先生c的博客-CSDN博客_过阻尼,欠阻尼 csdn 定义如上,定义倒不用死记硬背,因为让你算的时候都不是从定义来算的。  延迟时间td,上升时间tr,峰值时间tp,超调量σ(也有写成P.O.的),调节时间ts 可以

    2024年02月08日
    浏览(36)
  • 实验一 基于MATLAB语言的线性离散系统的Z变换分析法

    实验一 基于MATLAB语言的线性离散系统的Z变换分析法 一、实验目的 1. 学习并掌握 Matlab 语言离散时间系统模型建立方法; 2 .学习离散传递函数的留数分析与编程实现的方法; 3 .学习并掌握脉冲和阶跃响应的编程方法; 4 .理解与分析离散传递函数不同极点的时间响应特点

    2024年02月08日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包