首页 > 解决方案 > Simulink 状态空间模块在 MIMO 模型中仅提供一个输出

问题描述

我有状态空间模型,其中:

A是4x4矩阵,B是4x1矩阵,C是1x4矩阵。

我希望在 Simulink 中模拟该模型,简单吧?所以我做了一个模型,如图所示。

为什么我只得到一个输出?我不应该得到矩阵 4x1 的输出,因此有四个输出吗?

标签: matlabsimulink

解决方案


分析由矩阵方程组组成的状态空间模型:

dx = A*x + B*u
y  = C*x + D*u

我们可以看到 y 的大小(输出)由 C 和 D 矩阵中的行数决定(两个矩阵中的行数必须相等)。

在您的情况下size(C) = [1,4],即行数为 1,因此您只有一个输出。

如果您想提取整个状态,您可以设置C = eye(4)和修改 D 以便size(D) = [4,1](因为您现在有 4 个输出和 1 个输入)。


推荐阅读