编译功能模型单元的源代码
当构建包含 FMU 模块的模型时,必须使用 QNX Neutrino 编译器 qcc 或 q++ 编译 FMU 源代码。此编译器生成的共享对象 SO 文件需包含在 FMU 中。此过程确保 FMU 包含可在 Simulink Real-Time 目标计算机上运行的代码。有关详细信息,请参阅使用 Simulink Real-Time 应用功能模型单元。
在模型中实现 FMU 模块
要在 Simulink 模型中通过 FMU 实现 vanDerPol 模块,请为该模块指定 FMU 名称。打开模型 slrt_ex_vanderpol,双击 FMU 模块中的 vanDerPol,并为 FMU 名称模块参数选择 vanDerPol.fmu 文件。
构建模型,在目标计算机上加载实时应用程序,并运行该实时应用程序。
编译包含源代码的 FMU 文件
slrealtime.fmu.compileFMUSources函数编译包含源代码的 FMU 文件。该过程将在输入 FMU 文件所在的同一文件夹中输出 FMU 文件和 Simulink Real-Time 二进制文件,并在输出文件名后附加_slrt 后缀。此示例选择一个 FMU 文件进行编译,并覆盖之前的编译器输出。
将示例文件复制到当前工作文件夹。
mkdir tempdir myFmuDir; cd tempdir; cd myFmuDir; copyfile ../../slrt_ex_fmu_work;
Warning: Directory already exists.
创建变量以提供路径和文件名。
my_file = 'vanDerPol.fmu';
编译 FMU 文件并覆盖先前输出。
evalc('slrealtime.fmu.compileFMUSources(my_file,''overwriteBinary'',true)');
另请参阅
FMU | slrealtime.fmu.compileFMUSources