实现一个FMU块
实现一个块并给它分配一个功能模型单元(FMU)。然后,您可以探索该块以查看FMU。本例使用FMU与车辆FMU的块。
创建模型并添加FMU块。
在块对话框中,输入FMU文件的路径名FMU名字参数,单击好吧或应用.文件扩展名
.fmu
是可选的。第一次点击好吧或应用,该块标识哪种FMU模式来设置您的FMU,协同仿真或模型交换。
该块还创建了
slprj _fmu /fmu_name
并将FMU文件的内容解包到这个文件夹中,其中可选包括:二进制文件
—FMU二进制文件文档
- FMU文档HTML文件资源
—FMU源文件来源
—FMU源文件其他支持文件金宝app,如块掩码和描述文件
FMU块图标和端口标签更新为相应FMU的标签。在将块与FMU关联后,如果您想更改FMU,请右键单击FMU块并选择块的参数,在中输入新的FMU名称FMU名字.本主题中的部分使用FMU使用FMU导入块简化结构化数据的接口的例子。
探索FMU块
双击该块。假设您输入了一个名为fmuVehicAOB.fmu
从您的当前文件夹。的FMU控件中定义的FMU参数fmuVehicAOB.fmu
文件。
参数选项卡
列出FMU块参数。根据需要编辑这些值。您可以通过展开树视图来编辑结构参数的元素。
模拟选项卡
启用日志记录和相关的自定义。
若要输入相对容差,请选择启用FMU公差然后设置。
若要确定模型中块的采样时间,请设置通信步长.从Simulink继承步长金宝app®解算器,设置为
-1
.只有当FMU是共模拟FMU时,此选项才可用。要启用日志记录,请选择启用FMU调试日志.
在将调试日志重定向到,选择日志的目的地。
文件
,保存到slprj \ _fmu \ _logs_
modelname
\modelname_blockname
. txt显示
,在MATLAB中显示®命令窗口。
如果启用FMU调试日志复选框,并且将调试日志重定向到参数设置为
显示
,你不能使用FMU块进行联合仿真。有关共模拟和多核的更多信息,请参见在多核上运行联合仿真组件在根据返回状态过滤日志,选中所要返回状态的复选框。
输入和输出总线选项卡
这两个选项卡列出了块定义的输入和输出总线对象。
在总线对象名称参数时,您可以更改总线对象名称以匹配工作空间中定义的总线对象。
在工作区中创建一个总线对象:
fmudialog.createBusType (gcb)
更改块的输入、输出和参数结构
您可以通过以下参数更改FMU块输入端口、输出端口和参数的布局:
参数 | 行动 | 设置 |
---|---|---|
FMUInputMapping |
更改输入端口的层次结构。 |
|
FMUOutputMapping |
更改输出端口的层次结构。 |
|
FMUParamMapping |
更改参数的层次结构。 |
|
使用get_param
而且set_param
函数来设置这些值。例如,假设有一个带结构构造的块参数选项卡:
参数包含在结构体
.若要单独列出参数,请设置FMUParamMapping
财产“平”
:
set_param (gcb,‘FMUParamMapping’,‘平’)
时间的考虑
命令设置FMU块的采样时间通信步长参数。此块采样时间设置,tC,与所有Simulin金宝appk块一样,必须是模型采样时间的整数倍,t米.金宝app如果通信步长,Simulink将生成一个错误tC不是模型步长的倍数t米.
FMU的本地步长tl另一方面,它是FMU规范的一部分,只有FMU内部知道。为了正确的操作,通信步长,tC也必须是的整数倍tl.如果模型采样时间t米或者块采样时间tC与FMU本地步长不兼容tl, FMU可能会在运行时产生错误,也可能不会,这取决于它的实现。
故障排除FMUs
如果使用FMU有问题:
检查FMU是否符合FMI标准。使用FMU合规性检查.
选择启用FMU调试日志选中“FMU模块仿真”选项卡上的复选框。
请联系FMU供应商。