Signal Conversion
将信号转换为新类型,而不改变信号值

库:
Simulink /
Signal Attributes
HDL Coder /
Signal Attributes
Signal Conversion 模块的替代配置:
信号副本 | To Virtual Bus | To Nonvirtual Bus
描述
Signal Conversion 模块可将信号从一种类型转换为另一种类型。要选择要执行的转换类型,请使用输出参数或下列预配置的 Signal Conversion 模块之一:
Signal Copy 模块
To Virtual Bus 模块
To Nonvirtual Bus 模块
示例
创建总线的连续副本
使用 Signal Conversion 模块创建总线的连续副本。
Bus Creator 模块创建输入到 Signal Conversion 模块的非虚拟总线。当输出参数设置为 Signal copy
时,Signal Conversion 模块会创建该输入总线的另一个连续副本。
将虚拟总线转换为非虚拟总线
使用 Signal Conversion 模块将虚拟总线转换为非虚拟总线。
Bus Creator 模块创建输入到 Signal Conversion 模块的虚拟总线。为了将虚拟总线转换为非虚拟总线,Signal Conversion 模块将其输出参数设置为 Nonvirtual bus
,并将其数据类型参数设置为 Simulink.Bus
对象。指定的 Bus
对象与 Bus Creator 模块中总线的总线层次结构匹配。Signal Conversion 模块的非虚拟总线输出是 Bus Selector 模块的输入。
将非虚拟总线转换为虚拟总线
使用 Signal Conversion 模块将非虚拟总线转换为虚拟总线。
Bus Creator 模块创建输入到 Signal Conversion 模块的非虚拟总线。为了将非虚拟总线转换为虚拟总线,Signal Conversion 模块的输出参数设置为 Virtual bus
。Signal Conversion 模块的虚拟总线输出是 Bus Selector 模块的输入。
将复路信号转换为向量
使用 Signal Conversion 模块将复路信号转换为向量。
Mux 模块创建输入到 Signal Conversion 模块的复路信号。为了将复路信号转换为向量,Signal Conversion 模块的输出参数设置为 Signal copy
。Signal Conversion 模块的向量输出是 Display 模块的输入。
端口
输入
Port_1 — 要转换的输入信号
标量 | 向量 | 矩阵 | 数组 | 总线
输入信号是标量、向量、矩阵、数组或总线,此模块可将其转换为另一种类型。
数据类型: single
| double
| half
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| string
| Boolean
| fixed point
| enumerated
| bus
| image
输出
Port_1 — 转换信号
标量 | 向量 | 矩阵 | 数组 | 总线
输出信号是转换为指定类型的输入信号。
数据类型: single
| double
| half
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| Boolean
| fixed point
| enumerated
| bus
| image
参数
要以交互方式编辑模块参数,请使用属性检查器。在 Simulink® 工具条中,在仿真选项卡的准备库中,选择属性检查器。
输出 — 转换的类型
信号副本 | 虚拟总线 | 非虚拟总线
指定要执行的转换类型。
信号副本 - 创建输入信号的连续副本。此值是 Signal Conversion 和 Signal Copy 模块的默认值。
虚拟总线 - 将非虚拟总线转换为虚拟总线。此值是 To Virtual Bus 模块的默认值。
非虚拟总线 - 将虚拟总线转换为非虚拟总线。此值是 To Nonvirtual Bus 模块的默认值。
对于信号副本选项,输入类型决定了模块如何生成副本。
例如,假设该模块接收复路信号,该信号包含占用不连续内存区域的元素。在每个时间步中,转换将为复路信号的元素分配连续的内存区域,并将由模块的输入端口表示的不连续区域的值复制到由模块的输出端口表示的连续区域。输出是向量,其元素占据连续内存区域。
您使用的转换类型取决于您的建模目的。
建模目的 | 选项 |
---|---|
减少为多路信号生成的代码。 有关涉及 Simulink Coder™ 软件的示例,请参阅Generate Reentrant Code from Subsystems (Simulink Coder)。 | 信号副本 |
将具有固定采样时间的模块连接到使能子系统的输出端口。 | 信号副本 |
将非虚拟总线转换为虚拟总线,以便节约内存。 | 虚拟总线 |
将虚拟总线传递给需要非虚拟总线的建模结构。 | 非虚拟总线 |
创建总线数组的副本。 该模块无法将总线数组转换为非虚拟或虚拟总线。要从总线数组中提取一个总线,请使用 Selector 模块。 | 信号副本 |
编程用法
要以编程方式设置模块参数值,请使用 set_param
函数。
参数: | ConversionOutput |
值: | 'Signal copy' (默认) | 'Virtual bus' | 'Nonvirtual bus' |
示例: set_param(gcb,'ConversionOutput','Virtual bus')
数据类型 — 非虚拟总线数据类型
Inherit: auto
(默认) | Bus: <object name>
| <data type expression>
指定此模块生成的非虚拟总线的输出数据类型。
Inherit: auto
- 从上游模块继承数据类型。例如,从上游 Bus Creator 模块继承Simulink.Bus
对象数据类型。Bus: <object name>
或<data type expression>
- 指定与输入总线的层次结构匹配的Simulink.Bus
对象。如果上游 Bus Creator 模块指定总线对象,请指定相同的总线对象。
数据类型助手可帮助您设置数据属性。要使用数据类型助手,请点击显示数据类型助手 。有关详细信息,请参阅使用数据类型助手指定数据类型。
依存关系
要启用此参数,请将输出设置为非虚拟总线。
编程用法
要以编程方式设置模块参数值,请使用 set_param
函数。
参数: | OutDataTypeStr |
值: | 'Inherit: auto' (默认) | 'Bus: <object name>' | '<data type expression>' |
示例: set_param(gcb,'OutDataTypeStr','Bus: myBusObj')
模块特性
数据类型 |
|
直接馈通 |
|
多维信号 |
|
可变大小信号 |
|
过零检测 |
|
替代配置

信号副本 — 复制输入信号
Signal Copy 模块与 Signal Conversion 模块只有名称不同。
库:
Simulink /
Quick Insert /
Signal Attributes

To Virtual Bus — 将非虚拟总线转换为虚拟总线
To Virtual Bus 模块将输出设置为虚拟总线。
库:
Simulink /
Quick Insert /
Signal Attributes

To Nonvirtual Bus — 将虚拟总线转换为非虚拟总线
To Nonvirtual Bus 模块将输出设置为非虚拟总线。
库:
Simulink /
Quick Insert /
Signal Attributes
扩展功能
C/C++ 代码生成
使用 Simulink® Coder™ 生成 C 代码和 C++ 代码。
HDL 代码生成
使用 HDL Coder™ 为 FPGA 和 ASIC 设计生成 Verilog 代码和 VHDL 代码。
HDL Coder™ 提供影响 HDL 实现和综合逻辑的额外配置选项。
此模块有直通实现。
ConstrainedOutputPipeline | 通过移动设计中现有延迟的方式来放置在输出端的寄存器的数量。分布式流水线处理不会重新分发这些寄存器。默认值为 |
InputPipeline | 要在生成的代码中插入的输入流水线阶段数。分布式流水线处理和受限输出流水线处理可以移动这些寄存器。默认值为 |
OutputPipeline | 要在生成的代码中插入的输出流水线阶段数。分布式流水线处理和受限输出流水线处理可以移动这些寄存器。默认值为 |
此模块支持复信号的代码生成。
PLC 代码生成
使用 Simulink® PLC Coder™ 生成结构化文本代码。
定点转换
使用 Fixed-Point Designer™ 设计和仿真定点系统。
版本历史记录
在 R2006a 之前推出
MATLAB 命令
您点击的链接对应于以下 MATLAB 命令:
请在 MATLAB 命令行窗口中直接输入以执行命令。Web 浏览器不支持 MATLAB 命令。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)