玩命加载中 . . .

【simulink】PWM


【simulink】PWM

PWM模块

​ 变频是在VCO里完成的,这里哩就是产生变频的占空比固定(0.5)的PWM波

1. 产生波

​ VCO产生锯齿波,然后跟0.5比,大于0.5为高电平,小于0.5为低电平,

Re~Op的结果

2. Data Type Conversion模块

Data

​ 前面的方波的输出是逻辑电平,0/1也就是布尔类型,而后面的Transport Delay(传输延迟)、AND逻辑等模块通常需要 双精度浮点数(double) 作为输入。所以加个这玩意改变一下数据类型

​ 这里其实也就是0--->0.0以及1--->1.0,仅改变数据类型,不改变信号逻辑值

3. Transport Delay

死区时间
参数项 设定值 物理意义
时滞 100e-9秒(100ns) 信号延迟时间,需大于开关管关断时间(如MOSFET的关断延迟+体二极管反向恢复时间)。
初始输出 0 仿真开始时模块输出为0,避免初始阶段误触发驱动信号。
初始缓冲区大小 1024 预分配内存存储历史信号数据,确保延迟计算的稳定性(一般无需修改)。
使用固定缓冲区大小 勾选 禁止仿真中动态调整缓冲区,提升运行效率。
Pade阶(用于线性化) 0 禁用Pade近似,保持精确的非线性延迟(适合开关电源仿真)。
  • 信号流示例:
    • 原始PWM波(S1驱动信号):
      • 0→1→0→1...
      • 0→(延迟100ns)→1...
    • 互补信号生成
      • S1驱动信号:原PWM波延迟100ns → [0→延迟→1→延迟→0...]
      • S4驱动信号:原PWM波取反后延迟100ns → [1→延迟→0→延迟→1...]
  • 死区生成效果
    • S1和S4的驱动信号在跳变沿之间存在100ns的重叠低电平区(死区),完全消除直通风险
死区效果

4. AND

​ 首先要明确AND的功能

(1) 死区时间的生成原理
  • 目标:在S14和S23的跳变沿之间插入100ns低电平区间(死区)。

  • 实现逻辑:

    只有当原始信号延迟后的信号同时为高电平 时,AND门才输出高电平。

    效果:

    • 每个跳变沿(上升沿或下降沿)后,原始信号与延迟信号存在100ns的不同步。
    • AND操作将高电平持续时间缩短100ns,形成死区窗口。
(2) 具体波形示例

假设原始方波为50%占空比(高电平10μs,低电平10μs,频率50kHz):

  • 路径A(直接通道):立即跟随原始方波。
  • 路径B(延迟通道):原始方波延迟100ns后到达AND门。
  • AND输出(S14)
    • 仅当两路信号均为高电平时输出高电平。
    • 高电平持续时间 = 原始高电平时间 - 延迟时间 = 10μs - 100ns = 9.9μs。
    • 死区效果:在原始方波下降沿后的100ns内,AND输出保持低电平。

一个自我误区

误区

(黄色是A,蓝色是B)死区时间是100ns而不是200ns,别看两个波的前后比,而是单个波

  • 原始信号(A)

    1
    2
    高电平时间:0μs→10μs  
    低电平时间:10μs→20μs
  • 延迟信号(B = A延迟100ns)

    1
    2
    高电平时间:0.1μs→10.1μs  
    低电平时间:10.1μs→20.1μs
  • AND输出(A AND B): 仅当A和B同时为高时输出高电平,因此高电平区间为 ​0.1μs→10μs,持续时间为 ​9.9μs。 ​高电平减少量​ = 原始高电平时间(10μs) - AND输出高电平时间(9.9μs) = ​100ns​(而非200ns)


文章作者: LS
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 LS !
  目录