如何在 CLI 中使用 openmodelica 编译器?
How to use openmodelica compiler in CLI?
我正在尝试在 CLI 中使用 OpenModelica 编译器 (omc),所以我使用 OMEdit 中提供的 Terminal
。
我尝试调试 Modelica.Blocks.Examples.PID_Controller
,但似乎 omc 无法找到此模型。
所以我复制了 PID_Controller
模型并放入一个文件夹中,然后在 CLI 中切换工作目录。此时omc可以访问模型,但是找不到Modelica.Icon.Example
的基础模型,我猜测是omc没有访问OMEdit中加载的Modelica Standard Library(MSL)
。
我的问题是如何让omc正确加载MSL
。
-d
是开发人员通常使用的调试标志
如果您想从命令行使用 omc,最简单的方法是使用 .mos 脚本:
脚本:c:\writable\directory\script.mos
loadModel(Modelica); getErrorString(); // load the Modelica Standard Library (MSL)
simulate(Modelica.Blocks.Examples.PID_Controller); getErrorString(); // simulate a model
plotAll(); getErroString(); // plot all variables
然后从命令行转到可以生成一些输出的目录:
cd c:\writable\directory\
omc script.mos
在此处查看所有可用的 API(您可以在 mos 脚本中输入的命令):
https://build.openmodelica.org/Documentation/OpenModelica.Scripting.html
我正在尝试在 CLI 中使用 OpenModelica 编译器 (omc),所以我使用 OMEdit 中提供的 Terminal
。
我尝试调试 Modelica.Blocks.Examples.PID_Controller
,但似乎 omc 无法找到此模型。
所以我复制了 PID_Controller
模型并放入一个文件夹中,然后在 CLI 中切换工作目录。此时omc可以访问模型,但是找不到Modelica.Icon.Example
的基础模型,我猜测是omc没有访问OMEdit中加载的Modelica Standard Library(MSL)
。
我的问题是如何让omc正确加载MSL
。
-d
是开发人员通常使用的调试标志
如果您想从命令行使用 omc,最简单的方法是使用 .mos 脚本:
脚本:c:\writable\directory\script.mos
loadModel(Modelica); getErrorString(); // load the Modelica Standard Library (MSL)
simulate(Modelica.Blocks.Examples.PID_Controller); getErrorString(); // simulate a model
plotAll(); getErroString(); // plot all variables
然后从命令行转到可以生成一些输出的目录:
cd c:\writable\directory\
omc script.mos
在此处查看所有可用的 API(您可以在 mos 脚本中输入的命令): https://build.openmodelica.org/Documentation/OpenModelica.Scripting.html