2024-10-05 10:53:57 发布
网友
我想使用Python调用我的Modelica模型,使用Dymola和BuildingsPy。我阅读了BuildingsPy教程,我大体上理解了它是如何进行的,但我承认这些示例对我来说并不太直观。有人可以帮我举一个简单的例子,比如使用Modelica库中的现有模型。你知道吗
谢谢
对于buildingspy,必须安装以下附加python包:
在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_Controller.mat。你知道吗
PID_Controller.mat
现在可以使用Reader和Plotter类来打印结果,如下所述: https://simulationresearch.lbl.gov/modelica/buildingspy/io.html
谢谢你的解释,很清楚,对我帮助很大。我测试了我的一个模型,但是通过启动代码,dymola打开了,但是它没有加载库或者我的模型存在。这就是我得到的信息:
错误:“C:\Temp\tmp simulator wwwls\BEE”中的模拟失败 异常:文件C:\Temp\tmp simulator wwwls\BEE\模拟器.log不存在。 您需要手动删除目录。你知道吗
对于buildingspy,必须安装以下附加python包:
在Windows上,我建议使用anaconda。你知道吗
现在,您可以运行一个简单的模拟,如下所示:
当模拟成功完成时,python工作目录将包含结果文件
PID_Controller.mat
。你知道吗现在可以使用Reader和Plotter类来打印结果,如下所述: https://simulationresearch.lbl.gov/modelica/buildingspy/io.html
注意事项
谢谢你的解释,很清楚,对我帮助很大。我测试了我的一个模型,但是通过启动代码,dymola打开了,但是它没有加载库或者我的模型存在。这就是我得到的信息:
错误:“C:\Temp\tmp simulator wwwls\BEE”中的模拟失败 异常:文件C:\Temp\tmp simulator wwwls\BEE\模拟器.log不存在。 您需要手动删除目录。你知道吗
相关问题 更多 >
编程相关推荐