文档

模型参考的受保护模型

此示例展示如何在普通模式和加速模式模拟中创建和使用受保护模型,以及代码生成。

例子要求

在生成受保护的模型之前,必须安装Simulink®Coder™。万博1manbetx若要生成受保护模型的只读视图,必须安装Simulink®Report Generator™。万博1manbetx

打开示例模型

打开示例模型,sldemo_mdlref_bus

图1:这个例子模型,sldemo_mdlref_bus

保护引用模型

该模型包含一个model块,CounterA.要保护此块引用的模型,右键单击model块并选择子系统和模型参考>为所选模型块创建受保护模型.将打开一个对话框,您可以在其中选择创建受保护模型的选项。

图2:受保护型号对话框

允许受保护模型的用户选择打开模型的只读视图模拟,生成代码.您可以选择为上述3个功能输入密码。3个密码用于保护各自的功能。分别输入3个选项的密码,单击创建.受保护的模型文件,sldemo_mdlref_counter_bus.slxp,在当前工作文件夹中生成。可以在普通模式和加速模式模拟以及代码生成中使用此受保护模型。您还可以打开模型的只读视图。不需要原始模型文件。

确定受保护模型的变量

要模拟引用受保护模型的模型,您可能需要在基本工作区中定义变量。例如,受保护的模型,sldemo_mdlref_counter_bus,需要在模型的根输入和输出端口指定总线的基本工作区变量。当您发布受保护的模型时,您必须包含所需变量的定义,否则模型将不可用。的保护命令生成受保护的模型并确定所需的变量。例如:

[~, needdvars] = S万博1manbetximulink.ModelReference。保护('sldemo_mdlref_counter_bus', 'Mode', 'CodeGeneration', 'OutputFormat', 'MinimalCode', 'ObfuscateCode', true, 'Harness', true, 'Report', true, 'Webview', true)

的第二个输出保护函数,neededVars,包括必须发送给收件人的基本工作区变量。的价值neededVars是一个单元格数组,其中包含受保护模型所需的基本工作区变量的名称。然而,单元格数组也可能包含模型不需要的工作区变量的名称。

在共享受保护模型之前,请进行编辑neededVars删除模型不需要的任何变量的名称。将所需的工作区变量保存到一个mat文件中:

保存(sldemo_mdlref_counter_bus_vars, neededVars {:});

使用受保护模型

当Model块引用受保护的模型时,将在该块上显示屏蔽徽章。

图3:引用受保护的模型

右键单击盾牌徽章并选择授权…….输入您在创建受保护模型时使用的密码。

图4:密码输入对话框

现在可以在Normal或Accelerator模式下模拟模型。您还可以通过选择来构建顶层模型代码>C / c++代码>构建模型

双击Model块以打开模型的只读视图。或者,右键单击盾牌徽章并选择显示Webview打开模型的只读视图。

图5:受保护模型web视图

右键单击盾牌徽章并选择报告显示打开报告

图6:受保护模型报告

这个话题有用吗?