最优控制的MATLAB实现_第1页
最优控制的MATLAB实现_第2页
最优控制的MATLAB实现_第3页
最优控制的MATLAB实现_第4页
最优控制的MATLAB实现_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

最优控制的MATLAB实现摘要线性二次型最优控制是一种普遍采用的最优控制系统设计方法。使用MATLAB软件设计的GUI控制界面实现最优控制,有较好的人机交互界面,便于使用。线性二次型最优控制又叫做LQ最优控制或者称为无限长时间定常系统的状态调节控制器。本文分别从连续系统线性二次型最优控制的MATLAB实现,离散系统相形二次型最优控制的MATLAB实现,最优观测器的MATLAB实现,线性二次性Guass最优控制的MATLAB实现四个研究方案。本论文就是从这四个方面分别以不同的性能指标设计不同的GUI界面以及不同的程序实现其功能并说明其各自的应用范围。关键词:线性二次型,最优控制,GUI控制界面,最优观测器,Guass最优控制TheLinearQuadraticOptimalControlofMATLABAbstractLinearquadraticoptimalcontrolisawidelyusedtooptimalcontrolsystemdesignmethod.UseofMATLABsoftwaredesignGUIinterfacecontroltorealizetheoptimalcontrol,Havegoodman-machineinterface,easytouse.ThelinearquadraticoptimalcontrolandcalledLQoptimalcontroloraninfinitelongtimeofthesystemstateregulationandconstantcontroller.ThispaperrespectivelyfromthecontinuoussystemlinearquadraticoptimalcontrolMATLAB,DiscretesysteminquadraticoptimalcontrolMATLAB,TheoptimalobserverMATLAB,sexualGuasslinearquadraticoptimalcontrolMATLABfourresearchplan.ThispaperisfromthefouraspectsoftheperformanceindexrespectivelyindifferentdesigndifferentGUIinterfaceandDifferentprogramsthatrealizeitsfunctionandtheirapplicationscope.Keywords:Linearquadratic,Theoptimalcontrol,GUIcontrolinterface,ThebestGuassobserver,theoptimalcontrol目录1引言11.1概述11.2课题研究的背景、意义及研究概况11.3本文研究的主要内容22最优控制的根本概念32.1最优控制根本思想32.2最优控制的性能指标32.2.1积分型性能指标32.2.2末值型性能指标52.3最优控制问题的求解方法53最连续系统最优控制的MATLAB实现73.1连续系统线性二次型最优控制73.2连续系统线性二次型最优控制的MATLAB实现83.3连续系统线性二次型最优控制的MATLAB实现例如84离散系统线性二次型最优控制的MATLAB实现174.1离散系统稳态线性二次型最优控制174.2离散系统线性二次型最优控制的MATLAB实现与例如185最优观测器的MATLAB实现235.1连续时不变系统的Kalman滤波235.2Kalman滤波的MATLAB实现245.3Kalman滤波的MATLAB实现例如256线性二次型Guass最优控制的MATLAB实现316.1LQG最优控制的求解316.2LQG最优控制的MATLAB实现与例如327结论37参考文献:38致谢391引言1.1概述随着计算机技术的飞速开展,控制系统的计算机辅助设计与分析得到了广泛的应用,目前已到达了相当高的水平。MATLAB是国际控制界应用最广泛的计算机辅助设计与分析工具,它集矩阵运算、数值分析、信号处理和图形显示于一体,构成了一个方便的、良好的用户环境,其强大的科学计算与可视化功能,简单易用的开放式可编程环境,使得MATLAB在控制领域的各个方面都得到了广泛应用。线性二次型最优控制可以使系统的某些性能到达最优,在工程上用得较为广泛,也是现代控制理论课程学习的重点和难点。所谓最优控制,就是根据建立在系统数学模型,选择一个容许的控制规律,在一定的条件下,使得控制系统在完成所要求的控制任务时使给定的某一性能指标到达最优值、极小值或极大值。图形用户界面GUI(GraphicalUserInterface)作为用户与软件交互的一种主要手段,已经成为现代软件的重要组成局部。目前大局部软件的功能主要是通过图形用户界面调用,在软件产品的测试过程中,尤其是功能测试过程中,GUI功能测试占有非常大的比例,GUI测试是现代软件测试的关键环节。GUI系统质量是整个软件产品质量提升和本钱降低的关键。由于GUI软件的独特性,使得原有传统软件的测试方法不大适用于GUI软件的测试,现有关于GUI测试的研究相对较少,资源也相对贫乏,并且GUI手工测试已经无法满足测试要求,因而对GUI测试自动化进行研究具有重要的现实意义。1.2课题研究的背景、意义及研究概况最优控制理论是50年代中期在空间技术的推动下开始形成和开展起来的。美国学者R.贝尔曼1957年提出的动态规划和前苏联学者L.S.庞特里亚金1958年提出的极大值原理,两者的创立仅相差一年左右。对最优控制理论的形成和开展起了重要的作用。线性系统在二次型性能指标下的最优控制问题那么是R.E.卡尔曼在60年代初提出和解决的。对于线性系统,假设性能指标是二次型函数,这样实现的控制叫做线性二次型最优控制,线性二次型最优控制方法是20世纪60年代开展起来的一种普遍采用的最优控制系统设计方法。这种方法的对象是以状态空间表达式给出的线性系统,而性能指标〔或目标函数〕为对象状态与控制输入的二次型函数。二次型问题就是在线性系统的约束条件下,选择控制输入使得二次型目标函数到达最小。到目前为止,这种二次型最优控制在理论上比拟成熟,为解决这类控制问题而开发的MATLAB函数也比拟多,而且这种控制应用非常广泛。目前GUI自动化测试工具普遍采用的是捕获/回放(C/P,Capture/Playback)机制,并没有对GUI测试的自动化提供很好的支持。只能被动捕获被测试系统的执行信息,而不能和被测试系统进行交互,有选择地捕获被测系统的执行信息,且相对于国内软件测试市场,价格较高,国内没有充分得到应用。因而,研究与设计图形用户界面的自动化测试工具,对促进国内GUI应用系统测试自动化具有较深远的意义。1.3本文研究的主要内容本论文将以线性二次型为性能指标,分别从连续系统线性二次型最优控制的MATLAB实现,离散系统相形二次型最优控制的MATLAB实现,最优观测器的MATLAB实现,线性二次性Guass最优控制的MATLAB实现这四个研究方案入手加以深入,力求在做到实现最优控制的前提下,控制界面的灵敏性能够有进一步的提高。同时江不同最优控制的设计进行比拟,探讨各种方法的优缺点。针对上述研究内容,本论文内容具体安排如下:第1章:引言。介绍了线性二次型最优控制以及MATLAB以下图形界面GUI的研究背景、意义和开展概况,并介绍了本文的主要研究内容。第2章:阐述最优控制的根本概念,性能指标以及求解方法。第3章:阐述连续系统线性二次型最优控制的MATLAB实现过程。第4章:阐述离散系统相形二次型最优控制的MATLAB实现过程。第5章:阐述最优观测器的MATLAB实现过程。第6章:阐述线性二次型Guass最优控制的MATLAB实现过程。2最优控制的根本概念2.1最优控制根本思想设系统状态方程为〔2-1〕式中,是n维状态向量;是p维控制向量;n维向量函数是与t的连续函数,且对与t连续可微;在[]上分段连续。所谓最优控制问题,就是要求寻找最优控制函数,使得系统状态从以知初态转移到要求的终端状态,在满足如下约束条件下:〔1〕控制与状态的不等式约束〔2-2〕〔2〕终端状态的等式约束〔2-3〕使性能指标〔2-4〕到达极值。式中是m维连续可微的向量函数,的连续可微纯量函数。2.2最优控制的性能指标自动控制的性能指标是衡量系统性能好坏的尺度,其内容与形式取决于最优控制问题所要完成的任务,不同的控制问题应取不同的性能指标,其根本类型如下。积分型性能指标〔2-5〕表示整个控制过程中,系统的状态与施加给系统的控制作用应当到达某些要求。例如:〔1〕最小时间控制中选取那么〔2-6〕这种控制要求设计一个快速控制规律,使系统在最短时间内从以知的初态转移到要求的末态。例如,导弹拦截器的轨道转移就是属于此类问题。〔2〕最小燃料消耗控制中选取那么〔2-7〕是航天工程中常遇到的重要问题之一。例如,宇宙飞船这种航天器具所携带的燃料有限,希望在轨道转移时,所消耗的燃料尽可能的少,就是属于此类问题。〔3〕最小能量控制中选取那么〔2-8〕对于一个能量有限的物理系统,例如,通信卫星的太阳能电池,为了使系统在有限的能源条件下载尽可能长的时间内保证正常工作,需要对控制过程中的能量消耗进行约束,就是属于此类问题。〔4〕无线时间线性调节器取,且其中,均为加权矩阵,那么〔2-9〕〔5〕无限时间线性跟踪器取,且〔2-10〕其中,为系统输出向量,为系统希望输出向量。在性能指标式〔2-8〕、式〔2-9〕、式〔2-10〕中,被积函数都是由的平方项所组成,这种形式的性能指标叫做二次型性能指标。末值型性能指标〔2-11〕表示系统在控制过程结束后,要求系统的终端状态应到达某些要求,在实际工程中,例如要求导弹的脱靶量最小、机床工作台移动准确停止等。终端时刻可以固定,也可以自由,视最优控制问题的性质而定。复合型性能指标〔2-12〕表示对整个控制过程及控制过程结束后的终端状态均有要求,是最一般的性能指标形式。2.3最优控制问题的求解方法1.解析法当性能指标与约束条件为显示解析表达式时,适合用解析法。通常是用求导方法或变分方法解出最优控制的必要条件,从而得到一组方程式或不等式,然后求解这组方程或不等式,最后得到最优控制的解析解。2.数值计算法当性能指标比拟复杂或不能用变量的显函数表示时,可以采用试探法,即直接搜索逐步逼近,经过假设干次迭代,逐步逼近到最优点。3.梯度型法这是一种解析与数值计算相结合的方法。3最连续系统最优控制的MATLAB实现3.1连续系统线性二次型最优控制设线性连续定常系统的状态方程为:〔3-1〕式中,维状态向量;维控制向量,且不受约束;维常数矩阵,维常数矩阵。系统的性能指标为:〔3-2〕式中,终端时间无限;维数适当的常数矩阵〔常取维常数矩阵〕;为维数适当的常数矩阵,。假设以下条件之一满足:〔1〕完全可控;〔2〕为任意矩阵。那么有最优反应矩阵:(3-3)与唯一的最优控制:〔3-4〕以及最优性能指标:〔3-5〕式中,P为常值正定矩阵,它是以下黎卡提代数方程的唯一解:(3-6)闭环系统:〔3-7〕是渐近稳定的,其解为最优轨线。3.2连续系统线性二次型最优控制的MATLAB实现在MATLAB系统里,有特别提供的函数来求解连续系统线性二次型状态调节器问题。其函数有lqr()、lqr2()与lqry()。函数的调用格式为:[K,S,E]=lqr(A,B,Q,R,N)[K,S]=lqr2(A,B,Q,R,N)[K,S,E]=lqry(sys,Q,R,N)其中,输入参量sys为系统的模型;A为系统的状态矩阵;B为系统的输入矩阵;Q为给定的半正定实对称矩阵;R为给定的正定实对称矩阵;N代表更一般化性能指标中交叉乘积项的加权矩阵;输出参量K为最优反应增益矩阵;S为对应Riccati方程的唯一正定解P〔假设矩阵A-BK是稳定矩阵,那么总有P的正定解存在〕;E为A-BK的特征值。函数lqry()用来求解二次型状态调节器的特例,是用输出反应替代状态反应,即有:〔3-8〕其性能指标那么为:〔3-9〕这种二次型输出反应控制称为次优〔或准最优〕控制。3.3连续系统线性二次型最优控制的MATLAB实现例如【例18-1】连续系统状态方程与初始条件为性能指标:设计要求:设计一GUI界面,界面有五个按钮,分别实现的功能是:最优反应增益矩阵K、最优控制u*(t)、最优性能指标J*、特征方程的特征值和Riccati方程的正定解P。解:由系统状态方程直接写出状态矩阵、输入矩阵与初始条件:选择矩阵由题目要求,第一步:翻开MATLAB,输入guide回车后将弹出GUIDE快速启动对话框,如图3.1所示。图3.1GUIDE快速启动对话框从上面的对话框可以看到,MATLAB提供了4种GUIDE模板,其中本次设计需要用到的是第一个,空白GUI模板。单击OK按钮,翻开GUI编辑界面,如图3.2所示。图3.2新建的GUI界面如下图,上面的第一行为菜单栏,第二栏为工具栏,左边的两列为常用控件,关于各个控件的名称与功能见附录1第二步:针对例子的设计要求,为GUI添加必要的控件。〔1〕添加“静态文本”控件。选择StaticText图标,用鼠标将其拖到GUI模板的适宜位置,并根据设计,调整其大小。〔2〕添加“文本框”控件。用鼠标单击EditText图标,然后在界面上建立文本框。〔3〕添加“列表框”控件。用鼠标单击Listbox图标,然后在界面上适宜的位置建立大小适中的列表框。〔4〕添加“按钮组”控件。单击ButtonGroup图标,建立适宜的按钮组控件。〔5〕在按钮组上添加“按钮”。单击PushButton图标,将按钮建立在按钮组里,需要多少即建立多少。完成以上操作后得到草图,如图3.3所示。图3.3GUI草图上述界面包含两个静态文本框控件、一个可编辑文本框、一个按钮组控件、五个按钮控件、一个列表框控件。第三步:修改属性。创立控件以后,要对控件的各种属性进行设置,具体步骤如下:双击各控件,那么会弹出左边的属性对话框,按要求分别修改各按钮的属性,如图3.4所示。图3.4修改属性窗口如下图,右边窗口为修改属性窗口,常用属性有:string属性,用于显示在控件上的字符串,起说明或提示作用;Callback属性,回调函数,与菜单的一样;Tag属性,控件的标记,用于标识控件。更多属性功能见附录11〕在图形左边上方的静态文本的属性编辑框中,设置如下属性值:Fontsize10%字体大小FontUnitsnormalized%采用相对度量单位,缩放时保持字体比例String系统输入%显示在界面上的字符HorizontalAlignmentCenter%文字中心对齐Unitsnormalized%采用相对度量单位,缩放时保持该区比例2〕在图形左边中间的静态文本的属性编辑框中,设置如下属性值:Fontsize10%字体大小FontUnitsnormalized%采用相对度量单位,缩放时保持字体比例String系统输出%显示在界面上的字符HorizontalAlignmentCenter%文字中心对齐Unitsnormalized%采用相对度量单位,缩放时保持该区比例3)在可编辑文本的属性编辑框中,设置如下属性值:FontUnitsnormalized%采用相对度量单位,缩放时保持字体比例String%去除在界面上的字符HorizontalAlignmentCenter%文字中心对齐Unitsnormalized%采用相对度量单位,缩放时保持该区比例4)在按钮组的属性编辑框中,设置如下属性值:Fontsize12%字体大小FontUnitsnormalized%采用相对度量单位,缩放时保持字体比例HorizontalAlignmentCenter%文字中心对齐String连续系统线性二次型最优控制%在按钮组顶头显示Unitsnormalized%采用相对度量单位,缩放时保持该键比例5)在按钮组的按键上属性编辑框中,设置如下属性值:Fontsize10%字体大小FontUnitsnormalized%采用相对度量单位,缩放时保持字体比例HorizontalAlignmentCenter%文字中心对齐Unitsnormalized%采用相对度量单位,缩放时保持该键比例五个按钮的String属性从上到下分别设置为:最优反应增益矩阵K、Riccati方程的正定解P、最优控制u*(t)、最优性能指标J*、特征方程的特征值。对控件的属性设置结束后,得到如下界面:图3.5属性设置完的根本图第四步:设计GUI回调函数。点击工具栏最右边的绿色三角按钮运行点击工作台上的”运行界面“的工具图标,会出现一个询问对话框,当按提示对以上的设计进行存储以后,就会引出2个界面:名为Lqr的图形用户界面〔如图3.6所示〕;展示名为Lqr的〔待填写回调指令的〕M函数文件的文件编辑器界面。在Lqr.m文件中,填写回调指令(见附录)第五步:运行。按例题要求设计回调函数,然后运行。在系统输入框中输入状态矩阵、输入矩阵、初始状态与给定矩阵,输入完成后分别点击各按钮。(1)按下按钮“最优反应增益矩阵K”,得到如图3.7的结果:图3.6图形用户界面图3.7(2)按下按钮“Riccati方程的正定解P”,得到如图3.8结果:图3.8Riccati方程的正定解P按下按钮“最优控制u*(t)”,得到3.9图结果:图3.9最优控制u*(t)按下按钮“最优性能指标J*”,得到图3.10结果:图3.10最优性能指标J*按下按钮“特征方程的特征值”,得到图3.11结果:图3.11特征方程的特征值自此连续系统线性二次型最优控制的MATLAB设计结束。4离散系统线性二次型最优控制的MATLAB实现4.1离散系统稳态线性二次型最优控制设完全可控线性离散系统的状态方程为:〔4-1〕式中,维状态向量;控制向量,且不受约束;A为维非奇异矩阵,。系统的性能指标为:〔4-2〕式中,维正定或半正定实对称矩阵;正定实对称矩阵;维正定或半正定实对称矩阵。最优控制作用与最优反应矩阵可以有几种不同的表达式。其中最有反应矩阵之一为:(4-3)与之对应的最优控制序列:〔4-4〕以及性能指标:〔4-5〕以上几式中,P〔k〕为正定矩阵,它是以下黎卡提差分方程的正定解:(4-6)假设控制步数N为无限值,即令,系统最优控制的解成为稳态解。系统的性能指标那么改为:(4-7):(4-8):(4-9)对应的最优控制序列为:(4-10)闭环系统的状态方程为:以及最优性能指标仍为:〔4-11〕4.2离散系统线性二次型最优控制的MATLAB实现与例如在MATLAB的工具箱里,有特别提供的函数来求解离散系统稳态线性二次型状态调节器问题。其函数有dlqr()与dlqry()。函数的调用格式为:其中,输入参量A为系统的状态矩阵;B为系统的输入矩阵;Q为给定的正定或半正定实对称矩阵;R为给定的正定实对称矩阵;N代表更一般化性能指标中交叉乘积项的加权矩阵。输出参量K为离散最优反应增益矩阵;S为Riccati方程的唯一正定解P;E为A-BK的特征解。函数dlqry()用来求解二次型状态调节器的特例,这个特例就是用输出反应替代状态反应,即有:(4-12)其性能指标为:(4-13)【例4-1】以知伺服系统动态结构状态方程为式中a=0.5,b=1,c=1,d=0利用GUI工具箱设计一界面使其满足在点击【反应矩阵Kx】键时在输出框中输出系统稳态最优反应增益矩阵,在点击【Stepresponse】键时在轴上画出相应的系统闭环后的单位阶跃给定响应曲线。【解】由v(k)有:由写出矩阵,对于系统稳态,,以上矩阵就成为:令采样信号将以上两式相减,可得:由再令以上矩阵可写成:式中当系统有单位阶跃给定输入时,可得:根据矩阵乘法运算规那么,整理以上矩阵有:还有:设定性能指标为:式中参量Q、R选择为:根据以上分析开始设计GUI界面。第一步:启动GUI工具箱以后,布置如4.1图所示的界面:图4.1离散系统最优控制GUI界面上述界面包含一个坐标轴控件、两个静态文本框控件、一个可编辑文本框、一个按钮组控件、两个按钮控件、一个列表框控件。第二步:对各控件进行属性设置,设置完成后得到如4.2界面。图4.2离散系统图形用户界面图4.3离散系统反应矩阵Kx第三步:界面的激活与回调函数的设计〔见附录〕。第四步:运行。点击界面按钮“反应矩阵Kx”后显示如4.3界面点击界面按钮“Stepresponse”后显示如4.4界面图4.4离散系统单位阶跃给定响应设计结束。5最优观测器的MATLAB实现系统的Kalman滤波器就是最优观测器。对于带有系统噪声与量测噪声的实际系统,抑制或滤掉噪声对系统的干扰及影响,对系统的状态做出充分精确的估计。利用Kalman滤波器对系统进行最优控制是非常有效的。5.1连续时不变系统的Kalman滤波给定系统的状态方程与量测方程分别为:〔5-1〕〔5-2〕式中,维状态向量;控制向量,维量测向量;A为维非奇异矩阵,,维常数矩阵;为随机噪声干扰输入,它是零均值的p维白噪声过程;假定为随机量测噪声,是零均值的q维白噪声过程。两噪声过程均平稳且互不相关。即有:此式中的为常数矩阵〔叫做模型噪声的协方差矩阵〕。。此式中的为常数矩阵〔叫做量测噪声的协方差矩阵〕。令为状态向量估计值与状态向量的估计误差值,为状态向量的理论值,那么有:〔5-3〕除上述假设外,还假定{C,A}是完全可观测的。在这些假定均成立的条件下,使估计误差平方和的期望值最小〔最小方差迹准那么滤波估计〕既有:〔5-4〕其最优估计器为:〔5-5〕式中〔5-6〕其中为以下方程的解:〔5-7〕可以证明:方程的解就是估计误差的协方差,而此协方差的迹〔〕即为误差方差。如是有:〔5-8〕5.2Kalman滤波的MATLAB实现在MATLAB的工具箱里提供了函数来求解系统的kalman滤波器,函数的调用格式为:其中,输入参量为连续或离散系统带扰动的状态空间模型,当模型有两个时,,;为模型噪声的协方差矩阵;为量测噪声的协方差矩阵;为可选项,它对应模型噪声与量测噪声的相关项。输出参量为滤波器的状态估计器,其状态方程如下:〔5-9〕〔5-10〕为滤波器的增益矩阵:为对应的方程的解,即估计误差的协方差。在MATLAB老版本的工具箱里,还提供了两个配合使用的函数与来求解系统的滤波器。函数的调用格式为:其中,输入参量,,为系统式〔18-46〕与〔18-47〕中的对应参量;为模型噪声的协方差矩阵;为量测噪声的协方差矩阵;为可选项,它对应模型噪声与量测噪声的相关项;输出参量为滤波器的增益矩阵;为对应的方程的解,即估计误差的协方差;为估计器的闭环特征值。函数的调用格式为:这个函数用来生成连续系统的滤波器,即系统的状态估计器。输入参量为连续系统带扰动的状态空间模型,输入参量为函数求出的滤波器的增益矩阵。对于连续系统,用函数计算的滤波器的状态估计器与用函数求出的滤波器,两者应相等。请看以下例如。5.3Kalman滤波的MATLAB实现例如例【5-1】:单位负反应连续系统的受控对象与校正装置的传递函数分别为:,试设计一个GUI界面,实现如下要求:点击按钮“增益矩阵”时,在列表框中显示系统滤波器的增益矩阵;点击“系统估计误差的协方差”按钮时,列表框中显示系统估计误差的协方差;点击“最优滤波器”按钮时,列表框中显示系统〔最优〕滤波器〔a,b,c,d〕。解:第一步:启动GUI工具箱以后,布置如图5.1所示的界面:下述界面包含一个静态文本框控件、一个可编辑文本框、一个按钮组控件、三个按钮控件、一个列表框控件。图5.1最优滤波器GUI根本界面第二步:对各控件进行属性设置,属性设置与例3.1类同,设置完成后得到图5.2界面。图5.2最优滤波器控制界面第三步:界面的激活与回调函数的设计〔见附录2〕。其中激活界面如图5.3图5.3最优控制的激活界面第四步:运行。输入以知矩阵,点击界面按钮“增益矩阵L”后显示如5.4界面图5.4滤波器的增益矩阵L点击界面按钮“系统估计误差协方差P”按钮,那么显示出系统估计误差协方差,如图5.5图5.5系统估计误差协方差点击界面按钮“Kanman最优滤波器”按钮,列表框中显示出最优滤波器的矩阵,由上到下分别是a,b,c,d。分别如图5.6,5.7,5.8,5.9所示。图5.6Kanman最优滤波器之矩阵a图5.7Kanman最优滤波器之矩阵b图5.8Kanman最优滤波器之矩阵c图5.9Kanman最优滤波器之矩阵d系统的〔最优〕滤波器〔a,b,c,d〕。计算说明,用函数计算的滤波器的状态估计器与用函数求出的滤波器,两者是相等的。6线性二次型Guass最优控制的MATLAB实现考虑系统随机输入噪声与随机量测噪声的线性二次型最优控制称为线性二次型高斯〔Guass〕最优控制,即LQG控制。线性二次型高斯最优控制是输出反应控制。这种即及系统受到随机因素的作用而采取的控制策略,对解决线性二次型最优控制问题,显然更具有实用性。6.1LQG最优控制的求解给定系统的状态方程与量测方程分别为:〔6-1〕〔6-2〕式中,参量、、、、、、、含义同前,假定为随机噪声干扰输入,它是零均值的p维白噪声过程;假定为随机量测噪声,是零均值的q维白噪声过程。与两个噪声过程均平稳且互不相关。系统的性能指标为:〔6-3〕根据LQG问题的别离原理,LQG最优控制是两个方面问题的综合:一是二次型调节器问题。二是最优估计器问题。LQ最优控制就是二次型调节器问题。最优状态反应控制有最优反应矩阵式〔6-4〕:〔6-4〕最优控制为式〔6-5〕:〔6-5〕以及满足的方程式〔6-6〕:〔6-6〕利用滤波理论,从状态中得到最优估计,使估计误差平方和的期望值最小〔最小方差迹准那么滤波估计〕,即有式〔6-7〕:〔6-7〕这种最优估计器为式〔6-8〕:〔6-8〕上式中,为滤波器增益,即式〔6-9〕:〔6-9〕其中为以下方程式〔6-10〕的解:〔6-10〕分别计算LQ最优控制与最优估计,再将这两问题的解合在一起,就得到LQG控制的最优解。6.2LQG最优控制的MATLAB实现与例如在MATLAB工具箱里,有特别提供的函数来求解LQG最优控制。函数的调用格式为:其中,输入参量为系统的状态空间模型;为由函数求得的最优状态反应增益矩阵;为函数求得的滤波器状态估计增益矩阵。例【6-1】:系统的状态方程如下:〔6-11〕二次型调节器性能指标为〔6-12〕式中,〔6-13〕输入噪声与量测噪声的有关参数分别为,。要求:利用GUI工具箱设计一个界面实现如下功能:〔1〕试由系统状态方程求其传递函数;〔2〕对原系统阶跃给定输入的仿真;〔3〕试设计LQG控制器,对LQG最优控制的系统进行阶跃给定输入的仿真。解:第一步:启动GUI工具箱以后,布置如6.1图所示的界面:图6.1线性二次型Guass最优控制GUI界面上述界面包含一个坐标轴控件、一个静态文本框控件、一个可编辑文本框、一个按钮组控件、三个按钮控件、一个列表框控件。第二步:对各控件进行属性设置,设置完成后得到如6.2图界面。图6.2Guass最优控制根本界面第三步:界面的激活与回调函数的设计〔见附录〕。其中激活界面如6.3图图6.3Guass最优控制激活GUI界面第四步:运行。〔1〕在输入框中输入以知矩阵,点击界面按钮“传递函数”后显示如6.4图界面:图6.4Guass最优控制运行界面由于GUI运行结果只能以数据形式输出,在列表框中显示的两行数据分别是传递函数的分子分母,因此该系统的传递函数为〔2〕利用上一小题求得的传递函数绘制系统的阶跃响应,在编辑框中输入传递函数参数,点击“原阶跃响应”按钮,程序运行后在坐标轴上绘出系统的阶跃响应曲线。〔3〕由系统的阶跃响应曲线图6.5可以看到原系统的阶跃响应为发散振荡,系统是不稳定的,因此用以下MATLAB程序设计LQG控制器并对其系统进行阶跃给定输入的仿真:clear;A=[-0.040-0.01;100;-1.49.8-0.02];B=[6.3;0;9.8];C=[001];D=[0];s1=ss(A,B,C,D);G=[1;0;0];Q=[100;010;001];R=1;Q0=1;R0=1;K=lqr(A,B,Q,R);L=lqe(A,G,C,Q0,R0);[af,bf,cf,df]=reg(A,B,C,D,K,L);sf=ss(af,bf,cf,df);sys=feedback(s1,sf);t=0:0.01:10;step(sys,t)图6.5系统原阶跃响应设计相应的GUI回调函数,在编辑框中输入参数运行后得到LQG最优控制的系统给定输入阶跃响应仿真曲线,如图6.6所示。图6.6LQG最优控制的阶跃响应曲线7结论通过以上各线性二次型最优控制的MATLAB分析,我们可以得到如下结论:最优控制是以现代控制理论中的状态空间理论为的最优控制算法,是当前振动控制中采用最为普遍的控制器设计方法。它所能解决的主要对象是结构参数模型比拟准确、鼓励和测量信号。使控制系统的性能指标实现最优化的根本条件和综合方法。相对于经典控制而言,最优控制有它显著的优势,应用最优理论设计的多输入—多输出与高阶系统,往往能得到比经典控制设计的结果要满意得多,另外,现代的诸多新型而复杂的控制系统设计都需要在状态空间模型下建立最优控制策略。本文中的四个不同的最优控制分别证明了各自的优缺点,说明了在不同领域的应用情况。GUI控制界面的实现,他极大地方便了最优控制理论使人们在实际应用中从此不再需要死记硬背大量的命令,取而代之的是可以通过窗口、菜单、按键等方式来方便地进行操作。证明了GUI工具的几大优点:轻型、占用资源少、高性能、高可靠性、便于移植、可配置等。而以上结论恰和的理论相符合,到达了实现最优控制的目的。参考文献:[1]张洪

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论