1

我有自己的函数,我想通过scifunc_block_m块使用它。该函数在 .sci 文件中定义,如本答案中所建议的那样。在开始模拟之前从 scilab 控制台运行脚本可以正常工作。但是,如果我exec()在 xcos Simulation -> Set Context 下调用这个非常 .sci,则该函数似乎在 xcos 中仍然未知。我是否缺少有关上下文设置的内容?

xcos 设置上下文

它从输入 scifunc_block_m 或表达式块的函数开始。然而,

  • 我不想使块变大,并且无法使用..将函数定义拆分为多行以防止文本溢出块边界。
  • 该功能将被多次使用,我想要一个单一的定义与复制和粘贴。

在此处输入图像描述

4

1 回答 1

1
  1. 对于Set Context部分:我猜你必须指定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);
  1. 关于 scifunc_block_m 输入不太可能支持连续点。相反,您是否尝试过将任何长指令明确拆分为几个较短的指令?
tmp = tanh((u3-u1+u2/2)/0.25/abs(u2))
y1 = 0.5 + sign(u2)*tmp/2
于 2021-03-06T16:32:58.853 回答