2

我想运行一个类似于此处演示的控制系统模拟。由于 OpenMDAO 似乎具有基于组件的建模的良好特性,是否可以使用 OpenMDAO 运行这样的模拟?

更具体地说,我现在试图完成的是更简单的动态系统和各种 PID 控制器的连续时间模拟,以适应系统不同点的无数干扰组合。

我现在所做的是通过该lsim()函数完成的,该函数在 Scipy ( lsim() doc ) 和 Matlab ( lsim() doc ) 中都可用。然而,这些工具很麻烦,因为它们需要将整个系统建模为单个集总输入输出系统。使用多个输入点时的转换是耗时的,并且根据系统的复杂性很难实现。此外,lsim()不适用于非线性问题。

理想情况下,我还想混合使用连续时间模拟(针对工厂)和离散时间模拟(针对控制器,我将在未来对其进行转换,以便更轻松地模拟时间延迟)。希望支持非线性行为的另一个原因是模拟未来的滞后。

一个简单的方法是使用 Simulink(如此所述),但我宁愿在 Python 中使用它,因为我正在尝试构建一个与其他 Python 工具交互的解决方案。

4

1 回答 1

1

世事皆可能!还没有人完成你要问的事情。

一些系统的瞬态建模已经使用 OpenMDAO 完成。具体来说,我们的卫星工作对轨道动力学使用了明确的时间积分方案,并解决了最优控制问题。但它没有解决控制器设计或状态空间建模问题。

然而,建立工厂模型和离散时间控制器应该都是可能的。所以我不明白为什么不能这样做。

于 2015-08-11T01:22:48.293 回答