使用调度编辑器调度函数调用组件进行模拟。当您希望设置函数调用组件的执行顺序和查看组件之间的数据依赖关系时,此策略非常有用。
创建一个新的Simulin金宝appk®模型。
添加一个模型引用导出函数模型的块。
使用日程编辑器指定函数调用事件。
指定数据输入。
运行一个仿真。
要创建此示例的模型,请参见创建一个出口-功能模型.
要打开一个完整的测试模型,请参见ex_export_function_test_model_with_schedule_editor
.
Si金宝appmulink测试模型仅用于仿真。在模拟测试之后,从导出函数模型生成代码,然后手动将导出的函数代码与外部编码的调度器集成在一起。从model块引用导出函数模型允许添加函数调用事件和数据信号的日志,以进行测试,而不需要更改模型本身。
创建一个新的Simulin金宝appk模型。
在建模TAB和从设置部分中,选择模型设置.
在“配置参数”对话框的左侧窗格中,选择“求解器”。在右侧窗格中,选择Solver详细信息箭头以显示其他参数。选择的复选框将每一个离散的速率视为一个单独的任务和自动处理速率转换的数据传输.
添加一个模型块到模型
在建模选项卡中,选择设计段,然后选择属性检查器.
在模型名称框中,输入export_function_model
.选择进度率复选框。从进度率下拉列表中,选择时间表编辑器
.
添加外港块的output_100ms和output_10ms港口的模型块。
添加一个正弦波块提供数据输入。集振幅来2
和样品时间来0.01
.将块连接到input_10ms输入端口模型块。
使用Schedule Editor通过定义时间向量来提供函数调用事件,时间向量指示根级函数调用的事件发生时间轮廓尺寸块
打开日程编辑器。在建模TAB和从设计部分中,选择时间表编辑器.Schedule Editor对函数调用进行分区轮廓尺寸块并使用块名称为分区命名。
选择function_call_2分区。在打次框中,输入一个从0开始的矩阵,定期增加0.01到10。您还可以通过输入一个带有为的倍数的随机值的矩阵来测试异步行为0.01
.
选择function_call_1分区。在打次框中,输入一个从0开始的矩阵,增加0.1到10。
在生成代码之前,模拟导出函数模型来测试和观察它的行为。
验证“求解器类型”的配置参数是否设置为固定步
,解算器设为离散(无连续状态)
或auto(自动求解器选择)
,固定步长(基本样本时间)被设置为汽车
.
建立数据信号的记录。右键单击输出端口信号并选择日志选择信号复选框。
在模拟选项卡,选择运行按钮.
通过单击工具条图标打开仿真数据检查器.
在测试模型之后,可以为函数生成代码。看到为导出-功能模型生成代码.