0

我有一个带有模型预测控制器和 PID 控制器的系统。假设我有每个控制器的模型并且可以在离散时间内表达它们,请问如何将它们集成在一起以在 matlab 中模拟系统的属性?

谢谢

4

1 回答 1

0

...继续评论。这就是 Simulink 的用途。当然,有很多方法可以在没有 Simulink 的情况下做到这一点,但通常您仍然在没有图形界面的情况下使用 Simulink 工具和功能。

我假设您的传输函数“在纸上”。所以你需要这个tf函数来定义你的系统模型。

G = tf(num,den)

num并且den是分子和分母的传递函数的系数向量。在 Simulink 中,您使用Transfer Fcn模块并使用

G.num{1} %Numerator coefficients
G.den{1} %Denumerator coefficients

无法使用此模块定义您的 PID 控制器,因为 Simulink 需要更高或等于分母的顺序。而是使用PID controller块。您需要先计算比例增益、积分增益和微分增益。

然后阅读有关 MPC 工具箱的文档——我不熟悉它,无法帮助你——它解释了如何创建一个mpc object关于所有约束的文档(请参阅你的其他问题)。

然后,您有多种选择可以将您的 mpc 对象转换为 Simulink 可以处理的对象。我推荐ss- 状态空间模型 - 可以使用state space块来实现。还有一个MPC Controller块,我没有工具箱 - 但您将能够了解如何使用它。

最后你会找到源块,比如step生成一个测试信号。还有Sinks,在最简单的情况下scope显示您的结果。您还可以将它们保存到工作区或其他任何...

于 2013-10-06T10:33:06.320 回答