文档

虚拟信号

关于虚拟信号

一个虚拟信号以图形方式表示其他信号或其他信号的一部分的信号。虚拟信号是纯粹的图形实体;它们没有数学或物理意义。模拟万博1manbetx®在模拟模型时忽略它们,它们在生成的代码中不存在。一些块,如Mux块,总是产生虚拟信号。其他的,如总线创建器,可以生成虚拟或非虚拟信号。

虚信号的非虚分量被调用区域.虚信号可以不止一次地包含同一个区域。例如,如果同一个非虚信号连接到Mux块的两个输入端口,则该块输出一个具有两个区域的虚信号。这些区域的行为就像它们起源于两个不同的非虚拟信号一样,即使结果的行为重复了信息。

总线信号也可以是虚拟的或非虚拟的。有关详细信息,请参阅虚拟和非虚拟总线

Mux信号

一个万博1manbetx仿真软件多路复用器是一种虚拟信号,以图形方式将两个或多个标量或矢量信号组合成一条信号线。Si万博1manbetxmulink多路复用器不是一个硬件多路复用器,它将多个数据流组合成一个单一的通道。一个万博1manbetxSimulink mux不会在任何功能意义上组合信号:它只是虚拟存在,它的唯一目的是简化模型的视觉外观。使用多路复用器对模拟或生成的代码没有影响。

可以在任何可以使用普通(连续)多路复用器的地方使用多路复用器向量。例如,您可以对mux执行计算。计算会影响mux中的每个组成值,就像值存在于连续向量中一样,并且结果是连续向量,而不是mux。使用mux对多个向量执行计算可避免将单独的值复制到连续存储的开销通用电气。

Simu万博1manbetxlink文档有时可以互换地引用“mux”、“vector”和“wide signals”,这三个术语都出现在Simulink对话框的标签和API名称中。这个术语可能会让人混淆,因为大多数矢量信号是非虚的,因此不是muxes。为避免混淆,保留术语“mux”专门指虚拟向量。

mux是虚拟矢量信号。多路复用器的组成信号在各个方面都保持各自独立的存在,除了视觉上。还可以将标量和矢量信号组合成anonvirtual向量信号,通过使用向量串联块。a输出的信号向量串联Block是一个普通的连续向量,没有继承它是由单独的信号创建的事实的特殊属性。

要创建复合信号,其组成信号保留其标识并可以具有不同的数据类型,请使用总线生成公共汽车元素块,而不是一个多路复用器块。有关详细信息,请参见复合信号技术

使用mux

信号路由库提供两个虚拟块用于实现多路复用器:

多路复用器

将几个输入信号合并成一个多路复用器(虚拟矢量)信号

多路分配器

提取并输出mux(虚拟向量)信号中的值

要实现多路复用信号:

  1. 从信号路由库中选择Mux和Demux块。

  2. 设置多路复用块输入数和德默克斯街区数量的输出将块参数设置为所需的值。

  3. 根据需要连接Mux、Demux和其他模块,以实现所需信号。

下一个图显示了三个信号,输入到一个Mux块,作为一个Mux信号传输到一个Demux块,并作为单独的信号输出。

Mux和Demux块分别是左边和右边的竖条。为了降低视觉复杂度,这两个块都不显示名称。在这个例子中,连接块的线,代表多路复用信号,是宽的,因为模型是用显示>信号和港口>宽Nonscalar行选择启用。看到显示信号的属性获取详细信息。

信号输入到多路复用器块可以是标量、矢量和mux的任何组合。输出多路复用器中的信号按照它们被输入到多路复用器块的顺序出现。您可以使用多个Mux块在几个阶段中创建一个Mux,但结果是扁平的,而不是分层的,就像使用单个Mux块组合了组成信号一样。

输入到Mux块的所有信号的值必须具有相同的数据类型。

如果Demux块试图输出比输入信号中存在的更多的值,就会发生错误。一个deux块可以输出比输入mux中存在的更少的值,并且可以将它输出的值分组成不同的标量和向量,而不是输入到mux块。但是,Demux块不能重新排列这些值的顺序。有关详细信息,请参见多路分配器

请注意

不要使用多路复用器多路分配器块来创建和访问总线。

相关话题

这个话题有用吗?