主要内容

显示用于调试的端口值

显示端口值,便于调试

对于许多信号携带数据的块,Simulink®可以在模拟期间和之后在方框图上显示信号值(块输出)作为端口值标签(类似于工具提示)。当Simulink运行块输出方法时,端口值标签显示块输出值。上的端口的端口值标签常数而且数学块,输出的值1而且4.04

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

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

如果在Simulink从模拟中优化的块(例如虚拟子系统块)上切换或悬停,在进行模拟时,模型将显示文本优化

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

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

  • 采暖费用为0在所有温度下。

  • 房子里的温度与环境温度几乎完全吻合。

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

属性中的块启用端口值标签以了解更多信息加热器子系统。使用模拟步进器,如果再次向前走以显示值,则可以看到HeatGain块。输出为常数0

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

为了简化调试,可以在模拟过程中打开和关闭端口值标签。除了为调试提供有用的信息外,端口值显示还可以帮助您在模拟过程中监控信号值。然而,这些标签并没有随模型一起保存。

对于非数值数据显示,Simulink使用这些值:

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

在某些情况下:

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

  • 信号的值不容易显示

在这种情况下,Simulink使用这些值。

消息 解释
... 信号维度超过Simulink可以显示的最大元素数量。有关更多信息,请参见显示模型的端口值
(消息) 可用的模拟数据不足。按“play”键获取更多数据。
点击添加信号 您已经在总线上启用了端口值标签。但是,您还没有选择要显示的信号。点击标签选择母线信号。
无法访问 Simulink无法获取端口值。有关示例,请参见信号存储复用
[m * n] 这是一个非矢量信号。Simulink无法显示矩阵的实际值。而是显示矩阵维数。
暂无数据

此消息出现在以下情况:

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

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

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

请注意

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

显示指定端口的值

若要在模拟前显示特定端口值或某个块的端口值,请选择一个或多个信号,右键单击所选内容,然后选择显示所选端口的值标签

默认情况下,Simulink在模拟过程中单击信号时显示该信号的值。您可以控制这种行为。在调试选项卡,选择从画布中删除所有模拟输出值显示按钮箭头,然后选择选项.在“值标签显示选项”对话框中,选择在模拟过程中默认启用

请注意

要删除所有数据提示,请在调试选项卡,选择从画布中删除所有模拟输出值显示按钮箭头,然后选择删除值显示

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

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

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

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

请注意

当您删除端口值标签时,Simulink不会保存信号的值。

显示模型的端口值

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

  1. 的端口值中调试选项卡,选择从画布中删除所有模拟输出值显示按钮箭头,然后选择选项

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

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

    • 显示方式

    • 浮点或定点格式

端口值显示限制

性能

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

加速模式

端口值只在正常和加速模式下工作。他们不工作在快速加速器和外部模式。下表显示了加速器模式如何影响端口值的显示。

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

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

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

信号存储复用

如果一个块的输出端口缓冲区通过信号存储重用优化与另一个块共享,则端口值显示为无法访问.方法可以禁用信号存储重用信号存储重用复选框。但是,禁用信号存储重用会增加模拟过程中使用的内存。

信号数据类型

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

  • Simulink仅为不复杂的信号值显示显示浮动格式。

  • Simulink根据转换后的double值显示定点数据类型的端口值。

  • Simulink不显示具有某些复合数据类型的信号的数据,例如总线信号。

子系统

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

  • 当您禁用一个有条件执行的子系统时,端口值将显示一个进入外港属性的值外港块,取决于禁用时输出设置。

  • Simulink不显示未启用的已启用子系统的端口数据。

模拟步进

如果前进时未启用端口值显示,后退时将无法显示端口值。后退时,如果端口值不可用不可用显示标签。

完善的因素

端口值显示不尊重细化因子值(配置参数>数据导入/导出>额外的参数>完善的因素),因为Simulink仅在主要时间步骤中更新端口值显示。

信号规范块和输入块

当您在子系统中的Signal Specification和Inport块上显示端口值时,显示的是驱动这些块的值,而不是块值。

命令行模拟

的命令行模拟过程中,为了提高效率,Simulink不支持端口值的显示sim卡命令。

合并块

Simulink不会将输入值显示到合并块。要查看这个值,请参考源块。

命令行接口

不能通过命令行界面指定端口显示值。

动态仿真模块信号

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

相关的话题

Baidu
map