Simulink建模与仿真学习笔记之选择器模块(Selector)

模块说明

  • 功能: 从向量、矩阵或多维信号中选择输入元素
  • 库:    Simulink / Signal Routing
  • 默认符号:

功能简介

既然是从向量和矩阵中选择输入元素,那就有多种选择方法。

  • 选择全部
  • 从哪个开始,选择几个
  • 从哪个开始,到哪个结束

索引号又有2种输入方法:

  • 直接在参数对话框中输出
  • 由外部端口传过来

索引号又有2种模式:

  • 从1开始(MATLAB风格)
  • 从0开始(C语言风格)

因此,组合起来就有很多种配置方法。先看一下参数设置对话框:

参数说明

索引选项(Index Option)。

共有6种:

按维度定义信号元素的索引方式。从列表中,选择:

  • Select all

    不需要进一步配置。所有元素都被选中。图标变为:

  • Index vector (dialog)

    启用 Index 列。输入元素索引向量。

默认参数时,图标如下。表示从输入的3个元素中选择第1个和第3个。

索引项可以是向量,也可以是标量。

输入改为4个,只取第3个,则参数配置为:

图标变为:

  • Index vector (port)

    不需要进一步配置。

所选择的元素由输入端口决定。

实例:输入U为向量,选择第1个和第5个。则输出为2个元素的向量。

注意图标的变化:

其中Idx1表示第1维的索引输入。后面的下标1表示索引模式为从1开始(基于1的)。

  • Starting index (dialog)

    启用 Index 和 Output Size 列。在 Index 列中输入要选择的元素范围的起始索引,在 Output Size 列中输入要选择的元素数。

这个跟“Index vector (dialog)”类似,区别是选择从第几个开始,连续选择几个。

比如,从第3个开始,选择2个:

图标也跟着变为:

  • Starting index (port)

    启用 Output Size 列。在 Output Size 列中输入要选择的元素数。

从哪个开始,由输入端口决定。输入端口只能是标量。

选择几个,由对话框输入。

例如,从1~10中选择3个,从第6个开始,结果为6,7,8.

  • Starting and ending indices (port)

    不需要进一步配置。

    使用此选项将生成可变大小的输出信号。当您更新时,输出维度设置为与输入信号的维度相同。在执行过程中,将根据提供给索引的信号来更新输出维度。

    记录输出信号数据时,未选择的信号用 NaN 值填充。

索引项由端口输出。端口需要输入2个元素,前者为起始项索引号,后者为结束项索引号。比如选择第5个到第9个:

注意:输出元素仍然为10个。


Number of input dimensions - 输入信号的维度数

输入信号是几维的。

如果是多维的,每个维度都有索引选项需要配置。比如改为3维的:

图标变为:


Index mode - 索引模式

如果改为从0开始,

则图标也会有变化:


参考资料:

Selector

从向量、矩阵或多维信号中选择输入元素

https://ww2.mathworks.cn/help/simulink/slref/selector.html?s_tid=doc_ta#responsive_offcanvas

  

Selector 模块的索引选项

https://ww2.mathworks.cn/help/simulink/slref/_mw_83956b38-b8e1-4921-89db-f6a61e435d1f.html

猜你喜欢

转载自blog.csdn.net/booksyhay/article/details/86638402