永磁同步电机PMSM电机5 7次谐波注入,可以有效降低转矩脉动。 死区补偿后,有效降低转矩脉动。 电压补偿。 有ppt说明,文章和相应simulink模型。 描述真实,已更新,现在有两套模型。

在永磁同步电机(PMSM)的控制领域,转矩脉动一直是个令人头疼的问题,它不仅影响电机的运行平稳性,还会导致噪声、振动等一系列不良后果。最近在研究过程中发现了一些有效的优化手段,今天就来和大家分享一下。

一、5、7 次谐波注入

永磁同步电机的转矩脉动产生原因较为复杂,而通过注入特定的谐波能够有效降低这种脉动。其中,5、7 次谐波注入是一种被广泛研究和应用的方法。

假设我们在 Matlab 环境下构建电机控制系统,以空间矢量脉宽调制(SVPWM)为例,在调制波生成部分添加谐波注入代码。

% 假设已经计算出基本的调制波 Ualpha0 和 Ubeta0
% 5 次谐波注入
harmonic5_amplitude = 0.1; % 5 次谐波幅值,可根据实际调整
theta = 0:0.01:2*pi;
Ualpha5 = harmonic5_amplitude * sin(5 * theta);
Ubeta5 = harmonic5_amplitude * cos(5 * theta);

% 7 次谐波注入
harmonic7_amplitude = 0.1; % 7 次谐波幅值,可根据实际调整
Ualpha7 = harmonic7_amplitude * sin(7 * theta);
Ubeta7 = harmonic7_amplitude * cos(7 * theta);

% 加入谐波后的调制波
Ualpha = Ualpha0 + Ualpha5 + Ualpha7;
Ubeta = Ubeta0 + Ubeta5 + Ubeta7;

这段代码通过在原有的调制波 Ualpha0Ubeta0 上叠加 5 次和 7 次谐波,改变了输出电压的波形。5 次谐波和 7 次谐波的幅值 harmonic5amplitudeharmonic7amplitude 可以根据实际电机参数和运行情况进行调整。这样做的原理是,通过注入的谐波与电机内部产生的谐波相互作用,抵消部分导致转矩脉动的谐波成分,从而降低转矩脉动。

二、死区补偿

在功率逆变器中,为了防止上下桥臂直通短路,会设置死区时间。然而,死区时间的存在会导致实际输出电压与理想电压存在偏差,进而产生转矩脉动。死区补偿就是针对这个问题的有效解决办法。

永磁同步电机PMSM电机5 7次谐波注入,可以有效降低转矩脉动。 死区补偿后,有效降低转矩脉动。 电压补偿。 有ppt说明,文章和相应simulink模型。 描述真实,已更新,现在有两套模型。

以数字信号处理器(DSP)控制为例,假设我们已经获取了电流采样值 iaibic 以及逆变器开关状态 SaSbSc

// 死区时间补偿
float deadtime = 1e-6; // 死区时间
float T_s = 1e-5; // 采样周期
float k = deadtime / T_s;

if (S_a == 1 && i_a > 0) {
    // 补偿上桥臂开通死区
    U_a += k * V_dc; 
} else if (S_a == 0 && i_a < 0) {
    // 补偿下桥臂开通死区
    U_a -= k * V_dc; 
}

// 同理对 b 相和 c 相进行补偿
if (S_b == 1 && i_b > 0) {
    U_b += k * V_dc; 
} else if (S_b == 0 && i_b < 0) {
    U_b -= k * V_dc; 
}

if (S_c == 1 && i_c > 0) {
    U_c += k * V_dc; 
} else if (S_c == 0 && i_c < 0) {
    U_c -= k * V_dc; 
}

这段代码根据电流方向和逆变器开关状态,对三相电压进行死区补偿。通过在采样周期内,根据死区时间占比 k,对电压进行相应的补偿,能够有效减小因死区时间导致的电压偏差,进而降低转矩脉动。

三、电压补偿

电机在运行过程中,由于定子电阻、电感等因素的影响,会导致实际输出电压与理论值存在偏差,这也会影响转矩的平稳性。电压补偿就是为了纠正这种偏差。

假设我们已知电机的定子电阻 Rs 和电感 Ls,以及采样得到的电流 i 和转速 omega

# 电压补偿
R_s = 0.5;
L_s = 0.001;
omega = 100; # 转速
i = 5; # 电流

% 计算补偿电压
U_compensation = R_s * i + L_s * omega * i;

% 在原有电压指令上加上补偿电压
U_command = U_command_original + U_compensation;

这段 Python 代码根据电机的参数和运行状态,计算出需要补偿的电压值 Ucompensation,并将其叠加到原有的电压指令 Ucommand_original 上,以此来修正因电机内部参数导致的电压偏差,使电机能够按照理想的电压运行,降低转矩脉动。

四、资源分享

目前已经有详细的 PPT 说明这些优化方法的原理、实现步骤以及效果对比。同时,还更新了两套 Simulink 模型,模型中对上述提到的 5、7 次谐波注入、死区补偿和电压补偿都有完整的实现。无论是对 PMSM 电机控制感兴趣的新手,还是想要深入研究转矩脉动优化的同行,相信这些资料都能提供一定的帮助。大家可以根据实际需求进一步研究和调整这些模型,以适应不同的电机参数和应用场景。

希望通过今天的分享,能让更多朋友了解永磁同步电机转矩脉动优化的这些实用方法,也欢迎大家一起交流探讨,共同进步。

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐