Main Content

本页的翻译已过时。点击此处可查看最新英文版本。

格式化模型

构建模型时,您可以调整模块的位置、更改模块颜色、在模块的任何一侧放置模块名称和端口、调整字体,并添加有助于提高模型可读性的元素。这些更改有助于直观地组织模型,帮助其他人理解模型。

您可以对模型格式进行以下类型的更改:

改进模型布局

要改进您的图布局和外观,请在 Format 选项卡中,点击 Auto Arrange。此选项:

  • 从左向右对齐模型中的模块,从输入开始,以输出结束。

  • 调整模块的大小,例如 Constant 模块,以显示长参数值。

  • 标准化相似模块间的模块大小。

  • 通过移动模块来拉直信号线。

您也可以尝试改进各信号线的形状。选择信号线,并从操作栏中选择 Auto-route Line。如果模型元素之间存在更好的路线,则会重新绘制信号线。

您可以尝试使用 Auto-route Lines 改进多条信号线。要从操作栏访问 Auto-route Lines,请选择模块或通过在元素周围拖动绘制一个框来选中多个模型元素。

一起移动多个模型元素

要移动多个模型元素,同时保持它们之间的关系,请执行下列步骤:

  1. 通过在模型元素周围拖动绘制一个选择框来选中模型元素。

  2. 通过拖动选择框的边并将其挪至新位置来移动模型元素。

选择框中的内容将作为一个整体移动。在移动选择框中的信号线、模块和其他元素时,它们之间的关系保持不变。选择框外的线段会重排。

例如,假设您有以下模型:

The model has multiple lines with bends.

当拖动包含弯曲信号线的选择框时,其包含的弯曲信号线保持不变。

Line routing inside the selection box remains the same during the move.

当拖动不包含弯曲信号线的选择框时,被排除的弯曲信号线可能在您移动所选内容时更改。

Line routing external to the selection block changes during the move.

要一起移动多个信号线,请在要移动的线段周围拖动以形成一个选择框。

Multiple lines move together.

翻转或旋转模块

通过以 90 度为增量旋转或翻转模块,您可以更改模块或模块组的方向。旋转或翻转模块可以帮助它们更好地适应模型布局,例如在反馈回路模型中,模块相互连接形成回路。您也可能需要旋转一个模块,以使模块输入端口与输出端口对齐或更好地使用模型画布。

下图显示了为了简化反馈回路图而翻转的 Gain 模块。

要旋转模块,请选择该模块,然后在 Format 选项卡上,点击 Rotate 90 clockwise Rotate 90 clockwise buttonRotate 90 counterclockwise Rotate 90 counterclockwise button

当将模块放置在非从左向右的信号线上时,模块将自动旋转。例如,如果信号从底部到顶部传输,并且您在其上放置模块,则模块会旋转使其与信号对齐。

要翻转模块,请选择该模块,然后在 Format 选项卡上,点击 Flip left-right Flip left-right buttonFlip up-down Flip up-down button。您可以根据模块端口的方向水平或垂直翻转模块。例如,如果端口在两侧,则从左向右翻转模块。

要旋转或翻转一组模块,请先选择多个模块,然后旋转或翻转它们。您只能向左或向右翻转模块组。

旋转或翻转一组模块后,可以通过编辑信号线来提高模型的可读性。Auto Arrange 选项可以改进信号的外观。(有关对具有多个端口的情况进行旋转的信息,请参阅旋转或翻转后的端口位置。)

例如,假设您顺时针旋转这些选定的模块。

Block group select

旋转模块后,模型可能包含重叠的元素。

After block rotate

在选中模块和信号的状态下,在 Format 选项卡上,选择 Auto Arrange

After auto arrange

旋转或翻转后的端口位置

旋转可使模块的端口从两侧转到顶部和底部,或从顶部和底部转到两侧,具体取决于端口的位置。旋转之后的模块端口位置取决于模块的端口旋转类型

旋转可能会更改某些模块上的端口位置,以保持从左到右或从上到下的端口编号顺序。旋转之后端口重新排序的模块采用默认端口旋转类型。此原则有助于保持在控制系统建模应用中使用的从左到右、从上到下的模块图方向惯例。下图显示了采用默认端口旋转原则的模块进行顺时针旋转之后的效果。

Default port rotation

封装模块可以指定端口在旋转后保持其顺序(请参阅Port rotation)。这些模块采用物理端口旋转类型。在设计要用于物理系统建模或其他应用的模块时,如果模块图没有首选的方向,则此原则很有用。下图显示了采用物理端口旋转类型的模块进行顺时针旋转之后的效果。

Physical port rotation

翻转模块可使端口移动到模块的另一侧,生成一个镜像模块,而不管端口的旋转类型是什么。

管理模块名称和端口

您可以通过显示或隐藏模块名称和通过更改其在模块上的位置来管理模块名称。

注意

复制和粘贴名称后跟数字顺序(Gain1、Gain2 等)的模块将按照 ASCII 字符的标准排序约定生成模块名称。这种排序方法可能会导致模块名称中出现一串难以理解的数字。如果编号方案对您很重要,请显式命名模块,使复制和粘贴操作生成的模块名称遵循常见的阅读顺序。为此,请在模块名称中使用前导零,例如 Gain001、Gain002 等。

隐藏或显示模块名称

在您创建模块时,Simulink® Editor 将对其命名。模块第一次出现时使用库模块名称,例如 Gain。接下来出现的模块名称后面会追加一个数字。每出现一个新模块,该数字就会增加,例如 Gain1、Gain2 等。这些名称称为自动名称。默认情况下,Simulink Editor 会隐藏这些名称。

您可以选择是隐藏还是显示模块名称。您可以:

  • 显示所有自动名称。选择一个或多个模块,并在 Format 选项卡上清除 Auto Name > Hide Automatic Block Names

  • 通过选择模块来临时显示隐藏的自动模块名称。

  • 显式命名该模块。Hide Automatic Names 设置不会影响您显式命名的模块。要命名模块,请选择它,双击名称,然后键入新名称。

此外,您可以显式隐藏或显示任何模块名称。显式隐藏或显示的模块不受 Hide Automatic Block Names 设置的影响。要显式隐藏或显示模块名称,请选择该模块,然后在 Format 选项卡上,选择 Auto Name,然后选择:

  • 选择 Name On 会始终显示模块名称。

  • 选择 Name Off 会始终隐藏模块名称。

  • Auto Name 会恢复默认状态。如果该模块具有默认名称,则 Hide Automatic Block Names 会影响该模块。

提示

无论模块和模型级别的名称设置如何,您都可以在模块上暂停以显示模块名称。当模块名称显示时,您可以对其进行编辑。

要以编程方式显示和隐藏模块名称,请对模型使用 set_param'HideAutomaticNames' 选项,对模块使用 'HideAutomaticName''ShowName' 选项。有关这些参数的详细信息,请参阅通用模块属性。下表显示了这些参数如何相互作用。

'ShowName'(模块设置)'HideAutomaticName'(模块设置)'HideAutomaticNames'(模型设置)结果
'off'任一值任一值名称隐藏
'on''on''on'名称隐藏
'on''off'任一值名称显示
'on''on''off'名称显示

移动模块名称

默认情况下,对于端口在两侧的模块,模块名称显示在模块下方;对于端口在顶部和底部的模块,模块名称显示在模块的左侧。要更改模块名称的位置,您可以:

  • 将模块名称拖动到模块的任意一侧。

  • 选择模块,然后在 Format 选项卡上点击 Flip Name

编辑端口标签

您可以直接编辑以下类型的子系统模块上的端口标签:

  • 常规子系统

  • 带简单封装的子系统

  • 可变子系统

  • 图子系统

    要编辑当前模型中子系统模块的端口标签,请执行下列步骤:

    1. 指向端口标签。出现交互式提示。点击提示编辑值。

      或者,选择端口并按 F2

      Editable port label cue

    2. 输入名称,然后按 EnterEsc,或点击输入框外。

      Edit the port label

    提示

    要在单个子系统模块上连续进行端口标签编辑,请在编辑标签之前选择该模块。这允许您在不切换端口的情况下进行进一步编辑。

    编辑端口标签后,Simulink 自动更新子系统内相关端口或信号的名称。

    The updated port name in the Subsystem

    下表根据子系统模块上定义的端口标签类型列出操作。

    端口标签类型操作
    不支持编辑。
    端口图标

    根据端口的 Icon display 参数更新子系统中元素的名称。

    例如,如果端口的 Icon display 参数值为 Signal name,则端口模块上的图标和链接信号的名称都会更新。

    端口模块名称更新子系统中端口的模块名称。
    信号名称更新链接到端口的信号的名称。

移动端口

您可以在这些模块的任意一侧按任何顺序放置端口:

您可以通过点击并拖动端口来移动端口。对于 Subsystem 模块,每次移动后,端口索引将自动重新编号。

指定模型颜色

您可以指定任何模块的轮廓和内部的颜色,也可以更改模型中任何系统的背景颜色。还可以更改注释的文本颜色和背景颜色以及区域的背景填充颜色。

下面这个子系统使用颜色来标识输入端口。

  • 要更改模块的轮廓颜色、注释的文本颜色或区域的内部颜色,请选择元素,然后在 Format 选项卡上,从 Foreground 菜单中选择一种颜色。更改模块的前景色也会更改其输出信号的颜色。

  • 要更改模块的内部颜色或注释中的背景颜色,请选择元素,然后在 Format 选项卡上,从 Background 菜单中选择一种颜色。

  • 要更改系统中的背景颜色,请打开系统,并在 Format 选项卡上,从 Background 菜单中选择一种颜色。

您可以从菜单中选择一种颜色,或选择 Custom Color Custom Color button 来定义您自己的颜色。

您还可以使用 Property Inspector 更改区域或注释的颜色。要以编程方式指定颜色,请参阅以编程方式指定颜色

指定模型字体

更改任何模型元素的字体系列、样式和大小,使模型更易于阅读或符合公司标准。您可以修改选定的模块、信号标签、区域和注释的字体。有些模块根据字体样式设置显示文本,有些模块具有固定的字体和样式。要增大这些模块的字体大小,请放大。

您也可以更改模型的默认字体。默认字体影响未更改字体的任何元素以及您创建的任何新元素。如果要在所有新模型中使用相同的默认字体,可在默认模板中更改默认的模型字体。请参阅为新模型设置默认模板

  • 要更改模块、信号标签、区域或注释的字体,请选择元素,然后在 Font & Paragraph 部分中的 Format 选项卡上指定字体信息。

  • 要更改模型的默认字体,请在 Format 选项卡上,点击 Font Properties 按钮箭头 Font Properties button arrow,然后点击 Fonts for Model。使用 Font Styles 对话框指定字体信息。

您还可以使用 Property Inspector 更改区域或注释的字体。

Linux 计算机上的 Select Font 对话框

在英文配置的 Linux® 计算机上,Select Font 对话框中的 Font style 列表可能会顺序错乱,或以其他语言显示某些字体。如果 Font style 列表中的字符以其他语言显示,请在启动 MATLAB® 之前将 LANG 环境变量设置为 en_US.utf-8。例如,在 Linux 终端上,输入:

setenv LANG en_US.utf-8 
matlab

增加阴影深度

默认情况下,模块带有阴影。要使模块相对于背景更突出,可以增加阴影的深度。

选择要增加阴影深度的模块,然后在 Format 选项卡上点击 Shadow

提示

要删除所有模块的默认阴影,请在 Simulink 工具条的 Modeling 选项卡上,选择 Environment > Simulink Preferences。在 Simulink Preferences 对话框的 Editor 窗格中,选择 Use classic diagram theme

为模型区域添加方框和标签

在模型中添加一个区域,以直观的方式将相关模型元素组织到一个方框中。区域可随它所包围的模块一起移动。您可以为区域添加文本,简单地说明或标记该区域。

  1. 围绕模型中关注的区域拖出一个方框。或者,在画布的空白区域拖出一个方框。

  2. 从操作栏中,选择用于创建区域的选项。

  3. 键入区域的名称。名称将出现在该区域的左上角。

    要在稍后输入名称,请选择该区域,点击 ? 并开始键入,或者使用 Property Inspector 中的 Name 属性。

  4. (可选)使用 Property Inspector 为区域内容添加说明。

  5. 要移动区域及其内容,请在边框附近位置拖动区域。

    提示

    要移动区域而不移动及其内容,请按住 Alt 键(Mac 上的 option 键)并拖动。

将区域转换为子系统

区域与子系统的类似之处在于它也是一种组织相关模块的方式。但是,子系统创建一个层次结构,将模型中的多个模块替换为一个模块。您可以先将相关模块组合到一个区域中,以后再决定是否要通过将区域转换到子系统来将这些模块放到子系统中。生成的子系统与该区域具有相同的名称、模块、说明和需求可追溯性信息。

要将一个区域转换为子系统,请右键点击该区域,然后选择 Create Subsystem from Area

在模型元素之间复制格式

如果您已经为模型中的某个模块、信号线或区域应用了格式设置,则可以复制该格式并将其应用于另一个模型元素。格式的示例包括字体更改、前景色和背景色的选择以及阴影效果。

  1. 选择要复制其格式的模块、信号线或区域。

  2. 从操作栏中,选择 Copy Formatting。光标将变成画笔。

  3. 使用画笔点击要应用该格式的每个元素。

  4. 要取消画笔光标,请点击画布上的空白区域或按 Esc 键。

相关主题