问题描述
我有自己的函数,我想通过 scifunc_block_m 块使用它。该函数在 .sci 文件中定义,如本 answer 中所建议。在开始模拟之前从 scilab 控制台运行脚本工作正常。但是,如果我在 xcos Simulation -> Set Context 下调用这个非常 .sci 的 exec()
,则该函数在 xcos 中似乎仍然未知。我是否缺少有关上下文设置的信息?
它以输入到 scifunc_block_m 或表达式块中的函数开始。然而,
解决方法
- 对于设置上下文部分: 我猜你必须指定fader_func.sci 的绝对路径,要么直接在set Context 框中,要么通过控制台中定义的变量:
--> fader_PATH = "C:\the\path\fader_func.sci"
// Then in the Context box;
exec(fader_PATH,-1);
或者直接在“上下文”框中(可移植性低得多的解决方案):
exec("C:\the\path\fader_func.sci",-1);
- 关于 scifunc_block_m 输入 不太可能支持连续点。相反,您是否尝试将任何长指令明确拆分为几个较短的指令?
tmp = tanh((u3-u1+u2/2)/0.25/abs(u2))
y1 = 0.5 + sign(u2)*tmp/2