目录

  • 1. LQR控制算法介绍
    • 1.1 全状态反馈控制
    • 1.2 LQR控制推导
  • 2. 倒立摆模型仿真
    • 2.1 倒立摆状态空间方程推导
    • 2.2 开环仿真
    • 2.3 闭环LQR仿真
    • 2.4 LQR对比仿真

1. LQR控制算法介绍

1.1 全状态反馈控制

  首先回顾一下全状态反馈控制器的模型:

  假设一个线性系统的状态空间方程表示为:

  在此,我们需要设计一个状态反馈控制器:

  使得该线性系统达到期望的稳定性能。将 u=-kx 带入到状态空间方程可得:

  由上式可知,引入状态反馈后,线性系统的传递函数的极点为行列式 A-Bk 的特征值。通过配置反馈矩阵 k ,可以使得系统达到所期望的状态。
  那么如何选取传递函数的极点使系统的性能最好以及矩阵 k 如何计算?这就需要引入LQR控制了。

1.2 LQR控制推导

  LQR的目标就是找到一组控制量,使得同时满足状态量足够小(系统达到稳定状态),控制量足够小(控制量尽量小)。
  引入代价函数:

  其中,Q和R是需要设计的半正定矩阵和正定矩阵。
  代价函数 J 需要达到最小值,那么在 t 趋近于无穷时,状态向量 x(t) 肯定趋近于0,即是达到了系统稳态;同理,t 趋近于无穷时,控制向量 u(t) 也会趋近于0,意味着,随着时间的推移,需要对系统施加的控制量会越来越小,意味着使用最小的控制量使得系统达到了最终控制目标。
  那么Q和R矩阵的取值如何确定呢?
  一般来说,为了方便观察各个系统状态量,Q和R选取对角阵。Q矩阵的某一个元素值增大,意味着这个元素值作用的系统状态量将以更快的速度衰减到0,比如,Q11 选取较大的值,那么 x11 将会很快衰减到0;另外一方面,R矩阵的某一个元素值增大,意味着这个元素值作用的控制量减小,控制器执行更少的动作,系统的状态衰减将变慢。所以,Q和R矩阵的选取要根据实际应用场景。
  推导过程:


  LQR控制结构图为:

2. 倒立摆模型仿真

  本文以下仿真内容是对up主DR_CAN讲解内容的复现。
  视频链接:https://www.bilibili.com/video/BV1RW411q7FDshare_source=copy_web
  建议先观看视频学习。

2.1 倒立摆状态空间方程推导



2.2 开环仿真


  图中x1积分模块初始值设置为5,表示初始角度为5°;仿真时间1s。


  图中三条曲线分别代表x1,x2,u即角度,角速度,输入。倒立摆模型建立在小角度近似的基础上,故当角度增大到一定程度时,模型失效,对应波形图中x1和x2一直保持发散的趋势。

2.3 闭环LQR仿真

  根据模型的A和B矩阵及自行设置的Q和R矩阵,在matlab命令行窗口利用lqr函数计算K矩阵。


  根据K矩阵元素值构建闭环simulink模型。


  引入状态反馈后,x1和x2最终保持收敛,达到稳定状态。

2.4 LQR对比仿真

  更改Q和R矩阵,重新计算K矩阵。


  将两个闭环模型分别封装成三输出的Subsysytem,进行对比仿真。

  仿真时间3s。


  黄色曲线代表Q=[100 0;0 1],R=0.01的仿真结果,蓝色曲线代表Q=[1 0;0 1],R=100的仿真结果。黄色曲线的x1和x2收敛速度更快,说明黄色曲线更关注收敛速度;蓝色曲线的u值更小且变化比较平滑,说明蓝色曲线更关注能耗问题。两条曲线最终都实现了状态的收敛即角度和角速度为零。
  如果本文对您有所帮助,麻烦一键三连,谢谢!

LQR控制算法及matlab/simulink仿真相关推荐

  1. 伺服系统基于陷波滤波器双惯量伺服系统机械谐振抑制matlab Simulink仿真

    伺服系统基于陷波滤波器双惯量伺服系统机械谐振抑制matlab Simulink仿真 1.模型简介 模型为基于陷波滤波器的双惯量伺服系统机械谐振抑制仿真,采用Matlab R2018a Simulink ...

  2. 单相桥式相控整流电路multisim仿真_单相半波可控整流电路电阻负载的Matlab Simulink仿真...

    1.单项半波可控整流电路电阻负载电路图 2.Matlab Simulink仿真图 3.AC Voltage Source(交流电源)参数设置 4.Pulse Generator(触发环节)参数设置 A ...

  3. quartus怎么仿真波形_单相半波可控整流电路电阻负载的Matlab Simulink仿真

    1.单项半波可控整流电路电阻负载电路图 2.Matlab Simulink仿真图 3.AC Voltage Source(交流电源)参数设置 4.Pulse Generator(触发环节)参数设置 A ...

  4. Matlab/Simulink仿真问题及技巧汇总【持续更新】

    本文章会汇总Matlab/Simulink仿真问题和相关技巧汇总. 如果有问题可以查询本文.有相关问题可以私信我,给你把你们的问题同步更新.wx:shadowknight007 本文章会持续更新. 设 ...

  5. 最全电力电子仿真matlab/simulink仿真 单相全桥/半桥整流仿真 单相半波全波仿真

    最全电力电子仿真matlab/simulink仿真 单相全桥/半桥整流仿真 单相半波全波仿真 三相全桥/半桥整流仿真 三相半波全波仿真 三相桥式整流及其有源逆变仿真 单相桥式整流及其无源逆变仿真 升降 ...

  6. 光伏并网发电系统MATLAB Simulink仿真设计 该仿真包括电池,BOOST升压电路,单相全桥逆变电路

    光伏并网发电系统MATLAB Simulink仿真设计. 该仿真包括电池,BOOST升压电路,单相全桥逆变电路,电压电流双闭环控制部分:应用MPPT技术,提高光伏发电的利用效率. 采用PI调节方式进行 ...

  7. MATLAB/simulink仿真 光伏蓄电池恒流恒压充电 系统启动运行在恒流充电模式

    MATLAB/simulink仿真 光伏蓄电池恒流恒压充电 系统启动运行在恒流充电模式 当电压超过界定值切换到恒压充电模式 ID:9166671870672986波心当冷月无声

  8. 光伏发电并网matlab/simulink仿真,带PLL锁相环,逆变器控制,最大功率控制MPPT,BOOST升压电路

    光伏发电并网matlab/simulink仿真,带PLL锁相环,逆变器控制,最大功率控制MPPT,BOOST升压电路 ID:6959670609861734

  9. BUCK降压斩波电路MATLAB SIMULINK仿真

    ** 降压斩波电路 ** 工作原理 t=0时刻驱动V导通,电源E向负载供电,负载电压uo=E,负载电流io按指数曲线上升. t=t1时控制V关断,二极管VD续流,负载电压uo近似为零,负载电流呈指数曲 ...

  10. 地铁牵引供电系统MATLAB/Simulink仿真建模

    地铁牵引供电系统MATLAB/Simulink仿真建模 1. 牵引网建模--24脉波整流 参考文献: 西南交大 边宏超 硕士毕业论文 仿真结果--空载电压 2. 牵引电机建模--异步电机 参考文献: ...

最新文章

  1. android5.1内核版本,Android-x86现已基于5.1.1 Lollipop:支持UEFI和64位内核
  2. VTK:颜色断开区域用法实战
  3. 将Java应用程序打包为一个(或胖)JAR
  4. The security settings could not be applied to the database because the connection has failed安装Mysql
  5. torchvision包的主要构成
  6. php 控制器分组模式,控制器分组路由
  7. Codeforces Round #430 D. Vitya and Strange Lesson
  8. SQL_SERVER 导oracle(转)
  9. 求大于3的素数c语言,c语言判断一个大于3的数是否是素数
  10. 第4章 最基础的分类算法-k近邻算法 kNN 学习笔记 上
  11. 大学数学视频教程整理
  12. 【数字图像处理】霍夫(Hough)变换
  13. Google Earth Browser Plugin (谷歌 地球 浏览器 插件) 下载地址 5.0
  14. 海康流媒体客户端开发
  15. 云服务器 - 腾讯云主机信息
  16. Amino-PEG8-alcohol,352439-37-3的化学性质分析
  17. 场景背后见真章:银行数字化转型持续深入
  18. Java基本类型介绍
  19. echarts绘制广东省地图
  20. 恒生电子的一道编程题

热门文章

  1. GMP与ISO9000有何区别?(转载)
  2. 90年经典坦克大战(cocos2d-x)
  3. java中常见的设计模式_在Java中10种常见设计模式详细介绍
  4. sha256是什么算法,sha256的安全性,sha256算法详解
  5. 联想y50更换固态硬盘_联想y50怎么加固态硬盘而不换原来的机器硬盘?
  6. 第四章 爬取西刺免费代理ip 并应用到scrapy
  7. ubuntu16.04安装caffe教程(仅cpu)
  8. 软件开发中的需求种类
  9. 使用Python成功调用大漠插件方法
  10. Java多用户商城系统B2B2C源码