在Matlab中绘制系统的根轨迹图
在Matlab中绘制系统的根轨迹图
例如某系统的开环传递函数为:
通过上面的开环传递函数可以直接求出2个开环共轭复零点,以及5个开环极点,然后确定根轨迹分支数…自己画根轨迹图的话还是比较麻烦的,这么简单的事就交给计算机干吧!
下面就是在Matlab中进行编程来完成系统根轨迹的绘制:
num=[1,2,4]; %开环传函分子多项式系数
den=conv(conv([1,4,0],[1,6]),[1,1.4,1]); %开环传函分母多项式系数
sys=tf(num,den); %系统传递函数模型
rlocus(sys); %绘制系统的根轨迹图
axis([-8 2 -6 6]); %设定坐标范围为:实轴[-8,2],虚轴[-6,6]
注:上面的conv(A,B)函数是用来求两个向量A和B的卷积,如果两个向量是多项式的系数的话,结果就表示两个多项式的乘积;如果有多个多项式,则可以多层套用。
在执行完绘制根轨迹图的命令后就可以画出该系统的根轨迹图了,为了显示的效果更好一些,则可以根据实际情况设定合适的坐标系范围。绘制出的根轨迹图如下图所示。通过Matlab绘制出的根轨迹图我们可以直观的看到图中的5个开环极点和2个开环零点,以及开环根轨迹增益K* 对系统稳定性的影响,在本例中我们可以看到,只有在K* 满足一定条件的情况下系统才是稳定的。
在上图中可以利用游标工具直接在根轨迹图上获取分离点、会合点、根轨迹与虚轴的交点等任何一点的坐标,以及他们所对应的系统的根轨迹增益、阻尼比和超调量等信息,如下图所示。
在分析系统性能的时候,除了某一点所对应的根轨迹增益外,有时还需要知道该增益所对应的其他闭环极点的值,这时候则只需输入以下命令即可:
[K,p]=rlocfind(sys)
点击回车之后,会在绘图界面出现一个十字光标,移动鼠标将光标对准你所要分析的点后单击左键(在这里选的是分离点),在命令窗口就会返回被选极点的开环增益K和与之对应的所有其他5个闭环极点的值。返回值如下:
selected_point =-2.3451 + 0.0000iK =9.4862p =-6.5521 + 0.0000i-2.3662 + 0.0000i-2.3451 + 0.0000i-0.0683 + 1.0193i-0.0683 - 1.0193i
也就是说,在根轨迹增益一定的情况下,满足这一增益的极点不止一个。
在Matlab中绘制系统的根轨迹图相关推荐
- matlab绘制系统的根轨迹
在绘制根轨迹时,我们要明确以下两点: ①在时域分析中:控制系统稳定的充要条件是***闭环极点***在S平面左半部,由此可见控制系统的稳定性完全由闭环极点在s平面上的位置所决定.那么得到系统的闭环极点十 ...
- matlab系统函数伯德图,利用matlab画出根轨迹图|伯德图bode
求G(s)=K/s(s+1)(s+3)的根轨迹图形 若开环传递函数不是多项式乘积形式,则不需用conv函数,conv函数可用于多项式乘法以及卷积. num=[1,];%分子上的各项系数 %K=[1:1 ...
- matlab系统的根轨迹,实验五 利用MATLAB绘制系统根轨迹
<实验五 利用MATLAB绘制系统根轨迹>由会员分享,可在线阅读,更多相关<实验五 利用MATLAB绘制系统根轨迹(6页珍藏版)>请在人人文库网上搜索. 1.实验五 利用MAT ...
- matlab闭环传函的根轨迹,试绘制闭环系统根轨迹.PPT
试绘制闭环系统根轨迹 4-5 控制系统复域设计 --用Matlab绘制根轨迹 在应用MATLAB画根轨迹时,需要将根轨迹方程(闭环特征方程)写成如下形式 式中 为分子多项式, 为分母多项式,二者都必须 ...
- 用matlab如何画根轨迹图,MATLAB绘制根轨迹ppt课件
<MATLAB绘制根轨迹ppt课件>由会员分享,可在线阅读,更多相关<MATLAB绘制根轨迹ppt课件(11页珍藏版)>请在人人文库网上搜索. 1.MATLAB绘制根轨迹,由传 ...
- 绘制课本中的根轨迹图与零极点分布图
<信号与系统>第三版下册-郑君里 例11-8 已知反馈系统结构如图11-21所示,试绘制其根轨迹图. 这个图绘制的是A(s)F(s)的根轨迹图,并不是整个闭环系统的根轨迹图,也不是A(s) ...
- matlab中如何求零极点,Matlab中绘制零极点
<Matlab中绘制零极点>由会员分享,可在线阅读,更多相关<Matlab中绘制零极点(2页珍藏版)>请在人人文库网上搜索. 1.ZPLANE Z-plane zero-pol ...
- matlab中饼图绘制程序,MATLAB中绘制二维饼图的函数是(? ? ) (1.5分)
MATLAB中绘制二维饼图的函数是(? ? ) (1.5分) 答:pie 计算机的内存储器比外存储器读写速度 ______ 答:快 新民主主义革命时期,提出了反帝反封建这个任务就等于真正懂得了什么叫反 ...
- matlab绘制抛物线,MATLAB中绘制抛物线的图像,请补充完成下面代码: clc,clear; x=linspace(...
MATLAB中绘制抛物线的图像,请补充完成下面代码: clc,clear; x=linspace(-2,2,100); ____________; plot(x,y) 答: y=x.^2 在下列各项中 ...
最新文章
- Mysql函数group_concat、find_in_set 多值分隔字符字段进行数据库字段值翻译
- [转]SQL truncate 、delete与drop区别
- Android性能优化:手把手教你如何让App更快、更稳、更省(含内存、布局优化等)...
- 【NoSQL】NoSQL入门和概述 - 笔记
- 再记一次 应用服务器 CPU 暴高事故分析
- C++之智能指针和普通指针单例模式两种实现
- 前端学习(2932):vue中的v-if
- 精通android(Pro Android 4)面试题总结(一)
- CentOS下安装Orcale
- 第四周作业 简单地邮件发送实现
- VTD的官方help翻译-ROD部分(10~15章)
- C语言用什么 IDE 好 - 除了 Visual Studio、VSCode、CLion 还有什么其他选择?
- OSPF协议单域配置实例
- android soundpool 播放音效,Android使用SoundPool播放短音效
- 用html给图片加像素,更改照片像素和大小
- 北京时间校准 服务器 显示器 标准,纯干货~北京时间校准显示器实用分享
- 如何查看自己windows电脑的IP地址
- 操作系统——进程调度
- 计算机视觉与音乐,探索计算机视觉与音频的交叉:基于视觉的音乐相关研究Review...
- 零基础入门Jetson Nano——软件篇