主要内容

本页采用了机器翻译。点击此处可查看英文原文。

ParameterSet

实时应用参数集

说明

ParameterSet 对象表示从实时应用程序导入的参数集文件内容,该应用程序加载在 Speedgoat® 目标计算机上,并提供访问与参数集文件相关的方法和属性的途径。

该对象提供对以下方法和属性的访问:

  • 将实时应用程序的参数保存到参数集文件中。

  • 将参数集文件数据导入 ParameterSet 对象。

  • 使用 ParameterSet 对象在实时应用程序中调整参数。

  • 将实时应用程序中的调谐参数应用于模型。

函数名区分大小写。输入全名。属性名称不区分大小写。若您输入的字符在该属性中具有唯一性,则无需输入完整名称。

创建对象

使用 importParamSet 命令创建一个 ParameterSet 对象。在创建并连接到 Target 对象,并将实时应用程序加载到目标计算机后,您需将加载应用程序中的参数集信息导入到 ParameterSet 对象中。此示例创建并连接到 Target 对象 tg,加载实时应用程序,创建参数集文件,并将参数集信息导入开发计算机上的 ParameterSet 对象 myParamSet

tg = slrealtime;
mdlSTF = getSTFName(tg);
mdlName = 'slrt_ex_osc_outport';
openExample(mdlName);
set_param(mdlName,"SystemTargetFile",mdlSTF);
slbuild(mdlName);
connect(tg);
load(tg,mdlName);
paramSetName = 'myParamSet';
saveParamSet(tg,paramSetName);
myParamSet = importParamSet(tg,paramSetName);

属性

全部展开

filename 属性存储目标计算机上的参数集文件名。此属性通过使用 saveParamSet 方法进行设置。

示例: 'myParamSet'

对象函数

delete删除一个 ParameterSet 对象
compare比较两个参数集对象中的参数
delete删除一个 ParameterSet 对象
explorer打开参数浏览器并查看参数集
exportToModelParameterSet 对象的值导出至模型
resolve比较参数集差异并输出解析后的参数集对象
setParameterSet 对象中设置参数值
syncWithApp将模型参数同步到实时应用程序参数

示例

全部折叠

ParameterSet 对象及其方法允许您在实时应用程序中调整参数,并将调整后的参数应用于模型。有关此工作流的流程图,请参阅 使用 MATLAB 语言保存和重新加载参数

  1. 构建模型并加载实时应用程序。

    mdlName = 'slrt_ex_osc_outport';
    tg = slrealtime;
    mdlSTF = getSTFName(tg);
    set_param(mdlName,"SystemTargetFile",mdlSTF);
    slbuild(mdlName);
    load(tg,mdlName);
  2. 将参数集保存到文件中。

    paramSetName = 'outportTypes';
    saveParamSet(tg,paramSetName);
  3. 将参数集导入开发计算机上的 ParameterSet 对象。

    myParamSet = importParamSet(tg,paramSetName);
  4. 要查看或编辑参数,请在 Simulink Real-Time 参数浏览器界面中打开 ParameterSet 对象。

    explorer(myParamSet);
  5. 调整参数后,将修改后的参数集导出至目标计算机上当前加载应用程序的参数集文件,并将参数加载至实时应用程序中。

    exportParamSet(tg,myParamSet);
    loadParamSet(tg,myParamSet.filename);
  6. 要将参数名称 - 值对与实时应用程序同步,并同步参数集对象中保存的模型校验和,请使用 syncWithApp 命令。

    syncWithApp(myParamSet,mdlName);
  1. 要通过编程方式在 ParameterSet 对象中设置参数值(而非使用 Simulink Real-Time 参数浏览器界面),请使用 set 命令。

  2. set(myParamSet,'slrt_ex_osc_outport/Signal Generator','Amplitude',2);
  1. 要删除 ParameterSet 对象的内容,请使用 delete 命令。

  2. delete(myParamSet);

版本历史记录

在 R2021a 中推出