新浪博客

Simulink建模与仿真之选择器模块(Selector)

2019-04-11 18:42阅读:
模块说明
功能: 从向量、矩阵或多维信号中选择输入元素
库: Simulink / Signal Routing
默认符号:
Simulink建模与仿真之选择器模块(Selector)

功能简介
既然是从向量和矩阵中选择输入元素,那就有多种选择方法。
选择全部
从哪个开始,选择几个
从哪个开始,到哪个结束
索引号又有2种输入方法:
直接在参数对话框中输出
由外部端口传过来
索引号又有2种模式:
从1开始(MATLAB风格)
从0开始(C语言风格)

因此,组合起来就有很多种配置方法。先看一下参数设置对话框:
Simulink建模与仿真之选择器模块(Selector)
参数说明
索引选项(Index Option)。
共有6种:
按维度定义信号元素的索引方式。从列表中,选择:

“Select all”
不需要进一步配置。所有元素都被选中。图标变为:
Simulink建模与仿真之选择器模块(Selector)

“Index vector (dialog)”
启用 Index 列。输入元素索引向量。
默认参数时,图标如下。表示从输入的3个元素中选择第1个和第3个。
Simulink建模与仿真之选择器模块(Selector)
索引项可以是向量,也可以是标量。
输入改为4个,只取第3个,则参数配置为:
Simulink建模与仿真之选择器模块(Selector)
图标变为:
Simulink建模与仿真之选择器模块(Selector)
“Index vector (port)”
不需要进一步配置。
所选择的元素由输入端口决定。
实例:输入U为向量,选择第1个和第5个。则输出为2个元素的向量。
Simulink建模与仿真之选择器模块(Selector)
注意图标的变化:
Simulink建模与仿真之选择器模块(Selector)
其中Idx1表示第1维的索引输入。后面的下标1表示索引模式为从1开始(基于1的)。
Simulink建模与仿真之选择器模块(Selector)
“Starting index (dialog)”
启用 Index 和 Output Size 列。在 Index 列中输入要选择的元素范围的起始索引,在 Output Size 列中输入要选择的元素数。
这个跟“Index vector (dialog)”类似,区别是选择从第几个开始,连续选择几个。
比如,从第3个开始,选择2个:
Simulink建模与仿真之选择器模块(Selector)
图标也跟着变为:
Simulink建模与仿真之选择器模块(Selector)
“Starting index (port)”
启用 Output Size 列。在 Output Size 列中输入要选择的元素数。
从哪个开始,由输入端口决定。输入端口只能是标量。
选择几个,由对话框输入。
例如,从1~10中选择3个,从第6个开始,结果为6,7,8.
Simulink建模与仿真之选择器模块(Selector)
Simulink建模与仿真之选择器模块(Selector)
“Starting and ending indices (port)”
不需要进一步配置。
使用此选项将生成可变大小的输出信号。当您更新时,输出维度设置为与输入信号的维度相同。在执行过程中,将根据提供给索引的信号来更新输出维度。
记录输出信号数据时,未选择的信号用 NaN 值填充。
索引项由端口输出。端口需要输入2个元素,前者为起始项索引号,后者为结束项索引号。比如选择第5个到第9个:
Simulink建模与仿真之选择器模块(Selector)
注意:输出元素仍然为10个。

Number of input dimensions - 输入信号的维度数
输入信号是几维的。
如果是多维的,每个维度都有索引选项需要配置。比如改为3维的:
Simulink建模与仿真之选择器模块(Selector)
图标变为:
Simulink建模与仿真之选择器模块(Selector)
Index mode - 索引模式
如果改为从0开始,
Simulink建模与仿真之选择器模块(Selector)
则图标也会有变化:
Simulink建模与仿真之选择器模块(Selector)

我的更多文章

下载客户端阅读体验更佳

APP专享