RT-LAB 文档主页

Common PWM Out

模块

掩码

描述

PWM Out 模块用于在与 FPGA 连接的载波数字输出线上产生 PWM 信号。
使用两个输入来生成 PWM 信号:载波频率和占空比。这些值通过目标计算机的 PCIe 总线,从 RT-LAB 模型通过位流的一个 DataIn 端口传输到 FPGA 位流。
PWM 信号的形状由极性、互补信号之间的死区时间、初始相位定义。这些参数不需要在每个步长都发送,因此分配给 PWMO 的 LoadIn 端口用于将它们传输到 FPGA。
每个在 PWM Out 模式下使用数字输出通道的 FPGA 位流都附带一个配置文件,其中列出了 LoadIn 端口、DataIn 端口号及其在系统中对应的载波位置。配置文件名与在 OpCtrl 模块中输入的位流文件名相同,但扩展名为 .conf 而不是 .bin。
此配置文件使用三个参数来描述载波通道的选择:

  • 插槽号(范围 1 到 4)是连接到系统的背板插槽,数字输出模块安装在其中,
  • 部分 A 或 B 是载波 32 条线的一个子集。例如,对于 32 输入/32 输出 OP4510 载波,部分 A 指 32 条输入线,部分 B 指 32 条输出线,
  • 子部分,1 到 4,是连接到端口的 8 个数据值的子集:子部分 1 返回载波一个部分的前 8 个通道的值,子部分 2 返回接下来 8 个通道的值,依此类推。
    用户必须参考配置文件来选择所需数字输出通道的端口号。然后,PWM Out 模块解析配置文件,并在 ‘Slot infos’ 参数中显示与端口号对应的插槽、部分和子部分值。在解析配置文件期间,模块还会检索匹配的 LoadIn 端口。
    一个 PWM Out 控制的最大数字输出通道数受限于一个子部分中通道子集的大小,在当前实现中固定为 8。

参数

ControllerName 通过输入与 OpCtrl 模块中指定的相同的 ‘Controller Name’ 来将此模块绑定到一个 OpCtrl 模块。OpCtrl 模块控制系统内特定 FPGA 的设置初始化。
DataIn port number 输入要由此模块控制的 DataIn 端口的索引,对于 VC707、TE0741 和 OP48xx FPGA,范围为 [1:64],对于所有其他 FPGA,范围为 [1:32]。
Slot infos 此不可编辑参数显示与所选 DataIn 端口相关的数字输出通道的物理位置,该信息从配置文件的解析中获得。
Maximum number of PWM signals controlled by this block 此不可编辑参数显示配置文件中列出的一个子部分中的通道数。
Number of PWM signals 输入将从指定数字模块输出的独立 PWM 信号数,或互补 PWM 信号对数。信号数的值必须小于或等于 ‘Maximum number of PWM generators’ 参数的值。此数字始终等于此模块两个输入向量的长度(Hz 和 Duty cycle,更多详情请参阅下面的输入部分)。因此,模块提供的数据将应用于子部分的前 N 个通道,其中 N 是 ‘Number of PWMOut channels’ 参数的值。当选择 ‘Complementary mode’ 时,最大数量除以 2。在 ‘Complementary Mode’ 中,互补信号在下一个 PWM 通道上生成,如图 2:互补波形所示。
Polarity 此参数用于指定 PWM 信号极性。极性可以是 Active-High(默认)或 Active-Low。‘Active-Low’ 意味着 ‘低’ 输出电压被解释为 ‘1’,‘高’ 输入电压被解释为 ‘0’。此参数的 ‘Active-High’ 意味着信号为高电平有效(默认),这意味着 ‘低’ 输入电压被解释为 ‘0’,‘高’ 输入电压被解释为 ‘1’。在 ‘Complementary Mode’ 中,当设置了 ‘Deadtime value’ 且 ‘Polarity’ 为 ‘Active Low’ 时,PWM 信号在 ‘Dead Time value’ 参数指定的延迟期间被设置为 ‘1’;当 ‘Polarity’ 为 ‘Active High’ 时,PWM 信号被设置为 ‘0’。
Carrier wave mode 此参数设置 PWM 生成模式。如果生成模式设置为 ‘Symmetric’,则 PWM 载波是三角波形。‘Asymmetric’ 生成模式对应于锯齿波载波波形。因此,对称 PWM 的有效相位相对于 PWM 周期的开始是对称的,而非对称 PWM 的有效相位相对于 PWM 周期的开始是不对称的。 对称与非对称 PWM 生成模式
Carrier phase control from an input 选中时,会向模块添加一个额外的输入 Phase(请参阅输入部分),以允许实时更新初始相位。
Dead-time control from an input 选中时,会向模块添加一个额外的输入 Dead time(请参阅输入部分),以允许实时更新死区时间。请注意,此选项仅在 Output complementary channel 被设置时可用。
Allow disabling channel 选中时,会向模块添加一个额外的输入 Disable(请参阅输入部分),以允许实时禁用通道。 如果 Output complementary channel 被设置,此输入数组的一个元素将同时控制通道及其互补输出。两个物理通道(PWM 发生器及其互补)的占空比将根据所选的极性进行设置(即,对于高电平有效极性为 0,对于低电平有效极性为 1)。
Output complementary channel 选中时,PWM 模块生成互补信号,并且 PWM 通道数除以 2。其他通道用于根据下面的图 2 生成互补 PWM 信号。
互补波形
Dead time value 此参数仅在请求互补波形时可用。持续时间以秒表示。请注意,包含死区时间将减少两个互补波形的有效相位长度,从而降低占空比。当 ‘Polarity’ 为 ‘Active Low’ 时,PWM 信号在 ‘Dead Time value’ 参数指定的延迟期间被设置为 ‘1’;如果 ‘Polarity’ 为 ‘Active High’,则 PWM 信号被设置为 ‘0’。死区时间范围在 [0.01, 10.23] us 之间。
带死区时间的互补波形
Initial phase [0…1] 此参数用于指定每个 PWM 信号与载波之间的相位。它是一个向量 (1 x n),其中 n 是生成的 PWM 信号数。载波的初始相位以周期比表示,介于 0 和 1 之间。它被量化为最接近的 1/1000。

输入

Hz 此输入设置 PWM 载波频率。值应以 Hz 为单位提供;对于使用 RT-XSG 版本最高至 v3.3.3 生成的位流,该值应在 0 到 180,000 Hz 之间。在此版本之后,最大频率的限制将取决于系统中使用的硬件。
Duty 此输入是占空比。其值应在 [0,1] 范围内。当值超出范围时,占空比将被饱和。
Dead time 此输入仅在请求互补波形且设置了 Dead-time control from an input 时可用。它相当于死区时间值参数的实时版本。持续时间以秒表示,但范围在 [0.01, 10.23] us 之间。
Phase 此输入在设置 Carrier phase control from an input 时可用。它用于指定每个 PWM 信号与载波之间的相位。其值应在 [0,1] 范围内。当值超出范围时,相位周期将被饱和。
Disable 此输入在设置 Allow disabling channel 时可用。它用于实时禁用通道。输入是一个数组,其大小在 Number of PWM signals 中提及。 如果 Output complementary channel 被设置,此数组的一个元素将同时控制通道及其互补输出。两个物理通道(PWM 发生器及其互补)的占空比将根据所选的极性进行设置(即,对于高电平有效极性为 0,对于低电平有效极性为 1)。

输出

Status 输出返回以下值:

描述
0 无错误。
-1 无法将模块与 OpCtrl 模块匹配(检查 ‘controller Name’ 值),或 FPGA 卡初始化问题。
-2 内部存储器初始化问题。

特性与限制

直接馈通
离散采样时间 继承
XHP 支持
直接馈通
离散采样时间 继承
XHP 支持
离线工作
Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐