code-generation - 如何为包含导出函数子模型的 Simulink 模型生成代码?
问题描述
我正在使用 matlab 2019b 构建此 Simulink 模型:函数调用生成器调用导出函数子模型。 导出函数模型是具有函数调用输入的模型。
我可以使用嵌入式编码器为子模型生成代码,以及运行顶级模型的模拟。但是为顶级模型生成代码会给出以下错误消息:
模型“main”包含一个参考模型“main/Model”,它设置为多实例导出函数,但模型“main”不遵循导出函数规则。其中“main”是顶级型号名称。
导出函数模型文档https://www.mathworks.com/help/simulink/ug/export-function-models.html写道:
对于函数调用模型模块,引用模型的定期采样时间约束设置为确保采样时间独立
遵循此规则会引发另一个错误。如果顶部模型的周期性采样时间约束发生变化,则错误为:
该模型不会继承采样时间,因为“主/模型”块不允许它这样做。如果此模型不需要继承采样时间,请在“配置参数”对话框的“求解器”选项卡上将“定期采样时间约束”更改为“确保采样时间独立”以外的其他内容。
如果子模型的周期性采样时间约束发生变化,则错误为:
模型“instance”的当前诊断设置无效,因为该模型包含输出函数调用信号的根级 Inport 模块“instance/f”。有关详细信息,请参阅下面报告的错误。原因:在导出函数模型“实例”中,“配置参数”>“求解器”>“任务和采样时间选项”中的参数“定期采样时间约束”必须设置为“无约束”。建议的操作 在“实例”中将“定期采样时间约束”设置为“无约束”。
如何为顶级模型生成代码?
解决方案
推荐阅读
- javascript - 在数组中使用数组时替代已弃用的 Highcharts.each
- opengl - 有没有办法在 GLSL 顶点着色器中存储值并从那里编辑它们
- python - 通过 Python 控制 OceanOptics FLAME-S 光谱仪
- javascript - 在 Javascript 中访问嵌套对象
- c - 数组的 C 指针问题
- node.js - Node.js + Oracledb + executeMany + batchErrors + Promise:如果出现错误则不执行所有
- javascript - 密码生成器问题
- java - Java / C套接字,发送多个变量并在客户端在不同的变量中接收
- nestjs - 当 Nestjs 应用程序加载时,最好的方法是什么?
- python - Xpath scrapy 结果与预期不符