《线性二次型最优控制器设计ppt课件》由会员分享,可在线阅读,更多相关《线性二次型最优控制器设计ppt课件(30页珍藏版)》请在人人文库网上搜索。

1、线性二次型最优控制器设计,讲解人:胡玲笑,线性二次型最优控制器设计,本节主要内容: 线性二次型最优控制器概述 连续系统线性二次型最优控制 离散系统线性二次型最优控制 线性二次型Gauss最优控制,应用经典控制理论设计控制系统,能够解决很多简单、确定系统的实际设计问题。但是对于诸多新型而复杂的控制系统,例如多输入多输出系统与阶次较高的系统,往往得不到满意的结果。这时就需要有在状态空间模型下建立的最优控制策略。 最优控制是现代控制理论的核心。所谓最优控制,就是在一定条件下,在完成所要求的控制任务时,使系统的某种性能指标具有最优值。根据系统不同的用途,可提出各种不用的性能指标。最优控制的设计,就是选。

2、择最优控制,以使某一种性能指标为最小,一、线性二次型最优控制概述,线性二次型最优控制设计是基于状态空间技术来设计一个优化的动态控制器。系统模型是用状态空间形式给出的线性系统,其目标函数是状态和控制输入的二次型函数。二次型问题就是在线性系统约束条件下选择控制输入使二次型目标函数达到最小。 线性二次型最优控制一般包括两个方面:线性二次型最优控制问题(LQ问题),具有状态反馈的线性最优控制系统;线性二次型Gauss最优控制问题,一般是针对具体系统噪声和量测噪声的系统,用卡尔曼滤波器观测系统状态,二、连续系统线性二次型最优控制,1.连续系统线性二次型最优控制原理 假设线性连续定常系统的状态方程为: 要。

3、寻求控制向量 使得二次型目标函数 为最小。式中,Q为半正定是对称常数矩阵,R为正定实对称常数矩阵,Q、R 分别为X和U的加权矩阵,根据极值原理,我们可以导出最优控制律: 式中,K为最优反馈增益矩阵;P为常值正定矩阵,必须 满足黎卡夫(Riccati)代数方程 因此,系统设计归结于求解黎卡夫(Riccati)方程的问题,并 求出反馈增益矩阵K,2.连续系统二次型最优控制的MATLAB函数,在MATLAB工具箱中,提供了求解连续系统 二次型最优控制的函数:lqr()、 lqr2()、 lqry()。 其调用格式为,其中,A为系统的状态矩阵;B为系统的输出矩 阵;Q为给定的半正定实对称常数矩阵;R为。

4、给 定的正定实对称常数矩阵;N代表更一般化性 能指标中交叉乘积项的加权矩阵;K为最优反馈 增益矩阵;S为对应Riccati方程的唯一正定解P (若矩阵A-BK是稳定矩阵,则总有正定解P存在);E为矩阵A-BK的特征值,其中, lqry()函数用于求解二次型状态调节器的特 例,是用输出反馈代替状态反馈,即其性能指标为: 这种二次型输出反馈控制叫做次优控制。 此外,上述问题要有解,必须满足三个条件: (1) (A,B)是稳定的; (2) R0且Q-NR-1NT0; (3) (Q-NR-1NT,A-BR-1NT)在虚轴上不是非能观 模式。 当上述条件不满足时,则二次型最优控制无解,函数 会显示警告信。

5、号,3.连续系统二次型最优控制设计实例,例8.7】设系统状态空间表达式为: (1)采用输入反馈,系统的性能指标为: 取 ,R=1,2)采用输出反馈,系统的性能指标为: ,取Q=1,R=1 试设计LQ最优控制器,计算最优状态反馈矩阵 ,并对闭环系统进行单位阶跃的 仿真。 【解】 (1)我们可以用MATLAB函数lqr()来求解LQ最 优控制器,程序清单如下,A=0,1,0;0,0,1;-1,-4,-6; B=0,0,1;C=1,0,0;D=0; Q=diag(1,1,1); R=1; K=lqr(A,B,Q,R) k1=K(1); Ac=A-B*K;Bc=B*k1;Cc=C;Dc=D; Step。

6、(Ac,Bc,Cc,Dc) 程序运行结果如下: K =0.4142 0.7486 0.2046,同时得到闭环阶跃响应曲线,如图1-1所示。 图1-1 闭环系统阶跃响应曲线,由图1-1可知,闭环系统单位阶跃响应曲线略微 超调后立即单调衰减,仿真曲线是很理想的,反 映了最优控制的结果。 (2)我们可以用MATLAB函数lqry()来求解LQ最优控 制器,给出程序清单如下: A=0,1,0;0,0,1;-1,-4,-6; B=0,0,1;C=1,0,0;D=0; Q=1; R=1; K=lqry(A,B,C,D,Q,R) k1=K(1); Ac=A-B*K;Bc=B*k1;Cc=C;Dc=D; St。

7、ep(Ac,Bc,Cc,Dc,程序运行结果如下: K =0.4142 0.6104 0.1009 同时得到闭环阶跃响应曲线,如图1-2所示。 图1-2 闭环系统阶跃响应曲线 由图1-1和图1-2知,经最优输出反馈后,闭环系统阶跃响应曲线与经最优状态反 馈后的阶跃响应曲线很接近,三、离散系统线性二次型最优控制,下面对离散系统线性二次型最优控制进行详细介绍。 1、离散系统线性二次型最优控制原理 假设完全可控离散系统的状态方程为: 要寻求控制向量 使得二次型目标函数 为最小,式中,Q为半正定实对称常数矩阵;R为正定实对称 常数矩阵;Q、R分别为X和U的加权矩阵。 根据极值原理,我们可以导出最优控制律。

8、: 式中,K为最优反馈增益矩阵;P为常值正定矩阵,必 须满足黎卡夫(Riccati)代数方程 因此,系统设计归结于求解黎卡夫(Riccati)方程 的 问题,并求出反馈增益矩阵K,2.离散系统二次型最优控制的MATLAB函数,在MATLAB工具箱中,提供了求解离散系统二次型最优控制的函 数dlqr()与dlqry()。其调用格式为: 其中,A为系统的状态矩阵;B为系统的输出矩阵;Q为给定的半正定 实对称常数矩阵;R为给定的正定实对称常数矩阵;N代表更一般化性 能指标中交叉乘积项的加权矩阵;K为最优反馈增益矩阵;S为对应 Riccati方程的唯一正定解P(若矩阵A-BK是稳定矩阵,则总有正定解P。

9、 存在);E为矩阵A-BK的特征值,其中,dlqr()函数用于求解二次型状态调节器的特例,是用输出反馈代替状态反馈,即 ,则其性能指标为:3.离散系统二次型最优控制设计实例【例2】设离散系统的状态方程试计算稳态最优反馈增益矩阵,并给出闭环系统的单位阶跃响应曲线,解】 设定性能指标为 , 取 ,R=1。 用MATLAB函数dlqr()来求解最优控制器,给出程序清 单如下: %求解最优控制器 a=2;b=1;c=1;d=0; Q=1000,0;0,1; R=1; A=a,0;-c*a,1; B=b;-c*b; Kx=dlqr(A,B,Q,R) k1=-Kx(2);k2=Kx(1); axc=(a-。

10、b*k2),b*k1;(-c*a+c*b*k2),(1-c*b*k1); bxc=0;1;cxc=1,0;dxc=0; dstep(axc,bxc,cxc,dxc,1,100,程序运行后得到系统最优状态反馈增益矩阵KX为: Kx =1.9981 -0.0310 以及闭环系统的阶跃响应曲线,如图1-3所示。 图1-3 闭环系统阶跃响应曲线,四、 线性二次型Gauss最优控制,考虑系统随机输入噪声与随机量测噪声的线性二次型的最优控制叫 做线性二次Gauss(LQG)最优控制。这是一种输出反馈控制,对解决线性 二次型最优控制问题更具有实用性。 1.LQG最优控制原理 假设对象模型的状态方程表示为: 。

11、式中,(t)和(t)为白噪声信号,(t)为系统干扰噪声,(t)为传感器带来的 量测噪声。假设这些信号为零均值的Gauss过程,它们的协方差矩阵为: 式中,Ex为向量x的均值。ExxT为零均值的Gauss信号x的协方差。 进一步假设(t)和(t)为相互独立的随机变量,使得E (t)T(t) =0。定义最 优控制的目标函数为: 式中,Q为给定的半正定实对称常数矩阵,R为给定的正定实对称常数矩阵,根据LQG问题的分离原理,典型的线性二次型Gauss最优控制的解 可以分解为下面两个问题: LQ最优状态反馈控制问题; 带有扰动的状态估计问题。 设计LQG控制器的一般步骤如下。 (1)根据二次型的性能指标。

12、J,寻求最优状态反馈增益矩阵K。 (2)设计一个卡尔曼滤波器来估计系统状态。 (3)构建LQG控制器。 下面介绍Kalman滤波器和LQG控制器设计的MATLAB实现。 2. Kalman滤波器 在实际应用中,若系统存在随机扰动,通常系统的状态需要由状态方 程Kalman滤波器的形式给出。 Kalman滤波器就是最优观测器,能够抑 制或滤掉噪声对系统的干扰和影响。利用Kalman滤波器对系统进行最优 控制是非常有效的,在MATLAB的工具箱中提供了Kalman()函数来求解系统的Kalman滤波 器。其调用格式为: 对于一个给定系统sys,噪声协方差Q,R,N函数返回一个Kalman滤波器 的。

13、状态空间模型kest,滤波器反馈增益为L,状态估计误差的协方差为P。用 MATLAB构建的Kalman状态观测器模型为: 【例3】已知系统的状态方程为: 已知 ,试设计系统Kalman滤波器。 【解】 为计算系统Kalman滤波器的增益矩阵与估计误差的协方差,给出一下程序, Kalman滤波器 A=-1,0,1;1,0,0;-4,9,-2; B=6,1,1;C=0,0,1;D=0; S=ss(A,B,C,D); Q=0.001;R=0.1; kest,L,P=kalman(S,Q,R); L,P 运行程序,得到系统Kalman滤波器的增益矩阵L与估计误差的协方差 P为: L = 1.0641 。

14、1.1566 2.0393 P = 0.0678 0.0664 0.1064 0.0664 0.0695 0.1157 0.1064 0.1157 0.2039,3.LQG最优控制器的MATLAB实现,我们已经知道,LQG最优控制器是由系统的最优反馈增益K和 Kalman滤波器构成,其结构如图1-4所示。 图1-4 LQG最优控制器框图,Kalman滤波,K,W,V,Y,x,u,LQG控制器,在系统最优反馈K和Kalman滤波器设计已经完成的情况下,可借助 MATLAB工具箱函数reg()来实现LQG最优控制。函数调用格式为: rlqg=reg(sys,K,L) 其中,sys为系统状态空间模型。

15、,K为用函数lqr()等设计的最优反馈增益,L 为滤波器反馈增益,rlqg为LQG调节器。 【例3】已知控制系统结构图如图1-5所示,Simulink仿真模型为untitled.mdl。 试对系统进行LQG最优控制,并给出系统闭环的单位阶跃响应曲线。 图1-5 系统结构图,解】 根据题意,要将已知系统结构图模型转换成状态空间模型,需要 调用函数linmod()。取加权矩阵Q1=1,R1=1,以及噪声矩Q2=0.001,R2=0.1。 给出程序如下: %生成状态空间模型 a,b,c,d=linmod(untitled); s1=ss(a,b,c,d); q1=1000,0,0;0,1,0;0,0。

16、,1;r1=1; K=lqr(a,b,q1,r1) %设计Kalman滤波器 q2=1;r2=1; kest,L,P=kalman(s1,q2,r2); %LQG校正器 af,bf,cf,df=reg(a,b,c,d,K,L); sf=ss(af,bf,cf,df); sys=feedback(s1,sf); t=0:0.1:15; step(s1,t);hold on step(sys,t,程序运行后得到原系统和带LQG控制器系统的闭环阶跃响应曲 线,如图1-6所示。 图1-6 系统阶跃响应曲线 由图1-6可知,原系统单位阶跃响应曲线振荡较大(虽然衰减);带 LQG控制器的闭环系统单位阶跃响应曲线略微超调后立即单调衰减,仿 真曲线是很理想的,反映了最优控制的结果,校正后,校正前,THANK YOU。

matlab二次型状态反馈调节器,线性二次型最优控制器设计ppt课件相关推荐

  1. 哈尔滨理工大学matlab,微软用户-Matlab软件简介哈尔滨理工大学数学建模组ppt课件...

    <微软用户-Matlab软件简介哈尔滨理工大学数学建模组ppt课件>由会员分享,可在线阅读,更多相关<微软用户-Matlab软件简介哈尔滨理工大学数学建模组ppt课件(41页珍藏版) ...

  2. matlab kl变换函数,《数字图像KL变换》PPT课件.ppt

    <<数字图像KL变换>PPT课件.ppt>由会员分享,可在线阅读,更多相关<<数字图像KL变换>PPT课件.ppt(18页珍藏版)>请在人人文库网上搜索 ...

  3. matlab symadd,信号调理器设计—大二暑期信号分析实习报告精选多篇

    第1篇第2篇第3篇第4篇第5篇更多顶部 目录 第一篇:信号调理器设计-大二暑期信号分析实习报告 第二篇:大二暑期信号分析实习报告 第三篇:传感器信号调理电路 第四篇:信号调理电路 第五篇:信号实习报告 ...

  4. matlab 二次最优控制,基于MATLAB的线性二次型最优控制

    0 引言 倒立摆系统是非线性.强耦合.多变量和自然不稳定的系统.在控制过程中,它能有效地反应控制理论中诸如系统稳定性.可控性.鲁棒性.系统收敛速度.随动性以及跟踪等问题,是检验各种控制理论的理想模型. ...

  5. MATLAB中PI调节器设计,华中科技大学电气学院matlab选修课大作业pi控制器的设计...

    华中科技大学电气学院matlab选修课大作业pi控制器的设计 2008 级<MATAB 语言与控制系统仿真>课程大作业姓 名 赖智鹏 学 号 u200811806 所在院系 电气与电子工程 ...

  6. 史密斯预估器matlab仿真,(毕业论文)史密斯预估器设计.doc

    (毕业论文)史密斯预估器设计 摘 要 大迟延对象的控制一直是控制领域研究的焦点问题.加热炉温度控制便属于这类复杂的控制对象.传统的加热炉温度控制系统采用的是原料油出口温度同燃料油流量或同炉膛温度的串级 ...

  7. 非平坦结构元matlab,基于MATLAB的巴特沃思型数字滤波器设计.doc

    摘要:数字滤波是信号处理的重要内容,是滤波的核心问题.通过一定的运算关系,消除或减弱噪声,从而获得纯净的信号. 本文主要研究巴特沃思型数字滤波器的原理及设计方法.用Matlab软件设计巴特沃思滤波器四 ...

  8. matlab实现模糊控制器并仿真,用Matlab实现空调温度模糊控制器的设计与仿真.pdf...

    您所在位置:网站首页 > 海量文档 &nbsp>&nbsp建筑/施工&nbsp>&nbsp给排水/暖通与智能化 用Matlab实现空调温度模糊控制器的 ...

  9. matlab hod on,基于Matlab语言定量反馈控制器的分析与设计_朱永文

    计算机测量与控制. 2002. 10( 12) 822 Computer Measurement & Control 文章编号: 1671- 4598( 2002) 12- 0822- 02 ...

最新文章

  1. 解决eclipse project前出现红色感叹号 但没有提示错误出在什么地方build path jar包也没报错...
  2. java基础面试题整理-2021
  3. 如何确定电脑主板坏了_【不良资产 】(第1422期)银行在打包不良资产出售之前,会如何处置不良资产?...
  4. 查看SecureCRT保存的密码
  5. C#写的一个代码生成器
  6. php 递归栏目名叠加,thinkPHP实现递归循环栏目并按照树形结构无限极输出的方法,thinkphp递归...
  7. 用php写出显示客户端ip与服务器ip的代码.,PHP面试题答案
  8. python 字典处理_Python 6 个字典操作你必须知道
  9. GBTC负溢价扩大至20.44%,创下历史新低
  10. 【Python123】汽车迷
  11. iframe允许嵌入的视频全屏播放
  12. WiFi 中继/桥接功能 — 基于OpenWRT路由器
  13. java 动态性之反射机制 详解 案例,java架构师技术图谱
  14. fopen w和 w+属性的区别
  15. 【备忘】零基础学习java学习路线,从菜鸟到大牛的视频教程
  16. mysqldb 安装包 linux,Linux下Python MySQLdb模块安装过程及错误解决
  17. c语言小蜜蜂游戏编程,GMS2从零做游戏:小蜜蜂(一)
  18. python微信聊天记录自动上传_python实现微信定时每天和女友发送消息
  19. 通过JS代码动态生成HTML表格(Table),Input框,Button按钮.并且通过Input框的值进行查询动态生成数据填写在指定的表格里
  20. 用VB.NET(Visual Basic 2010)封装EXCEL VBA为DLL_COM组件(一)

热门文章

  1. 十三、传智书城项目设计
  2. 亚马逊 AWS-S3 文件服务器使用
  3. C# TreeView 控件的综合使用方法
  4. ASP.NET给图片加水印——上传文件
  5. 远古vod5.0的安装!
  6. Window是系统中BitLocker是否应该开启?
  7. sql中like与%%的用法
  8. 蓝魔RM970升级为2.4
  9. 高校房产管理系统平台架构分析
  10. IDC防火墙配置CISCO ASA5520