主要内容

创建支持多个目标的受保护模型

您可以创建一个支持多个代码生成目标的受保护模型。此示例说明如何使用命令行函数来创建一个支持为 GRT 和 ERT 目标生成代码的受保护模型。

  1. 加载一个模型并保存本地副本。此模型已针对 GRT 目标进行配置。

    openExample('sldemo_mdlref_counter');
    save_system('sldemo_mdlref_counter','mdlref_counter.slx');
  2. 添加修改受保护模型所需的密码。如果您不添加密码,则在创建一个可修改的受保护模型时,系统会提示您设置密码。

    Simulink.ModelReference.ProtectedModel.setPasswordForModify(...
    'mdlref_counter','password');
  3. 创建一个支持代码生成的可修改的受保护模型。

    Simulink.ModelReference.protect('mdlref_counter','Mode',...
    'CodeGeneration', 'Modifiable',true, 'Report',true);
  4. 获取受保护模型支持的目标列表。

     st = Simulink.ProtectedModel.getSupportedTargets('mdlref_counter')
    st = 
    
        'grt'    'sim'
  5. 配置非受保护模型以支持 ERT 目标。

     set_param('mdlref_counter', 'SystemTargetFile', 'ert.tlc'); 
     save_system('mdlref_counter');
  6. 为受保护模型添加对 ERT 目标的支持。系统会提示您输入修改密码。

     Simulink.ProtectedModel.addTarget('mdlref_counter');
  7. 验证支持的目标列表现在是否包含 ERT 目标。

     st = Simulink.ProtectedModel.getSupportedTargets('mdlref_counter')
    st = 
    
        'ert'    'grt'    'sim'

另请参阅

主题