实验七及实验八

  • 格式:doc
  • 大小:748.00 KB
  • 文档页数:9

实验七 线性二次型指标最优控制系统设计 一、实验目的 1、学习线性二次型指标最优控制系统设计方法。 2、完成线性二次型指标最优控制系统设计实践。

二、相关知识 最优控制系统是指在一定的具体条件下,在完成所要求的控制任务时,系统的某种性能指标具有最优值。根据系统的不同用途,可提出各种不同的性能指标,最优控制的设计就是选择最优控制以使某一种性能指标为最小(或者最优值)。在实际工程应用中,最优控制系统的性能指标通常采用二次型指标。 对于状态完全能控的线性连续定常系统,其状态方程为()()()xtxtutAB,x(0)=x0。其输出方程为()()()ytxtutCD,式中: x(t)为n维状态变量; u(t)为p维输入控制变量,且不受约束;A为n×n维状态矩阵,常数矩阵;B为n×p维输入矩阵,常数矩阵;C为m×n维输出矩阵,常数矩阵;D为m×p维输入矩阵,常数矩阵。y(t)为m维输出变量; 引入的线性二次型(Linear Quadratic)指标为:

TT0

1[()()()()]d2txtttJxQutRu

式中,积分上限为∞,即调节时间tf→∞;Q和R均为正定的对称常数矩阵,实际上分别是对状态量x(t)和控制量u(t)的加权矩阵。 根据最优控制理论,使线性二次型指标J(式6.66)取最小值的最优控制*

()ut

为: *1T()()()tttuKxRBPx

式中,1TKRBP为最优反馈增益矩阵;P矩阵为对称常数矩阵;P矩阵可通过求解代数黎卡提(Riccati)方程

T1T0PAAPPBRBPQ

这时,最优性能指标为 *T1(0)(0)2JxPx

可见,设计最优控制系统的重要一步就是求解黎卡提(Riccati)方程。 线性二次型指标状态反馈最优控制系统结构图如图所示。

线性二次型指标J的最优性取决于如何确定加权矩阵Q和R,但这两个矩阵的选择并没有解析方法,只能作定性的选择。一般情况下,对单输入系统,如果2

希望输入控制信号u(t)小,则R矩阵的值选择大一些;对多输入系统,如果希望第i个输入控制信号ui(t)小,则R矩阵第i列的值应该选择大一些。如果希望第j个状态变量xj(t)的值小一些,那么相应的就应该把Q矩阵的第j元素取大点,这时最优化功能会迫使该状态变量变小。

系统最优控制*()ut为*()()ttuKx,式中,最优反馈增益矩阵1TT()KRBPN 式中,对称常数矩阵P满足代数黎卡提(Riccati)方程

T1TT()()0PAAPPBNRBPNQ

由此解出P矩阵,可得到系统的最优控制。 MATLAB提供了求解线性连续系统二次型状态最优控制的函数。其函数是lqr( )、lqr2( )和lqry( )。函数的调用格式为: [K,S,E]=lqr(A,B,Q,R,N) [K,S,E]=lqr2(A,B,Q,R,N) [K,S,E]=lqry(A,B,C,D,Q,R,N) 其中 A和B均对应系统状态方程中的A和B矩阵; C和D均对应系统输出方程中的C和D矩阵; Q和R均对应线性二次型指标中的Q和R矩阵; N为二次型性能指标中状态量x(t)和控制量u(t)的乘积项的加权矩阵; K和S均分别对应最优控制方程(式6.67)中的K和P矩阵; E为最优控制闭环系统特征方程()0IABK 的特征值; 函数lqr2( )与lqr( )类似,只是在该函数中采用了Schar方法,所以具有更强的稳健性。 函数lqry( )用来求解二次型输出反馈最优控制,是用输出反馈代替状态反馈,把最优控制方程变为*()()ttuKy

其性能指标为TT01[()()()()]d2tQttttJyyuRu 这种二次型输出反馈控制叫做次优(或准最优)控制。另外,如果用输出y实现反馈控制,则反馈中需要有微分环节,在工程上实现更麻烦些。

三、实验内容 1. 设线性系统的状态方程为010001xxu,试设计使系统线性二次型性能指

标TT01[()()()()]d2tttttJxQxuRu。式中,2114Q,R=1/2。取最小时的最优控制*()ut,计算最优状态反馈矩阵K,画出状态反馈最优控制系统结构图。 解:根据题意,计算最优状态反馈矩阵K,设计最优控制*()ut的MATLAB程序如下: A=[0,1;0,0]; B=[0,1]'; %该语句的′号代表求矩阵转置 C=[1,0];D=0; Q=[2,1;1,4]; R=1/2; 3

[K,P,E]=lqr(A,B,Q,R) %计算并显示最优状态反馈矩阵K、P矩阵和特征值E 上述程序执行后,计算出的最优状态反馈矩阵K为2.03.4641K 那么,使系统线性二次型性能指标J取最小的最优控制*()ut为*12()2()3.4641()utxtxt

另外,代数黎卡提(Riccati)方程的解P矩阵为2.4641111.7321P

闭环系统特征方程的特征值为12.7321,20.7321 由自动控制理论,上述特征值均具有负实部,闭环系统是渐近稳定的。 根据以上计算,可得到状态反馈最优控制系统结构图如图所示。

2. 设线性系统的状态方程为0100()001()0()169121tttxxu,输出方程为()[100]()ttyx。使系统线性二次型性能指标T2T0

3000001[()010()()2()0()]d20011ttttttJxxuxu取最小值。

试: (1)计算最优状态反馈矩阵K、代数黎卡提方程的解(即P矩阵)和闭环系统的特征值(即E矩阵); (2)画出状态反馈最优控制系统结构图。 解:根据题意,编写MATLAB程序时,[K,P,E]=lqr(A,B,Q,R,N)所需要的入口参数A、B、Q、R、N矩阵分别为 01000116912A,001B,30000010001Q,R=1,001N

MATLAB程序如下: A=[0 1 0;0 0 1;-16 -9 -12];B=[0;0;1]; Q=[300 0 0;0 1 0;0 0 1];R=1;N=[0;0;1]; [K,P,E]=lqr(A,B,Q,R,N) 上述程序执行后,计算出的最优状态反馈矩阵K为7.57978.59221.6449K 4

那么,使系统线性二次型指标J取最小的最优控制*()ut为*123()7.5797()8.5922()1.6449()utxtxtxt

另外,代数黎卡提(Riccati)方程的解,即对称矩阵P为270.8183113.7437.5797113.743115.46518.59227.57978.59220.6449P

闭环系统特征方程的特征值为112.3776,2,30.63371.2262i 上述特征值均具有负实部,根据自动控制理论,该闭环系统是渐近稳定的。 根据以上计算,可得到状态反馈最优控制系统结构图如图所示。

三、实验报告要求 1、提交所有仿真结果; 2、根据实验结果,判断系统的稳定性。 5

实验八 模糊控制系统仿真实验 一、实验目的 (1)熟练掌握MATLAB/SIMULINK工具箱的使用; (2)利用MATLAB/SIMULINK与FUZZYTOOLBOX对给定的二阶动态系统,确定模糊控制器的结构,输入和输出语言变量、语言值及隶属函数,模糊控制规则;比较其与常规控制器的控制效果;研究改变模糊控制器参数时,系统响应的变化情况;掌握用MATLAB 实现模糊控制系统仿真的方法。

二、相关知识 模糊控制是以模糊集理论、模糊语言变量和模糊逻辑推理为基础的一种智能控制方法,首先将操作人员或专家经验编写成模糊规则,然后将来自传感器的实时信号模糊化,将模糊化的信号作为模糊规则的输入,完成模糊推理,将推力后得到的输出量加到执行器上。 MATLAB 的模糊逻辑工具箱提供了一个应用模糊逻辑方法处理各种事情的非常方便的工具。具体来说该工具箱有三种基本的应用方式,命令行函数、图形交互式工具和仿真模块。第一类由函数组成,可以在命令行或者自己的应用程序里调用它们。第二类通过图形用户界面把许多函数集中在一起,形成一个GUI(图形用户界面)开发环境,提供模糊推理系统的设计、分析和应用工具。第三类是一系列的模块,用于在Simulink 环境下进行模糊逻辑推理的仿真。 MATLAB 的模糊逻辑工具箱提供了五个GUI 工具,用来建立模糊逻辑推理系统,他们分别是FIS(模糊逻辑推理系统)编辑器、隶属函数编辑器、模糊规则编辑器、规则查看器(rule viewer)、表面图像查看器(surface viewer)。这些图形用户界面都动态的连接着改变其中一个窗口的设置参数,其他的窗口也会自动的作出相应的改变。 模糊控制器设计步骤: 1、定义输入输出模糊集 对误差e、误差变化ec 及控制量u 的模糊集及其论域定义如下 e、ec 及u 的模糊集均为{NB,NM,NS,ZO,PS,PM,PB} e 和ec 的论域为{-3,-2,-1,0,1,2,3} u 的论域为{-4.5,-3,-1.5,0,1.5,3,4.5} 2、 定义输入输出隶属函数 误差e、误差变化ec 及控制量u 的模糊集及其论域确定后,需对模糊变量确定隶属函数,即对模糊变量赋值,确定论域内元素对模糊变量的隶属度。 3、建立模糊控制规则 根据人的直觉思维推理,由系统输出的误差及误差变化趋势来设计消除系统误差的模糊控制规则,如表8-1 所示,。表中共有49 条模糊规则,各个模糊语句之间是“或”的关系。 由第一条语句所确定的控制规则可以计算出u1。同理,可以由其余各条语句分别求出控制量u2,„,u49,则控制量为模糊集和U,可表示为