断点调试仿真使用信号
这个例子展示了如何:
暂停模拟在指定的时间。
视图在框图中信号值使用端口值标签。
使用信号断点暂停模拟感兴趣的点。
通过一个时间步块块步。
查看执行顺序的框图。
你还可以通过一个模拟步骤。为例,展示了如何从一开始就一步模拟和配置选项,通过时间步长和退一步,看看通过仿真步。
开放和配置模型
打开模型vdp
,实现了范德波尔方程。关于模型的更多信息,请参阅范德堡尔振荡器。
openExample (“金宝appsimulink_general / VanDerPolOscillatorExample”,…金宝appsupportingFile =“vdp”)
你可能运行多个模拟分析和调试您的模型。为了节省时间通过编译模型只有在第一个仿真之前,启用快速启动。在仿真软件金宝app®将来发布,模拟选项卡上,单击快速启动。
指定时间暂停仿真
假设你知道你需要分析的行为仿真模型在一个特定的时间。您可以运行仿真没有打扰到您指定的时间暂停时间。对于这个示例,指定的暂停时间2
秒。
在仿真软件将来金宝app发布,调试选项卡,断点节中,指定暂停时间作为2
。然后,开始模拟,单击运行。
因为这是第一次模拟,模型编译之前开始仿真。然后,模拟停顿后发生的主要时间步的仿真时间2.079
秒。模型编辑器的底部的状态栏显示当前仿真时间。金宝app解决一些执行计算确定的时间点之前的下一个主要的时间步的仿真循环模拟停顿了一下当你点击一步。在这种情况下,解算器是在模拟时间相对于框图。加星号的软件仿真时间表明,解算器已经在仿真时间。
当你指定一个暂停时间,仿真不一定准确时间暂停。解算器决定了时间步长仿真,模拟可能没有一个主要的时间步骤在你指定的时间。相反,模拟停顿时间的第一步后,发生在你指定的时间。
在框图中查看信号值
仿真时停了一下,在仿真之前,您可以添加和删除端口值标签查看信号值为每个时间步的框图。您可以添加和删除端口值标签对个人选择的信号和多个信号。
对于这个示例,为所有信号添加端口值标签。单击画布的空区域左上角拖动选择框图中的一切。然后,在调试选项卡,工具的部分,端口值按钮组,单击显示端口值标签选择信号。端口值标签没有数据
直到第一个向前一步模拟后添加端口值标签。
通过时间步步骤
停在模拟由于暂停时间,您可以使用一步和退一步按钮通过大时间步长仿真步。退一步之前,您必须启用退居二线。您还可以配置进程的主要时间步长仿真的数量每次点击一步或退一步。有关更多信息,请参见通过仿真步。
点击一步。仿真过程的一个主要时间步。端口值标签更新显示信号值的时间步。
你可以继续发展模拟点击一步。随着仿真的发展,你可以观察到信号使用端口值标签和值范围块模型。
设置断点暂停模拟
您可以使用一个信号断点暂停仿真每次信号值满足指定的条件。使用信号断点时,默认情况下,仿真时间步内暂停只要条件满足,块后产生信号输出方法更新信号值运行。
假设你想要调查的行为模型的价值信号x1
接近0
。指定条件断点> 0
。你也可以配置使用相等的条件(=
)关系操作符。然而,在这种情况下,断点暂停仿真只有当信号值。信号的解算器可能会选择时间步长值接近0
但不完全是0
。信号与条件断点> 0
停顿时间步的仿真信号后通过零值。
设置断点的信号:
选择信号
x1
。在调试选项卡,断点部分中,点击添加断点。
在添加断点菜单,选择信号的关系操作符定义条件断点。对于这个示例,选择大于
>
。指定的值作为断点条件
0
所以仿真信号的值时的停顿x1
变得比0
。点击好吧。
一个红色圆圈的线信号x1
表明信号有一个启用断点。
默认情况下,在仿真中,点击一个信号线添加或删除线的端口值标签。添加端口值标签的信号x1
再次,单击信号线。端口值标签显示没有数据
因为当你删除一个端口值标签,软件不保留历史的信号值。端口值标签更新显示信号值下次仿真向前进展。
进步仿真直到断点,点击继续。模拟信号值就大于时暂停0
。信号端口值标签x1
显示了信号值,满足了断点条件。断点图标有一个红色箭头表明仿真暂停引起的断点。块,生产绿色突出显示的信号表明模拟的时间步长内的停了下来。
的左侧状态栏提供了一个详细的模拟状态,表明仿真在哪里停顿了一下。
步块的块
停在一个时间步,模拟时跨过,一步,走出按钮变得活跃,让你一步通过时间步的块。仿真步到下一块,点击跨过。
仿真停顿之前执行的输出方法外港块。断点不再有绿色箭头。
下次当你点击跨过之前,模拟暂停执行的输出方法积分器块命名x2
。当你点击跨过再一次,积分器块x2
执行它的输出方法,端口值标签更新显示新的信号值,并仿真停顿之前执行输出第二个方法外港块。
停在一个时间步时,您可以使用仿真软件的一些功能调试编程接口获取关于仿真的附加信息。金宝app例如,您可以使用探针
功能视图指定块的信息。端口值标签只显示信号值从模块运行结果输出方法的一个主要的时间步。当你使用仿真软件的功能调试编程界面,显示的值可能会不同,因为较小金宝app的时间步的功能显示结果。
当你继续点击跨过后,通过时间一步一步范围块执行它的输出方法,仿真停顿没有块绿色突出显示的框图。状态字符串左侧状态栏显示的模拟是停在一个隐藏的街区。因为块是隐藏的,没有绿色的亮点出现在模型中。在这种情况下,隐藏的块的日志实现的一部分外港块。
你可以继续加强仿真一块时间通过多个步骤。如果您点击一步或退一步、模拟之间的停顿时间的步骤跨过,一步,走出按钮被禁用。的跨过,一步,走出按钮再次启用当模拟断点暂停。
视图执行顺序
当你一步模拟块的块,块不执行基于块的布局图。在仿真,软件决定所有任务和块的执行顺序模型。在每个时间步,执行的任务和块按执行顺序。
理解的顺序块执行步骤时,您可以查看在框图执行顺序。显示执行顺序的调试选项卡,诊断部分中,点击信息覆盖。然后,在块,点击执行顺序。右边的执行顺序查看器打开模型编辑器的选择与当前任务。金宝app执行顺序查看器突出部分和注释模型来表示当前任务所涉及的模块和它们的执行顺序。
执行顺序强调覆盖绿色调试突出表明仿真在哪里停顿了一下。你可以继续通过仿真步骤的执行顺序突出模型,或者你可以明确执行顺序突出看到调试了。明确的执行顺序强调,在执行顺序查看器中,单击清晰的凸显。
执行顺序查看器不显示任何任务的执行顺序,突出和注释从模型中被清除。你可以看到绿色的调试再次强调。
再次查看执行顺序,在执行顺序查看器中,选择你想要查看的任务。
仿真结束调试会话
当你完成分析和调试你的模型,你可以结束仿真调试会话的几种方式,取决于你下一步打算做什么。
从当前时间点继续仿真,同时保留在模型中设置的断点配置:
打开断点列表,在调试选项卡上,单击断点列表。
在断点列表中,使用的复选框启用列或启用或禁用所有断点按钮禁用所有断点。
继续仿真,点击继续。
继续仿真从当前时间点但停止调试:
模型中清除所有断点,调试选项卡上,单击添加断点按钮箭头并选择清除所有断点。
恢复模拟,点击继续。
停止当前时间点的仿真,在仿真软件将来发布的金宝app调试选项卡上,单击停止。