当前位置: 首页 > news >正文

MATLAB 控制系统设计与仿真 - 35

MATLAB鲁棒控制器分析

所谓鲁棒性是指控制系统在一定(结构,大小)的参数扰动下,维持某些性能的特征。

根据对性能的不同定义,可分为稳定鲁棒性(Robust stability)和性能鲁棒性(Robust performance)。

以闭环系统的鲁棒性作为目标设计得到的控制器称为鲁棒控制器。

鲁棒控制问题概述

鲁棒控制系统的一般结构如下所示:

其中P(s)为增广的对象模型,K(s)为控制器模型。从输入信号到输出信号的传递函数可以表示为

T_{y_1u_1}(t).

我们可以用MATLAB鲁棒工具箱中提供的函数augtf/augw来建立增广的双端子系统模型。

增广的双端子状态模型建立举例

MATLAB augtf/augw的调用格式如下:

P=augw(P,W1,W2,W3); % W1为控制器输入信号(误差信号)的加权函数% W2为控制器输出信号的加权函数% W3为输出信号的加权函数%augw要求W1,W2,W3为正则模型
P=augtf(P,W1,W2,W3); % W1为控制器输入信号(误差信号)的加权函数% W2为控制器输出信号的加权函数% W3为输出信号的加权函数

带有加权函数的双端子系统模型如下所示:

增广矩阵为:

\begin{bmatrix} z\\ e \end{bmatrix}=\begin{bmatrix} W_1 & -W_1G\\ 0 &W_2 \\ 0& W_3G\\ I&-G \end{bmatrix} \begin{bmatrix} w\\ u \end{bmatrix}=P(s)\begin{bmatrix} w\\ u \end{bmatrix}

 例如:给定一下系统状态方程模型及其加权函数,请建立增广的对象模型。

\dot{x}(t)=\begin{bmatrix} 0 & 1 & 0 & 0\\ -5000 & -100/3 & 500 & 100/3\\ 0 & -1 & 0 & 1\\ 0 & 100/3 & -4 & -60 \end{bmatrix}x(t)+ \begin{bmatrix} 0\\ 25/3\\ 0\\ -1 \end{bmatrix}u(t) \\ y(t)=\begin{bmatrix} 0 & 0 & 1 & 0 \end{bmatrix}x(t)

W_1(s)=\frac{100}{s+1},W_2(s)=10,W_3(s)=\frac{s}{1000}

MATLAB代码如下:

clear all;clc;
A=[0 1 0 0;-5000 -100/3 500 100/3;0 -1 0 1;0 100/3 -4 -60];
B=[0;25/3;0;-1];
C=[0 0 1 0];
D=0;
G=ss(A,B,C,D);
s=tf('s');
W1=100/(s+1);
W2=10;
W3=s/1000;
P=augtf(G,W1,W2,W3)

运行结果如下:

P =A = x1      x2      x3      x4      x5x1       0       1       0       0       0x2   -5000  -33.33     500   33.33       0x3       0      -1       0       1       0x4       0   33.33      -4     -60       0x5       0       0      -1       0      -1B = u1     u2x1      0      0x2      0  8.333x3      0      0x4      0     -1x5      1      0C = x1      x2      x3      x4      x5y1       0       0       0       0     100y2       0       0       0       0       0y3       0  -0.001       0   0.001       0y4       0       0      -1       0       0D = u1  u2y1   0   0y2   0  10y3   0   0y4   1   0Input groups:       Name    ChannelsU1        1    U2        2    Output groups:      Name    ChannelsY1      1,2,3  Y2        4    Continuous-time state-space model.
Model Properties

然后

tf(P)

我们可以得到P(s)=\begin{bmatrix} W_1 & -W_1G\\ 0 &W_2 \\ 0& W_3G\\ I&-G \end{bmatrix}

ans =From input 1 to output...1001:  -----s + 12:  03:  04:  1From input 2 to output...933.3 s^2 + 2.222e04 s + 5e051:  -------------------------------------------------------------s^5 + 94.33 s^4 + 6486 s^3 + 3.197e05 s^2 + 3.333e05 s + 2e042:  10-0.009333 s^3 - 0.2222 s^2 - 5 s + 3.599e-173:  ----------------------------------------------s^4 + 93.33 s^3 + 6393 s^2 + 3.133e05 s + 2e049.333 s^2 + 222.2 s + 50004:  ----------------------------------------------s^4 + 93.33 s^3 + 6393 s^2 + 3.133e05 s + 2e04Input groups:       Name    ChannelsU1        1    U2        2    Output groups:      Name    ChannelsY1      1,2,3  Y2        4    Continuous-time transfer function.
Model Properties

当我们得到增广的系统模型后, 我们可以利用MATLAB鲁棒工具箱提供的函数例如:

H_2, H_{\infty},mixsyn,loopsyn,hinfsyn求取鲁棒控制器。

接下来会举例分析介绍。

最后,欢迎大家有问题给我留言。

非常感谢小伙伴们的-点赞-收藏-加关注。

http://www.xdnf.cn/news/20629.html

相关文章:

  • 提示词工程学习指南(专家级)- 上集
  • OpenSPG/KAG V0.7发布,多方面优化提升,事实推理效果领先且构建成本降至11%
  • 2025 第一届ynuctf wp crypto-misc
  • 【sharding-jdbc配置以及例子】
  • IPD需求变更管理怎么做?4步实现需求版本有效控制
  • Node.js 异步调用淘宝API实战:构建高吞吐商品详情数据采集方案
  • MCP协议 —— AI世界的“USB-C接口”
  • PMP考试费能报销吗?报销流程是什么?
  • 软件项目验收报告模板
  • csdn封面图快速制作【独一无二的图】
  • Pyside6联合QML实现消息弹窗提示
  • 通过 Tailwind CSS 自定义样式 实现深色模式切换
  • Brain Stimulation | 状态依赖性刺激中的大脑网络动态:基于隐马尔可夫模型的EEG-TMS联合分析
  • 多态:面向对象编程的重要特性
  • CSS伪类
  • CSS 文件格式
  • 期货交易躲过AI捕杀—期货反向跟单策略
  • 基于PySide6与pyCATIA的圆柱体特征生成工具开发实战——NX建模之圆柱命令的参考与移植
  • 守护进程编程、GDB调试以及外网连接树莓派
  • 【数据结构】深入理解:完全二叉树中叶子节点与分支节点的数量关系推导
  • 每天学一个 Linux 命令(21):tree
  • Harmony5.0 设置应用全屏模式,隐藏导航栏和状态栏
  • 我的创作纪念日
  • HCIP-H12-821 核心知识梳理 (3)
  • 系统架构设计师:计算机组成与体系结构(如CPU、存储系统、I/O系统)高效记忆要点、知识体系、考点详解、、练习题并提供答案与解析
  • 4.3 熟悉字符串处理函数
  • 告别Feign:基于Spring 6.1 RestClient构建高可用声明式HTTP客户端
  • aop原理及场景
  • AI预测3D新模型百十个定位预测+胆码预测+去和尾2025年4月18日第56弹
  • 如何通过OTP动态口令登录Windows操作系统实现安全管控?安当SLA双因素认证的行业化解决方案