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

多变量系统知识回顾 - MIMO system

这一章对深入理解多变量系统以及鲁棒分析至关重要

首先,对于如下系统:

当G(s)为单输入,单输出系统时:

如果:

则:

所以

因此,对于SISO,系统的增益跟w有关系,

当G(s)为MIMO时,例如2X2时,

假设输入信号为:

输出信号为:

则:

对于MIMO,系统的输入和输出均为矢量矩阵,所以系统的增益为:

因此对于MIMO,根据上式可知,系统的增益跟输入信号的方向有关系。

下面用具体的实例来进一步说明。

例如:

根据:

可知:

其中,在系统的响应中

为G的最大singular value,为G的最小singular value

用MATLAB求取矩阵的singular value的代码如下:

Matlab 复制代码
clear all;clc;
G1=[5 4; 3 2];
[U S V]=svd(G1)

程序运行结果如下:

Matlab 复制代码
U =

   -0.8718   -0.4899
   -0.4899    0.8718


S =

    7.3434         0
         0    0.2724


V =

   -0.7937    0.6083
   -0.6083   -0.7937

所以:

如果取横坐标为:,纵坐标为:,我们可以得到如下图示结果:

如果G是一个传递函数呢?

例如:,我们可以利用MATLAB得到在一定频率范围内,系统的最大相应。

MATLAB 代码如下:

Matlab 复制代码
clear all;clc;
s=tf('s');
G=[1/(s^2+2*s+100) 1/(s+50); 1/s+10 1/(s+300)];
sigma(G)
grid on

程序运行结果如下:

根据上述结果,我们可以知道在频率大于1rad/s时,系统的最大相应为20dB。

接下来我们将引入鲁棒分析的设计概念。

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

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

相关推荐
倒头就睡的小比特4 天前
算法竞赛C++常用的STL
c++·算法
不悔哥4 天前
开源OV-Watch:怎么做一个智能手表
单片机·开源·嵌入式
小羊没烦恼!4 天前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
XiHongShi20164 天前
STM32F407 RTC定时器例程,建议保存
stm32·单片机·学习
伞伞悦读4 天前
【第38期】Python 模块与包详解:import、from、模块搜索路径、包结构和 __init__
开发语言·python
猎头南楼4 天前
知识社区推荐系统实践:新用户冷启动与长短期兴趣建模的挑战 资深推荐算法工程师
人工智能·深度学习·算法·机器学习
C语言小火车4 天前
C/C++ 为什么需要编译器?
开发语言·c++
深圳老胡4 天前
STM32F407 控制 L6470 步进电机驱动 —— 控制过程简介
笔记·stm32·单片机·嵌入式硬件·代码规范
旖旎夜光4 天前
力控面试题 01.01: 判定字符是否唯一(位运算) —— 题解
c++·学习·算法·leetcode·力控
wzdark4 天前
大规模并行计算中的负载均衡算法研究4
算法