Python 使用BuildingsPy和Dymola的简单示例

Python 使用BuildingsPy和Dymola的简单示例,python,dymola,Python,Dymola,我想使用Python使用Dymola和BuildingsPy调用我的Modelica模型。我阅读了BuildingsPy教程,大体上我了解它的发展过程,但我承认这些示例对我来说并不太直观。有人可以帮我举一个简单的例子,比如使用Modelica库中的现有模型 感谢您使用buildingspy,您必须安装以下附加python软件包: 努比 松软的 matplotlib(用于打印) 在Windows上,我建议使用anaconda 现在,您可以按如下方式运行简单的模拟: from buildings

我想使用Python使用Dymola和BuildingsPy调用我的Modelica模型。我阅读了BuildingsPy教程,大体上我了解它的发展过程,但我承认这些示例对我来说并不太直观。有人可以帮我举一个简单的例子,比如使用Modelica库中的现有模型


感谢您使用buildingspy,您必须安装以下附加python软件包:

  • 努比
  • 松软的
  • matplotlib(用于打印)
在Windows上,我建议使用anaconda

现在,您可以按如下方式运行简单的模拟:

from buildingspy.simulate.Simulator import Simulator
import os

# Make dymola.exe available
os.environ["PATH"] += os.pathsep + r"C:\Program Files\Dymola 2019 FD01\bin64"

s = Simulator(modelName="Modelica.Blocks.Examples.PID_Controller", 
              simulator="dymola")

# Simulation settings
s.addParameters({'PI.k': 10.0, 'PI.Ti': 0.1})
s.setNumberOfIntervals(100)
s.setSolver("dassl")
s.setStopTime(3.2)
s.showGUI(show=True)
s.showProgressBar(show=True)

s.simulate()

print("done")
当模拟成功完成时,python工作目录将包含结果文件
PID\u Controller.mat

现在,您可以使用Reader和Plotter类打印结果,如下所述:

警告
  • dymola.exe必须在系统路径变量上可用。上面的代码确保了这一点
  • 如果设置了自定义工作目录,buildingspy将不工作。
    • 在Dymola 2018 FD01及更高版本中:转到选项>设置并将保存启动目录设置为“不保存”

    • 谢谢你的解释,它非常清楚,对我帮助很大。我测试了我的一个模型,但通过启动代码,dymola打开了,但没有加载库,或者我的模型存在。这就是我得到的信息:

      错误:“C:\Temp\tmp模拟器wwuvls\BEE”中的模拟失败 异常:文件C:\Temp\tmp simulator wwuvls\BEE\simulator.log不存在。
      您需要手动删除目录。

      @Markus A。谢谢您,库斯先生,我会说更多法语是因为我的英语不是topAnswers,不应该用它来回复。请查看帮助页面。关于你的问题:看一个关于你的问题的最小的例子(可能在一个新问题中)会有帮助。