7.1 零输入响应

1、[调用格式] initial (sys,x0) initial (sys,x0,t)

initial (sys1,sys2….sysn,x0) initial (sys1,sys2….sysn,x0,t)

initial (sys1,’plotstyle1’,sys2, ’plotstyle2’,….,x0)

[y t x]=initial(sys,x0)

Sys—输入系统 x0—初始状态下状态变量

t—采样时间矢量 plotstyle—绘制零输入响应曲线的特性

[y t x]—表示输出矢量 采用时间 状态变量

重要提示:initial命令适用于状态方程模型sys

2、例:根据传递函数求解单一系统的零输入相应

初始状态下状态变量为

num=[0 0 1 1];den=[1 9 26 24];

[a b c d]=tf2ss(num,den);

sys=ss(a,b,c,d);

x0=[1 1 0]';

t=0:0.01:4;

initial(sys,x0,t);

7.2 阶跃响应

[调用格式] step(sys) step(sys ,t)

Step(sys1,sys2,….sysn) Step(sys1,sys2,….sysn,t)

step(sys1,’plotstyle1’,sys2, ’plotstyle2’,….,x0)

[y t x]=step(sys,x0)

例:根据状态方程输出多系统的阶跃响应

系统一:

系统二:

a1=[-4 -3;1 0];b1=[1 0]';c1=[3 0];d1=[2];

sys1=ss(a1,b1,c1,d1);

a2=[-5 -3;1 0];b2=[1 0]';c2=[1 1];d2=[0];

sys2=ss(a2,b2,c2,d2);

step(sys1,'r-',sys2,'b-.');

7.3 脉冲响应

[调用格式] impulse(sys) impulse(sys ,t)

impulse(sys1,sys2,….sysn) impulse(sys1,sys2,….sysn,t)

impulse(sys1,’plotstyle1’,sys2, ’plotstyle2’,….,x0)

[y t x]=impulse(sys,x0)

例:根据状态方程输出单一系统的脉冲响应

a=[-11 -44 -74 -40;1 0 0 0 ;0 1 0 0;0 0 1 0];b=[1 0 0 0]';

c=[0 0 20 0];d=[0];

sys=ss(a,b,c,d);

t=0:0.01:10;

impulse(sys,t);

7.4 任意输入的时域响应曲线

1、产生输入信号

[调用格式] gensig 产生输入信号

[u t]=gensig(type,tau)

[u t]=gensig(type, tau, tf ,ts)

Type—输入信号类型(sin正弦信号; square 方波信号 ;pulse周期脉冲信号)

Tau—输入信号的周期 tf—信号的持续时间

ts—信号时间的步长 [u t]—输出信号历史记录

例:绘制正弦、方波、周期脉冲信号。

[u1 t1]=gensig('sin',2*pi);

subplot(3,1,1);plot(t1,u1,'r');

axis([0 25 -2 2]);

title('sin wave');

[u2,t2]=gensig('square',5);

subplot(3,1,2);plot(t2,u2,'y');

axis([0 25 -1 2]);

title('square wave');

[u3 t3]=gensig('pulse',5);

subplot(3,1,3);plot(t3,u3,'b');

axis([0 25 -1 2]);

title('pulse wave');

2、任意输入信号的时域响应

[调用格式] lsim(sys ,u,t) lsim(sys,u ,t,x0)

lsim(sys1,sys2,….sysn,u,t) lsim(sys1,sys2,….sysn,u,t,x0)

lsim(sys1,’plotstyle1’,sys2, ’plotstyle2’,….,u,t)

[y t x]=lsim(sys,u,t,x0)

Sys—输入系统 u t—由gensig产生的信号历史记录

例:绘制正弦和方波输入信号作用于同一系统的响应曲线。

[u1 t1]=gensig('sin',2*pi);

[u2,t2]=gensig('square',5);

a=[-8 -15;1 0];b=[1 0]';c=[50 0];d=[0];

sys=ss(a,b,c,d);

subplot(2,1,1);lsim(sys,u1,t1);

subplot(2,1,2);lsim(sys,u2,t2);

8.1 Bode图

1、绘制Bode图

bode函数绘制控制系统幅频和相频图

[调用格式] bode(sys) bode(sys, w) bode(sys1,sys2..sysn)

bode(sys1,sys2..sysn,w) bode(sys1,’plotstyle1’,sys2,’plotstyle2’,..sysn,’plotstylen’,)

[mag, phase, w]=bode(sys)

w—频率区间矢量,控制频率起止范围

[mag, phase, w]—输出幅值矢量 输出相角 输出频率区间

绘制系统幅频图

[调用格式] bodemag(sys) bodemag(sys, w) bodemag(sys1,sys2..sysn) bodemag(sys1,sys2..sysn,w) bodemag(sys1,’plotstyle1’,sys2,’plotstyle2’,..sysn,’plotstylen’,)

例1:根据状态方程模型进行绘制阶跃响应曲线以及Bode图。

a=[-10 -31 -30;1 0 0;0 1 0];b=[1 0 0]';c=[0 2 2];d=[2];

sys=ss(a,b,c,d);

figure;

step(sys);

figure;

bode(sys);

例2:根据传递函数绘制Bode图的频率响应曲线。

num=[0 2 0];den=[1 8 15];

sys=tf(num,den);

bodemag(sys);

2、系统的增益裕度和相角裕度

增益裕度定义:正好使系统频率响应穿过临界点的增益与实际系统增益的比值。

相角裕度:为了使系统的频率响应通过临界点必须引入的纯相位滞后量。

[调用格式] [gm pm wcg wcp]=margin(sys)

[gm pm wcg wcp ]=margin(mag, phase, w)

Gm—系统增益裕度 pm—系统相角裕度

wcg wcp---表示交叉频率

例:绘制状态方程模型的阶跃响应曲线,Bode图以及增益裕度和相角裕度Bode图。

a=[-10 0 -30;1 0 0;0 1 0];b=[1 0 0]';c=[0 2 2];d=[0];

sys=ss(a,b,c,d);

figure;step(sys);

figure;bode(sys);

figure;margin(sys);

8.2 Nichols图

对数幅相特性图(Nichols图)是描述系统频率特性的图示方法。该图纵坐标表示频率特性的对数幅值,以分贝为单位;横坐标表示频率特性的相位角。

[调用格式] nichols(sys) nichols(sys, w) nichols(sys1,sys2..sysn) nichols(sys1,sys2..sysn,w) nichols(sys1,’plotstyle1’,sys2,’plotstyle2’,..sysn,’plotstylen’,)

[mag, phase, w]=nichols(sys)

[mag, phase]=nichols(sys, w)

例:根据状态方程模型进行绘制脉冲响应曲线以及Nichols图。

a=[-15 -200 -380 -60;1 0 0 0;0 1 0 0;0 0 1 0];b=[1 0 0 0]';

c=[60 390 960 520];d=[-2];

sys=ss(a,b,c,d);

impulse(sys);

figure;nichols(sys);

ngrid;%加上网格

8.3 Nyquist图

系统频率特性的极坐标图——Nyquist图

[调用格式] nyquist(sys) nyquist(sys, w) nyquist(sys1,sys2..sysn) nyquist(sys1,sys2..sysn,w) nyquist(sys1,’plotstyle1’,sys2,’plotstyle2’,..sysn,’plotstylen’,)

[mag, phase, w]=nyquist(sys)

[mag, phase]=nyquist(sys, w)

例:根据状态方程模型进行绘制脉冲响应曲线以及Nyquist图。

a=[-6 -23 -34 -26;1 0 0 0;0 1 0 0;0 0 1 0];b=[1 0 0 0]';

c=[0 0 2 0];d=[2];

sys=ss(a,b,c,d);

impulse(sys);

figure;

nyquist(sys);

8.4 一般频率响应图

[调用格式] h=freqs(num , den, w)

[h ,w]=freqs(num, den)

[h ,w]=freqs(num ,den, f) freqs(num ,den)

Num—传递函数分子矢量 den—传递函数分母矢量

W—频率区间矢量

例:根据传递函数绘制脉冲响应曲线以及一般频率响应图。

num=[0 0 2 0];den=[1 6 11 6];

sys=tf(num,den);

impulse(sys);

figure;

freqs(num,den);

8.5 频率响应的奇异值图

[调用格式] sigma(sys) sigma(sys, w) sigma(sys ,w, type)

sigma(sys1,sys2..sysn) sigma(sys1,sys2..sysn,w)

sigma(sys1,sys2..sysn,w, type)

sigma(sys1,’plotstyle1’,sys2,’plotstyle2’,..sysn,’plotstylen’,)

[sv, w]=sigma(sys) sv=sigma(sys, w)

Type—绘制奇异值图的类型

Type=1 控制系统的频率响应H的奇异值图

Type=2 控制系统的频率响应I+H的奇异值图

Type=3 控制系统的频率响应I+H-1的奇异值图

Sv—频率的奇异值 plotstyle—绘制奇异值曲线的特性

例:根据状态方程模型进行绘制脉冲响应曲线以及频率响应奇异值图。

a=[-9 -26 -24;1 0 0;0 1 0];

b=[1 0 0]';c=[0 1 1];

sys=ss(a,b,c,d);

impulse(sys);

figure;

sigma(sys);

8.6 绘制根轨迹

1、求系统的零点、极点、增益

[调用格式] p=pole(sys) 计算控制系统的极点

Z=zero(sys) 计算控制系统的零点

[z, gain]=zero(sys) 计算控制系统的零点、增益

例:根据状态方程模型求解系统的极点、零点、增益。

a=[-9 -26 -24;1 0 0;0 1 0];

b=[1 0 0]';c=[0 1 1];

sys=ss(a,b,c,d);

p=pole(sys);

[z,g]=zero(sys);

另一种方法:

a=[-9 -26 -24;1 0 0;0 1 0];

b=[1 0 0]';c=[0 1 1];

[z p k]=ss2zp(a,b,c,d);

2、绘制系统极点、零点图

[调用格式] pzmap(sys) pzmap(sys1,sys2,…sysn)

[p z]=pzmap(sys)

例:根据状态方程模型求解系统的极点、零点图。

a=[-2.6 -3 -2.15 -0.1875;1 0 0 0;0 1 0 0;0 0 1 0];

b=[1 0 0 0]';c=[0 1 1.5 0.5];

sys=ss(a,b,c,d);

pzmap(sys);%极点用叉表示

3、绘制根轨迹图

[调用格式] rlocus(sys) rlocus(sys ,k)

Rlocus(sys1,sys2,…)

[r k]=rlocus(sys) r=rlocus(sys,k)

k—表示增益 r—系统的极点

例:根据状态方程模型绘制系统的根轨迹图。

a=[-3.2 -3.4 -1.82 -0.6732 -0.0522;1 0 0 0 0 ;0 1 0 0 0;0 0 1 0 0 ;0 0 0 1 0];

b=[1 0 0 0 0 ]';c=[0 0 1 1.5 0.5];

sys=ss(a,b,c,d);

rlocus(sys);

利用MATLAB进行系统时域分析,matlab控制系统时域分析教程相关推荐

  1. matlab语音识别系统(源代码),matlab语音识别系统(源代码)最新版DOC.doc

    目录 一. 设计任务及要求------------------1 二. 语音识别的简单介绍 2.1语者识别的概念-----------------2 2.2特征参数的提取--------------- ...

  2. helvetica matlab,汽车系统动力学Matlab[骄阳书屋]

    <汽车系统动力学Matlab[骄阳书屋]>由会员分享,可在线阅读,更多相关<汽车系统动力学Matlab[骄阳书屋](18页珍藏版)>请在人人文库网上搜索. 1.汽车系统动力学M ...

  3. matlab进行系统校正,MATLAB校正系统程序

    MATLAB校正系统程序 clear; G1=tf(20,[1,0.4,0]) %系统的开环传递函数 G=feedback(G1,1,-1) %原系统的闭环传递函数 figure(1) step(G) ...

  4. matlab 神经元系统,应用Matlab设计人工神经元网络控制系统

    第19卷第3期 2002年 8月贵州大学学报(自然科学版)JournalofGuizhouUniversity(NaturalScience)Vol.19No.3Aug.2002文章编号 1000-5 ...

  5. matlab演示系统,基于Matlab的通信原理演示系统的设计与应用

    基于 Matlab的通信原理演示系统的设计与应用 李 强 , 明 艳 , 吴坤君 (重庆邮电大学 通信学院 , 重庆 400065) 摘 要 : 利用 Matlab图形用户界面的开发环境和强大的通信仿 ...

  6. 用matlab解系统框图,matlab软件应用介绍 3-6 系统连接框图的模型.ppt

    <matlab软件应用介绍 3-6 系统连接框图的模型.ppt>由会员分享,可在线阅读,更多相关<matlab软件应用介绍 3-6 系统连接框图的模型.ppt(16页珍藏版)> ...

  7. matlab欠阻尼系统注释,MATLAB 实用教程:第5章MATLAB程序设计

    <MATLAB 实用教程:第5章MATLAB程序设计>由会员分享,可在线阅读,更多相关<MATLAB 实用教程:第5章MATLAB程序设计(31页珍藏版)>请在人人文库网上搜索 ...

  8. matlab望远镜系统,基于MatLab的天文望远镜电机调速系统的仿真与分析

    1 引 言 望远镜是现代天文学探索宇宙的主要工具,已成为人们从事科学研究和经济建设的有力助手,广泛应用于天文.导航.科学考察等领域,成为一项高科技产品,间接反映了一个国家的经济实力与科技水平高低.电机 ...

  9. matlab演示系统,用MATLAB演示新古典增长模型

    程序是由卡内基梅隆大学的Dan Li 编写的,邮箱是danli@andrew.cmu.edu,个人网页:www.danli.org 此贴仅供学习参考. 假设没有人口增长和技术进步,劳动力的供给是没有弹 ...

  10. 利用MATLAB进行系统时域分析,实验二 利用matlab进行系统的时域分析

    实验二 利用matlab进行系统的时域分析 实验二 利用MATLAB进行系统的时域分析 1.实验目的 在理论学习的基础上,通过本实验熟悉LTI连续时间系统的时域分析方法, 熟悉系统的零输入响应.零状态 ...

最新文章

  1. 关于编程的浅学习与深学习
  2. java vue20.2.2浏览器_支持 Java 15!Java 开发工具 IntelliJ IDEA 2020.2发布
  3. c++获得总和S所需的最小硬币数量的函数(附完整源码)
  4. C# 2.0 锐利体验
  5. Blazor 机制初探以及什么是前后端分离,还不赶紧上车?
  6. 传输层两大协议:TCP与UDP详解(两者的联系与区别)
  7. java中import两种导入类型比较
  8. 阿里巴巴再陷“抄袭门”,究竟孰真孰假?
  9. Apple Watch新玩法:手势操控无人机
  10. UVa11809-Floating-Point Numbers
  11. 一个高性能RPC框架的连接管理
  12. 四川省大学生金融科技建模大赛-模型复现和点评
  13. 安卓软件汉化教程附带汉化工具Android Res Edit V1.5
  14. virtualbox 搭建opnsense 防火墙
  15. 有点意思!“古董级” 诺基亚功能机跑 Linux
  16. Bootstrap 学习笔记1 - CSS
  17. Cups打印机驱动延迟Bug解决
  18. 怎么在服务器里修改分机的ip,Avaya1608IP话机设置步骤、分机号重设、电话机重置_Avaya1608IP电话机设置步骤、分机号重设、电话机重置_软件教程_了忧科技...
  19. linux ccid驱动下载,ccid驱动支持
  20. 【睡眠障碍】睡觉前数绵羊对睡眠障碍没有作用

热门文章

  1. 移动端SEO优化需要怎么做排名?
  2. 定位高速DAC近端杂散问题流程
  3. svn的恢复到指定版本操作
  4. QT 制作 gif 录屏 小工具
  5. UEditor 不调用后台
  6. 5-基于51单片机步进电机的控制研究(原理图工程+仿真工程+答辩论文+答辩PPT)
  7. linux挂载ipsan服务器
  8. Java面试题及答案整理汇总(2023最新版)
  9. 【教学类-12-01】20221105《连连看8*4-分栏4-不重复16个)(小班主题《白天与黑夜》)
  10. 2023 年最佳游戏引擎推荐