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

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

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

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

首先,对于如下系统:

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

y(w)=G(jw)d(w)

如果:d(t)=d_0sin(wt+\alpha) \\ y(t)=y_0sin(wt+\beta)

则:

d(w)=d_0e^{j\alpha} \\ y(w)=y_0e^{j\beta}

所以

\left | G(jw) \right |=\frac{|y(w)|}{|d(w)|}=\frac{y_0}{d_0} \\ \angle G(jw)=\beta-\alpha

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

假设输入信号为:

 d(t)=\begin{bmatrix} d_1(t))\\ d_2(t) \end{bmatrix}=\begin{bmatrix} d_{10}sin(wt+\alpha_1)\\ d_{20}sin(wt+\alpha_2) \end{bmatrix}

输出信号为:

y(t)=\begin{bmatrix} y_1(t))\\ y_2(t) \end{bmatrix}=\begin{bmatrix} y_{10}sin(wt+\beta_1)\\ y_{20}sin(wt+\beta_2) \end{bmatrix}

则:

d(w)=\begin{bmatrix} d_{10}e^{j\alpha_1}\\ d_{20}e^{j\alpha_2}) \end{bmatrix} \\ y(w)=\begin{bmatrix} y_{10}e^{j\beta_1}\\ y_{20}e^{j\beta_2}) \end{bmatrix}

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

\left | G(jw) \right |=\frac{|y(w)|}{|d(w)|}=\frac{\begin{Vmatrix} y(w) \end{Vmatrix}_2}{\begin{Vmatrix} d(w) \end{Vmatrix}_2}=\frac{\sqrt{(y^2_{10}+y^2_{20}})}{\sqrt{(d^2_{10}+d^2_{20}})}

因此,对于SISO,系统的增益跟w有关系,\frac{|y(w)|}{|d(w)|}=\frac{|G(jw)d(w)))}{|d(w)|}=|G(jw)|

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

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

例如:

d_1=\begin{bmatrix} 1\\ 0 \end{bmatrix} , d_2=\begin{bmatrix} 0\\ 1 \end{bmatrix} , d_3=\begin{bmatrix} 0.707\\ 0.707 \end{bmatrix} , d_4=\begin{bmatrix} 0.707\\ -0.707 \end{bmatrix} , d_5=\begin{bmatrix} 0.6\\ -0.8 \end{bmatrix} \\ G_1=\begin{bmatrix} 5 & 4\\ 3 & 2 \end{bmatrix}

根据:

y=Gd

可知:

y_1=\begin{bmatrix} 5\\ 3 \end{bmatrix} , y_2=\begin{bmatrix} 4\\ 2 \end{bmatrix} , y_3=\begin{bmatrix} 6.36\\ 3.54 \end{bmatrix} , y_4=\begin{bmatrix} 0.707\\ 0.707 \end{bmatrix} , y_5=\begin{bmatrix} -0.2\\ 0.2 \end{bmatrix}

\begin{Vmatrix} y_1 \end{Vmatrix}_2=5.83, \begin{Vmatrix} y_2 \end{Vmatrix}_2=4.74, \begin{Vmatrix} y_3 \end{Vmatrix}_2=7.3, \begin{Vmatrix} y_4 \end{Vmatrix}_2=1, \begin{Vmatrix} y_5 \end{Vmatrix}_2=0.28,

其中,在系统的响应中 y_{max}=\bar{\sigma},y_{min}=\underset{\bar{}}{\sigma},

\bar{\sigma}为G的最大singular value,\underset{\bar{}}{\sigma}为G的最小singular value

\underset{\bar{}}{\sigma}\leq \left | G(jw) \right |=\frac{\begin{Vmatrix} y(w) \end{Vmatrix}_2}{\begin{Vmatrix} d(w) \end{Vmatrix}_2}\leq \bar{\sigma}

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

clear all;clc;
G1=[5 4; 3 2];
[U S V]=svd(G1)

程序运行结果如下:

U =-0.8718   -0.4899-0.4899    0.8718S =7.3434         00    0.2724V =-0.7937    0.6083-0.6083   -0.7937

所以:

y_{max}=\bar{\sigma}=7.34 \\ y_{min}=\underset{\bar{}}{\sigma}=0.27

如果取横坐标为:d_{20}/d_{10},纵坐标为:\left | G(jw) \right |={\begin{Vmatrix} y(w) \end{Vmatrix}_2}/{\begin{Vmatrix} d(w) \end{Vmatrix}_2},我们可以得到如下图示结果:

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

例如:G(s)=\begin{bmatrix} 0 & \frac{3s}{s^2+s+10}\\ \frac{s+1}{s+5} & \frac{2}{s+6} \end{bmatrix},我们可以利用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。

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

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

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

相关文章:

  • 2000-2017年各省国有经济煤气生产和供应业固定资产投资数据
  • 数据结构——反射、枚举以及lambda表达式
  • 深度解析大屏软件及其优势
  • 零基础上手Python数据分析 (16):DataFrame 常用统计分析方法
  • 私人笔记:动手学大模型应用开发llm-universe项目环境创建
  • java 设计模式 策略模式
  • docker的基础知识
  • 微服务4--服务网关
  • 【Qt】常用显示类控件概述(Label、LCD Number、ProgressBar、Calendar Widget)
  • 用手机也能打《无畏契约》?登录ToDesk即可开玩
  • Edge 浏览器推出 Copilot Vision:免费实时解析屏幕内容;Aqua Voice:极速 AI 语音输入工具丨日报
  • Matter如何终结智能家居生态割据,重构你的居住体验?
  • 最快打包WPF 应用程序
  • 教程:批量提取PDF页面指定区域位置的内容,将内容保存到Excel表格,基于WPF的实现过程和方案,可以提取电子发票等类型的PDF文档,将明细保存表格
  • 【Web前端技术】第二节—HTML标签(上)
  • 【Redis】Redis基本命令(1)
  • 【AI】——结合Ollama、Open WebUI和Docker本地部署可视化AI大语言模型
  • LeetCode每日一题4.17
  • 数据江湖:Node.js 与 SQLite3 的轻量之道
  • 昆仑万维开源 32B 推理模型 Skywork-OR1:超越 DeepSeek-R1
  • 成都网站建设公司有哪几家/南京seo公司哪家
  • 网站优化工具/公众号排名优化软件
  • 福鼎网站建设/seo关键词排名怎么优化
  • 紫搜做网站/营销策划的六个步骤
  • 武汉网站建设网站/seo深圳优化
  • 百度网站验证怎么做/360网站推广官网