编程控制模拟
这些例子告诉你如何使用set_param
而且get_param
若要以编程方式控制模型模拟,请检查正在运行的模拟的状态,并使用块回调来控制模拟。
控制和检查仿真状态
这个例子展示了如何使用set_param
来控制和检查模拟的状态。
开始模拟。
set_param (“vdp”,“SimulationCommand”,“开始”)
当你开始模拟使用set_param
和“开始”
参数时,必须使用“停止”
参数来停止它。
暂停、继续和停止模拟。
set_param (“vdp”,“SimulationCommand”,“暂停”) set_param (“vdp”,“SimulationCommand”,“继续”) set_param (“vdp”,“SimulationCommand”,“停止”)
当你使用set_param
为了暂停或停止模拟,命令是对此类操作的请求,并且模拟不会立即执行它们。你可以使用set_param
在执行stop命令后开始模拟,并在执行pause命令后继续模拟。万博1manbetx动态仿真模块®首先完成不可中断的工作,例如求解器步骤和前面的其他命令set_param
命令。属性所指定的启动、暂停、继续或停止模拟set_param
命令。
查看仿真状态。
get_param (“vdp”,“SimulationStatus”)
软件返回“停止”
,“初始化”
,“奔跑”
,“暂停”
,“编译”
,“更新”
,“终止”
,或“外部”
(与万博1manbetx仿真软件编码器™产品)。
在运行模拟时动态更新已更改的工作空间变量。
set_param (“vdp”,“SimulationCommand”,“更新”)
将所有数据日志变量写入基本工作区。
set_param (“vdp”,“SimulationCommand”,“WriteDataLogs”)
使用块回调自动化模拟任务
当您在模型上执行各种操作(例如启动、暂停或停止模拟)时,将执行回调。您可以使用回调来执行MATLAB®脚本或其他MATLAB命令。有关更多信息,请参见自定义模型行为的回调而且块回调参数.
这个例子展示了如何使用这个模型StartFcn
回调函数在模拟开始前自动执行MATLAB代码。
编写一个查找的MATLAB脚本范围块,并在模拟模型时在前景中打开它们。
% openscopes.m在模拟开始时将范围置于最前面。Blocks = find_system(broot,“BlockType”,“范围”);查找您的对象的顶层的所有作用域块%的模型。要查找子系统中的作用域,请提供子系统%的名字。输入help find_system查看该命令的更多信息。为set_param(blocks{I},“开放”,“上”)结束遍历所有作用域块并将它们带出来走在最前面。
设置StartFcn
参数,用于模型调用脚本。
set_param (“my_model”,“StartFcn”,“openscopes”)
相关的话题
这个话题有用吗?