基于LMI的线性化系统控制(含程序模型)

目录

前言

1.基于LMI的线性系统稳定镇定

1.1线性系统描述

1.2.控制律

 2 基于LMI的线性系统跟踪控制 

3.控制器求解

3.1 Yalmip工具箱

 3.2 Yalmip工具箱求解控制器

3.2.1 程序

3.2.2 求解结果

4 基于LMI的线性系统稳定镇定仿真分析

4.1 Simulink模型

 4.2 仿真结果

5 基于LMI的线性系统跟踪控制仿真分析

5.1 Simulink模型

5.2 仿真结果


前言

往期白嫖专栏:

使用hinfric和hinflmi函数设计H∞输出反馈控制器(含白嫖代码)_Mr. 邹的博客-CSDN博客

SMC/VSC(十一)——基于趋近律的离散滑模控制(白嫖程序模型)_Mr. 邹的博客-CSDN博客

H2/H无穷控制之msfsyn、hinfmix和h2hinfsyn函数使用及示例学习_Mr. 邹的博客-CSDN博客_hinfsyn函数

如何理解LMI线性化?

由于MATLAB对非线性矩阵的求解很困难,所以需要我们人为的去将LMI线性化后再求解。

具体例子可以查看以下文章:

LMI线性矩阵不等式之非线性变量处理_Mr. 邹的博客-CSDN博客

1.基于LMI的线性系统稳定镇定

1.1线性系统描述

1.2.控制律

 2 基于LMI的线性系统跟踪控制 

3.控制器求解

3.1 Yalmip工具箱

这里要和大家介绍一下Ylamip工具箱的使用指令,以及新版MATLAB与老版指令的区别:

 3.2 Yalmip工具箱求解控制器

3.2.1 程序

clear all;
close all;

%First example on the paper by M.Rehan
A=[-2.548 9.1 0;
    1 -1 1;
    0 -14.2 0];
B=[1 0 0;
    0 1 0;
    0 0 1];
P=sdpvar(3,3);
F=sdpvar(3,3);
M=sdpvar(3,3);

%FAI=(A'+F'*B')*P+P*(A+B*F);
FAI=A'*P+M'+P*A+M;   %M=PBF

%LMI description
% L1 = P >= 0;%老版的是用set指令,新版的不行
% L2 = FAI <= 0;
% LL = L1+L2;
LL = [P >= 0,FAI <= 0];

solvesdp(LL);

P=double(P);
M=double(M)

F=inv(P*B)*M

3.2.2 求解结果

M =

   11.1579  -51.5998    0.0014
  -51.5998   -4.6611   67.4289
    0.0014   67.4289  -14.8807
F =

    1.0919   -5.0500    0.0002
   -5.0484   -0.4560    6.5971
    0.0000    6.5999   -1.4564

4 基于LMI的线性系统稳定镇定仿真分析

4.1 Simulink模型

 4.2 仿真结果

从Scope中读取高清图的方法:

5 基于LMI的线性系统跟踪控制仿真分析

5.1 Simulink模型

5.2 仿真结果

 结论:可以看到使用这样的简单控制律对于稳定系统和跟踪效果是比较差的,而且难以抵抗外界扰动,所以后面需要引入滑模控制。

如果有帮助,麻烦帮忙点个赞是我最大的分享动力,非常感谢!

注:仅为便利自己学习,错误在所难免,如有侵权,请联系删除,有兴趣的学者可以参考学习交流,谢谢!

参考资料:

《滑模变结构控制MATLAB仿真:基本理论与设计方法第四版》---刘金琨

《YalmiP 优化工具箱及其在控制理论中的应用---戴江涛》
 

评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Mr. 邹

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值