自动控制系统频域分析的gui仿真设计(附件)【字数:11243】

摘 要自动控制系统就是在无人直接操作或干预的条件下,通过控制装置使控制对象自动的按照给定的规律运行,使被控量按照给定的规律去变化的系统。在现代工业生产中,自动控制系统已经遍布每一个角落,对于线性时不变系统,可以通过时域、频域分析法来分析系统的性能,但是对于多输入多输出的控制系统,时域、频域分析已经无能为力,鉴于这样的控制系统,可以通过线性系统的状态空间分析法来分析。本文针对自动控制系统的设计很大程度上还依赖于实际系统的反复实验,结合具体的实例,介绍了利用先进的MATLAB软件对自动控制系统进行时域、频域分析和线性系统状态空间分析的方法,通过快速直观的仿真和分析达到自动控制系统的优化,并利用GUI实现。MATLAB/GUI是一种包含多种对象的图形窗口,利用GUI能进行可视化界面的设计并对实例进行仿真。关 键 词MATLAB/GUI;自动控制系统;频域分析;状态空间ABSTRACTAutomatic control system makes object operate according to a certain law automatically to let the controlled quantity change by given law on the condition that nobody operate and control directly.Automatic control system exists every corner of the world in the modern industrialized production,which can analyze the performance of the system by time domain and frequency domain for the linear time-invariant control systems. However, to the system with multiple inputs and multiple outputs,the way to analyze through time domain and frequency domain can not do anything. Due to the control system, it can  *好棒文|www.hbsrm.com +Q: #351916072# 
analyze through linear system state space.Due to this point that the design of automatic control system largely depends on repeated practice and modification, combined with the concrete example, this paper introduces the way to analyze and simulate the time domain and frequency domain and linear system state space of automatic control system by advanced MATLAB,it can reach the optimal of automatic control system by direct and fast with GUI.GUI is a kind of graphical window with several objects. GUIDE has provided a flexible and efficient integrated environment.Key wordsMATLAB/GUI;Automatic control system;Time domain; Frequency domain;State space第一章 绪论 11.1 自动控制系统概述 11.2 MATLAB简介及GUI图形用户界面的应用概述 11.3 课题的研究内容及要求 2第二章 基于GUI的设计原则 32.1 GUI的设计原则 32.2 建立GUI的方法 32.2.1 GUI设计的三个阶段 32.2.2 GUI属性设置 3第三章 控制系统基本性能分析的GUI设计实现 83.1 控制系统基本性能分析的主界面设计 83.2 自动控制系统时域分析设计及MATLAB实现 113.2.1 时域分析介绍 113.2.2 控制系统的时域动态性能指标分析及MATLAB实现 113.3 线性系统的时域稳态性能分析及MATLAB实现 13第四章 线性系统的频域分析及MATLAB实现 174.1 传递函数的定义及模型的建立 174.2 系统的频域分析介绍 184.3 频率特性的基本概 184.4 频率分析的两种方法 20第五章 控制系统的状态空间分析及MATLAB实现 215.1 状态空间分析介绍 215.2 状态空间模型的建立 215.3 控制系统的可控性与可观性 225.4 李雅普诺夫稳定性分析 24结束语 27致 谢 28第一章 绪论1.1 自动控制系统概述自动控制,简单来说就是在没有人参与的情况下,使输出通过控制器按照设计及人员的意愿变化。系统的设计是有目的性的,由各个不同功能的部件组成,各部件间相互影响,完成要达到的要求。一般来说,自动控制系统有三个指标,即快速性、准确性、稳定性。快速性就是要求被控量必须迅速而准确地随给定量变化而 变化,并且尽量不受任何扰动的影响。准确性就是稳态误差的大小,稳态误差越小,系统输出量跟随输入量就越准确。其中最基础的是稳定性,系统不稳定还谈什么快速性、稳定性,稳定就是不发散,系统输出量最终趋于一定值。这三个性能指标都需要大量且繁琐的计算,一旦系统不满足指标,就要重新设计系统,然后还要再计算这几个性能,所以过程很麻烦,效率很低。自动控制如今在生产线上的应用已十分广泛,大大提高了生产的自动性,生产效率也随之上升。1.2 MATLAB简介及GUI图形用户界面的应用概述MATLAB最初是由美国MathWorks公司所生产的一个拥有强大计算能力的软件,应用于很多领域之中,主要是用作于算法开发、数据分析以及数值计算的高级技术语言和交互式环境,在自控中应用最多的就是Simulink搭建模型。它把矩阵计算、科学数据可视化以及非线性动态系统的建模仿真等功能集成在一个视窗环境中,这是如今国际科学计算软件的前沿。MATLAB是当今的三大数学软件之一。它在数学类科技应用软件的地位很高。它的应用领域很广泛,有工程计算、信号处理与通信、信号监测、模式识别、图像处理、控制设计等等。在这些领域,它能够进行矩阵运算、实现算法、创建用户界面、连接其他编程语言、绘制函数和数据等功能,是一个强大软件工具。MATLAB主要由以下三个部分组成(1)MATLAB图形处理系统可以完成二三维数据可视化、图像处理创建图形用户借口等功能;(2)MATLAB数学函数库从简单到复杂的数学计算如FFT都可以进行;(3)MATLAB应用程序接口在MATLAB中可以调用其他程序。GUI是提供人机交互的工具和方法,通过GUI制作一个人机交互界面,包括界面背景、菜单栏、按钮和文本都是很方便的。而通过设置回调函数,当激活这些对象的时候,就可以实现预设的功能,例如单击鼠标,就是选择目标或者进行其他操作。一个有着丰富经验的用户设计的GUI界面,会让人很直观得明白设计的目的,并且操作人性化、简单。MATLAB的GUI为开发者提供了一个不脱离MATLAB的开发环境,有助于MATLAB程序的集成。1.3 课题的研究内容及要求在学习自动控制原理的时候,我们就发现不论是建立数学模型,还是绘制根轨迹图、伯德图或是奈奎斯特图都需要大量的计算,而且还不能保证计算的正确性。尤其是在教学和实验当中,大量的计算就意味着效率的低下。在现代追求快速和简易的社会,应运而生,这一强大的软件提高了计算效率,而且自带各种函数,方便了我们对自动MATLAB控制系统的分析。MATLAB强大的数学应用能力是毋庸置疑的,然后又可以通过GUI设置图形用户界面,调用MATLAB的函数,从而使得计算的过程只需要鼠标的简单点击就轻松完成。这是一个复杂过程的集成,让不熟悉MATLAB或者需要重复进行特定计算的人节省时间和精力。本课题研究的是利用MATLAB下图形用户界面(GUI)的可视化功能,结合自动控制原理的教学内容,构建一个自动控制原理仿真平台。仿真平台包括数学模型的建立、时域和频域分析,还有状态空间分析,并调用函数绘制根轨迹、Bode图、奈奎斯特图,实现对自动控制系统的性能分析。本课题的研究步骤(1)查阅有关MATLAB/GUI仿真的有关资料,理解本课题的研究内容,最后应达到的目的要求;(2)认真学习控制系统的基本原理,熟练掌握MATLAB/GUI软件并使用该软件进行自动控制系统仿真;(3)进行系统分析,绘制系统图和逻辑框图;(4)开始设计MATLAB/GUI仿真系统,完成仿真实验,在相应的界面给出相应控制系统的特性曲线;(5)完成对整个系统进行的测试与演示。第二章 基于GUI的设计原则2.1 GUI的设计原则MATLAB图形用户界面开发环境提供了一系列创建用户图形界面(GUI)的工具极大的简化了GUI设计和生成的过程。GUI的设计过程主要包括四个步骤,先添加组件,启动菜单编辑器添加新菜单,然后设置菜单和各组件的属性,并调用函数。GUI有如下特点(1)通过设置按钮或菜单的回调数,简化一个或多个函数反复调用;(2)人性化的界面,使用方便;(3)系统稳定可靠性好。2.2 建立GUI的方法本设计通过键入GUIDE命令打开GUI编辑界面,在这个界面中,通过鼠标的点击就能添加所需的各种控件,简单方便且直观。另一方面,用这种方式建立的GUI界面修改起来也比较容易,要修改的部分程序找起来十分容易。2.2.1 GUI设计的三个阶段通过GUI编辑界面设计一个完整的GUI界面,主要有一下几个阶段(1)初步规划,控件选择阶段。该阶段主要是进行大体的规划,从最终目的出发,选择控件和所需的回调函数;(2)结构设计阶段。该阶段需要的是对整个界面中控件的合理布局,保证界面的美观,并设置控件的属性;(3)功能设计阶段。这个阶段主要是对菜单、按钮等控件编写回调函数的程序,通过各个功能的完成最终目的的实现。一个GUI应用软件的实现,最终是要通过对控件对象的操作来完成,而这些操作必定是通过MATLABE中函数代码的执行来实现。函数代码的编制即可以通过编写回调函数完成,而后在编写时可以把该控件的函数代码直接写在callback中;也可以把函数代码放在一个自动以的M文件中,而后在callback中只将其文件名写上。2.2.2 GUI属性设置相比于M文件编程,图形用户界面不仅仅要内部程序,还要设计美观的界面。这个图形用户界面由各种控件组成,用户可以通过选择或点击就可以激活内部程序,从而完成相应的功能。MATLAB的内核程序就是控件的回调函数,不同的控件组合不同的函数可以实现各种各样的功能。下图2.1为GUI对象的层次结构。/图2-1 GUI对象的层次结构图一般GUI的设计方法有两种,一种是用M文件,但是这种对编程能力有很大的要求,还要对各种函数了然于心。所以本文采用的是第二种,即GUIDE辅助设计,这种只需要讲现成的控件进行拖放,然后设置想要的属性和回调函数。首先新建一个空白的Guide,如图2-2所示。/图2-2 新建空白GUI新建一个空白模版后,会看到一个有很多功能选项的操作板,如图2-4所示。其中主要有四个部分,菜单栏、工具条、GUI设计区域和控件面板。空白模版如下图2-3所示。/图2-3 Guide设计界面/图2-4组建面板在上述模版中,共有两列十四种组件,只需要对控件进行简单的拖放,保持规划界面美观。这些组件的具体名称、功能如表2-1所示。表2-1组件名称与功能/通过点击或选择可以激活组件,进行属性设置和函数回调,例如按钮,其属性设置框如图2-5所示。在这里可以修改组件的Tag,name,sting等属性。/图2-5按钮属性设置框GUI图形用户界面的另一个非常强大的功能就是可以设置各种回调函数,就是当对象被激活某个动作后,MATLAB内部允许的自动调用的函数,常用的回调函数包括关闭窗口时响应函数(Close Request Fcn),键盘键按下时响应函数(Key Press Fcn),鼠标键按下时响应函数(Window Button Down Fcn),鼠标移动时响应函数(Window Button Motion Fcn),标键释放时响应函数(Window Button Up Fcn);建立和删除对象时响应函数;对象被选中时回调函数(CallBack)等。不论是窗口还是具体控件,都可以设置回调函数实现功能,并且回调函数在GUI中几乎是必要的,有助于编写良好的用户界面。第三章 控制系统基本性能分析的GUI设计实现3.1 控制系统基本性能分析的主界面设计本课题对控制系统进行了三个方面的研究分析,其中包括时域分析、频域分析、状态空间分析。在GUI的设计时本文相应地设计了三个模块对线性系统进行研究分析,如图3-1所示的三个按钮。打开主页面弹出下图/图3-1 GUI界面点击4个button按钮分别连接线性控制系统的时域分析、频域分析、线性系统的状态空间分析及运行结束的相关内容。在GUI的主界面创建打开图片文件菜单操作步骤如下(1)在命令窗口中键入guide,回车之后选择空白面板,就可以开始图形用户界面的设计了;(2)选择工具中的菜单编辑器,在菜单编辑器中单击空白页完成新建菜单,命名为“文件”,并在右侧改标签和其他属性;(3)然后再在文件下加入打开、保存、退出几个菜单项;(4)保存之后,自动打开.m文件,我们其他所有的的程序都在这里编写。对于每一个组件进行鼠标右击选择属性检查器,并且点击不同的区域会自动显示对应的属性,之后就可以设置属性,包括name、Tag和string等等。下面是打开功能的设置,例如打开一张图片,要在open的回调函数中编写以下程序/将M文件保存后,运行程序。在界面中选择文件--打开,打开的对话框如下图3-2/图3-2用户界面“打开”响应选择一个文件后,程序中的变量filename会自动变为所选的文件名,变量pathname就是所选文件的路径。那么获得路径之后,我们要插入图片要用到imread函数,但是图片的放置之前需要一个位置,用于显示所选择打开的图片,所以画一个坐标轴并将其Tag属性改为axes-src,然后保存。保存后如图3-3所示/图3-3插入图片的坐标轴然后再open的回调函数程序原来的基础上,添加如下程序/Imshow的作用是在所画的坐标轴上显示结果,通过“打开”选项,打开一个图片,效果如图3-4/图3-4插入图片结果图对线性系统三个模块的调用通过按钮控制,可分别弹出线性系统的时域、频域、状态空间分析模块。利用figure( );函数即可实现相应窗口的调用。主窗口退出的实现 在退出按钮的callback中采用如下程序即可实现answer=questdlg(Do you want to close the window?);if answer==Yes; closeend效果如图3-5/图3-5退出效果实现3.2 自动控制系统时域分析设计及MATLAB实现3.2.1 时域分析介绍时域分析法概括来说,就是将系统的微分方程进行拉普拉斯变换,由转换后的s域传递函数求出系统的响应,可以直接由系统的相应曲线分析系统的性能,调节时间、上升时间等指标也是十分直观的。在自动控制时域动态分析中,有单位冲击响应、单位阶跃响应、单位斜坡响应、单位加速度响应等,其中最能检测出一个系统性能优良的是单位阶跃响应,所以一般采用阶跃信号作为输入,模拟工业环境下系统的性能。时域分析另一个要做的就是计算系统的性能指标,线性系统的性能指标分为动态性能和静态性能,当然这些是在系统稳定的前提下才有意义的。动态指标是指输出跟随输入的能力,包括上升时间tr,峰值时间tp,超调量,调节时间ts等等。一般的工业环境还有外部干扰,所以受到干扰后的动态降落和恢复时间也是一个重要指标。3.2.2 控制系统的时域动态性能指标分析及MATLAB实现一般来说动态性能指标是指在阶跃信号作用下,稳定系统的动态过程随时间t变化的指标。系统动态性能之所以用阶跃信号作为输入信号,是因为相比于其他信号,阶跃信号是比较严峻的工作状态,如果系统在阶跃信号的作用下动态和稳态性能都能满足要求,那么系统在其他输入信号作用下,其系统性能也是可以满足的。所以通常以阶跃响应作为分辨控制系统性能的好坏和定义瞬态过程的时域性能指标。稳定的控制系统,在不讨论扰动的情况下,其单位阶跃响应有衰减振荡和过阻尼的单调变化两种。(1)衰减振荡衰减振荡的瞬态过程如图3-6所示:/图3-6衰减振荡图MATLAB提供了线性定常系统的各种时间响应函数和各种动态性能分析函数,本课题主要介绍step()函数、tf()函数。tf()函数建立传递函数模型。step()函数求线性定常系统的单位阶跃响应。其调用格式分别如下 sys=tf(num,den); step(sys);其中num和den分别表示系统传递函数的分子与分母多项式系数表示的向量。控制系统常用的动态性能指标有以下几个①延迟时间, ②上升时间,③峰值时间,④调节时间,⑤超调量%。调节时间是指阶跃响应达到并保持在终值y(∞)的±2%或±5%误差内所需的最短时间。在默认情况下MATLAB计算动态性能时,取误差范围为±2%。它反映了动态响应过程进行的快慢,是系统快速性指标,值越小,系统的快速性就越好。超调量是指峰值y(tp)超出终值y(∞)的百分比,即 / 式(3-1)在上述几种性能指标中,、、表示瞬态过程进行的快慢,是快速性指标;而% 反映瞬态过程的振荡程度,是振荡性指标。其中 % 和是两种最常用的性能指标。(2)单调变化单调响应的过程如图3-7所示/图3-7系统单位阶跃响应曲线这种情况没有峰值时间和超调量,ts不仅可以反映动态性能,也和稳态性能有关,峰值时间越短越好。3.3 线性系统的时域稳态性能分析及MATLAB实现 稳态过程,指在典型输入信号作用下,随着时间的增大,系统输出趋于一定值。(1)稳定性如果在扰动作用下系统偏离了原来的平衡状态,在扰动消失后,系统能够快速恢复到原来的平衡状态,系统就是稳定的;否则系统不稳定。系统稳定才有改善指标的必要。控制系统的稳定性只取决于系统本身,与外界无关。①用零极点分布图判断系统的稳定性若系统是连续时间控制系统,其闭环传递函数的极点均严格位于S左半平面,则此系统是稳定系统。在MATLAB中,用此方法可以判断该线性系统的稳定性。利用函数pzmap()可在坐标轴中绘制系统的零极点分布图。然后,观察是否有位于S右半平面的极点分布,若有,则可知该系统不稳定,否则该系统稳定,从而判断出系统的稳定性。该性能在GUI中的实现例如已知系统的传递函数为G(s)= (S+1)/(S^2+S+10),绘制其零极点分布图并判断该系统的稳定性。MATLAB编程sys=tf([ 1 1 ],[ 1 -2 1]);pzmap(sys);ylabel(‘j’);title(‘零极点分布图’);grid on; / 图3-8系统的零极点分布图由上图可知该系统位于S右半平面的极点有2个,分别为0.5+1.3229i和0.5-1.3229i,所以该系统不稳定。②稳定性的根轨迹判据根轨迹,简单来说就是开环系统某一变量从0变化到无穷大时,闭环特征方程根的轨迹。绘制根轨迹只需要由开环传递函数计算出零极点的分布,加上八个简单规则的计算就可以绘制出图形。当然,在MATLAB中不需要这么麻烦的计算,只需要利用rlocus函数,系统就可以自动绘制出根轨迹,同时可以求出特殊点的K值。已知一控制系统,H(s)=1,其开环传递函数为:G(s)=0.0248/s(s+1)(s+2),绘制其根轨迹并判断稳定性。MATLAB编程num=[ 0.0248];den=[ 1 3 2 0];rlocus(num,den);%根轨迹。axes(handles.axes2);grid on;xabel(Re);ylabel(‘Im’);/ 图3-9系统的根轨迹由根轨迹图可得到该系统的零极点P1=-2.0151,P2=-0.9692, P3=-0.0158。则该闭环系统具有不同的负实数极点,表明系统处于过阻尼状态,系统稳定。(2)在MATLAB中用GUI实现对线性控制系统的时域分析:设计GUI界面对控制系统进行时域分析,用以分析实现稳定的控制系统性能。在图形用户界面中要设置两个edit text(编辑控件),三个axes(坐标控件),一个listbox(列表框),三个push button(动态按钮控件)和八个static text(静态文本框控件)。将所需控件拖放到区域中进行合理布置,并设置属性。保存后在M文件中编写控件的回调函数,完成控制系统的时域分析。程序如下/这个程序就是先将edit1的编辑框控件内的字符串数据转化成数值数据后赋值给ts,再将变量ts转换成char型,然后赋给text1的静态文本框控件。MATLAB中的step()函数可以直接给出控制系统的单位阶跃响应,并显示响应曲线。当已知系统的闭环传递函数时,step()函数的调用格式为函数中的num,den分别为系统闭环传递函数分子,分母多项式降幂排列多项式系数向量,其中t为指定的时间向量,没设置时按默认值计算。若当输入的是单位反馈系统的开环传递函数分子(a)、分母(b)多项式系数向量时,须先用 [num.den]=cloop(a,b)函数求得该系统的闭环传递函数再调用step()函数即可。函数输出参数表y,x,t表达在某时刻t,输入x所引起的输出为y,均为向量形式。完成回调函数后,以上程序总体运行后即得图3-10所示的图形用户界面。/图3-10线性控制系统的时域分析总界面设计第四章 线性系统的频域分析及MATLAB实现4.1 传递函数的定义及模型的建立(1)传递函数传递函数的定义为零初始条件下,输出的拉普拉斯变换与输入的拉普拉斯变换之比,非线性系统没有传递函数。拉普拉斯变换后的传递函数简化了分析系统性能的计算量,系统结构参数的变化都会在传递函数上表现出来。根轨迹法和频域分析法是经典控制理论中的核心,这些都是对开环传递函数的研究。设线性定常系统的微方程一般可写为  式(4-1)其中,是系统输出量;为系统输入量;和是由系统参数决定的。设和及各阶导数在t=0时的值均为零,即是零初始条件,则对上式中各项分别求拉普拉斯变换,并令,,可得s代数方程为 式(4-2)于是,由定义得系统传递函数为  式(4-3)(2)线性系统的传递函数模型建立MATLAB中线性系统可以很方便地由分子和分母多项式系数构成的两个向量唯一地确定,这两个向量分别用num和den表示。已知系统的传递函数,利用GUI建立传递函数模型。程序如下/其运行后的GUI界面如下图4-1所示/ 图4-1 传递函数模型建立的设计界面4.2 系统的频域分析介绍线性系统的数学模型分析、研究控制系统的基础。当建立起系统的数学模型后,就可以采用各种方法分析系统的运动。频域分析法是用频率特性来研究控制系统的一种方法,它是基于频率特性或频率响应对系统进行分析和设计的一种图解法,故又称为频率响应法。这种方法可以直观地表达出系统的频率特性,从而可以比较方便地由频率特性来确定系统性能。频域分析法里主要用到3种曲线Bode图、Niquist图,其中Bode图在频域分析里占有重要的地位。4.3 频率特性的基本概(1)频率响应系统的频率响应,用G(jw)表示,指的是在正弦信号输入下,系统稳态输出随自然振动频率从零到无穷变化的规律。(2)频率特性正弦信号作用下,系统输出的稳态分量为同频率的正弦信号,其振幅与输入正弦信号振幅的比相对于正弦信号角频率间的关系A(w)叫做幅频特性,其相位与输入正弦信号的相位之差相对于正弦信号角频率间的关系φ(w)叫做相频特性。系统频率响应与输入正弦信号的复数比叫做系统的频率特性。记作 G(jw)=A(w)* 式(4-4)系统的频率特性与系统的传递函数之间有着简单而直接的关系 G(jw)=G(s)| 式(4-5)(3)幅相特性系统的频率特性G(jw)=A(w)·中既有振幅信息又有相位信息,所以又叫做系统的幅相特性。(4)频率性能指标①峰值它是幅频特性A(w)的最大值,一般来说,峰值的大小表明闭环控制系统相对稳定性的好坏,峰值越大,表明系统对某个频率的正弦信号反应强烈。②截至频率:系统开环对数幅频特性曲线20lg|G(jw)|与横坐标轴w交点的角频率,常用来表示。③穿越频率系统开环对数相频特性曲线φ(w)与-线交点所对应的角频率,常用来表示。④稳定裕度:a.相角稳定裕度系统开环幅相特性曲线G(jw)上模值等于1的向量与负实轴的夹角,常用来表示,即 =()-(-)。 式(4-6)b.幅值稳定裕度系统开环幅相特性曲线G(jw)与负实轴交点模值|G()|的倒数,常用h来表示,即 h=||。 式(4-7)4.4 频率分析的两种方法(1)Bode图Bode图就是对数频率曲线。设已知系统的传递函数模型为  式(4-8) 则系统的频率响应可直接求出,得  式(4-9)系统的Bode图就是的幅值与相位对w进行绘图,因此也称为幅频和相频特性曲线。横坐标都是角频率,是按常用的对数刻度即,对数相频特性的纵轴坐标是,其单位为角度;对数相频特性的纵轴坐标是,其单位为分贝。Bode判据,实质上是奈氏判据的引伸。本开环系统是最小相位系统,在左半平面没有零点,用Wc表示对数幅频特性曲线与横轴(0dB)交点的频率,Wx表示对数相频特性曲线与横轴(-180o)交点的频率,则对数判据可表述如下在P=0时,若开环对数幅频特性比其对数相频特性先交于横轴,即WcWx,则闭环系统不稳定;若Wc=Wx,则闭环系统临界稳定。(2)Nyquist曲线Nyquist曲线是根据开环频率特性在复平面上绘出的幅相轨迹。根据开环的Nyquist的曲线,可判定闭环系统的稳定性。奈氏稳定判据的内容是若开环传递函数G(s)在s域左半平面上有P个极点,则当系统角频率W由-∞变到+∞时,奈奎斯特曲线在复平面上顺时针围绕(-1,j0)点转P圈,则闭环系统稳定,否则,不稳定。第五章 控制系统的状态空间分析及MATLAB实现5.1 状态空间分析介绍用状态空间法进行控制系统的分析和综合,比以传递函数为基础的分析设计方法更为直接和方便。以下为状态空间所需要的几个基础概念状态向量状态向量是以状态变量为元组成的向量。如x1(t),x2(t)、x3(t),,xn(t)是系统的一组状态变量,则状态向量就是以这组状态变量为分量的向量。其中,状态变量的选取不具有唯一性,同一种系统可能有多种不同的选取方式。状态空间以x1(t),x2(t),x3(t),,xn(t)为坐标轴所组成的正交n维空间,称为状态空间,状态空间中的每一点,都代表状态变量的唯一和特定的一组值。状态方程由系统的状态变量构成的一阶微分方程组,称为系统的状态方程。状态方程表征了系统由输入所引起的内部状态变化。对线性系统的状态分析的研究与分析的GUI设计应用下表5-1的函数设计。表5-1线性系统状态空间分析应用函数/5.2 状态空间模型的建立现代控制理论中的状态空间简单地说就是将描述系统运动的高阶微分方程改写成一阶联立微分方程组的形式或将系统的运动直接用一阶微分方程组来表 示,写成矩阵形式,这样就得到了状态空间的模型。连续系统状态空间模型为 =A+B  =C+D 式(5-1)其中,为r×1的输入(r个)向量;为n×1的状态变量;为m×1的输出向量;A为n×n的系统矩阵(状态矩阵),由控制对象的参数决定;B为n×r的控制矩阵(输入矩阵);C为m×n的输出矩阵(观测矩阵);D为m×r的前馈矩阵。本设计采用输入线性系统的传递函数模型。在对系统进行状态空间分析时,须先转换成状态空间模型,用[A,B,C,D]=tf2ss(num,den)函数即可实现两者模型间的转换。若已知控制系统的传递函数模型,求同一系统所对应的状态空间模型。该功能在MATLAB中的实现如下MATLAB语言编程/调用以上函数,运行得到的GUI界面如图5-1所示。/ 图5-1 状态空间模型转换的界面设计5.3 控制系统的可控性与可观性在状态空间分析中,系统的可控性和可观性是非常重要的概念,是现代控制理论中两个基本的概念。如果系统所有状态变量的运动都可以通过有限的控制点的输入来使其由任意的初态达到任意设定的终态,则称系统是可控的,更确切地说是状态可控的;相应地,如果系统所有状态变量的任意形式的运动均可由有限测量点的输出完全确定出来,则称系统是可观测的,简称系统可观测。(1)控制系统的可控性线性系统=A+B,在时刻的任意初始值=,对于>,(J为系统的时间定义域),可找到控制,其在[,]上的状态是完全可控的。系统带的完全可控性只取决于状态方程中的(A,B)矩阵。可以构造一个相似变换矩阵。 =(,...,) 式(5-2)其中,n为系统的阶次,矩阵Tc称为系统的可控性变换矩阵。矩阵可以由控制系统工具箱中提供的ctrb()函数自动生成出来,其调用格式为Tc=ctrb(A,B) 其中,Tc为矩阵的秩,即rank(Tc),它的值是系统中可控状态的数目。如果rank(Tc)=n,则系统完全可控。(2)控制系统的可观性线性系统=A+B,在时刻存在>,(J为系统的时间定义域),如果根据[,]的观测值y(t),在t[,]区间内能够唯一地确定系统在时刻的任意初始状态,则称系统在[,]上的状态是可观测的。系统的可观性只取决于状态方程的(A,C)矩阵。可以构造一个相似变换矩阵To。 =,,..., 式(5-3)其中,n为系统的阶次,矩阵T0称为系统的可观测变换矩阵。矩阵T0可以由控制系统工具箱中提供的obsv()函数自动生成出来,其调用格式为To=obsv(A,C),其中,To为矩阵的秩,即rank(To),它的值是系统中可观测状态的数目。如果rank(To)=n,则系统完全可观测的。若已知控制系统的开环传递函数,判断该系统的可观测性及可控性。MATLAB语言编程如下/对系统的可控性和可观性进行分析设计了下面的GUI界面,在对应的edit框中输入想要计算的式子的分子分母矩阵,调用以上函数,点击求可观性判断的按钮实现对求可观性矩阵、秩及可观性的判断,点击求可控性判断的按钮实现对求可观性矩阵、秩及可观性的判断,实现的结果如图5-2所示。 / 图 5-2 线性系统可控性及可观性判断界面设计5.4 李雅普诺夫稳定性分析设系统的状态方程为  式(5-4) 式中 X——系统的状态向量,是矩阵;——状态向量X及时间t的函数向量。又设在给定的初始时刻的初始条件下,状态方程有唯一解且,其中为初始时刻,为状态向量X的初始值,t为时间变量。在下面的式子描述的系统中,对所有t,若总存在  式(5-5)则称为系统的平衡状态。如果系统是线性定常系统,则,而且当A为非奇异矩阵时,该系统只有一个平衡状态;当A为奇异矩阵时,该系统有无穷多个平衡状态。对于非线性系统,它可以有一个或多个平衡状态,这些状态都和系统的常值解相对应。系统的平衡状态可由上示解出。任意一个平衡状态都可以通过坐标变换转移到坐标原点,即处。因此,研究系统的稳定性,主要是研究其平衡状态的稳定性,特别是分析坐标原点所代表的的状态的稳定性。(1)本设计判断线性系统稳定性的方法利用了MATLAB中提供的求解连续李雅普洛夫矩阵代数方程的函数lyap()。基于此函数求解连续李雅普洛夫所得对称矩阵解后,通过判定该解矩阵的正定性来判断线性系统的稳定性。函数lyap()的主要调用格式为 P=lyap(A,Q)其中,矩阵A和Q分别为连续时间李雅普洛夫矩阵代数方程+  = 式(5-6)上式中P矩阵为该矩阵代数方程的对称矩阵解。在求得对称矩阵P后,如果矩阵P正定,则系统稳定;P矩阵不正定,则系统不稳定。MATLAB语言编程/对李雅普诺夫法稳定性分析,设计如图 5-3所示的GUI界面,对内部进行编程,应用表5-1所示函数设计如下GUI界面。下图是对李雅普诺夫法稳定性分析的设计,在对应的edit框中输入想要计算的式子得分子分母矩阵,通过调用M文件函数实现。/图5-3李雅普诺夫稳定性分析界面设计点击主界面中的线性系统的状态空间分析按钮连接到下图,线性系统的状态空间分析包括两方面的研究与分析,分别是李雅普诺夫稳定性分析和系统的可控性和可观性分析。/图5-4线性控制系统状态空间分析结束语本课题是基于GUI的自动的控制系统分析。在设计过程中,选用了MATLAB7.0,设计GUI图形界面对线性系统进行研究分析。本设计首先对线性系统建立了数学模型,其中包括建立传递函数模型和状态空间模型。其次,对线性系统进行了时域、频域,状态空间三个方面的分析。其中对线性系统时域分析有系统的动态性能指标分析、阶跃响应和稳定性分析的GUI设计。对线性系统的频域分析有系统的频域重要性能指标和Bode图、尼克尔斯、奈奎斯特曲线分析的GUI设计。对线性系统的状态空间进行分析有系统状态空间模型的建立、可控可观性及李雅普洛夫稳定性分析的GUI设计。在采用的MATLAB7.0软件中,利用GUI图形界面设计出的线性系统分析界面,使我对于线性系统的知识理解学习更加直观,透彻,也掌握了MATLAB语言的编程。同时在程序调试过程中,通过对系统的软件进行了编程,使得控制系统的理论研究得以实现。时域分析法是一种直接法,它以传递函数位系统的数学模型,以拉氏变换作为数学工具,可以求出对应系统的时间响应的全部信息,具有直观和准确的优点。时域法是最基本的分析方法。频域分析法是基于频率特性和频率响应对系统进行分析的,可通过开环传递函数来研究系统闭环特性。当系统传递函数难以确定时,可以通过实验法确定频率特性,还能推广应用于某些非线性系统。状态空间分析法可以用来研究多输入多输出系统,克服了经典控制理论中的局限性。致 谢毕业设计已接近尾声,作为没有项目经验的我,要特别感谢孙传峰老师,从选题到查阅文献资料,论文提纲的确定,开题报告的填写,中期论文内容的修改,后期论文格式的调整,没有老师的提点,我真的是感觉无从下手。除此之外,还要感谢我的母校,没有母校的悉心培养,各种实验环境的提供,就没有我的一次次失败后的进步。四年的大学生活是深刻在我心中的美好回忆,各位敬爱的老师对我们专业课程的教导,让我在论文编写过程中得心应手;还有我的朋友们,我们相互帮助,相互激励。这次毕设课题的完成,使我收获了丰富的专业知识,增强了我的实践动手能力,将四年学习的知识相互融合,对我以后的学习也是一种激励。最后,再一次真诚地向毕设期间,帮助过我的老师和同学表示感谢!感谢孙传峰老师全心全意的教导!参考文献[1]夏德钤, 翁贻方.自动控制理论[ M] .北京:机械工业出版社, 2007 .[2]罗华飞.MATLAB GUI 设计学习手记[ M] .北京:北京航空航天大学出版社, 2009 .8.[3]楼顺天.基于MATLAB 的系统分析与设计[ M] .西安:西安电子科技大学出版社, 1999 .[4]程卫国.MATLAB 6 .0 程序设计与实例应用[ M] .石家庄:中国铁道出版社, 2001 .[5]周金萍.MATLAB 6 .5 图形图像处理与应用实例[ M] .太原:科学出版社, 2003. 1]?张利辉,李静,杨锡运,等.自动控制原理[M].北京:中国电力出版社,2009.?[6]黄忠霖.?新编控制系统MATLAB仿真实训[M].北京:机械工业出版社,2013.?[7]王华乔.?基于MATLAB?GUI的自动控制原理仿真软件设计[J]. 计量与测试技术,?2011,2(38):12-14.????[8]赵广元.?MATLAB与控制系统仿真实践[M].北京:北京航空航天大学出版社,2009.[9]祁文哲,王莉莉,孟建军,等.?基于MATLAB的控制系统频率特性实验的开发[J].现代科学仪器?,2007,2:40-42.?[10]蒋燕君.?基于MATLAB的控制系统频率特性仿真与分析[J].浙江树人大学学报,?2005,2(5):102-105.????[11]Lennart Ljung.For Use with MATLAB System Identification Toolbox[J].Mathworks Inc,2001:44-88.[12]Manfred Morari.For Use with MATLAB Model Predictive Control Toolbox[J].Mathwoks Inc,2001:89-12.
目 录

版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jxgc/zdh/808.html

好棒文