我想为实时目标准备一个Simulink
文件。在主Simulink
文件中,我有一个Model
引用块,我将其设置为以Accelerator
模式运行。 Model
块还包含多个S-functions
。 Model
文件也配置为使用固定步骤求解器。
但是,我收到了这个错误:
Caused by:
Error using do_rt (line 410)
The noninlined S-function 'whatever/Model' in a referenced model is not allowed
to call macros that use the generic function in the SimStruct. To find such macros,
search for GenericFcn in simstruc.h
为SIM
目标构建时。
如果切换到Normal
模块的Model
模式,一切都会正常。
我该如何解决这个问题?
答案 0 :(得分:2)
我想我找到了答案。以下是S函数+模型参考的局限性: http://www.mathworks.se/help/simulink/ug/using-s-functions-with-model-referencing.html#bsp24qn-6
在以下情况下,引用的模型不能使用非内联S函数:
- 该模型使用变步长求解器。
- Simulink Coder™生成了S函数。
- S功能支持使用定点数作为输入,输出或参数。
- 模型在模型引用层次结构中被多次引用。要解决此限制,请使用普通模式。
- S-function使用字符串参数。