利用根轨迹法判断系统的稳定性.docx
- 文档编号:5388057
- 上传时间:2023-05-08
- 格式:DOCX
- 页数:25
- 大小:193.24KB
利用根轨迹法判断系统的稳定性.docx
《利用根轨迹法判断系统的稳定性.docx》由会员分享,可在线阅读,更多相关《利用根轨迹法判断系统的稳定性.docx(25页珍藏版)》请在冰点文库上搜索。
利用根轨迹法判断系统的稳定性
课题名称:
利用根轨迹法判断某系统的稳定性
设计内容:
设一系统的开环传递函数为:
设计要求:
(1)试利用matlab绘制该系统闭环的零极点图,并判断该系统的稳定性;
(2)当系统的开环传递函数为:
时,试绘制该系统的常规根轨迹图,并判断该系统的稳定性。
题目研究的基础或实验条件:
计算机、相关书籍、MATLAB语言的应用。
课题所涉及的知识面:
自动控制原理、MATLAB语言的应用。
一、引言..............................................................P3
二、《控制系统的稳定性分析》的分析
2.1、控制系统稳定性定义...............................................P3
2.2、系统稳定性分析方法之根轨迹法
三、《控制系统的稳定性分析》的求解过程
3.1、以K为变量的M函数…………………………………………………………P4
3.2、MATLAB绘制根轨迹的相关知识
3.3、MATLAB绘制系统零极点、根轨迹
3.3.1概述
3.3.2Matlab绘制零极点、根轨迹程序代码
3.3.3控制系统的零极点分布图……………………………………………P5
3.3.4系统的根轨迹图
3.3.5控制系统稳定性分析的结论
3.4、MATLAB用户界面设计的相关知识…………………………………………P7
3.4.1菜单设计
3.4.1.1建立用户菜单
3.4.1.2菜单对象常用属性
3.4.1.3快捷菜单
3.4.2对话框设计……………………………………………………………..P7
3.4.2.1对话框的控件
3.4.2.2对话框的设计
3.4.3MATLABGUI图形用户界面设计工具………………………………P8
3.4.3.1图形用户界面设计窗口
3.4.3.2对象属性查看器
3.4.3.3菜单编辑器
3.4.3.4位置调整工具
3.4.3.5对象浏览器
3.4.3.6Tab顺序编辑器
3.5、程序用户界面的设计………………………………………………………..P10
3.5.1概述
3.5.2程序用户界面设计结果
3.5.3程序用户界面设计代码
四、课程设计结果分析……………………………………P14
4.1、以K为变量的M函数
4.2、当K=2,K=10时,控制系统的稳定性
4.3、MATLABGuide设计用户界面…………………………………………..P15
4.3.1课程设计的基本要求的实现
4.3.2课程设计的扩展项
五、课程设计总结………………………………….P20
5.1课程设计目的
5.2课程设计的收获
5.3课程设计的总结
六、参考文献……………………………………….P21
一、引言
稳定性是系统能在实际中应用的首要条件。
因此,如何分析系统的稳定性并找出保证系统稳定的措施,便成为自动控制理论的一个重要的任务。
在常见的线性系统的稳定性,都是取决于控制系统本身的结构和参数,而与其输入无关。
自动控制理论经过不断的发展,判断其稳定性已经有了很多方法,较常用的有求其闭环传递函数的特征根,根轨迹法,Nyquist曲线,伯德图等方法。
线性系统稳定性的条件是其特征根具有负实部,在实际工程系统中,为避开对特征方程的直接求解,就只好讨论特征根的分布,即看其特征根是否全部分布在负实部,并以此来判断系统的稳定性,由此而形成了一系列的稳定性判据,而且这些方法都已经经过了数学上的证明,是完全有相关的理论根据来支持的,因此大大提高了系统稳定性的判断的灵活性。
随着计算机技术的发展,将计算机技术引入到自动控制理论中,在提高判断速度,减少人为的计算等的同时,也将自动控制理论的发展推到了一定的高度。
在MATLAB未产生之前,由于自动控制系统的复杂性,判断稳定性的计算量非常的大,而采用MATLAB以后,系统的稳定细分析就变得很简单。
同时采用MATLAB还可以对复杂的控制系统进一步进行分析和设计。
二、《控制系统的稳定性分析》的分析
2.1、控制系统稳定性定义
控制系统稳定性的定义有很多种,比较典型的说法两种:
1)、由俄罗斯学者李雅普诺夫首先提出的平衡状态稳定性。
2)、系统的运动稳定性。
对于线性控制系统而言,这两种说法是等价的。
根据李雅普诺夫稳定性理论,线性控制系统的稳定性可以定义如下:
若线性控制系统在初始扰动的影响下,其过渡过程随着时间的推移逐渐衰减并趋于零则称该系统为渐进稳定,简称为稳定;若反之,在初始扰动影响下,系统的过渡过程随时间的推移而发散,则称为系统不稳定。
有上述稳定性的定义可知,线性系统稳定性的充分条件是:
闭环系统的特征方程的根都具有负实部,或者说闭环传递函数的极点均位于左半S开平面。
2.2系统稳定性分析方法
在经典控制理论中,常用时域分析法、复域分析法或者频域分析法来分析控制系统的稳定性。
不过不同的方法使用的范围不同,在不同的条件下,选取合适的方法能够取到事半功倍的功效。
通过控制原理的学习,加上查阅的相关资料,先将分析系统稳定性的方法稍微梳理一下,然后选取适当的方法,来判定给予的单位负反馈系统在K取值时系统的稳定性。
这道题选用根轨迹法来求。
复域分析法
在复域中进行系统稳定性分析,尤其当系统参数K变化时,选定合适的参数范围使系统达到所需要稳定要。
有两种方法:
1)、是直接法,即对于较易得到系统闭环传递函数的场合,直接求出系统所有闭环极点判断是否都具有负实部来确定系统的稳定性。
2)、是根轨迹法,利用系统开闭环传递绘制根轨迹,由线性系统稳定的充分必要条件:
闭环传递函数的极点均位于左半S开平面,不包括虚轴,确定使根轨迹在左半S开平面部分时参数范围为系统稳定的区域。
根轨迹法
根轨迹法是一种图解方法。
这种方法是根据系统开环零
极点的分布来研究系统中可变参数变化时,系统闭环特征根
的变化规律,从而研究系统的稳定性。
因此,根轨迹法在控制系统的分析和设计中是一种很实用的工程方法,它的最大特点是能够很清晰地了解到闭环特征根的分布,一目了然地得出系统稳定时参数的取值范围,并且不必求出系统的闭环传递函数。
适用于较复杂系统,根轨迹法的关键环节就是能够正确地绘制出系统的根轨迹。
简单根轨迹可用试探法绘制,复杂根轨迹则应利用其绘制基本规则进行绘制。
MATLAB控制工具箱中提供了rlocus函数来绘制系统的
根轨迹,利用rlocfind函数,在图形窗口显示十字光标,可以求得特殊点对应的K值,进而分析系统稳定性情况。
三、《控制系统的稳定性分析》的求解过程
3.1、以K为变量的M函数
根据题意,系统的闭环传递函数为:
即闭环系统的特征多项式为U(s)==0
∴等效开环传递函数
注:
题目给的“以K为变量,编写成通用的M函数”,这句话是有歧义的,根据题目在此把M(k)函数看着是等效的开环传递函数。
Matlab编写的代码如下:
G=tf(1,[1320]);%建立等效开环传递函数模型
figure
(1)
pzmap(G);%绘制零极点分布图
figure
(2)
rlocus(G);%绘制根轨迹
[k,p]=rlocfind(G)%确定增益及其相应的闭环极点
3.2、MATLAB绘制根轨迹的相关知识
MATLAB控制工具箱中提供了rlocus函数来绘制系统的
根轨迹,利用rlocfind函数,在图形窗口显示十字光标,可以求得特殊点对应的K值,进而分析系统稳定性情况。
例外,还可以通过pzmap函数来绘制零极点分布图.
3.3、MATLAB绘制系统零极点、根轨迹
3.3.1概述
学习了MATLAB绘制系统的零极点、根轨迹知识之后,绘制系统零极点、根轨迹就变的相当容易,因为给定的单位负反馈并不难,以前在自动控原理的实验中就已经做过类式的实验,同时调用pzmap(G),rlocus(G),rlocfind(G)等函数就能实现,然后在选定根轨迹与正虚轴的交点和实轴的分离点,就能算出相应的K,P值,也就能对系统的稳定性进行分析。
3.3.2Matlab绘制零极点、根轨迹程序代码
Matlab编写的代码如下:
G=tf(1,[1320]);%建立等效开环传递函数模型
figure
(1)
pzmap(G);%绘制零极点分布图
figure
(2)
rlocus(G);%绘制根轨迹
[k,p]=rlocfind(G)%确定增益及其相应的闭环极点
3.3.3控制系统的零极点分布图
控制系统的零极点分布如图:
3.3.4系统的根轨迹图
系统的根轨迹如下图所示:
光标选定根轨迹与正虚轴的交点得到如下结果:
Selectapointinthegraphicswindow
selected_point=0.0059+1.3509i,k=5.5029,p=-2.9536,-0.0232+1.3648i,-0.0232-1.3648i
光标选定实轴的分离点得到如下结果:
Selectapointinthegraphicswindow
selected_point=-0.4206-0.0155i,k=0.3853,p=-2.1548,-0.4226+0.0154i,-0.4226-0.0154i
3.3.5控制系统稳定性分析的结论
上述数据显示了增益及对应的闭环极点位置,由此可得出如下结论:
1)、0 2)、k=0.39时,对应为分离点,系统处于临界阻尼状态。 3)、0.39 4)、k=6时,系统有一对虚根,系统处于临界稳定状态。 5)、k>6时,系统的一对复根的实部为正,系统处于不稳定状态。 3.4、MATLAB用户界面设计的相关知识 3.4.1菜单设计 3.4.1.1建立用户菜单 要建立用户菜单可用uimenu函数,因其调用方法不同,该函数可以用于建立一级菜单项和子菜单项。 建立一级菜单项的函数调用格式为: 一级菜单项句柄=uimenu(图形窗口句柄,属性名1,属性值1,属性名2,属性值2,…)。 建立子菜单项的函数调用格式为: 子菜单项句柄=uimenu(一级菜单项句柄,属性名1,属性值1,属性名2,属性值2,…)。 3.4.1.2菜单对象常用属性 菜单对象具有Children、Parent、Tag、Type、UserData、Visible等公共属性,除公共属性外,还有一些常用的特殊属性。 3.4.1.3快捷菜单 快捷菜单是用鼠标右键单击某对象时在屏幕上弹出的菜单。 这种菜单出现的位置是不固定的,而且总是和某个图形对象相联系。 在MATLAB中,可以使用uicontextmenu函数和图形对象的UIContextMenu属性来建立快捷菜单,具体步骤为: (1)利用uicontextmenu函数建立快捷菜单。 (2)利用uimenu函数为快捷菜单建立菜单项。 (3)利用set函数将该快捷菜单和某图形对象联系起来。 3.4.2对话框设计 3.4.2.1对话框的控件 在对话框上有各种各样的控件,利用这些控件可以实现有关控制。 下面先介绍这些控件。 (1)按钮(PushButton)。 (2)双位按钮(ToggleButton)。 (3)单选按钮(RadioButton)。 (4)复选框(CheckBox)。 (5)列表框(ListBox)。 (6)弹出框(PopupMenu)。 (7)编辑框(EditBox)。 (8)滑动条(Slider)。 (9)静态文本(StaticText)。 (10)边框(Frame)。 3.4.2.2对话框的设计 1).建立控件对象 MATLAB提供了用于建立控件对象的函数uicontrol,其调用格式为: 对象句柄=uicontrol(图形窗口句柄,属性名1,属性值1,属性名2,属性值2,…)。 其中各个属性名及可取的值和前面介绍的uimenu函数相似,但也不尽相同,下面将介绍一些常用的属性。 2).控件对象的属性 MATLAB的10种控件对象使用相同的属性类型,但是这些属性对于不同类型的控件对象,其含义不尽相同。 除Children、Parent、Tag、Type、UserData、Visible等公共属性外,还有一些常用的特殊属性。 3.4.3图形用户界面设计工具 MATLAB的用户界面设计工具共有6个,它们是: (1)图形用户界面设计窗口: 在窗口内创建、安排各种图形对象。 (2)菜单编辑器(MenuEditor): 创建、设计、修改下拉式菜单和快捷菜单。 (3)对象属性查看器(PropertyInspector): 可查看每个对象的属性值,也可修改设置对象的属性值。 (4)位置调整工具(AlignmentTool): 可利用该工具左右、上下对多个对象的位置进行调整。 (5)对象浏览器(ObjectBrowser): 可观察当前设计阶段的各个句柄图形对象。 (6)Tab顺序编辑器(TabOrderEditor): 通过该工具,设置当用户按下键盘上的Tab键时,对象被选中的先后顺序。 3.4.3.1图形用户界面设计窗口 1).GUI设计模板 在MATLAB主窗口中,选择File菜单中的New菜单项,再选择其中的GUI命令,就会显示图形用户界面的设计模板。 MATLAB为GUI设计一共准备了4种模板,分别是BlankGUI(默认)、GUIwithUicontrols(带控件对象的GUI模板)、GUIwithAxesandMenu(带坐标轴与菜单的GUI模板)与ModalQuestionDialog(带模式问话对话框的GUI模板)。 当用户选择不同的模板时,在GUI设计模板界面的右边就会显示出与该模板对应的GUI图形。 2).GUI设计窗口 在GUI设计模板中选中一个模板,然后单击OK按钮,就会显示GUI设计窗口。 选择不同的GUI设计模式时,在GUI设计窗口中显示的结果是不一样的。 GUI设计窗口由菜单栏、工具栏、控件工具栏以及图形对象设计区等部分组成。 GUI设计窗口的菜单栏有File、Edit、View、Layout、Tools和Help6个菜单项,使用其中的命令可以完成图形用户界面的设计操作。 3).GUI设计窗口的基本操作 在GUI设计窗口创建图形对象后,通过双击该对象,就会显示该对象的属性编辑器。 例如,创建一个PushButton对象,并设计该对象的属性值。 3.4.3.2对象属性查看器 利用对象属性查看器,可以查看每个对象的属性值,也可以修改、设置对象的属性值,从GUI设计窗口工具栏上选择PropertyInspector命令按钮,或者选择View菜单下的PropertyInspector子菜单,就可以打开对象属性查看器。 另外,在MATLAB命令窗口的命令行上输入inspect,也可以看到对象属性查看器。 在选中某个对象后,可以通过对象属性查看器,查看该对象的属性值,也可以方便地修改对象属性的属性值。 3.4.3.3菜单编辑器 利用菜单编辑器,可以创建、设置、修改下拉式菜单和快捷菜单。 从GUI设计窗口的工具栏上选择MenuEditor命令按钮,或者选择Tools菜单下的MenuEditor子菜单,就可以打开菜单编辑器。 菜单编辑器左上角的第一个按钮用于创建一级菜单项。 第二个按钮用于创建一级菜单的子菜单。 菜单编辑器的左下角有两个按钮,选择第一个按钮,可以创建下拉式菜单。 选择第二个按钮,可以创建ContextMenu菜单。 选择它后,菜单编辑器左上角的第三个按钮就会变成可用,单击它就可以创建ContextMenu主菜单。 在选中已经创建的ContextMenu主菜单后,可以单击第二个按钮创建选中的ContextMenu主菜单的子菜单。 与下拉式菜单一样,选中创建的某个ContextMenu菜单,菜单编辑器的右边就会显示该菜单的有关属性,可以在这里设置、修改菜单的属性。 菜单编辑器左上角的第四个与第五个按钮用于对选中的菜单进行左移与右移,第六与第七个按钮用于对选中的菜单进行上移与下移,最右边的按钮用于删除选中的菜单。 3.4.3.4位置调整工具 利用位置调整工具,可以对GUI对象设计区内的多个对象的位置进行调整。 从GUI设计窗口的工具栏上选择AlignObjects命令按钮,或者选择Tools菜单下的AlignObjects菜单项,就可以打开对象位置调整器。 对象位置调整器中的第一栏是垂直方向的位置调整。 对象位置调整器中的第二栏是水平方向的位置调整。 在选中多个对象后,可以方便的通过对象位置调整器调整对象间的对齐方式和距离。 3.4.3.5对象浏览器 利用对象浏览器,可以查看当前设计阶段的各个句柄图形对象。 从GUI设计窗口的工具栏上选择ObjectBrowser命令按钮,或者选择View菜单下的ObjectBrowser子菜单,就可以打开对象浏览器。 例如,在对象设计区内创建了3个对象,它们分别是EditText、PushButton、ListBox对象,此时单击ObjectBrowser按钮,可以看到对象浏览器。 在对象浏览器中,可以看到已经创建的3个对象以及图形窗口对象figure。 用鼠标双击图中的任何一个对象,可以进入对象的属性查看器界面。 3.4.3.6Tab顺序编辑器 利用Tab顺序编辑器(TabOrderEditor),可以设置用户按键盘上的Tab键时,对象被选中的先后顺序。 选择Tools菜单下的TabOrderEditor菜单项,就可以打开Tab顺序编辑器。 例如,若在GUI设计窗口中创建了3个对象,与它们相对应的Tab顺序编辑器。 3.5、程序用户界面的设计 3.5.1概述 用户界面是用户与计算机进行信息交流的方式。 计算机在屏幕显示图形和文本,若有扬声器还可产生声音。 用户通过输入设备(如: 键盘、鼠标、跟踪球、绘制板或麦克风),与计算机通讯。 用户界面设定了如何观看和如何感知计算机、操作系统或应用程序。 通常,多是根据悦目的结构和用户界面功能的有效性来选择计算机或程序。 搜集了matlab用户界面设计的相关知识后,就着手设计用户界面的设计。 3.5.2程序用户界面设计结果 最后设计效果如下: 3.5.3程序用户界面设计代码 其代码如下: functionvarargout=untitled(varargin) %UNTITLEDM-fileforuntitled.fig %UNTITLED,byitself,createsanewUNTITLEDorraisestheexisting %singleton*. % %H=UNTITLEDreturnsthehandletoanewUNTITLEDorthehandleto %theexistingsingleton*. % %UNTITLED('CALLBACK',hObject,eventData,handles,...)callsthelocal %functionnamedCALLBACKinUNTITLED.Mwiththegiveninputarguments. % %UNTITLED('Property','Value',...)createsanewUNTITLEDorraisesthe %existingsingleton*.Startingfromtheleft,propertyvaluepairsare %appliedtotheGUIbeforeuntitled_OpeningFcngetscalled.An %unrecognizedpropertynameorinvalidvaluemakespropertyapplication %stop.Allinputsarepassedtountitled_OpeningFcnviavarargin. % %*SeeGUIOptionsonGUIDE'sToolsmenu.Choose"GUIallowsonlyone %instancetorun(singleton)". % %Seealso: GUIDE,GUIDATA,GUIHANDLES %Edittheabovetexttomodifytheresponsetohelpuntitled %LastModifiedbyGUIDEv2.526-Jun-201118: 37: 24 %Begininitializationcode-DONOTEDIT gui_Singleton=1; gui_State=struct('gui_Name',mfilename,... 'gui_Singleton',gui_Singleton,... 'gui_OpeningFcn',@untitled_OpeningFcn,... 'gui_OutputFcn',@untitled_OutputFcn,... 'gui_LayoutFcn',[],... 'gui_Callback',[]); ifnargin&&ischar(varargin{1}) gui_State.gui_Callback=str2func(varargin{1}); end ifnargout [varargout{1: nargout}]=gui_mainfcn(gui_State,varargin{: }); else gui_mainfcn(gui_State,varargin{: }); end %Endinitializationcode-DONOTEDIT %---Executesjustbeforeuntitledismadevisible. functionuntitled_OpeningFcn(hObject,eventdata,handles,varargin) %Thisfunctionhasnooutputargs,seeOutputFcn. %hObjecthandletofigure %eventdatareserved-tobedefinedinafutureversionofMATLAB %handlesstructurewithhandlesanduserdata(seeGUIDATA) %varargincommandlineargumentstountitled(seeVARARGIN) %Choosedefaultcommandlineoutputforuntitled handles.output=hObject; %Updatehandle
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 利用 轨迹 判断 系统 稳定性