本页对应的英文页面已更新,但尚未翻译。 若要查看最新内容,请点击此处访问英文页面。

创建和编辑信号数据

使用 Signal Editor 可创建和编辑输入信号并组织它们以用于多个仿真。您随后可以将信号数据保存到 MAT 文件以进行仿真或映射到根级端口。您可以通过以下方式访问 Signal Editor:

  • signalEditor 函数 - Signal Editor 从命令行启动。

  • Root Inport Mapper - 要为新信号数据创建 MAT 文件,请选择 Signals > New MAT-File。要链入现有方案中的现有信号数据文件并编辑该文件中的信号,请使用 Signals > Edit MAT-File

  • Signal Editor 模块

Signal Editor 仅适用于 MAT 文件。

您可以通过下列方式来操作信号:

  • 创建和编辑多个数据集的多个信号。

  • 使用信号符号通过 MATLAB® 表达式创建更复杂的信号。

  • 使用现有方案获取现有数据集以便对其编辑和创建信号。

  • 创建和编辑多维信号。

  • 编辑作为注册的自定义文件类型导入的信号。有关详细信息,请参阅Import Custom File Type

在编辑信号数据时:

  • 使用表格编辑或 MATLAB 修改信号数据。

  • 修改信号属性,例如名称、插值和单位属性。

  • 拖放信号以更改总线和数据集的信号层次结构。

  • 使用信号符号和变量来替换信号数据。

您也可以从外部源导入数据并在 Signal Editor 中编辑它们。有关详细信息,请参阅Link in Signal Data from Signal Builder Block and Simulink Design Verifier Environment

Root Inport Mapper Signal Editor 与其他 Signal Editor 之间的差异

通常,无论您如何访问 Signal Editor,其用户界面都是相同的。以下是 Root Inport Mapper Signal Editor 的不同之处:

  • FILE 部分的 Save and SyncSAVE 命令保存并同步到 Root Inport Mapper。

  • Insert 部分的 Scenario 命令始终具有 Scenario from Model 选项。

如果使用模型名称来启动 signalEditor 函数,Signal Editor 用户界面将在 Insert 部分中显示 Scenario from Model 选项。

表编辑数据支持

Signal Editor 用户界面支持 Simulink® 支持的和可编辑的所有信号数据类型。

鼠标、键盘和触摸屏快捷方式

编辑操作:

操作键盘鼠标多点触控

插入点

Ctrl+P

点击

点击

插入行

Ctrl+L

点击

平移和捏合手指

绘制

Ctrl+D

点击和绘制

平移

选择点

Ctrl+T

点击 ,然后点击并选择点或区域

要选择所有区域,请双击

平移和捏合手指

要选择所有区域,请双击

移动点

Ctrl+M

点击 并拖动

点击并移动

更改点数据 

点击

 
  

点击鼠标三次

点击三次

沿 x 轴展开 

Ctrl+鼠标平移

对 x 轴进行 PRY 操作

沿 y 轴展开 

Shift+鼠标平移

对 y 轴进行 PRY 操作

缩放操作:

缩放或平移的类型要点击的按钮

沿 T 和 Y 轴放大。

沿时间轴放大。选择图标后,在图上拖动鼠标以选择要放大的区域。

沿数据值轴放大。选择图标后,在图上拖动鼠标以选择要放大的区域。

在放大 xy 时仅放大 x。

在按下 Ctrl 的同时放大 xy

在放大 xy 时仅放大 y。

在按下 Shift 的同时放大 xy

缩小绘图。

使绘图适合图形。选择图标后,点击图窗以放大绘图,使之填满图窗。

向上、向下、向左或向右平移图。选择图标。在图上按住鼠标左键,并将鼠标移至要查看的图区域。

更改信号名称和层次结构顺序

Scenarios and Signals 部分中,您可以更改信号名称和层次结构顺序、创建信号副本以及删除信号。Simulink 会忽略信号名称中的前导和尾部空白。

  • 要更改信号名称,请双击该名称并进行更改。

  • 要更改信号的单位或插值,请点击加号,然后点击 UnitInterpolation 复选框。

    窗格随即更新,增加 UnitInterpolation 列。

    • Unit 列中,输入适当的单位表达式。有关建议的单位表达式列表,请参阅允许的单位

    • Interpolation 列中,从下拉列表中选择 “linear” 或 “zero order hold”。

      注意

      插值仅影响 Signal Editor 用户界面中的信号绘制。

  • 要更改层次结构中信号的顺序,请拖放该信号。例如,您可以将信号拖放到总线中。

    或者,使用 Adjust 部分中的 Move UpMove Down 按钮。

  • 要复制信号并将其粘贴到原始信号下,请右键点击信号并选择 Duplicate Signal

    或者,使用 Adjust 部分中的 Duplicate 按钮。您还可以调整所复制信号的默认属性。有关详细信息,请参阅创建具有相同属性的信号

  • 要复制信号并将其粘贴到层次结构中的其他位置,请选择 Copy,然后选择 Paste

创建具有相同属性的信号

要创建具有相同预定义类型的信号,请使用 Adjust 部分中的 Duplicate 按钮。要更改预定义信号类型,请点击 Defaults 图标 。系统随即显示 Default Properties for Insertion 对话框。

  • Data type - 从下拉列表中选择信号数据类型。

  • Enumeration - 选择 “Enum” 数据类型时,将显示此参数。输入枚举的类名称。

    如果多次定义一个包含相同整数值的枚举类,例如:

    classdef(Enumeration) hEnumColors_duplicateValues < Simulink.IntEnumType
      enumeration
        Red(118)
        Yellow(-14)
        Blue(90)
        Green(87)
        White(-14)
        Black(198)
        Brown(90)
        Pink(118)
        Purple(90)
      end
      methods (Static = true)
        function retVal = getDefaultValue()
          retVal = hEnumColors_duplicateValues.Blue;
        end
      end
    end
    

    则 Signal Editor 会将第一个枚举值 (Red (118)) 视为标准值,并将同一基础整数 118 的所有后续实例视为等同于枚举名称 Red。换言之:Pink 等于 Red

  • Interpolation - 从下拉列表中选择 “linear” 或 “zero order hold”。

  • Unit - 输入适当的单位表达式。有关建议的单位表达式列表,请参阅允许的单位

  • Dimensions - 输入信号的维数。

  • Signal type - 从下拉列表中选择 “real” 或 “complex”。

  • Bus object - 从下拉列表中,选择要为其定义维度的总线对象。如果将 Bus object 参数保留为默认 <object name>,则 Signal Editor 会添加空总线。

  • Dimensions - 输入总线对象的维数。

添加和编辑多维信号

要添加多维信号,请使用以下任一选项:

  • 在 Default Properties for Insertion 对话框中更改 Dimensions 属性,然后使用 Insert > Blank Signal 插入新信号。

  • 在 Author and Insert 对话框的 Data 参数中输入多维信号数据,例如 [(1:10)' (1:10)']

点击信号的 Plot/Edit 复选框时,表格区域将显示信号及其每个维度的列。您可以在表格区域中单独编辑数据,或点击替换按钮 以使用 MATLAB 表达式替换信号。使用 Author and Replace Signal Data 对话框替换信号数据的过程与使用 Author and Insert 对话框插入新表达式一样。有关详细信息,请参阅Create Signals with MATLAB Expressions and Variables

提示

替换信号时,新信号的信号维度和复/实性必须与被替换的信号相同。

例如,要创建具有两列且时间从 1 到 10 的信号数据,请执行下列操作:

  1. 在 Signal Editor 中,选择 Signal > Author Signal

  2. 输入具有两列且时间从 1 到 10 的信号数据:

    • Time - [1:10]

    • Data[(1:10)' (1:10)']

  3. 点击 Insert Signal

    层次结构将用新信号数据进行更新。

  4. 展开新信号,然后点击新信号数据的 Plot/Edit 复选框。随即可以看到与信号关联的图和表格数据。

    提示

    如果数据未按预期绘制,请使用 Zoom & Pan 部分中的 Fit to window 按钮。对于多维信号,还需要确保为所编辑的列数据选择了正确的绘图。

  5. 您可以直接在表中编辑数据。

    您也可以通过点击 Replace 按钮并在 Author and Replace Signal Data 对话框中输入新时间范围和数据,用新表达式完全替换数据。

处理信号中的数据

此示例说明如何为链接方案中的信号添加和删除数据。要创建要使用的模型和数据,请参阅Add Signals to Scenarios

  1. 在 Signal Editor 的 Scenarios and Signals 部分中,点击信号 ts 的绘图复选框。

  2. 将一些数据添加到信号 ts

    1. 点击添加行图标 并添加一些信号。要在其他信号之间添加信号行,请点击位于前面的信号,然后点击添加行图标。

    2. 完成后,点击 Apply。点击 Apply 会更新绘图。

  3. 从信号中删除时间为 20 的行。选择 20,然后点击

  4. 或者,如果要将 ts 的所有信号数据替换为使用信号符号定义的信号,请点击替换按钮 并使用 Author and Replace Signal Data 对话框定义新数据。

使用“与网格对齐”功能绘制斜坡以确保准确度

此示例说明如何通过选择画布中的一些点来创建斜坡信号。

  1. 在 Signal Editor 选项卡中,选择 Signal > Draw Signal

  2. 要沿水平线和垂直线排列信号数据值,请选择 Snap X to GridSnap Y to Grid

  3. 在画布中,添加三个点:

    • 两个点水平对齐

    • 另一个点放在这两个点的右侧,并与之呈一定角度

  4. 在 Signal Properties 部分,在 Name 中,将信号名称更改为 Ramp,然后按 Enter

  5. 要将信号添加到 Signal Editor,请在 Insert 部分中,点击

  6. 要返回 Signal Editor 主窗口并检查信号是否已添加,请点击

  7. 要在 Signal Editor 中观察绘制的信号数据,请点击层次结构中 Ramp 信号名称的 Plot/Edit 复选框。

保存更改并将其发送给 Root Inport Mapper 工具

添加和修改完信号和方案后,使用 Save and Sync 按钮将更改保存到 MAT 文件。Signal Editor 还会将数据发送到 Root Inport Mapper 工具:

  • 如果 Root Inport Mapper 工具已加载方案,则 Root Inport Mapper 工具将使用新数据进行更新。

  • 如果 Root Inport Mapper 工具已映射方案且您的更改影响了映射,则 Root Inport Mapper 工具将取消方案的映射。

另请参阅

| | |

相关主题