Matlab功能块定义稳定空间模型(控制器)

时间:2014-07-23 14:06:01

标签: matlab

大家好

我有稳定空间模型(控制器)如下:

A =[ *M* ]; B =[0 0 2 0 0 0 0];;
C =[0;2;0]; D =[0 2 0 0 0 0 0 ; 2 0 2 0 0 0 0 ;  0 0 0 *M* 0 2 0]

Controller =ss(A,B,C,D)

该控制器有7个输入和3个输出。

我不想使用simulink稳定空间块来定义此控制器。

作为How to change variables in time in Simulink?

我的控制器中有变量M,可以随时间更改,我想使用

此方案的变量信号,如顶部链接链接。

如何使用用户定义的块来编写此变量稳态空间控制器?

哪些用户定义的块可用于编程以及如何使用?

需要帮助

由于

1 个答案:

答案 0 :(得分:0)

您可以使用Matrix Concatenate块从M信号创建D矩阵,与其他常量(02复用)以创建矢量,然后,您可以使用其他2个常量向量进行连接以创建矩阵。矩阵ABC是常量,因此您可以使用这4个矩阵从头开始构建状态空间系统,使用简单的Add,Multiply和Subtract块。 / p>

另一种方法是使用MATLAB Function块,将M作为输入,但我不知道是否允许状态空间对象作为函数输出的数据类型。我想你需要根据状态空间输入计算每个时间步的状态空间输出。不确定如何使用MATLAB功能块。