双向 Matlab/Simulink<>C++ 工作流程

Two-way Matlab/Simulink<->C++ workflow

提问人:Spinach 提问时间:10/27/2023 更新时间:10/27/2023 访问量:36

问:

我正在尝试找出一个有效的闭环工作流程,我可以:

  1. 获取 Simulink 模型并转换/生成 C++ 代码
  2. 将上述输出的 C++ 转换为可以在 Simulink 中作为 mex/S 函数运行的东西

我知道这似乎是在循环运行,但在我的应用程序中,在部署到硬件之前在模拟中测试 c++ 很重要。我宁愿工作流程不涉及任何手动编辑 c++,而是由 matlab 来回处理直接转换。

我的尝试如下所示:

% 1)
slbuild(my_model) % makes a bunch on c++ stuff in \folder\
% 2)
codebuild(codegen_path,'BuildVariant','MEX_FILE'); % generates a mex file

第 1 部分)似乎有效(至少我看到了 c++ 输出),但第 2 部分)给了我以下错误

Index exceeds the number of array elements (0).

Error in RTW.genMakefileAndBuild (line 173)
    mexSrcFileName = lMexSourceFiles{1};

Error in codebuild (line 229)
    lMakeResult = RTW.genMakefileAndBuild...
MATLAB 代码生成 Simulink MEX

评论


答: 暂无答案