Simulink 环境基础知识(六)-- 调整视觉展示以提高模型的可读性

                                     调整视觉展示以提高模型的可读性

目录

                                     调整视觉展示以提高模型的可读性

一、改进模型布局

二、翻转或旋转模块

1、旋转或翻转后的端口位置

三、管理模块名称

1、隐藏或显示模块名称

2、移动模块名称

四、指定模型颜色

五、指定模型字体

1、Linux 计算机上的 Select Font 对话框

六、增加阴影深度

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

1、将区域转换为子系统

八、在模型元素之间复制格式


 

构建模型时,可以调整模块的位置、更改模块和背景颜色、调整字体,并添加有助于提高模型可读性的元素。这些更改有助于直观地组织模型,帮助其他人理解您共享的模型。

可以进行以下类型的更改来提高模型的可读性:

  • 改进模型布局。可以参考改进模型布局。

  • 翻转或旋转模块或模块组。这些调整有助于模块更好地适应模型布局并与其他模块相连接。可以参考翻转换或旋转模块。

  • 移动或隐藏模块名称。

  • 为模块和背景添加颜色。

  • 通过更改字体、加深阴影强度来调整美观性。

  • 使用方框围起一组模块,表示这些模块是相关的。

  • 将一个模块、信号线或区域的格式复制给另一个模型元素。

  • 使用文本、图像和数学注释说明模型。

  • 注释模块。

  • 更改模块图标,例如,在模块上显示一个图形。可以使用封装实现此效果。封装还允许为模块设计自定义接口。

一、改进模型布局

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

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

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

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

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

改进信号线的形状。要改进单个信号线的形状,选择它,然后从操作栏中选择 Auto-route Line。如果模型元素之间存在更好的路线,则会重新绘制信号线。

如图所示:

                                                                  Simulink 环境基础知识(六)-- 调整视觉展示以提高模型的可读性_第1张图片

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

二、翻转或旋转模块

通过以 90 度为增量进行旋转或翻转,可以更改模块或模块组的方向。旋转或翻转模块可使其更好地适应模型布局,例如在反馈回路中,也可能需要旋转,以使输入端口与输出端口对齐或更好地使用模型画布。

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

            Simulink 环境基础知识(六)-- 调整视觉展示以提高模型的可读性_第2张图片

  • 要旋转或翻转模块,请选择该模块,然后在 Format 选项卡上,点击 Arrange 部分中的 Rotate 图标。您可以顺时针旋转 (Ctrl+R),也可以逆时针旋转 (Ctrl+Shift+R)。或者在 Arrange 部分点击 Flip 图标。您可以根据模块端口的方向左右或上下翻转。例如,如果端口在两侧,则从左向右翻转模块。

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

  • 要旋转或翻转一组模块,请选择多个模块,然后点击旋转或翻转图标。该模块组即会旋转或翻转。当您将多个模块作为一组进行翻转时,模块组仅从左向右翻转。

旋转或翻转一组模块后,可以通过编辑信号线来提高模型的可读性。操作栏上的 Auto-route Line 命令可能会改善信号的外观。

例如,假设旋转这些选定的模块。

Simulink 环境基础知识(六)-- 调整视觉展示以提高模型的可读性_第3张图片

旋转模块并移动它们以解决重叠后,模型的外观如下所示。

                       Simulink 环境基础知识(六)-- 调整视觉展示以提高模型的可读性_第4张图片

在这种情况下,选择 Gain 模块与示波器之间的连线,然后选择 Auto-route Line 可改善信号线的形状。

           Simulink 环境基础知识(六)-- 调整视觉展示以提高模型的可读性_第5张图片

1、旋转或翻转后的端口位置

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

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

                                             Simulink 环境基础知识(六)-- 调整视觉展示以提高模型的可读性_第6张图片

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

                                                    Simulink 环境基础知识(六)-- 调整视觉展示以提高模型的可读性_第7张图片

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

三、管理模块名称

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

1、隐藏或显示模块名称

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

  • 显示所有隐藏的自动名称。在 Format 选项卡上,选择 Auto > Hide Automatic Block Names 以清除选项。

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

  • 显式命名模块,例如基于模块在模型中的目的来命名。Hide Automatic Names 设置不会影响您显式命名的模块。要命名模块,请选择它,双击名称,然后键入新名称。

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

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

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

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

要以编程方式显示和隐藏模块名称,对模型使用 set_param 和 'HideAutomaticNames' 选项,对模块使用 'HideAutomaticName' 和 'ShowName' 选项。下表显示了这些参数如何相互作用。

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

2、移动模块名称

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

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

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

如图所示:

Simulink 环境基础知识(六)-- 调整视觉展示以提高模型的可读性_第8张图片

四、指定模型颜色

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

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

如图所示:

           Simulink 环境基础知识(六)-- 调整视觉展示以提高模型的可读性_第9张图片

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

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

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

可以从菜单中选择一种颜色,或者选择 Custom 以打开颜色选择器并定义自己的颜色。

使用 Property Inspector 更改区域或注释的颜色。

五、指定模型字体

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

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

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

  • 要更改模型的默认字体,请在不选择任何元素的情况下,在 Format 选项卡上,使用 Font Styles 对话框指定字体信息。

使用 Property Inspector 更改区域或注释的字体。

如图所示:

               Simulink 环境基础知识(六)-- 调整视觉展示以提高模型的可读性_第10张图片

点击之后如图所示:

                                             Simulink 环境基础知识(六)-- 调整视觉展示以提高模型的可读性_第11张图片

1、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 Editor 的 Use classic diagram theme 预设项。

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

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

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

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

如图所示:

Simulink 环境基础知识(六)-- 调整视觉展示以提高模型的可读性_第12张图片

键入区域的名称。名称将出现在该区域的左上角(可以设置)。

如图所示:

Simulink 环境基础知识(六)-- 调整视觉展示以提高模型的可读性_第13张图片

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

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

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

1、将区域转换为子系统

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

                                                  Simulink 环境基础知识(六)-- 调整视觉展示以提高模型的可读性_第14张图片

八、在模型元素之间复制格式

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

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

(2)从省略号菜单中选择 Copy Formatting。光标将变成画笔。

如图所示:

                                                                   Simulink 环境基础知识(六)-- 调整视觉展示以提高模型的可读性_第15张图片

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

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

 

 

你可能感兴趣的:(Simulink)