共直流母线型三相OW-PMSM无感-零序反电动势 -----------------仿真内容说明----------------- 1开绕组电机模型根据dq轴数学模型搭建 2位置信息从零序反电动势提取。 3电机首先经过I/f开环强拖至中高速,再切入速度闭环 4双逆变器调制策略基于120度解耦调制策略 5零序电流控制器采用频率自适PR控制器 -----------------仿真效果展示----------------- 图1为仿真图 图2为电机的速度以及速度估算 图3为电机的相电流以及零序电流 图4为电机的电角度以及角度估算 -----------------注意事项----------------- 默认发放2022a版本文件
开绕组永磁同步电机这玩意儿玩起来有点上头,特别是零序反电动势在无感控制里的骚操作。最近用Matlab/Simulink折腾了个共直流母线型拓扑的仿真,核心思路是用零序分量替代传统高频注入,直接从中抠出转子位置。这路子适合中高速场景,实测下来角度估算误差能压在±5度内。
模型搭建别踩坑
电机本体建模得从dq轴方程下手,重点处理绕组开路特性。开绕组结构导致三相电流存在零序通路,这里容易漏掉磁链耦合项。核心代码段长这样:
% 零序电压方程 u0 = R*i0 + L0*der(i0) + e0; e0 = ke*sin(3*theta); % 零序反电动势含3次谐波注意L0参数比dq轴电感小一个数量级,实测取0.5mH效果最佳。绕组并联电容容易引发震荡,建议在Simulation Configuration里把Max step size设为1e-6。
120度解耦调制的骚操作
双逆变器采用非对称PWM,一个单元工作在0-120度,另一个在60-180度。关键点在于错开开关时序:
function [PWM_A, PWM_B] = DecoupleModulation(theta) sector = floor(theta/(pi/3)) + 1; duty_A = 0.5*(1 + m*cos(theta - (sector-1)*pi/3)); duty_B = 0.5*(1 + m*cos(theta - (sector-1)*pi/3 - pi/6)); end这招能把母线电压利用率提到1.15倍,比传统SVPWM省了15%的损耗。实际调试发现载波相位差必须严格保持30度,否则零序电流会出现6倍频纹波。
自适应PR控制器的玄学
零序电流环用比例谐振控制器,难点在于频率跟踪。搞了个变步长的频偏补偿:
Kp = 2; Kr = 50; wc = 2*pi*(3*f_est); % 3倍电频率 G_PR = Kp + Kr*(s*cos(phi) - wc*sin(phi))/(s^2 + wc^2);参数phi初始给pi/4,运行时根据电流相位差动态调整。实测带宽做到±20Hz没问题,但Kr超过100会引发高频振荡,建议配合二阶低通滤波器使用。
切换闭环的暴力美学
I/f启动阶段给0.8Hz/s的斜坡,电流幅值设额定值70%。速度到200rpm时硬切闭环,这里有个骚操作:在切换瞬间把观测器输出的角度偏差限制在±30度范围内,防止角度突变引发失步。速度环PI参数建议从0.5*(J/B)开始试,J是转动惯量,B是阻尼系数。
仿真结果最惊艳的是图4的角度跟踪曲线,转子位置和估算值几乎重合,仅在负载突变时有<10us的延迟。零序电流被压在±0.2A以内,比传统三次谐波注入法安静多了。但要注意母线电压波动会影响零序分量,建议在算法里加入前馈补偿项。
(代码文件已打包,用2022a打开直接点Run。如果报错“Derivative不连续”,把Solver换成ode23tb试试)