Simulink-PID控制器

时间:2019-04-29 15:38:44

标签: matlab simulink state-space

我对Matlab和Simulink有点挣扎,试图将两者结合起来以对我的状态空间模型实现PID控制器。

我已经设置了矩阵A,B,C,D,为我提供了一个4x4状态空间模型,可以将其转换为一系列传递函数。我了解我的PID控制器分析需要解耦模型,以便能够选择1个维度,1个运动控制输入,从而为我提供1个输出,以便我使用PID控制器进行分析。

另一个难题是如何定义使模型稳定所需的误差和收益:这是此练习的目标。我已经找到了一些静态增益值,尽管我不知道它们如何连接到我的模型以及以后应该在哪里实现。

回到simulink,如何简化我的模型以使其成立并促进Simulink分析?

如果您能详细说明或给我任何建议/信息,我将非常感谢!

%A,B,C,D矩阵

A = [0 0 0 1 0 0 0 0 0 0 0 0;
0 0 0 0 1 0 0 0 0 0 0 0;
0 0 0 0 0 1 0 0 0 0 0 0; 
0 0 0 -0.0855 0 0 0 -9.81 0 0 0 0;
0 0 0 0 -0.0855 0 9.81 0 0 0 0 0;
0 0 0 0 0 0 0 0 0 0 0 0;
0 0 0 0 0 0 0 0 0 1 0 0;
0 0 0 0 0 0 0 0 0 0 1 0;
0 0 0 0 0 0 0 0 0 0 0 1;
0 0 0 0 0.7415 0 0 0 0 0 0 0;
0 0 0 0.7415 0 0 0 0 0 0 0 0;
0 0 0 0 0 0 0 0 0 0 0 0];

B = [0 0 0 0;
0 0 0 0;
0 0 0 0;
0 0 0 0;
0 0 0 0;
-0.01435 -0.01435 -0.01435 -0.01435;
0 0 0 0;
0 0 0 0;
0 0 0 0;
0 -124.4 0 124.4;
124.4 0 -124.4 0;
-0.01999 0.01999 -0.01999 0.01999];

C = [1 0 0 0 0 0 0 0 0 0 0 0;
0 1 0 0 0 0 0 0 0 0 0 0;
0 0 1 0 0 0 0 0 0 0 0 0;
0 0 0 0 0 0 0 0 1 0 0 0];

D = zeros(4, 4);

G = ss(A, B, C, D); 
I = tf(G);
J = ss2tf(A, B, C, D, 4);

我希望能够将此系统运行到PID控制器中,这将使我能够稳定模型。

此致

最大L。

0 个答案:

没有答案