基于Simulink的RPWM调制波仿真
**
RPWM Matlab仿真原理及实现
**
1. 什么是RPWM?
RPWM通过随机改变开关频率使电机电磁噪音近似为限带白噪声(噪声的功率在整个频率轴上均匀分布),尽管噪音的总分贝数未变,但以固定开关频率为特征的有色噪音强度大大消弱。
2. 基本原理:
通过自然采样方式,采用传统的三角波调制,与参考电压信号相比较的三角载波信号的斜率可随机改变。
3. 基本思路:
创建一个频率随机发生变化的三角载波,与参考电压信号相比较产生随机开关频率信号来生成RPWM。
随机频率三角波生成逻辑原理图:
模块1: 随机频率三角载波的完整周期输出时间: 通过下列代码:
function y = f(freq,clk)
T = 0.01;
t = 1/freq;
b = rem(T,t);
a = rem(clk,T);
c = T - b;
if b ~= 0 && a > c
y = 0;
else
y = a;
end
end
将不同频率的三角载波信号进行删减,使得其输出完整的三角波信号,并将最后一周期中,不能输出完整周期的信号输出为0。
模块2: 三角载波信号的生成: 通过下列代码生成输入频率的三角波信号:
function y = f(freq,clk)
T = 1/freq;
a = rem(clk,T);
if ((a >=0) && (a<=T/2))
b = 0+2/(T/2)*a;
else
b = 4+2/(-T/2)*a;
end
y = b;
end
通过输入频率信号和三角载波持续时间信号,生成输入频率的完整三角波。
整体模块结构图:
这一结构使代码生成的幅值为[0,2]的三角波更改为幅值为[-1,1]的三角波。
接着通过对比参考电压生成RPWM信号:
随机频率三角载波生成波形图:
随机频率开关信号生成:
