我有一个简单的FMU文件,其中包含一个正弦块,它将u作为输入,输出y。在这种情况下,u被设置为等于时间。在我的C++代码中,我已经从FMILibrary加载了FMI库,并且已经完成了所有必要的步骤,直到我想给我的输入u一个新的pi值(作为3.14)。所以我说:
fmistatus = fmi2_import_set_real(fmu, &uRef, 1, &pi);
while (timeCurrent < timeEnd){
fmistatus = fmi2_import_do_step(fmu, timeCurrent , stepSize, fmi2_true);
timeCurrent += stepSize;
}即使我试图给它一个新的值,U仍然被设置为时间。我错过了什么吗?
PS。有没有更详细的关于FMI库函数的描述?目前我只能找到输入输出描述,或者我又遗漏了什么。
更新:经过几次尝试后,我认为这个问题可能是因为我试图重新定义我的等式u= time。换句话说,当我在openmodelica中将u变量改为RealInput块时,一切正常。那么,如果我真的想重新定义某个方程式呢?我该怎么做?
https://stackoverflow.com/questions/47664936
复制相似问题