主要内容

sim卡

模拟动态仿真模块模型

描述

仿真软件。SimulationInput对象语法

例子

simOut= sim卡(思敏运行Simulink的一个或多个模拟®根据一个或多个上定义的属性建模仿真软件。SimulationInput对象。

  • 如果思敏是一个标量仿真软件。SimulationInput对象,然后simOut是一个标量仿真软件。SimulationOutput对象。

  • 如果思敏的数组。仿真软件。SimulationInput对象,那么simOut的数组。仿真软件。SimulationOutput对象。

你可以使用SimulationInput对象来配置模拟的选项和输入,包括:

  • 要模拟的模型

  • 外部输入数据的源变量或文件

  • 块用于模拟的参数值

  • 模型配置参数值用于仿真

当一个属性的SimulationInput对象修改模型或块参数值,该值在模拟期间修改,并在模拟结束时恢复。

当您使用SimulationInput对象,您可以轻松地从使用sim卡函数来使用其他函数,例如parsim而且batchsim

simOut= sim卡(思敏名称,值控件上定义的属性来模拟模型仿真软件。SimulationInput对象思敏使用一个或多个名称-值参数指定附加选项。

类支持的名称-值参数的列表仿真软件。SimulationInput语法,看仿真软件。SimulationInput对象语法

模型名称语法

例子

simOut= sim卡(modelName所指定的模型modelName使用模型的当前配置参数和块参数值。

  • 如果模型有单一的模拟输出参数启用,simOut是一个仿真软件。SimulationOutput对象。

  • 如果模型没有单一的模拟输出参数启用,simOut是一个包含模拟次数的向量。有关更多信息,请参见不建议返回多个输出参数

simOut= sim卡(modelName名称,值所指定的模型modelName使用一个或多个名称-值参数指定的选项。例如,您可以通过指定参数名称和值作为名称-值参数来修改模拟的模型配置参数值。

的输入来修改模型配置参数时sim卡函数,则在模拟期间应用更改,并在模拟结束时返回更改。

有关模型名称语法支持的名称-值参数列表,请参见模型名称语法

例子

simOut= sim卡(modelNameparamStruct所指定的模型modelName使用结构指定的模型配置参数值paramStruct

例子

simOut= sim卡(modelNameconfigSet所指定的模型modelName使用配置集中的模型配置参数值configSet

例子

全部折叠

方法修改模型中块的参数值SimulationInput对象。

打开模型。

openExample (“simulink_general / sldemo_househeatExample”

创建一个SimulationInput对象。

mdl =“sldemo_househeat”;思敏= Simulink.SimulationInput (mdl);

将恒温器的设定点改为300通过修改价值参数的设置点块。

思敏= setBlockParameter(思敏,“sldemo_househeat /设定值”...“价值”“300”);

模拟模型。

= sim(思);

模拟模型vdp在其当前状态中,模型是尚未加载还是已加载了未保存的更改。

simOut = sim卡(“vdp”);

模拟模型vdp使用结构中指定的模型配置参数值。

创建结构paramStruct。配置模型以使用变量名记录状态xoutNew

paramStruct。SaveState =“上”;paramStruct。StateSaveName =“xoutNew”

向结构中添加更多字段,以配置模型使用变量名记录输出youtNew

paramStruct。SaveOutput =“上”;paramStruct。输出SaveName =“youtNew”

使用结构中指定的选项模拟模型。

simOut = sim卡(“vdp”paramStruct)
simOut =仿真软件。SimulationOutput:xoutNew:[64x2 double] youtNew: [64x2 double] SimulationMetadata: [1x1 Simulink.SimulationMetadata] ErrorMessage: [0x0 char]

打开模型vdp并得到仿真软件。ConfigSet对象的激活配置。

mdl =“vdp”;open_system(mdl) cs = getActiveConfigSet(mdl);

的副本仿真软件。ConfigSet对象。然后,使用set_param函数修改配置集中的参数值。配置文件中的参数ConfigSet对象:

  • 使用绝对公差1 e-5

  • 使用变量名记录状态xoutNew

  • 使用变量名的日志输出youtNew

csNew = (cs)复印件;set_param (csNew“AbsTol”“1 e-5”...“SaveState”“上”“StateSaveName”“xoutNew”...“SaveOutput”“上”“OutputSaveName”“youtNew”

使用修改后的仿真软件。ConfigSet对象。

csNew simOut = sim (mdl)
simOut =仿真软件。SimulationOutput:xoutNew:[65x2 double] youtNew: [65x2 double] SimulationMetadata: [1x1 Simulink.SimulationMetadata] ErrorMessage: [0x0 char]

输入参数

全部折叠

模拟配置,指定为仿真软件。SimulationInput对象。的属性SimulationInput对象指定要在模拟中使用的选项和参数值,包括:

  • 要模拟的模型

  • 外部输入数据的源变量或文件

  • 块用于模拟的参数值

  • 模型配置参数值用于仿真

类的属性中定义的值SimulationInput对象应用于模型进行仿真,并在仿真结束时返回。

要模拟的模型,指定为字符串或字符向量。

例子:simOut = sim (vdp)模拟所命名的模型vdp使用模型中当前配置的参数值。

数据类型:字符|字符串

要模拟的模型配置,指定为结构。该结构的字段是模型配置参数的名称。每个字段的值表示要在模拟中使用的参数值。例如,从的开始时间来模拟一个模型5到一个停止时间的10,创建这个结构:

paramStruct。开始时间=“5”;paramStruct。StopTime =“10”

数据类型:结构体

要模拟的模型配置,指定为仿真软件。ConfigSet对象。

名称-值参数

指定可选参数对为Name1 = Value1,…,以=家,在那里的名字参数名称和价值对应的值。名-值参数必须出现在其他参数之后,但对的顺序并不重要。

在R2021a之前,名称和值之间用逗号隔开,并括起来的名字在报价。

例子:simOut = sim(思敏,“UseFastRestart”,“上”)运行一组使用数组配置的模拟仿真软件。SimulationInput启用快速重新启动的对象。

例子:simOut = sim (modelName,“解决”,“ode15s”、“StopTime”、“30”)配置指定的模型的模拟modelName使用停止时间为的ode15s求解器30.

sim卡函数支持不同的名称-值参数,这取决于是否将第一个输入指定为仿真软件。SimulationInput对象或作为要模拟的模型的名称。方法的输入,除了本页上列出的参数外,还可以指定模型配置参数的值sim卡函数。

  • 当第一个输入参数是仿真软件。SimulationInput对象,为输入对象上的模拟配置模型参数值setModelParameter函数。

  • 当第一个输入参数是模型名称时,指定任何模型配置参数作为名称-值参数。

仿真软件。SimulationInput对象语法

全部折叠

选项启用快速重新启动,指定为“关闭”“上”。快速重新启动可以在适当的时候跳过编译和终止阶段,从而减少运行一组模拟所需的时间。当您运行同一模型的多个模拟时,考虑使用快速重启。

有关更多信息,请参见快速重启如何改善迭代模拟

对象的第一个输入参数时才支持此参数sim卡函数作为一个仿真软件。SimulationInput对象。

例子:sim(思敏,“UseFastRestart”,“上”)

数据类型:字符|字符串

选项在发生错误时停止启动模拟的进程,指定为“关闭”“上”

  • “关闭”—当模拟中发生错误时,该模拟停止,启动模拟的进程继续进行。例如,当您使用数组运行一组模拟时仿真软件。SimulationInput对象,如果第一个模拟遇到错误,该模拟将停止,后续的模拟仍将运行。

  • “上”—当模拟中发生错误时,该模拟和启动模拟的进程都将停止。例如,当您使用数组运行一组模拟时仿真软件。SimulationInput对象,如果第一个模拟遇到错误,该模拟将停止,后续的模拟也不会运行。

对象的第一个输入参数时才支持此参数sim卡函数作为一个仿真软件。SimulationInput对象。

例子:sim(思敏,“StopOnError”,“上”)

提示

  • 类的第一个输入参数指定模型的名称时sim卡函数配置此行为CaptureErrors名称-值参数。

  • 当错误没有停止启动模拟的进程时,错误消息信息将被捕获在仿真软件。SimulationOutput对象和仿真软件。SimulationMetadata对象。

    • 要查看消息,请使用ErrorMessage财产的SimulationOutput对象。

    • 有关错误的更多信息,请使用ExecutionInfo财产的仿真软件。SimulationMetadata对象。的ErrorDiagnostic字段包含有关错误的信息,包括发生错误的模拟阶段。

数据类型:字符|字符串

选项指示模拟进度,指定为“关闭”“上”

  • “关闭”-模拟运行时不显示进度消息。

  • “上”—进度更新显示为模拟进度。

    的数组运行多个模拟时,此选项非常有用仿真软件。SimulationInput对象。

    对象的第一个输入参数时才支持此参数sim卡函数作为一个仿真软件。SimulationInput对象。

例子:sim(思敏,“ShowProgress”,“上”)

选项以打开模拟管理器,指定为“关闭”“上”。使用仿真管理器来监视所运行的模拟的进展。的数组运行多个模拟时,请考虑使用模拟管理器仿真软件。SimulationInput对象。

对象的第一个输入参数时才支持此参数sim卡函数作为一个仿真软件。SimulationInput对象。

例子:sim(思敏,“ShowSimulationManager”,“上”)

模型名称语法

全部折叠

选项,如果发生错误,则继续启动模拟的流程,指定为“关闭”“上”。类运行模拟时,默认情况下sim卡函数并指定模型的名称作为第一个输入:

  • 在MATLAB中报告错误®命令窗口。

  • 当错误发生时,模拟和调用模拟的流程都将停止。

  • 控件中没有捕获错误消息仿真软件。SimulationOutput对象或仿真软件。SimulationMetadata对象。

当你指定CaptureErrors作为“上”,仅在模拟输出中报告错误。带有错误的模拟的执行将停止,但如果模拟被另一个流程调用,则该流程将继续执行。例如,当您在循环中运行多个模拟时,如果您指定CaptureErrors作为“上”,后续的模拟将在出现错误的模拟之后继续运行。

对象的第一个输入参数时才支持此参数sim卡函数作为要模拟的模型的名称。

例子:sim(“myModel”、“CaptureErrors”,“上”)

提示

  • 在软件在循环(SIL)和处理器在循环(PIL)模拟中不支持此选项。

  • 当指定一个或多个时仿真软件。SimulationInput对象作为输入sim卡函数配置此行为StopOnError名称-值参数。

  • 当你指定CaptureErrors作为“上”时,错误消息信息被捕获到仿真软件。SimulationOutput对象和仿真软件。SimulationMetadata对象。

    • 要查看消息,请使用ErrorMessage财产的SimulationOutput对象。

    • 有关错误的更多信息,请使用ExecutionInfo财产的仿真软件。SimulationMetadata对象。的ErrorDiagnostic字段包含有关错误的信息,包括发生错误的模拟阶段。

数据类型:字符|字符串

选项以调试模式启动模拟,指定为“关闭”“上”

对象的第一个输入参数时才支持此参数sim卡函数作为要模拟的模型的名称。

例子:sim(“modelName”、“调试”,“上”)

数据类型:字符|字符串

选项禁用重建快速加速器目标,指定为“上”“关闭”。当你指定这个参数为“上”,需要重建快速加速器目标的更改被忽略。使用此选项时,只修改不需要重建快速加速器目标的选项。

对象的第一个输入参数时才支持此参数sim卡函数作为要模拟的模型的名称。

例子:sim(“modelName”、“RapidAcceleratorUpToDateCheck”,“关闭”)

提示

方法配置的模拟指定此选项仿真软件。SimulationInput对象,使用setModelParameter函数。

思敏=仿真软件。SimulationInput (“myModel”);思敏= setModelParameter(思敏,“RapidAcceleratorUpToDateCheck”“关闭”);

数据类型:字符|字符串

最大模拟运行时间,指定为正标量。指定允许模拟运行的时间(以秒为单位)。如果模拟运行的时间超过指定的值,软件会发出警告并停止模拟。例如,如果您指定超时作为30.,如果计算模拟结果的时间超过30秒,软件会停止模拟,并发出警告。

超时参数指定要运行的模拟的时钟时间的限制。要指定要模拟的最大时间值,请使用停止时间参数。

对象的第一个输入参数时才支持此参数sim卡函数作为要模拟的模型的名称。

例子:sim(“modelName”、“超时”,60)配置模拟运行的最长持续时间为60秒。

提示

方法配置的模拟指定此选项仿真软件。SimulationInput对象,使用setModelParameter函数。

思敏=仿真软件。SimulationInput (“modelName”);思敏= setModelParameter(思敏,“超时”、60);

选项显示模拟前的参数摘要,指定为“siminfo”

对象的第一个输入参数时才支持此参数sim卡函数作为要模拟的模型的名称。

例子:sim(“modelName”、“跟踪”、“siminfo”)

数据类型:字符|字符串

输出参数

全部折叠

模拟输出,返回为仿真软件。SimulationOutput对象的数组仿真软件。SimulationOutput对象,或者向量。的仿真软件。SimulationOutput对象包含从模拟记录的所有数据以及关于模拟的元数据,包括计时信息和诊断。

当您只指定模型名作为输入参数,而您模拟的模型具有单一的模拟输出参数禁用,则从sim卡函数是模拟时间的向量。为sim卡函数以任何语法的一致格式返回结果,请使用单一的模拟输出参数启用。

提示

  • 以确保sim卡函数返回相同格式的结果,而不管您指定的输入参数是什么单一的模拟输出参数启用。启用此选项后,模拟结果将作为仿真软件。SimulationOutput其中包含所有日志数据以及模拟元数据,包括计时信息和诊断。当所有模拟数据和元数据都存储在一个对象中时,分析来自多个模拟的结果会更容易。

  • 要获取模型配置参数列表,请使用getActiveConfigSet函数和get_param函数。例如,查看模型的配置参数vdp,在MATLAB命令窗口中输入这些命令。

    configSet = getActiveConfigSet (“vdp”);configSetNames = get_param (configSet,“ObjectParameters”

    get_param函数列出模型配置参数,例如StopTimeSaveTimeSaveStateSaveOutput,SignalLogging

  • 类的输入参数指定模型配置参数,以模拟模型层次结构sim卡功能适用于顶级机型。

  • 运行模拟时使用sim卡函数,则模拟运行直到发生错误或模拟达到指定的停止时间。要以编程方式运行可以以编程方式暂停和继续的交互模拟,请使用set_param函数与SimulationCommand输入参数。有关更多信息,请参见通过编程的方式运行模拟

  • 当您模拟一个具有无限停止时间的模型时,通过按从MATLAB命令窗口停止模拟Ctrl + C。仿真停止,仿真结果没有保存在MATLAB工作空间中。

  • 使用配置参数对话框为时间、状态和输出配置日志记录。在建模选项卡,在设置,点击模型设置。然后在“配置参数”对话框中选择数据导入/导出

  • 要记录贯穿模型的信号,请使用信号日志或日志块,例如到工作空间块或记录,XY图块。有关信号日志记录的更多信息,请参见使用信号记录导出信号数据

版本历史

之前介绍过的R2006a

全部展开

Baidu
map