Simulink建模-Mux与Demux模块虚拟向量的组装与拆解
1.背景
在 Simulink 中,Mux 和 Demux 模块是用于信号路由的常用模块,我目前经常使用的场景是同一条件的switch条件判断输出多个信号,此时使用mux和Demux可以减少switch的使用
2.模型介绍
2.1 Mux
Mux 模块
- 功能:
Mux 模块用于将多个输入信号组合成一个虚拟向量。
输入信号必须具有相同的数据类型和复杂性,或者可以是函数调用信号。 - 应用场景:
用于将多个信号组合在一起,以便在模型中更高效地处理。
特别适用于需要将多个信号传递给单个模块或系统的情况。 - 参数设置:
Number of inputs
:可以指定输入信号的数量和大小。可以使用标量、向量、单元数组或信号名称列表。
Display option
:可以选择在模块图标上显示的内容,如条形、信号名称或模块类型.
2.2 Demux
Demux 模块
- 功能:
Demux 模块用于将输入的虚拟向量信号分解为单独的信号。
输出信号端口按从上到下的顺序排列。 - 应用场景:
用于将组合信号分解为单独的信号,以便在模型中进一步处理。
适用于需要将一个信号分解为多个独立信号的情况。 - 参数设置:
Number of outputs
:可以指定输出信号的数量和大小。可以使用标量或向量。
Bus selection mode
:在总线选择模式下,可以指定输出端口的维度。
示例:
如果输入是一个包含 6 个元素的向量,将 Number of outputs 参数设置为 3,则 Demux 模块会创建三个输出信号,每个信号包含 2 个元素。
可以使用 -1 来动态指定端口的大小。例如,设置 Number of outputs 为 [-1, 3, -1],则第二个输出信号始终包含 3 个元素,而第一个和第三个输出信号的大小将根据输入信号的大小动态分配。
3.注意事项
在使用 Mux 和 Demux 模块时,需要注意信号的数据类型和复杂性必须一致,不能处理不同类型的数据进行虚拟向量合并。