主要内容

信号组

关于信号组

要显示、创建和编辑可互换的信号源组,并将这些组快速切换到模型中或从模型中切换出来,可以使用信号生成器块。您可以定义任何分段线性信号形状(波形)。

请注意

信号生成器Block不建议与信号组一起工作。相反,请使用信号编辑器块来显示、创建、编辑和切换可互换的场景。有关更多信息,请参见使用可互换的场景加载数据

在测试模型时使用信号组,特别是在与Simulink结合使用时金宝app®断言块和模型覆盖工具金宝app仿真软件覆盖™

解算器模型配置参数中的窗格设置会影响Signal Builder块输出。看到动态系统的仿真阶段而且解决比较有关求解器如何影响模拟的描述。

请注意

信号生成器块为您创建的每个信号添加一个端口。块位置参数限制端口的数量信号生成器块可以有,因此可以创建的信号的数量。有关更多信息,请参见位置参数在公共块属性

你也可以使用signalbuilder函数来填充Signal Builder块。

金宝app支持波形

信号生成器Block支金宝app持这些波形。

使用信号生成器快速重启块

打开快速重启后:

  • 在运行之间,您可以更改数据,重命名信号和信号组,并添加新的组。你不能:

    • 导入信号或信号组

    • 更改信号输出设置

  • 你可以按运行所有按钮一次。要重新启用运行所有按钮,切换Simulink编辑器工具栏上的快速重启按钮。金宝app然而,运行所有不使用快速重启。

编辑信号组

Signal Builder窗口允许您从Signal Builder块所表示的组集中创建、重命名、移动、然后删除信号组。

创建和删除信号组

创建一个信号组。

  1. 在信号生成器中,复制一个现有的信号组。

  2. 修改它以适应您的需要。

复制一个已有的信号组。

  1. 在Signal Builder中,从列表中选择组。

  2. 选择集团>复制

    创建一个新组。

如果需要删除分组,请在列表中选中分组,单击“”集团>删除

重命名信号组

重命名一个信号组。

  1. 在Signal Builder中,从列表中选择组。

  2. 选择集团>重命名

  3. 在对话框中编辑现有名称或输入新名称。点击好吧

移动信号组

在组窗格的堆栈中重新定位一个组:

  1. 在Signal Builder中,选择窗格。

  2. 若要将组移至堆栈下方,请选择集团>向下移动

  3. 若要在堆栈中移动更高的窗格,请选择集团>向上移动

编辑信号

信号生成器允许您从信号组中创建、剪切和粘贴、隐藏和删除信号。

创建信号

在当前选定的信号组中创建一个信号:

  1. 在Signal Builder中,从活动组列表中选择要将信号添加到的组。

  2. 选择信号>

    菜单中列出了可以添加的波形。

    波形 描述 输入 输出

    常数

    恒定的波形 没有一个

    一步

    一步波形 没有一个

    脉冲

    脉冲波形 没有一个

    广场

    方波形
    • 频率(赫兹)

      波形频率,单位为赫兹

    • 振幅

      波形振幅

    • Y抵消

      波形垂直偏移量

    • 占空比%

      信号为正的时间百分比(取值在0到100之间)

    锯齿波

    锯齿波形
    • 频率(赫兹)

      波形频率,单位为赫兹

    • 振幅

      波形振幅

    • Y抵消

      波形垂直偏移量

    采样的罪

    采样正弦波形
    • 频率(赫兹)

      波形频率,单位为赫兹

    • 振幅

      波形振幅

    • Y抵消

      波形垂直偏移量

    • 每期样本

      每个波形周期的采样数

    抽样高斯噪声

    基于高斯分布的采样高斯噪声波形,在输入频率处有输入均值和标准偏差
    • 频率(赫兹)

      波形频率,单位为赫兹

    • 的意思是

      随机变量输出的平均值

    • 标准偏差

      随机变量输出的标准差平方

    • 种子(为使用当前状态而为空)

      随机数生成器的初始种子值

    伪随机噪声

    基于二项分布的伪随机噪声波形,在输入频率处有上下值
    • 频率(赫兹)

      波形波动的频率上的值而且较低的价值,赫兹单位

    • 上的值

      信号上限

    • 较低的价值

      信号下限

    • 种子

      随机数生成器的初始种子值

    泊松随机噪声

    在0和1之间交替的泊松随机噪声波形
    • 平均速率(1/秒)

      从0到1的平均跃迁速率

    • 种子(为使用当前状态而为空)

      随机数生成器的初始种子值

    自定义

    自定义分段线性波形;自定义值必须适合显示区域
    • 时间值

      两个或多个时间坐标的向量

    • Y值

      中的值对应的两个或多个信号幅值的向量时间值

    两个字段中的条目都可以是任何MATLAB®求值为向量的表达式,包括MATLAB工作空间变量的求值结果。得到的向量必须具有相等的长度。

    请注意

    如果您添加了具有大量数据点(100,000,000或更多)的自定义波形,Signal Builder将显示警告。

  3. 选择要添加的波形。

  4. 指定输入(在提示中),然后单击好吧

如果您选择了一个标准波形,信号构建器将带有该波形的信号添加到组中。如果您选择了自定义波形,系统将提示您选择时间值而且Y值

您还可以使用MATLAB工作空间变量来创建新的信号。

  1. 在MATLAB命令窗口中,为两个变量创建数据,t而且y

    T = 1:10 y = 1:10

    这些向量的大小必须相同。

  2. 创建一个模型并添加一个Signal Builder块。

  3. 双击Signal Builder块。

  4. 选择信号>>自定义

  5. 在自定义波形窗口中,输入t时间值场和yY值字段,然后单击好吧

    Signal Builder块窗口将新信号显示为信号2。

定义信号输出

指定用于发送测试信号的输出类型:

  1. 在Signal Builder中,选择信号>输出

  2. 从列表中选择:

    • 港口

      违约。从块发送单独的信号。名为Signal的输出端口N为每个信号显示N

    • 公共汽车

      从块发送单一的、虚拟的、无层次的总线信号。出现一个名为Bus的输出端口。

    提示

    • 您不能使用公共汽车选项创建非虚拟信号的总线。

    • 公共汽车选项使您可以更改您的模型布局,而不必重路由Signal Builder块信号。使用总线选择器块以选择来自此总线的信号。

    • 如果您使用查看器和生成器管理器或使用创建和连接生成器选项,则无法定义信号输出。在这些情况下,块发送单独的信号。

复制和粘贴信号

从一个组中复制一个信号并将其作为新信号粘贴到另一个组中:

  1. 在“信号生成器”中,选择要复制的信号。

  2. 选择编辑>复制

  3. 选择要将信号粘贴到的组。

  4. 选择编辑>粘贴

从一个轴复制一个信号并粘贴到另一个轴以替换其信号:

  1. 选择要复制的信号。

  2. 选择编辑>复制

  3. 选择要更新的轴上的信号。

  4. 选择编辑>粘贴

删除信号

要删除一个信号,在“信号生成器”中,选择该信号并选择删除减少编辑菜单。信号生成器从当前组中删除信号。因为每个信号组必须包含相同数量的信号,所以signal Builder还删除其他组中共享相同索引的所有信号。

重命名信号

重命名一个信号:

  1. 在Signal Builder中,选择信号>重命名

    出现一个对话框,其中有一个编辑字段,显示信号的当前名称。

  2. 编辑或用新名称替换当前名称。

  3. 点击好吧

控件中的信号名称也可以编辑的名字字段在Signal Builder窗口的左下角。

更换信号

替换信号:

  1. 在Signal Builder中,选择信号,然后选择信号>替换为

    出现一个波形菜单。它包括一组标准波形(常数一步,等等)和一个自定义波形的选择。

  2. 选择一个波形。

    如果选择标准波形,信号生成器将用该波形替换当前所选组中的信号。对于其他波形,信号生成器显示一个对话框,允许您为所请求的波形提供输入。

波形 描述 输入
常数 持续的波形。 没有一个
一步 一步波形。 没有一个
脉冲 脉冲波形 没有一个
广场 方波形
  • 频率(赫兹)

    波形频率,单位为赫兹

  • 振幅

    波形振幅

  • Y抵消

    波形垂直偏移量

  • 占空比%

    信号为正的周期百分比。输入0到100之间的值。

锯齿波 锯齿波形
  • 频率(赫兹)

    波形频率,单位为赫兹

  • 振幅

    波形振幅

  • Y抵消

    波形垂直偏移量

采样的罪 采样正弦波形
  • 频率(赫兹)

    波形频率,单位为赫兹

  • 振幅

    波形振幅

  • Y抵消

    波形垂直偏移量

  • 每期样本

    每个波形周期的采样数

抽样高斯噪声 基于高斯分布的采样高斯噪声波形,在输入频率处有输入均值和标准偏差。
  • 频率(赫兹)

    波形频率,单位为赫兹

  • 的意思是

    随机变量输出的平均值

  • 标准偏差

    随机变量输出的标准差平方

  • 种子(为使用当前状态而为空)

    随机数生成器的初始种子值

伪随机噪声 基于二项分布的伪随机噪声波形,在输入频率处有上下值。
  • 频率(赫兹)

    波形波动的频率上的值而且较低的价值,赫兹单位

  • 上的值

    信号上限

  • 较低的价值

    信号下限

  • 种子

    随机数生成器的初始种子值

泊松随机噪声 在0和1之间交替的泊松随机噪声波形
  • 平均速率(1/秒)

    从0到1的平均跃迁速率

  • 种子(为使用当前状态而为空)

    随机数生成器的初始种子值

自定义 自定义分段线性波形。自定义值必须适合显示区域。
  • 时间值

    两个或多个时间坐标的向量

  • Y值

    中的值对应的两个或多个信号幅值的向量时间值

两个字段中的条目都可以是求值为向量的任何MATLAB表达式。得到的向量必须具有相等的长度。

请注意

如果您添加了具有大量数据点(100,000,000或更多)的自定义波形,Signal Builder将返回一个警告。然后您可以取消该操作。

控件中的信号名称也可以编辑的名字字段在Signal Builder窗口的左下角。

更改信号索引

更改信号索引。

  1. 在Signal Builder中,选择信号,然后选择信号>变化指数

    出现一个对话框,其中有一个下拉列表字段,包含信号的现有索引。

  2. 在下拉列表中选择另一个索引,然后选择好吧.或从对象中选择索引指数列表在Signal Builder窗口的左下角。

隐藏信号

默认情况下,信号生成器窗口在组窗格中显示组波形。隐藏波形:

  1. 在Signal Builder中,选择波形,然后选择信号>隐藏

  2. 若要重新显示隐藏波形,请选择集团窗格,然后选择信号>显示

  3. 从列表中选择信号。或者,您可以通过在Signal Builder信号列表中双击其名称来隐藏和重新显示隐藏的波形。

手动创建信号组集

介绍如何手工创建信号组集。如果您有信号数据文件,例如来自测试用例的那些,请考虑导入此数据导入信号组集

要创建一组可互换的信号组:

  1. 从Simulink Sources库中拖拽Signal Builder块的实例,并将其放入模型中。金宝app

    默认情况下,该块表示包含单个信号源的单个信号组,该信号源输出方波脉冲。

  2. 使用块信号编辑器创建额外的信号组,向信号组中添加信号,修改现有的信号和信号组,并选择块输出的信号组。

    请注意

    每个信号组必须包含相同数量的信号。

  3. 将块的输出连接到图中。

    该块为该块可以输出的每个信号显示一个输出端口。

您可以在一个模型中创建任意多的Signal Builder块,每个块表示一组不同的可互换的信号源组。当一个组有多个信号时,这些信号可能有不同的结束时间。然而,信号生成器块需要组内信号的结束时间进行匹配。如果不匹配发生,信号生成器块通过保留结束时间较小的信号的最后一个值来匹配结束时间。

看到用信号组进行模拟有关在模型中使用信号组的信息。

导入信号组集

本节的主题描述如何将信号数据导入signal Builder块。您应该已经有了一个要导入其内容的信号数据文件。例如,您可能有来自以前运行的测试用例的信号数据。看到从现有数据集中导入信号组参阅Signal Builder块接受的数据格式的说明。以下主题中的过程将使用该文件3 grp_3sig.xls在文件夹里matlabroot帮助\ \工具箱\模型\例子金宝app

信号生成器只接受类型为double的信号。

如果你导入金宝appSimulink.SimulationData.Dataset数据集,块将其作为自己的组导入。

从现有数据集中导入信号组

您可能有想要输入到signal Builder块中的现有信号数据集。的文件>从文件导入命令启动“导入文件”对话框。该对话框是模态的,这意味着在对话框运行时焦点不能更改到另一个MATLAB窗口。如果您希望在导入数据后查看Signal Builder窗口中的更改,请执行以下操作之一:

  • 关闭导入文件对话框。

  • 并排设置“导入文件”对话框和“信号生成器”窗口。

请注意

不能撤消信号数据文件导入的结果。此外,您不能撤消在打开“导入文件”对话框之前执行的最后一个操作。关闭“导入文件”对话框时,系统将弹出撤销上次编辑而且重做上次编辑Signal Builder窗口上的按钮是灰色的。无论您是否导入了数据文件,这些按钮都是灰色的。

“导入文件”对话框接受以下适当格式化的文件类型:

  • 微软®Excel®xls.xlsx

  • 逗号分隔值(CSV)文本文件(. csv

  • mat文件(.mat

提示

导入信号数据Microsoft Excel电子表格,考虑使用从电子表格块。的从电子表格在模拟过程中阻塞增量地从电子表格加载数据。如果你使用从电子表格块,您不需要做任何事情来处理表值的更改。

只有对数据集文件进行了适当的格式化,才能导入该文件。

Microsoft Excel电子表格:

  • Signal Builder块将第一行解释为信号名。如果不指定信号名称,则signal Builder块将按照以下格式分配一个默认的信号名称Imported_Signal,在那里每增加一个未命名的信号。

  • Signal Builder块将第一列解释为时间。在这一列中,时间值必须增加。

  • Signal Builder块将其余列解释为信号。

  • 如果有多张表:

    • 每张表必须有相同数量的信号(列)。

    • 每个工作表必须具有相同的信号名称集(如果有的话)。

    • 每张工作表上的每一列必须有相同的行数。

  • 信号构建器块将每个工作表解释为一个信号组。

此示例包含可接受的格式化Microsoft Excel电子表格。它有三个名为Group1、Group2和Group3的工作表,分别代表三个信号组。

对于CSV文本文件:

  • 每个文件只包含数字。不要在CSV文件中命名信号。

  • Signal Builder块将第一列解释为时间。在这一列中,时间值必须增加。

  • Signal Builder块将其余列解释为信号。

  • 每一列必须有相同数量的条目。

  • Signal Builder块将每个文件解释为一个信号组。

  • 信号生成器块为每个格式的信号分配一个默认信号名Imported_Signal,在那里随着每一个附加信号的增加而增加。

此示例包含一个可接受的格式化CSV文件。内容表示一个信号组。

5 0, 0, 0, 0 - 1, 0, 1, 5 0 2 0, 1, 5 0 3 0, 1, 5 0 4、5、1、5 0 5、5、1、5、5、1 0 6日5 0 7,0、1、5、8 0,0,1,5,1 9 0,1、5、10 1,0,1,5 0

mat文件:

  • Signal Builder块支持数据存储日志记录金宝app金宝appSimulink.SimulationData.Dataset对象表示并解释此数据为单个组。

  • Signal Builder块支持将Simulin金宝appk输出保存为随时间金宝app变化的结构。

  • Signal Builder块支持Signal B金宝appuilder数据格式。这种格式是一组必须被标记的单元格数组。

  • Signal Builder块不支持:金宝app

    • 金宝appSimulink输出只是一个结构

    • 金宝appSimulink输出仅为数组

请注意

如果您导入大量的数据点(100,000,000或更多),Signal Builder将返回一个警告。然后您可以取消该操作。

这个示例包含一个可接受的日志记录的MATLAB工作区。使用MATLAB工作区保存命令将变量保存到mat文件中。将此文件导入Signal Builder块。

用选定数据替换所有信号数据

金宝appSimulink软件创建一个默认的Signal Builder块,其中包含一个信号。要替换这个信号和该块可能显示的所有其他信号数据:

  1. 创建一个模型,并将Signal Builder块拖到该模型中。

  2. 双击该块。

    信号生成器窗口显示其默认信号1。

  3. 在Signal Builder中,选择文件>从文件导入

    弹出“导入文件”对话框。

  4. 要导入的文件字段,输入信号数据文件名或单击浏览

    文件浏览器出现。

  5. 如果选择文件浏览器,导航到并选择一个信号数据文件。选择3 grp_3sig.xls

    请注意

    如果试图导入格式不正确的数据文件,将弹出一条错误消息。

    选择要导入的数据窗格包含来自文件的信号数据。单击扩展器显示所有信号。

  6. 选择要导入的信号。单击,导入所有信号选择所有

  7. 选择数据的位置列表中,选择要对信号数据采取的操作。选择替换现有数据集

    确认选择按钮被激活。在signal Builder块执行指定的操作之前,验证您的信号选择。如果对话框检测到错误,它将显示一条错误消息。

  8. 单击确认选择按钮。

  9. 点击应用用此文件的内容替换现有的信号数据。

    在选择替换现有数据集,该软件使您有机会保存Signal Builder块的现有内容。

  10. 点击一个按钮,如下所示:

    …… 点击…

    在用新的信号数据替换Signal Builder块之前,先保存它的内容。

    请注意

    这个选择提示您将Signal Builder块保存在您选择的模型名称中。软件只保存Signal Builder块,而不保存其他模型内容。

    是的,另存为
    替换Signal Builder块的内容而不先保存它们。 不,进口而不保存
    停止更换进程。 取消

    对于本例,选择不,进口而不保存来替换Signal Builder块的内容。

  11. Signal Builder块使用新的信号数据进行更新。点击好吧关闭“导入文件”对话框,并检查“信号生成器”块。

  12. 点击好吧

  13. 检查已更新的Signal Builder窗口,以确认信号数据完好无损。

  14. 关闭Signal Builder窗口,保存并关闭模型。例如,将模型保存为signalbuilder1

将选定的信号附加到所有现有的信号组

您可以从信号数据文件中导入信号,并将选定的信号附加到所有现有信号组的末尾。如果附加的信号名称不是唯一的,软件通过将每个名称增加1或更高的值来重命名它们,直到它是唯一的信号名称。例如,如果块和数据文件包含命名为恒温器,软件将导入的信号重命名为thermostat1在附加。如果你加上另一个信号恒温器,软件命名为最新版本thermostat2

本主题使用signalbuilder1用选定数据替换所有信号数据

  1. 在MATLAB命令窗口中,键入signalbuilder1

  2. 双击Signal Builder块。

    出现“信号构建器”窗口。

  3. 在Signal Builder窗口中,选择文件>从文件导入

    弹出“导入文件”对话框。

  4. 要导入的文件字段,输入信号数据文件名或单击浏览

    打开文件浏览器。

  5. 如果选择文件浏览器,导航到并选择一个信号数据文件。选择3 grp_3sig.xls

    请注意

    如果试图导入格式不正确的信号数据文件,将弹出一条错误消息。

    选择要导入的数据窗格包含来自文件的信号数据。单击扩展器显示所有信号。

  6. 选择要导入的信号。在本例中,有三个组myGroup1、myGroupB和myGroup_Three。选择myGroup1中的所有信号。

  7. 选择数据的位置列表中,选择要对信号数据采取的操作。选择将选定的信号附加到所有组

    确认选择按钮被激活。在signal Builder块执行指定的操作之前,验证您的信号选择。如果信号数据选择不合适,确认选择仍然是灰色的。例如,确认选择如果您选择的信号数量与您想要替换的Signal Builder组中的信号数量不相同,则显示为灰色。

  8. 单击确认选择按钮。

    确认还启用好吧而且应用按钮。

  9. 点击应用将选定的信号附加到signal Builder块中的所有信号组。

  10. Signal Builder块使用新的信号数据进行更新。点击好吧关闭“导入文件”对话框,并检查“信号生成器”块。

  11. 点击好吧

  12. 检查已更新的Signal Builder窗口,以确认信号数据完好无损。注意,该软件已经将信号数据文件中的信号Sig1、Sig2和Sig3重命名为signal Builder块中的信号Sig4、Sig5和Sig6。

  13. 关闭Signal Builder窗口,保存并关闭模型。例如,将模型保存为signalbuilder2

将选定的信号附加到已有的连续信号组中

您可以按照选择信号的顺序将信号附加到顺序信号组的末尾。这句话的意思是,您选择与信号组数量相同的信号,并依次将每个信号附加到不同的组中。该软件将每个附加信号重命名为最后一个附加信号的名称。

本主题使用signalbuilder1用选定数据替换所有信号数据

  1. 在MATLAB命令窗口中,键入signalbuilder1

  2. 双击Signal Builder块。

  3. 注意Signal Builder块中存在多少组。例如,这个Signal Builder块有三个组,myGroup1、myGroupB和myGroup_Three。

  4. 在Signal Builder窗口中,选择文件>从文件导入

  5. 要导入的文件字段,输入信号数据文件名或单击浏览

  6. 如果选择文件浏览器,导航到并选择一个信号数据文件。选择3 grp_3sig.xls

    请注意

    如果试图导入格式不正确的信号数据文件,则会弹出一个错误消息窗口。

    选择要导入的数据窗格包含来自文件的信号数据。单击扩展器显示所有信号。

  7. 选择要导入的信号。在本例中,有三个组myGroup1、myGroupB和myGroup_Three。选择myGroup1中的所有信号。

  8. 选定数据的放置列表中,选择要对信号数据采取的操作。选择将选定的信号附加到不同的组(按顺序)

    确认选择按钮被激活。在signal Builder块执行指定的操作之前,验证您的信号选择。

  9. 单击确认选择按钮。

    确认还启用好吧而且应用按钮。

  10. 点击应用附加信号。

    Signal Builder块使用新的信号数据进行更新。点击好吧关闭“导入文件”对话框,并检查Signal Builder块的三个组。

    最上面的信号组myGroup1默认显示所有信号,包括新的Sig4。

  11. 单击另一个组名,例如myGroupB。注意,Sig4存在于组中,默认情况下隐藏。

  12. 若要在此窗格中显示Sig4,请在窗格的Selection Status区域中双击Sig4。图表更新以反映Sig4。

  13. 关闭Signal Builder窗口,保存并关闭模型。例如,将模型保存为signalbuilder3

将信号组附加到现有组

可以将一个或多个信号组附加到现有信号组列表的末尾。如果该块已经有一个与您要添加的信号组名称相同的信号组,软件将该组名称加1或更高,直到它是唯一的,然后再添加它。例如,如果块和数据文件包含命名为MyGroup1,软件将导入的组重命名为MyGroup2在附加。如果添加另一个名为MyGroup1,软件命名为最新版本MyGroup3

本主题使用signalbuilder1用选定数据替换所有信号数据

  1. 在MATLAB命令窗口中,键入signalbuilder1

  2. 双击Signal Builder块。

    出现“信号构建器”窗口。

  3. 注意Signal Builder块中存在多少组,以及每个组中存在多少信号。Signal Builder块要求所有组具有相同数量的信号。例如,这个Signal Builder块有三个组,myGroup1、myGroupB和myGroup_Three。每组有三个信号。

  4. 双击该块。

  5. 要导入的文件文本框中,输入信号数据文件名或单击浏览

  6. 如果选择文件浏览器,导航到并选择一个信号数据文件。选择3 grp_3sig.xls

    待导入数据窗格包含来自文件的信号数据。单击扩展器显示所有信号。

  7. 计算这个数据文件的组中信号的数量。如果每个组中的信号数量等于块中存在的组中的信号数量,您可以将这些组中的一个附加到块中。

  8. 选择要导入的组。在本例中,有三个组myGroup1、myGroupB和myGroup_Three。选择myGroupB。

  9. 选定数据的放置列表中,选择要对信号组采取的操作。选择附加组

    确认选择按钮被激活。在signal Builder块执行指定的操作之前,验证您的信号选择。

  10. 单击确认选择按钮。

    确认还启用好吧而且应用按钮。

  11. 点击应用附加信号。

    Signal Builder块使用新的信号数据进行更新。点击好吧关闭“导入文件”对话框,并检查Signal Builder块的组。

    请注意,在最后一个窗格中添加了新的信号组。因为已经有一个名为myGroupB的信号组,软件自动将新的信号组名加1。选择myGroupB1。

  12. 关闭Signal Builder窗口,保存并关闭模型。例如,将模型保存为signalbuilder4

将同名的信号附加到已有的信号组中

如果追加的信号名称与signal Builder块中存在的信号名称相同,则软件将追加的信号名称加1。软件重复递增,直到附加的信号名称是唯一的。例如:

  1. 假设你的信号生成器块有一个信号组,myGroup1,信号为Sig1、Sig2和Sig3。

  2. 附加一个名为Sig1的信号到myGroup1

  3. 注意,软件将Sig1加到Sig4,然后将其追加到myGroup1

附加一组具有不同信号名称的信号

如果附加的信号组的信号名称与signal Builder块中已有的信号名称不同,软件会将现有信号的名称更改为与附加的信号相同。例如,

  1. 假设你的信号生成器块有一个信号组,myGroup1,信号为Sig1、Sig2和Sig3。

  2. 附加一个名为myGroup2它们的信号名称是SigA, SigB和SigC。

  3. 观察软件:

    • 附加myGroup2

    • 重命名中的信号myGroup1与…相同myGroup2

使用自定义格式导入数据

介绍如何导入自定义格式的信号数据。您应该已经有了来自您想要导入其内容的文件的信号数据。看到从现有数据集中导入信号组参阅Signal Builder块接受的数据格式的说明。如果您的数据没有使用这些数据格式之一进行格式化,请使用以下工作流导入自定义格式化的数据。此工作流使用位于文件夹中的以下文件matlabroot帮助\ \工具箱\模型\例子金宝app开放),作为例子:

  • SigBldCustomFile.xls-信号数据Microsoft Excel使用Signal Builder块不接受的格式的文件,例如:

  • createSignalBuilder金宝appSupportedFormat.m-自定义MATLAB函数读取Microsoft Excel电子表格。这个示例函数以Signal Builder块支持的格式重新格式化自定义数据,如下所示:金宝app

    • grpNames-包含组名字符向量的单元格数组,行数= 1,列数=组数。

    • sigNames-包含信号名称字符向量的单元格数组,行数= 1,列数=信号数。

    • 时间-包含时间数据的单元格数组,行数=信号数,列数=组数。

    • 数据-包含信号数据的单元格数组,其行数=信号数,列数=组数。

    Signal Builder对这个自定义函数有以下要求:

    • 每组的信号数量必须相同。

    • 每组的信号名称必须相同。

    • 每个信号中的数据点数必须相同。

    • 的每个元素时间而且数据单元格数组保存实数矩阵。这个矩阵可以是[1x]N]或[Nx1),N是每个信号中的数据点数。

  1. 确定自定义信号数据的格式,例如:

    SigBldCustomFile.xls
  2. 创建一个自定义的MATLAB函数:

    1. 使用MATLAB I/O函数读取自定义格式化的信号数据。例如,createSignalBuilder金宝appSupportedFormat.m

    2. 将自定义格式化的信号数据格式化为signal Builder块接受的信号数据,例如mat文件。

  3. 使用自定义的MATLAB函数将自定义格式化的信号数据写入signal Builder块接受的文件。例如:

    createSignalBuilder金宝appSupportedFormat(“SigBldCustomFile.xls”、“OutputData.mat”)
  4. 导入重新格式化的信号数据文件,OutputData.mat,进入Signal Builder块(参见导入信号组集).

编辑波形

信号生成器允许您更改一组输出波形的形状、颜色和线样式和厚度。

重塑波形

Signal Builder允许您通过使用鼠标或方向键选择和拖动线段和点,或通过编辑线段或点的坐标来更改波形。

选择波形

要选择波形,在波形上的任意点上左键单击鼠标。

信号构建器显示波形点,以表明该波形已被选中。

若要取消选择波形,请左键单击波形轴上不在波形本身上的任何点或按Esc关键。

用点工作

你可以处理波形中的点:

  • 要选择波形中的一个点,首先要选择波形。然后,将鼠标光标移到该点上。光标改变形状以指示它在一个点上。

    用鼠标左键单击点。信号生成器在点周围画一个圆来表示您的选择。

  • 要插入一个点,选择波形和Shift +单击该点的部分。

  • 要取消选中点,请按Esc关键。

  • 选中某个点,按退格删除钥匙。

  • 来编辑一个点signalbuilder函数,使用signalbuilder集函数替换波形。您不能以编程方式删除一个点。

选择的部分

要选择线段,首先选择包含线段的波形。然后,左键单击段。信号构建器将段加厚,以指示它已被选中。

若要取消选择该段,按Esc关键。

移动波形

要移动波形,请选择它并使用键盘上的方向键将波形移动到所需的方向。每次击键将波形移动到快照网格上的下一个位置(参见快速网格)或由0.1如果没有启用快照网格,则为英寸。

拖着段

若要将线段拖动到新位置,请将鼠标光标移到线段上。鼠标光标改变形状以显示可拖动段的方向。

按下鼠标左键并按指示方向将段拖到所需位置。您还可以使用键盘上的方向键移动所选线段。

拖拽点

若要沿信号振幅(垂直)轴拖动一个点,请将鼠标光标移到该点上。光标的形状变为圆形,表示可以拖动该点。将点平行于y-轴到所需的位置。若要沿时间(水平)轴拖动该点,请按转变键的同时拖动点。您还可以使用键盘上的方向键移动所选点。

快速网格

每一个波形轴包含一个不可见的单元网格,便于波形点的精确定位。快照网格的原点与波形轴的原点重合。当您放下一直拖拽的点或段时,Signal Builder会将点或段点分别移动到网格上最近的一个或多个点。信号制造者菜单允许您指定网格水平(时间)轴和垂直(振幅)轴间距独立。间距越细,放置点的自由度就越大,但精确定位点就越困难。默认情况下,网格间距为0,这意味着您可以在网格上的任何位置放置点;也就是说,电网实际上是关闭的。使用菜单来选择您喜欢的间距。

插入和删除点

要插入一个点,首先选择波形。然后按住转变键和左键点击波形在点你想插入点。选中某个点,按关键。

编辑点坐标

要改变一个点的坐标,首先选择这个点。控件中该点的当前坐标左点在Signal Builder窗口底部编辑字段。控件中的值来更改所选点的振幅Y字段的新值并按输入.信号生成器将点移动到它的新位置。类中的值进行类似的编辑T字段以更改所选点的时间。

编辑线段坐标

要更改线段的坐标,首先选择线段。中的段端点的当前坐标左点而且正确的观点在Signal Builder窗口底部编辑字段。要更改坐标,请编辑对应编辑字段中的值并按输入

改变波形的颜色

若要更改波形的颜色,请选择该波形,然后选择颜色来自Signal Builder信号菜单。信号生成器显示MATLAB颜色选择器。为波形选择一个新的颜色。点击好吧

改变波形线的样式和厚度

信号生成器可以将波形显示为实线、虚线或虚线。它默认使用实线。若要更改波形的线条样式,请选择波形,然后选择线条样式来自Signal Builder信号菜单。从菜单中选择线条样式。

若要更改波形的线厚,请选中该波形,然后选择线宽信号菜单。编辑厚度值,单击好吧

信号生成器时间范围

Signal Builder时间范围决定了显式定义其输出的时间跨度。缺省情况下,取值范围是0 ~ 10秒。您可以更改块时间范围的开始和结束时间(参见更改信号生成器时间范围).

如果模拟在块时间范围的开始时间之前开始,则块从其前两个定义的输出推断其初始输出。如果模拟运行超过了块时间范围,块在默认情况下输出从最后定义的信号值外推的值,用于剩余的模拟。信号制造者模拟选项对话框允许您指定其他最终输出选项(参见最后时间后的信号值更多信息)。

请注意

当您单击开始模拟按钮上的信号生成器块工具栏,模拟使用模型的停止时间。波形中指定的时间范围的结束不是模型的停止时间。

更改信号生成器时间范围

如果需要更改时间范围,选择更改时间范围来自Signal Builder菜单。

在对话框中,编辑分钟时间而且最大时间字段,以分别反映新时间范围的开始时间和结束时间。

导出信号组数据

可以将定义Signal Builder块信号组的数据导出到mat文件、MATLAB工作区或信号编辑器块。

导出Signal Builder信号数据,格式为金宝appSimulink.SimulationData.Dataset,到一个mat文件,选择文件>导出数据>到mat文件

  • 文件名称—输入用于存放数据的mat文件的名称。

  • 组指数—输入需要导出数据的信号组号或信号组号,以标量或向量的形式指定。数字必须与块中现有的组相对应。

或者,您也可以使用signalbuilder得到函数返回一个或多个数据集。例如:

[ds1 ds2]=signalbuilder(block,'get',[group1 group2])

要将信号数据导出到MATLAB工作区,请选择文件>导出数据>到工作区

Signal Builder默认情况下将数据导出到名为渠道.中输入变量名即可导出到名称不同的变量变量名字段。Signal Builder将数据作为指定变量的值导出到工作区。

导出的数据是一个结构数组。结构xData而且yData字段包含定义当前选定信号组中的信号的坐标点。

要访问signal Builder块的信号组中的所有数据,请使用signalbuilder得到功能:

(时间、数据)= signalbuilder(块,‘得到’,信号,集团)

例如:

为时间0到5,创建三个信号组。Block = signalbuilder([],“创建”, [0 5], {[2 2] [4 4] [7 8];[0 2] [0 4] [7 10]});获取所有三组的信号。。(时间、数据)= signalbuilder(块,“得到”[1 - 2], [1:3])
时间= 2×3单元阵列[1×2双][1×2双][1×2双][1×2双][1×2双][1×2双]data = 2×3单元阵列[1×2双][1×2双][1×2双][1×2双][1×2双][1×2双)

来访问信号数据信号生成器阻塞并将其导出到信号编辑器块,选择文件>出口数据>信号编辑器块

  1. 信号生成器块,选择文件>出口>信号编辑器块

    提示

    或者,单击信号构建器到信号编辑器按钮

  2. 在文件浏览器中,指定一个文件名来包含保存的信号数据。

    一个信号编辑器块出现在模型中。

  3. 将信号数据导出到信号编辑器块,双击该块,并在文件名称参数。

  4. 在“信号编辑器”界面中,单击,可查看已导入的信号数据发射信号编辑器信号构建器到信号编辑器按钮).

用信号组进行模拟

可以使用标准模拟命令运行包含Signal Builder块的模型,也可以使用运行运行所有按钮中的信号生成器窗口(参见运行所有信号组).

如果您想捕获输入和输出运行所有按钮生成时,考虑使用SystemTest™软件。

激活信号组

在模拟过程中,信号生成器块总是输出活动信号组。活动信号组是在signal Builder窗口中为该块选择的组,如果对话框是打开的。否则,活动组就是上次关闭对话框时所选择的组。要激活一个组,打开组信号生成器窗口并选择该组。

连续运行不同的信号组

Signal Builder工具栏包括用于运行模拟的标准Simulink按钮。金宝app这样便于连续运行几个不同的信号组。例如,您可以打开对话框,选择一个组,运行一个模拟,选择另一个组,运行一个模拟,等等,所有这些都是从Signal Builder窗口进行的。

运行所有信号组

若要运行signal Builder块定义的所有信号组,请打开块对话框并单击按钮从信号生成器工具栏。的运行所有Button运行一系列的模拟,每个由块定义的信号组一个模拟。如果你安装了金宝app仿真软件覆盖在您的系统上,并使用模型覆盖工具运行所有按钮配置该工具在MATLAB工作空间中为每个仿真收集和保存覆盖率数据,并在最后一个仿真结束时显示组合覆盖率结果的报告。这允许您快速确定一组信号组对模型的测试效果。

请注意

停止一系列由运行所有命令模式下,输入Ctrl + C在MATLAB命令行。

模拟信号构建块

控制模拟信号生成器块,选择文件>模拟选项

最后时间后的信号值

如果模拟运行的时间超过了Signal Builder块定义的周期,则此控件的设置将决定该块的输出。

  • 若要为模拟的其余部分输出当前活动组中每个信号的最后定义值,请选择保持最终值.例如:

  • 若要输出从当前活动组中每个信号的最后定义值外推的值,以用于模拟的其余部分,请选择推断.例如:

  • 若要对模拟的其余部分输出零,请选择设为零.例如:

样品时间

若要输出连续信号,在样品时间参数。例如,下面的显示显示Signal Builder块的输出,该块设置为在10秒的周期内输出连续的高斯波形。

若要输出离散信号,请在此参数中输入信号的采样时间。下面的示例显示信号构建器块的输出,该块集合发出具有0.5第二次采样时间。

启用过零

要有信号生成器块检测过零事件,设置启用过零(默认)。的信号生成器块上设置过零检测从工作空间对象创建时使用的信号生成器信号组。有关更多信息,请参见讨论二阶导数过零检测

另请参阅

||

相关的话题