文档

显示端口值用于调试

显示端口值,方便调试

对于许多信号携带数据的块,Simulink万博1manbetx®可以在模拟期间和之后将信号值(块输出)显示为框图上的端口值标签(类似于工具提示)。当Simulink运行块输出方法时,端口值标签显示块输出值。万博1manbetx该模型显示了端口的端口值标签Fcn块,输出值为-3.03

如果端口值标签显示为空,这意味着当前没有端口值可用。例如,在模拟期间暂停时切换连续块上的端口值标签不会在标签中显示任何值。

当您还没有模拟模型时,端口值标签也是空的。这是因为当模型不进行模拟时,块输出方法不会运行。

如果您切换或悬停在Simulink从模拟中优化出来的块(例如虚拟子系统块)上,万博1manbetx则在您模拟时,模型将显示文本优化

显示端口值数据提示可以在模型的交互式调试期间提供帮助。例如,该图显示了房屋热模型的输出。

这些结果表明模型存在问题,因为:

  • 供暖费用为0在任何温度下。

  • 房子里的温度与周围环境的温度几乎完全一致。

在这种情况下,以交互方式调试模型中的块可以帮助隔离错误。端口值标签在模型中每个块的输出处提供信息。因此,在本例中,如果您使用Simulation step向前推进,您可以看到加热器子系统的输出是0在每一个时间步。

要了解更多信息,您可以为加热器子系统中的块启用端口值标签。使用Simulation step,如果您再次向前一步显示这些值,您可以看到HeatGain块存在问题。输出是恒定的0

这种技术可以帮助您隔离问题。

为了简化调试,您可以在仿真期间打开和关闭端口值标签。除了为调试提供有用的信息外,端口值显示还可以帮助您在仿真期间监视信号值。然而,这些标签不会随模型一起保存。

对于非数字数据显示,Simulink使用这些值:万博1manbetx

消息 解释
行动 信号执行动作子系统。
fcn-call 该信号是函数调用信号,例如,函数调用生成器输出。
地面 信号来自Ground block。
不是数据信号 信号不包含有效数据,例如,信号来自一个被注释掉的块。

在某些情况下:

  • 端口值显示可能无法获取值信号或

  • 信号的值不容易显示

在这种情况下,Simulink万博1manbetx使用这些值。

消息 解释
信号尺寸超过Simulink可以显示的最大元素数。万博1manbetx有关更多信息,请参见显示模型的端口值
(消息) 现有的仿真数据不足。向前走一步或按播放键获取更多数据。
点击添加信号 您已经在总线上启用了端口值标签。但是,您没有选择要显示的信号。点击标签选择总线信号。
无法访问 万博1manbetxSimulink无法获取端口值。使用示例请参见信号存储重用
[m * n] 这是一个非矢量信号。万博1manbetxSimulink无法显示矩阵的实际值。而是显示矩阵维度。
还没有数据

此消息出现在:

  • 模拟数据不可用。启动模拟以查看值。

  • 如果模型包含子系统(例如,一个启用的子系统)和模型引用,并且它们在模拟期间没有执行。

不习惯 万博1manbetx由于优化,Simulink无法获取信号值。
删除 万博1manbetx由于块减少,Simulink无法获得信号值。
优化 万博1manbetx由于优化,Simulink无法获取信号值。在正常模式下,此消息出现在带有条件输入分支执行启用。有关更多信息,请参见有条件执行子系统概述
不可用 现有的仿真数据不足。例如,参见模拟步进

请注意

您可以通过将信号指定为测试点来强制值标签显示信号值。使用属性对话框执行此操作。

指定端口的显示值

要在仿真前显示特定端口的值或某个块的端口值,请选中一个或多个信号,右键单击选择项,选择显示所选端口的标签值

在模拟过程中,当您点击某万博1manbetx个信号时,Simulink默认显示该信号的值。您可以在中控制此行为显示>仿真中的数据显示>选项>显示值>模拟时默认启用

请注意

要删除所有数据提示,请选择显示>仿真中的数据显示>删除所有值标签

对于总线信号显示所选端口的标签值选项将打开一个对话框,您可以在其中选择总线中的所有信号。例如,在这个模型中,您可以看到ModelBus中包含的所有信号的对话框。

您可以通过名称搜索信号或通过层次结构进行过滤。选择父信号以包含它所包含的所有信号。您还可以过滤显示,只查看您选择的那些信号。

单击对话框外的任何位置以关闭对话框。出现端口值标签。标签上没有数据;它在模拟模型时显示值。

当您模拟模型时,端口值标签显示您选择的信号的名称和值。要更改要显示的信号,请单击端口值标签以重新打开对话框。您也可以单击另一个信号来显示其值。

请注意

万博1manbetx当您移除端口值标签时,Simulink不会保存信号的值。

显示模型的端口值

指定端口值显示格式和更新频率。“值标签显示选项”对话框控制整个模型上的这些设置。

  1. 在要显示其端口值的模型中,选择显示>仿真中的数据显示>选项

  2. 在“值标签显示选项”对话框中,指定您的首选项:

    • 显示选项,包括字体大小、刷新频率和为信号宽度大于1的矢量信号显示的元素数量

    • 显示方式

    • 浮点或定点格式

端口值显示限制

性能

启用模型的悬停选项或将至少一个块设置为单击时切换值标签减慢模拟速度。

加速模式

端口值仅在普通和加速模式下工作。它们不能在快速加速器和外部模式下工作。该表显示了加速模式如何影响端口值的显示。

加速模式 端口值
加速器
  • 在加速模式下未优化的信号显示端口值与正常模式下一样。在加速模式下优化的信号显示端口值为优化。有关更多信息,请参见显示端口值,方便调试

  • 在加速模式下模拟的模型参考块不会更新其端口值显示。

快速的加速器 不相容的。无论模型还是它的父模型指定加速仿真,限制都存在。有关更多信息,请参见利用RSim系统目标文件在主机上加速、改进和测试混合动态系统(万博1manbetx仿真软件编码器)。

信号存储重用

如果一个块的输出端口缓冲区通过优化信号存储重用与另一个块共享,则端口值显示为无法访问。方法禁用信号存储重用信号存储重用复选框。然而,禁用信号存储重用会增加仿真期间使用的内存。

信号数据类型

  • 万博1manbetxSimulink显示连接到大多数类型信号的端口的端口值,包括具有内置数据类型的信号(例如int32,或布尔),DYNAMICALLY_TYPED,以及其他一些数据类型。

  • 万博1manbetxSimulink仅显示非复杂信号值的浮动格式。

  • 万博1manbetxSimulink根据转换后的双精度值显示定点数据类型的端口值。

子系统

  • 当没有信号线连接到变体子系统时,您不能显示子系统中包含的端口值。在这种情况下,在仿真过程中,Simulink会根据活动变体自动确定块万博1manbetx连接。但是,您可以在变体子系统中包含的子系统中显示端口值。您还可以在变体子系统之外的信号线上显示值。

  • 当您禁用有条件执行的子系统时,进入Outport块的信号的端口值显示将显示Outport块的值,这取决于禁用时的输出设置。

  • 万博1manbetxSimulink不显示未启用的已启用子系统的端口数据。

模拟步进

如果您在前进时未启用端口值显示,则后退时该显示将不可用。回退时,如果端口值不可用,则返回不可用显示“标签”。

完善的因素

端口值显示不支持细化因子值(配置参数>数据导入/导出>额外的参数>完善的因素),因为Simuli万博1manbetxnk仅在主要时间步长期间更新端口值显示。

信号规格块和输入块

当您在子系统中的信号规范和输入块上显示端口值时,显示驱动块的值而不是块值。

命令行模拟

为提高效率,Simulink不支万博1manbetx持在命令行模拟期间显示端口值万博1manbetxsim卡命令。

合并块

万博1manbetxSimulink不显示合并块的输出值。要查看该值,请参考源块。

命令行接口

不能通过命令行接口指定显示的端口值。

万博1manbetx信号

您不能在非simulink信号(如Simscape™或SimEvents万博1manbetx)上放置端口值®信号。这个限制也适用于条件断点。

相关的话题

这个话题有帮助吗?