毕业论文-线性二次型最优控制器的MATLAB实现Word下载.doc
- 文档编号:6855038
- 上传时间:2023-05-07
- 格式:DOC
- 页数:25
- 大小:525.19KB
毕业论文-线性二次型最优控制器的MATLAB实现Word下载.doc
《毕业论文-线性二次型最优控制器的MATLAB实现Word下载.doc》由会员分享,可在线阅读,更多相关《毕业论文-线性二次型最优控制器的MATLAB实现Word下载.doc(25页珍藏版)》请在冰点文库上搜索。
1.1概述 1
1.2课题研究的背景、意义及研究概况 1
1.3本文研究的主要内容 3
2最优控制的基本概念 4
2.1最优控制基本思想 4
2.2最优控制问题的求解方法 5
2.3Q、R的选择原则 6
2.4加权矩阵的调整 6
2.4.1廉价控制 6
2.4.2昂贵控制 7
2.5问题的阐述 8
2.6问题的求解 9
2.7利用仿真给定的控制系统 9
3最连续系统最优控制的MATLAB实现 12
3.1连续系统线性二次型最优控制 12
3.2连续系统线性二次型最优控制的MATLAB实现 13
4离散系统线性二次型最优控制的MATLAB实现 14
4.1离散系统稳态线性二次型最优控制 14
4.2离散系统线性二次型最优控制的MATLAB实现 15
5最优观测器的MATLAB实现 16
5.1连续时不变系统的Kalman滤波 16
5.2Kalman滤波的MATLAB实现 17
4结论 19
[参考文献] 20
致谢 21
1引言
1.1概述
近年来,仿真技术得到广泛的应用与发展,在系统设计、目标与环境模拟、人员培训等方面取得了丰硕成果,随着计算机技术的快速发展,控制系统的计算机辅助设计与分析得到了广泛应用,目前已经达到了相当高的水平。
在以数字计算机和应用软件为基础的数字仿真领域,以MATLAB为代表的优秀系统软件使得数字仿真技术进入到一个崭新的阶段。
MATLAB是国际控制界应用最广泛的计算机辅助设计与分析工具,它集数值分析、信号处理和图形、矩阵运算显示于一体,构成了一个方便的、良好的用户环境,其强大的科学计算与可视化功能,还有简单易用的开放式可编程环境,使得MATLAB在控制领域的各个方面都得到了广泛应用[1]。
数字仿真CAD技术已经成为当今工业自动化专业人员应该熟练掌握的基本技能。
现代控制理论中处理的问题是多变量问题,向量空间理论和矩阵是其主要的数学基础,它是对系统的状态进行分析和综合理论。
最优控制问题是在给定评价函数和限制条件下,寻找使系统性能指标最优的控制问题。
这里的评价函数,也就是性能指标,是为了评价系统的优劣所规定的标准,也称作目标函数;
限制条件即约束条件,是物理上对系统所施加的一些限制;
要寻找的控制规律也就是综合控制器[2]。
根据系统数学模型,选择一个容许的控制规律,在一定条件下,使得控制系统在完成所要求的控制任务时使给定的某一个性能指标达到最优值、极小值或极大值[3]。
线性二次型最优控制是一种广泛使用的最优控制系统设计方法。
使用MATLAB软件设计的GUI控制界面实现最优控制,有较好的人机交互界面,易于使用[4]。
1.2课题研究的背景、意义及研究概况
最优控制理论是50年代中期在空间技术的推动下开始形成和发展起来的。
美国学者Behrman.R.E1957年提出的动态规划和前苏联学者列夫•特里亚金1958年提出的极大值原理,两者的创立只相差一年左右。
对最优控制理论的形成和发展起到了重要的作用[5]。
线性系统在二次型性能指标下的最优控制问题则是美国数学家和电气工程师卡尔曼,R.E.在60年代初提出和解决的[6]。
在古典控制理论中,反馈控制系统的传统设计方法有特别多的局限性,其中,最主要的缺点就是方法不严密,只是大量的靠试探。
这种设计方法对于多输入-多输出系统和复杂系统,不能得到令人满意的设计结果[7]。
另一方面,近年来,因为对控制系统质量的要求越来越高,还有计算机在控制领域的应用越来越广泛,因此最优控制系统受到了很大的重视。
最优控制的目的是使系统的某种性能指标达到最佳,也就是说,利用控制作用可按照人们的意愿选择一条达到目的地的最佳途径。
因此最优是以选定的性能指标最优为依据的。
控制问题包括控制对象、容许控制(输入)的集合所要达到的控制目标。
一般来说,达到一个目标的控制方式有很多,但实际上的时间、经济、环境、制造等方面有各种限制,所以可以实行的控制方式是有限的。
当需要实行具体控制时,有必要选择某一种控制方式,使得性能指标达到最优值,这样的问题就叫做最优控制[8]。
最优控制理论与航空、航天的制导、导航和控制技术密不可分。
原因在于线性二次型问题的最优解可以写成统一的解析表达式和实现求解过程的规范化,并且可以简单地利用状态线性反馈控制律构成闭环最优控制系统,能够兼顾多项性能指标,工程和计算实现都非常简单,因所以得到特别的重视,为现代控制理论中发展比较成熟的一部分[9]。
LQR最优控制利用廉价成本就可以使原系统达到较好的性能指标,并且方法简单,便于实现,同时利用Matlab强大的功能体系容易对系统实现仿真。
随着航天﹑航海﹑导航和控制技术不断深入研究,系统的最优化问题已经成为一个重要的问题。
LQR(linearquadraticregulator)即线性二次型调节器,它的对象是现代控制理论以状态空间形式给出线性系统,而目标函数对象是状态和控制输入二次型函数。
LQR最优设计是指设计出的状态反馈控制器K要使二次型目标函数J取最小值,而K由权矩阵Q与R唯一决定,所以Q、R的选择尤为重要。
图形用户界面GUI(GraphicalUserInterface)作为用户与软件交互的一种主要手段,已经成为现代软件的重要组成部分。
LQR理论是现代控制理论中发展最早也是最为成熟的一种状态空间设计法。
这种方法具有计算简单,便于调整等优点,特别可贵的是,LQR可得到状态线性反馈的最优控制规律,易于构成闭环最优控制。
而且Matlab的应用为LQR理论仿真提供了条件,更为我们实现准、稳、快的控制目标提供了方便[10]。
对于线性系统的控制器设计问题,如果其性能指标是状态变量和(或)控制变量的二次型函数的积分,那么这种动态系统的最优化问题被称为线性系统二次型性能指标的最优控制问题,简称为线性二次型最优控制问题或线性二次问题。
1.3本文研究的主要内容
线性系统二次型最优控制可以使系统的某些性能达到最优,在工程上用得比较广泛,也是现代控制理论课程教学的重点和难点。
但它的理论性较强,而且设计中运算量很大,这使得学生很难掌握设计思想的精髓。
如果我们能够利用MATLAB的强大计算功能和仿真能力,就能十分轻松的得到设计结果并且画出系统的输出响应曲线[11],这就大大提高了课程教学,分析研究的效率。
本论文将以线性二次型为性能指标。
首先,本文将概述二次型最优控制器在当今控制工程领域中的发展状况与实际意义。
其次,本文将叙述最优控制的理论部分,引入最优控制的性能指标J,其中Q和R分别为对状态变量和输入变量的加权矩阵,矩阵S对控制系统的终值也给出某种约束。
最后,本文将研究Q和R矩阵参数对最优控制器设计的影响,进行求解,仿真。
2最优控制的基本概念
2.1最优控制基本思想
假设线性时不变系统的状态空间描述为:
2-1
线性二次型(LQ)最优控制器的任务是设计u(t),使线性二次型最优控制指标2-2
最小。
其中Q(t)和R(t)分别是对状态变量和输入向量的加权矩阵,tf是控制作用的终止时间。
矩阵S对控制系统的终值也给出某种约束,这样的控制问题就叫做线性二次型(LinearQuadratic,简称LQ)最优控制问题。
对最优控制来说,R(t)为对称的正定矩阵,Q(t)为对称的半正定矩阵。
为了方便于工程应用,加权矩阵一般取为对角阵,则其对称性自然满足[12]。
为了求解LQ问题,取Hamilton函数
2-3
应用变分原理推导出LQ解满足的必要条件:
其中,较为简便的一种解法是:
令
而将对的求解转换为对函数矩阵P(t)的求解,将代入上述公式中,可得函数矩阵P(t)应满足的微分方程为
2-4
对它的求解可利用成熟的Euler方法。
假设方程
(1)的唯一对称半正定解P(t),则LQ问题的解u(t)可以由下式给出:
2-5
上述LQ问题的一个特例是动态方程为定常的情形。
在线性二次型指标J的表达式中,末值项表示在控制过程结束以后,对系统末态跟踪误差的要求;
积分项表示在系统控制过程中,对系统动态跟踪误差加权平方和积分要求,是系统在控制过程中动态跟踪误差的总度量;
积分项定量地刻画了在整个控制过程中所消耗的控制能量[13]。
在输入信号无约束时,最优控制为线性,其表达式为:
2-6
式中K(t)是状态反馈系数矩阵,它可以用下面的式子表示:
2-7
对于线性定常系统,当tf终值时间时,P(t)趋向于常数矩阵,也就是(d/dt)P(t)=0,因此它可以通过下面的代数Riccati方程解得,
2-8
此时,线性二次型指标J的表达式中不包含末值项,其最优控制为:
2-9
式中反馈系数矩阵K为常数矩阵。
2.2最优控制问题的求解方法
1.解析法
当性能指标与约束条件是显示解析表达式时,适合用解析法。
一般是用求导方法或变分方法解出最优控制的必要条件,进而得到一组方程式或不等式,然后求解这组方程或不等式,最后得到最优控制的解析解[14]。
2.数值计算法
当性能指标比较复杂或者不能用变量的显函数表示时,可以采用试探法,就是直接搜索,逐步逼近,经过若干次迭代,逐步逼近到最优点。
3.梯度型法
这是一种解析与数值计算相结合的方法。
2.3Q、R的选择原则
由原理可知,要求出最优控制作用u,除了求解ARE方程外,加权矩阵的选择也是非常重要的。
而Q、R选择没有一般规律可循,一般取决于设计者的经验,常用的所谓试行错误法,就是选择不同的Q、R代入计算比较结果来确定。
这里只提供几个选择的一般原则:
1)Q、R都应该是对称矩阵,Q为正半定矩阵,R为正定矩阵。
2)通常选用Q和R为对角线矩阵,实际应用中,一般将R值固定,然后改变Q的数值,最优控制的确定通常在经过仿真或实际比较后得到。
当控制输入只有一个时,R成为一个标量数(一般可直接选R=1)。
3)Q的选择不唯一。
这表明当得到的控制器相同时,可以有多种Q值的选择,其中总有一个对角线形式的Q[15]。
2.4加权矩阵的调整
系统的性能严重依赖于加权矩阵的选择,所以说,事实上最优性是针对当前加权矩阵选择而言的,在一组Q和R矩阵下的最优解并不能保证在其它Q和R矩阵下也有较好的结果。
所以在这种设计方法中,所谓的“最优”控制,还有许多人为的因素。
加权矩阵的选择方法有廉价控制、昂贵控制、边界控制和稳定度设计等[16]。
2.4.1廉价控制
这里的“廉价控制”一词是指控制作用的成本是很低的,所以为追求比较好的动态控制效果,可以使用任意大的控制信号。
在这种情况下,对输入信号的加权可以取得很小。
也就是可以任意减小R的值。
当然,单纯从控制效果而言,我们希望有较好的动态控制效果,即系统的响应越快,振荡越少越好。
假设取R=0.001,Q不变,控制效果如图1、图2。
图1实际控制力
图2系统闭环阶跃响应
由图1和图2可见,系统闭环阶跃响应很快,而且没有出现振荡,但是系统的最大控制力却要达到8000N。
所以,控制效果和控制力是一对矛盾,选择加权矩阵的目的就是要解决这个矛盾,就在满足控制效果的条件下,使控制力也能符合要求,在本文中就是使控制力在2000N以下。
2.4.2昂贵控制
昂贵控制是指控制本身的成本很大,所以在实际控制中应减小控制量u(t)。
在这种情况下,应该引入一个较大的R矩阵。
本文所讨论的问题应该是一个昂贵控制问题。
经过反复试算,最终取R=0.5,Q仍然为6阶单位阵,结果如图3、图4所示。
此时的控制效果比较理想,调节时间大约8s,而最大控制力也在2000N以下。
图3系统实际控制力
图4系统闭环阶跃响应
此外,还有边界控制和稳定度设计。
边界控制是指在动态最优控制问题中,加权矩阵S趋向于无穷大,这将约束边界值出现的误差。
解决这样问题的一种行之有效的方法是将S矩阵由Q代替,而Q为较大的数值。
当Q→∞时,Q=0,这时的Riccati微分方程可以简化成2-10
稳定度设计是指使系统的闭环极点都位于S-平面的S=-α线左侧,其中α>
0,这种控制策略称作“-α稳定度设计”[17]。
2.5问题的阐述
设系统为:
2-11
而控制信号为u(t)=-Kx(t),试求最优反馈增益矩阵K使二次性能指标:
极小,并仿真,输出x1、x2、J的波形。
2.6问题的求解
根据系统的状态空间方程,可以看出A=[01;
00],B=[0;
1],Q=[10;
01],R=[1]。
控制系统工具箱供了lqr()函数,用来依照给定的加权矩阵设计LQ最优控制器,该函数的调用格式为:
[K,P]=lqr(A,B,Q,R)
式中:
(A,B)为给定的的对象状态方程模型;
(Q,R)分别为加权矩阵Q和R;
返回的向量K为状态反馈向量,也就是控制器,P为Riccati代数方程的解。
在本题中,可用下面的MATLAB代码求解K和P:
clear
A=[01;
00];
B=[0;
1];
Q=[10;
01];
R=[1];
[K,P]=lqr(A,B,Q,R)
解得:
K=[1.00001.7321]
因此,最优控制信号为
2-12
2.7利用仿真给定的控制系统
将给定的控制系统进行变形,如下:
2-13根据以上方程组,利用SIMULINK对系统进行仿真,其中u(t)用x1(t),x2(t)负
反馈表示,.最终可做出仿真系统,如图5所示。
根据状态空间方程,利用SIMULINK可画出如图1所示的仿真图。
图1仿真图
当K=[1.00001.7321],即取最优控制时,运行该仿真,求得J=7.61,并得出
图5仿真图
当K=[1.00001.7321],即取最优控制时,运行该仿真,求得J=7.61,并得出了x1(t)、x2(t)、J的波形,如图6,图7,图8所示。
图6x1(t)的波形图7x2(t)的波形
图8J的波形
由图6和图7可知,系统的状态向量[x1(t),x2(t)]T最终趋于0,而二次性能指标J同时趋于稳定值7.61。
至此,线性二次型最优控制系统已经仿真完成。
3最连续系统最优控制的MATLAB实现
3.1连续系统线性二次型最优控制
设线性连续定常系统的状态方程为:
3-1
式中,维状态向量;
维控制向量,且不受约束;
A为维常数矩阵,维常数矩阵。
系统的性能指标为:
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
这种二次型输出反馈控制称为次优(或准最优)控制。
4离散系统线性二次型最优控制的MATLAB实现
4.1离散系统稳态线性二次型最优控制
设完全可控线性离散系统的状态方程为:
4-1
控制向量,且不受约束;
A为维非奇异矩阵,。
4-2
式中,维正定或半正定实对称矩阵;
正定实对称矩阵;
维正定或半正定实对称矩阵。
最优控制作用与最优反馈矩阵可以有几种不同的表达式。
其中最有反馈矩阵之一为:
4-3
与之对应的最优控制序列:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业论文 线性 二次 最优 控制器 MATLAB 实现
![提示](https://static.bingdoc.com/images/bang_tan.gif)