电机转子位置与换相逻辑

好,咱们正式开始聊换相。很多刚入行的朋友,一上来就盯着SVPWM的扇区判断、死区补偿这些细节,结果调出来的电机要么抖得像筛子,要么一启动就过流。我当年也踩过这个坑——折腾了两周,最后发现是换相逻辑和转子位置压根没对上。

说白了,换相就是告诉驱动器:「现在该给哪两相通电了」。而SVPWM相位对齐,就是让这个「通电时机」和转子实际位置严丝合缝。今天这一章,咱们先把底层的数学模型和换相原理吃透。

三相永磁同步电机的数学模型

先看一个最简单的模型。PMSM的定子有三相绕组,空间上相差120°。转子上面贴着永磁体。你给绕组通电,产生旋转磁场,转子就跟着转。

数学上怎么描述?最常用的是Clark变换和Park变换。把三相静止坐标系(ABC)先变到两相静止坐标系(αβ),再变到两相旋转坐标系(dq)。

核心方程(dq坐标系下):

Vd = Rs * Id + Ld * dId/dt - ωe * Lq * Iq
Vq = Rs * Iq + Lq * dIq/dt + ωe * (Ld * Id + ψf)
Te = 1.5 * p * [ψf * Iq + (Ld - Lq) * Id * Iq]

其中:
Vd/Vq — dq轴电压,Id/Iq — dq轴电流,Ld/Lq — dq轴电感,
ωe — 电气角速度,ψf — 永磁体磁链,p — 极对数,Te — 电磁转矩。

这里有个关键点:所有控制都依赖转子位置θe。没有准确的θe,Park变换就是错的,电流环输出也是错的。我在项目里见过有人用开环强拖,位置估算偏差30°以上,结果电流直接飙到额定值的两倍——嗯,MOS管当场冒烟。

转子电气角度与机械角度

这两个概念容易混淆,我简单说清楚。

  • 机械角度θm:转子实际转过的物理角度,一圈360°。
  • 电气角度θe:磁场旋转的角度,θe = p * θm(p为极对数)。

举个例子:一个4对极的电机,转子转一圈(360°机械),磁场已经转了4圈(1440°电气)。所以编码器读到的机械角度,必须乘以极对数才能用于Park变换。

极对数 p 机械一圈对应电气角度 常见应用
2 720° 小功率伺服
4 1440° 工业主轴
8 2880° 直驱力矩电机

我曾经犯过的错:用增量编码器做位置环,忘记在初始化时记录转子初始位置。结果每次上电,电机都会先猛抽一下——因为控制器以为转子在0°,实际它在180°。后来我强制在初始化阶段做一次「预定位」,才彻底解决。

六步换相法原理

六步换相,也叫方波驱动。它把360°电气周期分成6个扇区,每个扇区只给两相通电,第三相悬空。你想想看,这样逆变器的开关次数最少,控制也最简单。

具体怎么换?看这张图:

六步换相扇区与通电逻辑 扇区1 A+B- 扇区2 A-C+ 扇区3 B+C- 扇区4 B-A+ 扇区5 C+A- 扇区6 C-B+ 换相逻辑说明 每个扇区持续60°电气角度 通电方式:上桥臂+下桥臂,第三相高阻 换相点由霍尔传感器或反电动势过零点触发

每个扇区持续60°电气角度。换相点由霍尔传感器或者反电动势过零点触发。我个人习惯在低速时用霍尔,高速时切到反电动势检测——这样能兼顾启动可靠性和高速响应。

120°与180°导通模式

这两个模式,本质区别在于每相导通的时间占比。

对比项 120°导通模式 180°导通模式
每相导通角度 120°电气角 180°电气角
同时导通相数 2相 3相
转矩脉动 较大(约15%) 较小(约5%)
开关损耗 低 高
控制复杂度 简单 中等
适用场景 低成本风机、泵类 伺服、精密定位

120°模式,说白了就是「两两通电」。每个时刻只有两个MOS管在工作,另一个桥臂完全关断。这样做的好处是开关损耗小,但转矩脉动大——因为磁场不是连续旋转的,而是跳着走的。

180°模式呢?三个桥臂同时导通,但占空比不同。实际上这就是SVPWM的基础——通过调节三个桥臂的占空比,合成任意方向的电压矢量。转矩更平滑,但开关次数翻倍,发热也更大。

我的经验:做电动工具或者风扇,120°模式完全够用,成本低、代码简单。但如果你做的是机器人关节或者数控机床主轴,老老实实上180°模式+SVPWM。别问我怎么知道的——我第一版电动螺丝刀用的120°,客户反馈「噪音像拖拉机」。

换相逻辑与转子位置的关系

最后说一个最容易被忽略的点:换相必须和转子位置同步。

六步换相里,每个扇区的起始角度是固定的。比如扇区1对应0°~60°,扇区2对应60°~120°,以此类推。但问题是——你怎么知道转子当前在哪个扇区?

有三种常见方法:

  1. 霍尔传感器:三个霍尔元件,输出6种状态,直接对应6个扇区。简单可靠,但分辨率低(只有60°)。
  2. 反电动势检测:无传感器方案,通过检测悬空相的反电动势过零点推算位置。低速时信号弱,容易误判。
  3. 编码器+初始位置辨识:用编码器读绝对位置,但上电时不知道转子在哪,需要先发一个短脉冲让转子转到已知位置——这就是「预定位」。

注意:如果你用霍尔传感器,一定要做「霍尔边沿对齐」。我遇到过一批电机,霍尔安装偏差了10°机械角,结果换相点全偏了,电机效率直接掉了8%。后来我在产线上加了一道工序:用示波器抓霍尔边沿和反电动势过零点的相位差,然后软件补偿。