Scripting OpenModelica脚本关于setParameterValue的问题

Scripting OpenModelica脚本关于setParameterValue的问题,scripting,openmodelica,Scripting,Openmodelica,我已经使用脚本文件进行了模拟。我使用omc.exe运行mos文件 我一直面临1个问题: loadModel(Modelica); getErrorString(); loadFile("C:/Users/namcho/Documents/Tez_DAB/Simulation/MachineLearningAlgo/DAB_ideal.mo"); getErrorString(); loadFile("C:/Users/namcho/Documents/Tez_DAB/Simulation/Mac

我已经使用脚本文件进行了模拟。我使用omc.exe运行mos文件

我一直面临1个问题

loadModel(Modelica); getErrorString();
loadFile("C:/Users/namcho/Documents/Tez_DAB/Simulation/MachineLearningAlgo/DAB_ideal.mo"); getErrorString();
loadFile("C:/Users/namcho/Documents/Tez_DAB/Simulation/MachineLearningAlgo/uControllerDAB.mo"); getErrorString();
checkModel(DAB_ideal);
Kp := 1.2;
Ti := 5e-5;
Td := 0;
typeOf(v1);

setParameterValue(DAB_ideal, PID_Kp, Kp); getErrorString();
setParameterValue(DAB_ideal, PID_Ti, Ti); getErrorString();
setParameterValue(DAB_ideal, PID_Td, Td); getErrorString();

instantiateModel(DAB_ideal);
在上面的代码中,我想将Kp的值传递给我的DAB_理想模型。如果我像上面那样尝试,它会

“[C:/Users/namcho/Documents/Tez_DAB/Simulation/MachineLearningAlgo/DAB_ideal.mo:3:3-3:20:可写] 错误:在DAB\U理想范围内未找到变量Kp。错误:发生错误 在展平模型时,“理想”

这个错误。 如果我尝试设置参数值(DAB\u理想值,PID\u Kp,1.2);它可以工作。

如何将Kp的值传递给setParameterValue函数?我尝试了PowerShell$symbol(以及更多不同的符号)将Kp的($Kp)值传递给函数,但它也不起作用。

这还不起作用,因为只有在模型中找到的值或参数可以用作第三个参数。setParameterValue函数不关心您给出的表达式,它将把它作为绑定放在模型中。我将看看我们是否可以实现一个快速的解决方案,它应该很容易有一个函数调用,比如$VariableValue(Kp),我们可以在将它传递给模型时用实际值替换它。我会为此开罚单的