一、根轨迹分析方法的概念

所谓根轨迹是指,当开环系统某一参数从零变到无穷大时,闭环系统特征方程的根在s平面上的轨迹。一般来说,这一参数选作开环系统的增益K,而在无零极点对消时,闭环系统特征方程的根就是闭环传递函数的极点。

根轨迹分析方法是分析和设计线性定常控制系统的图解方法,使用十分简便。利用它可以对系统进行各种性能分析,

1.稳定性

当开环增益K从零到无穷大变化时,图中的根轨迹不会越过虚轴进入右半s平面,因此这个系统对所有的K值都是稳定的。如果根轨迹越过虚轴进入右半s平面,则其交点的K值就是临界稳定开环增益。

2.稳态性能

开环系统在坐标原点有一个极点,因此根轨迹上的K值就是静态速度误差系数,如果给定系统的稳态误差要求,则可由根轨迹确定闭环极点容许的范围。

3.动态性能

当00.5时,闭环极点为复数极点,系统为欠阻尼系统,单位阶跃响应为阻尼振荡过程,且超调量与K成正比。

例exp4_18.m

%exp4_18.m

%对根轨迹进行分析

%二阶开环系统为H(s)=K/(s*(0.5s+1))

clear

closeall

clc

num=1;

den=[0.510];

rlocus(num,den);

text(0.1,0.1,'k=0');

text(-0.9,0.1,'k=0.5');

二、根轨迹分析函数

通常来说,绘制系统的根轨迹是很繁琐的事情,因此在教科书中介绍的是一种按照一定规则进行绘制的概略根轨迹。在MATLAB中,专门提供了绘制根轨迹的有关函数。

pzmap:绘制线性系统的零极点图

rlocus:求系统根轨迹。

rlocfind:计算给定一组根的根轨迹增益。

sgrid:在连续系统根轨迹图和零极点图中绘制出阻尼系数和自然频率栅格。

(一)零极点图绘制

MATLAB提供了函数pzmap()来绘制系统的零极点图,其用法如下:

[p,z]=pzmap(a,b,c,d):返回状态空间描述系统的极点矢量和零点矢量,而不在屏幕上绘制出零极点图。

[p,z]=pzmap(num,den):返回传递函数描述系统的极点矢量和零点矢量,而不在屏幕上绘制出零极点图。

pzmap(a,b,c,d)或pzmap(num,den):不带输出参数项,则直接在s复平面上绘制出系统对应的零极点位置,极点用×表示,零点用o表示。

pzmap(p,z):根据系统已知的零极点列向量或行向量直接在s复平面上绘制出对应的零极点位置,极点用×表示,零点用o表示。

exp4_19.m

%零极点图的绘制

clc

clear

closeall

%已知系统的状态空间描述模型

a=[03;-3-1];

b=[01]';

c=[13];d=2;

[p1,z1]=pzmap(a,b,c,d)

subplot(221)

pzmap(p1,z1)

subplot(222)

pzmap(a,b,c,d)

%已知系统传递函数模型

num=[2255110];

den=[11577840];

[p2,z2]=pzmap(num,den)

subplot(223)

pzmap(p2,z2)

subplot(224)

num1=[24];

den1=[8831];

pzmap(num1,den1)

moreoff

(二)根轨迹图绘制

MATLAB提供了函数rlocus()来绘制系统的根轨迹图,其用法如下:

rlocus(a,b,c,d)或者rlocus(num,den):根据SISO开环系统的状态空间描述模型和传递函数模型,直接在屏幕上绘制出系统的根轨迹图。开环增益的值从零到无穷大变化。

rlocus(a,b,c,d,k)或rlocus(num,den,k):通过指定开环增益k的变化范围来绘制系统的根轨迹图。

r=rlocus(num,den,k)或者[r,k]=rlocus(num,den):不在屏幕上直接绘出系统的根轨迹图,而根据开环增益变化矢量k,返回闭环系统特征方程1+k*num(s)/den(s)=0的根r,它有length(k)行,length(den)-1列,每行对应某个k值时的所有闭环极点。或者同时返回k与r。

若给出传递函数描述系统的分子项num为负,则利用rlocus函数绘制的是系统的零度根轨迹。(正反馈系统或非最小相位系统)

exp4_20.m

%根轨迹图的绘制

clc

clear

closeall

%已知系统的状态空间描述模型

a=[03;-3-1];

b=[01]';

c=[13];d=2;

subplot(211)

rlocus(a,b,c,d)

%已知系统传递函数模型

num=[24];

den=[8310];

subplot(212)

rlocus(num,den)

[r,k]=rlocus(num,den);

disp('r的维数')

size(r)

(三)rlocfind()函数

MATLAB提供了函数rlocfind()来找出给定的一组根(闭环极点)对应的根轨迹增益。其用法如下:

[k,p]=rlocfind(a,b,c,d)或者[k,p]=rlocfind(num,den)

它要求在屏幕上先已经绘制好有关的根轨迹图。然后,此命令将产生一个光标以用来选择希望的闭环极点。命令执行结果:k为对应选择点处根轨迹开环增益;p为此点处的系统闭环特征根。

不带输出参数项[k,p]时,同样可以执行,只是此时只将k的值返回到缺省变量ans中。

(四)sgrid()函数

sgrid:在现存的屏幕根轨迹或零极点图上绘制出自然振荡频率wn阻尼比矢量z对应的格线。

sgrid(‘new’):是先清屏,再画格线。

sgrid(z,wn):则绘制由用户指定的阻尼比矢量z自然振荡频率wn的格线。

三、根轨迹分析应用实例

例exp4_21.m  已知某单位反馈系统的开环传递函数为:

要求:绘制系统的闭环根轨迹,并确定使系统产生重实根和纯虚根的开环增益k。

%根轨迹图的绘制

clc

clear

closeall

%已知系统开环传递函数模型

num=1;

den=conv([0.0110],[0.021]);

rlocus(num,den)

[k1,p]=rlocfind(num,den)

[k2,p]=rlocfind(num,den)

title('rootlocus')

例exp4_22.m某开环系统传递函数如下所示:要求绘制系统的闭环根轨迹,分析其稳定性,并绘制出当k=55和k=56时系统的闭环冲激响应。

%根轨迹图的绘制与分析

clc

clear

closeall

%已知系统传递函数模型

numo=[12];

den=[143];

deno=conv(den,den);

figure(1)

k=0:0.1:150;

rlocus(numo,deno,k)

title('rootlocus')

[p,z]=pzmap(numo,deno);

%求出系统临界稳定增益

[k,p1]=rlocfind(numo,deno);

k

%验证系统的稳定性

figure(2)

subplot(211)

k=55;

num2=k*[12];

den=[143];

den2=conv(den,den);

[numc,denc]=cloop(num2,den2,-1);

impulse(numc,denc)

title('impulseresponsek=55');

subplot(212)

k=56;

num3=k*[12];

den=[143];

den3=conv(den,den);

[numcc,dencc]=cloop(num3,den3,-1);

impulse(numcc,dencc)

title('impulseresponsek=56');

matlab求系统根轨迹和系统增益,控制系统的根轨迹分析相关推荐

  1. matlab根轨迹增益,控制系统的根轨迹分析(matlab).ppt

    控制系统的根轨迹分析(matlab) 第13章控制系统的根轨迹分析 主要内容 控制系统的根轨迹分析 图形化根轨迹法分析与设计 13.1 控制系统的根轨迹法分析 13.1.1 根轨迹及根轨迹法概述 以绘 ...

  2. matlab求系统根轨迹代码_根轨迹法、PID参数整定和matlab指令计算

    收获 (1)理解根轨迹的概念及其在控制系统设计中的作用: (2)手绘根轨迹草图,以及如何使用极端及绘制根轨迹: (3)熟悉在反馈控制系统中应用广泛的关键部件:PID控制器: (4)理解根轨迹在参数设计 ...

  3. matlab求系统根轨迹代码_要想正确画出根轨迹,先搞清楚这8大法则再说!

    话说宝刀君这几年给学弟学妹们辅导自控时,学弟学妹们面对根轨迹,经常是一脸懵逼. 常常是拿到题后,零极点都标出来了,法则也写出来了,但就是根轨迹画不出来. 有时好不容易画出来了,返回去和法则一对照,忍不 ...

  4. matlab求系统根轨迹代码_广州数控GSK RH06六轴焊接机器人的轨迹规划

    技术参数 运动范围 任务点位置 问题:如实现上图中的 运动轨迹(以基坐标系为参照),请给出相关的轨迹规划算法及其实现方式(结合运动学及动力学方程进行相关的轨迹点选取及工程实现),其中各个点的坐标为A= ...

  5. 系统稳定性(基于matlab求传递函数特征根)

    本文包含以下内容: 一.系统稳定性概念 二.系统稳定性判断 一.系统稳定性概念 系统加入扰动后偏离了原来的状态,当把干扰去掉后,系统如果能恢复到原来的状态,则说明系统稳定. 二.系统稳定性判断 脉冲信 ...

  6. matlab求系统全响应,利用matlab求LTI连续系统的响应

    <利用matlab求LTI连续系统的响应>由会员分享,可在线阅读,更多相关<利用matlab求LTI连续系统的响应(3页珍藏版)>请在人人文库网上搜索. 1.实验3 利用mat ...

  7. matlab/simulink 转速功角发电机相轨迹分析,转速功角曲线,电力系统暂态稳定分析,四机两区系统,ieee39节点系统

    matlab/simulink 转速功角发电机相轨迹分析,转速功角曲线,电力系统暂态稳定分析,四机两区系统,ieee39节点系统. 判断系统是否失去稳定的相轨迹. 实时将机组进行分群处理. 复现的文献 ...

  8. 利用matlab求零输入响应波形,实验3 利用matlab求LTI连续系统的响应

    实验3 利用matlab求LTI连续系统的响应 一. 实验目的: 1. 了解LTI系统的冲激响应h(t)及matlab实现: 2. 了解LTI系统的阶跃响应g(t)及matlab实现: 3. 了解LT ...

  9. 用matlab对系统求全响应,matlab求系统稳态响应成程序语句解释

    2018-10-29 1系统反复出现程序停止响应怎么办? 我们可以在系统的服务管理器中将相应的服务禁用掉,服务管理器是用于管理系统服务的管理工具.一般常用于windows系统,使用这个工具你可以启动. ...

最新文章

  1. 对于百川SDK签名验证的问题
  2. apizza接口文档传二维数组
  3. python3 携程_多任务(3):协程
  4. chromium笔记目录
  5. 关于DynamipsGUI idle-pc值的取值问题
  6. 使用web.xml控制Web应用的行为
  7. springboot大学生实习管理系统
  8. 安国主控au6983、au698x fc8708 量产失败修复过程。载入韧体数据失败\坏磁区过多\读坏块表错误...
  9. wincc如何实现web发布,及具体方法
  10. 9.DLL的入口函数DllMain函数
  11. 神仙打架!清华公布2020特奖候选人名单,有人三篇顶会一作!还有人...
  12. 光功率 博科交换机_交换机查看光模块型号及收发光功率命令
  13. Cluster sampling整群抽样例子
  14. everedit 保存机器学习路径注意事项
  15. Vivado DDS IP核使用、仿真、多相处理和相关计算验证
  16. 企业云资源管理系统需求分析
  17. Redis存key出现\xAC\xED\x00\x05t\x00\x14
  18. MAX232与MAX3232的区别
  19. 生活总是不经意给你开个玩笑_你在开玩笑的故事吗
  20. Aescripts Bang for mac(AE三维枪口火焰特效插件)

热门文章

  1. 异常:Invalid or unexpected token
  2. Mysql添加用户错误:ERROR 1364 (HY000): Field ‘ssl_cipher‘ doesn‘t have a default value解决方法
  3. 【明哥报错簿】之 mybatis异常invalid comparison: java.util.Date and java.lang.String
  4. 解决Gerrit的git unpack error问题
  5. 在Git中更改文件名的大小写
  6. 什么是在Vim中评论/取消注释行的快速方法?
  7. 关于计算机优点缺点的英语作文,跪求一篇英语作文 题目:论计算机的优缺点...
  8. SpringMCV整合配置文件
  9. Andriod:serializer序列化器生成xml文件
  10. 麦克纳姆轮全向移动机器人速度分解