Main Content

本页翻译不是最新的。点击此处可查看最新英文版本。

Bus Selector

从传入总线中选择元素

  • Bus Selector block

库:
Simulink / Commonly Used Blocks
Simulink / Signal Routing
HDL Coder / Signal Routing

描述

Bus Selector 模块输出您从输入总线选择的元素。该模块可以单独输出所选的各元素或在一个新的虚拟总线中输出所选元素。

Bus Selector 模块不支持混合使用消息和信号元素作为输出。

端口

输入

全部展开

输入虚拟或非虚拟总线包含要选择的元素。

对于总线数组,请使用 Selector 模块来选择要与 Bus Selector 模块结合使用的总线。

数据类型: single | double | half | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | string | Boolean | fixed point | enumerated | bus
复数支持:

输出

全部展开

默认情况下,模块将每个所选元素从一个单独的输出端口输出,该端口上标有对应总线元素的名称。当以虚拟总线输出参数启用时,模块从一个端口输出所选元素,并在一个虚拟总线中组合这些元素。

数据类型: single | double | half | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | string | Boolean | fixed point | enumerated | bus
复数支持:

参数

全部展开

要以交互方式编辑模块参数,请双击该模块。

此 参数 为只读。

输入元素列表包括进入模块的所有元素,包括嵌套总线的元素。元素旁边的箭头表示输入元素是总线。要显示该总线的内容,请点击箭头。

要突出显示进入模块的元素的来源,请在列表中选择该元素,然后点击查找

如果在对话框打开时更改了元素名称,请点击刷新以更新列表中的名称。

编程用法

模块参数:InputSignals
类型:元胞数组
值:元素名称

要过滤显示的输入元素,请输入搜索词。过滤器可执行部分字符串搜索。请勿将搜索词括在引号内。

要访问过滤选项,请点击按名称过滤框右侧的显示过滤选项 按钮。

选择此参数以使用正则表达式或部分搜索字符串过滤显示的输入元素。默认情况下,您可以仅使用部分搜索字符串过滤显示的输入元素。

正则表达式允许您根据输入元素是否匹配某个模式进行过滤。例如,在按名称过滤框中输入 t$,以显示名称以小写字母 t 结尾的所有元素(及其直接父级)。有关详细信息,请参阅正则表达式

依存关系

要访问此参数,请点击按名称过滤框右侧的显示过滤选项 按钮。

选择此参数以扁平列表形式显示过滤结果,该列表使用圆点表示法来反映总线层次结构。默认情况下,过滤结果显示在层次结构树中。

依存关系

要访问此参数,请点击按名称过滤框右侧的显示过滤选项 按钮。

此列表中的每个元素都包含在模块输出中。

要向模块输出添加元素,请执行以下操作:

  1. 总线中的元素列表中选择一个或多个元素。

    如果您是从总线中的元素列表中选择多个元素,则您选择它们的顺序将设置它们在所选元素列表中的顺序。

  2. (可选)指定您要元素出现在所选元素列表中的位置。选择希望添加的元素出现在其下方的元素。如果不选择元素,添加的元素会出现在列表的末尾。

  3. 点击选择

或者,在 Simulink® 编辑器中,当输入端口接收总线并且所有输出端口都连接到其他端口时,在 Bus Selector 模块的输出端口附近绘制一条新信号线。Simulink 提示您指定要选择的元素,并为您指定的元素添加端口。当以虚拟总线输出处于选中状态时,您无法以这种方式创建端口。

要更改输出元素的顺序,请在列表中选择一个元素或多个连续的元素,然后点击向上向下。当您更改元素顺序时,端口会保持连接。

要从模块输出中删除元素,请在列表中选择元素,然后点击删除

如果列表中的某个元素不在输入总线中,则该元素名称以三个问号 (???) 开头。请修改输入总线以包含指定名称的元素,或从列表中删除该元素。

限制

为了避免递归限制,请为每个 Bus Selector 模块选择少于 500 个元素。

编程用法

模块参数OutputSignals
类型:字符向量
值:'signal1,signal2' 形式的字符向量
默认值:

默认情况下,模块将每个所选元素从一个单独的输出端口输出,该端口上标有对应总线元素的名称。选择此参数可从一个端口输出所选元素,这些元素组合在一个虚拟总线中。

要将输出转换为非虚拟总线,请在 Bus Selector 模块后插入一个 Signal Conversion 模块。将 Signal Conversion 模块的输出参数设置为非虚拟总线,并将数据类型设置为 Simulink.Bus 对象。

所选元素列表中只有一个元素而您启用了以虚拟总线输出时,则该元素不会包装在总线中。例如,如果元素是一个总线,则输出元素是该总线。如果该元素不是总线,则输出元素不是总线。

编程用法

模块参数OutputAsBus
类型:字符向量
值:'on' | 'off'
默认值:'off'

模块特性

数据类型

Boolean | bus | double | enumerated | fixed point | half | integer | single | string

直接馈通

多维信号

可变大小信号

过零检测

提示

对于位于子系统和模型接口上的总线,您可以使用 In Bus Element 模块,而不是 Inport 模块和 Bus Selector 模块。In Bus Element 模块能够:

  • 减少模块图中线的复杂度和杂乱无章。

  • 使增量更改接口更容易。

  • 允许访问更靠近使用点的总线元素,避免使用 Bus SelectorGoto 模块配置。

扩展功能

PLC 代码生成
使用 Simulink® PLC Coder™ 生成结构化文本代码。

版本历史记录

在 R2006a 之前推出