4. 伺服电机数学模型:永磁同步电机(PMSM)的数学模型、坐标变换、电压方程与磁链方程、转矩方程与运动方程
各位同学,咱们今天聊点硬核的——永磁同步电机的数学模型。
说实话,我刚入行那会儿,看到这些方程就头疼。心想:我写代码的,懂这些干嘛?后来被现实狠狠教育了一回。有一次调试一个高速主轴,电机在3000转以上就开始抖,怎么调参数都没用。折腾了三天,最后发现是坐标变换里的角度补偿没做对。
从那以后,我老实了。数学模型这东西,你绕不过去。它是整个伺服驱动算法的地基。地基不稳,上面盖的房子再漂亮也得塌。
4.1 永磁同步电机(PMSM)的物理模型
先说说PMSM长什么样。你拆开一台伺服电机,能看到定子上有三相绕组,转子上嵌着永磁体。通电后,定子产生旋转磁场,拽着转子跑。
但问题来了——三相绕组在空间上差120度,电流也是三相正弦波。直接在三相坐标系下分析,方程又臭又长,耦合得一塌糊涂。我当年手算过,差点把头发薅光。
所以,聪明的前辈们想了个办法:坐标变换。把三相系统变成两相系统,把交流量变成直流量。这就是Clark变换和Park变换的由来。
核心思想:通过坐标变换,把时变的、耦合的三相系统,变成时不变的、解耦的两相系统。这样就能像控制直流电机一样控制交流电机。
4.2 坐标变换:Clark变换与Park变换
坐标变换是整个矢量控制的灵魂。我建议你把它刻在脑子里。
4.2.1 Clark变换(3s/2s)
Clark变换把三相静止坐标系(A、B、C)变成两相静止坐标系(α、β)。说白了,就是把三个轴变成两个轴,但轴还是静止的。
数学表达式如下:
// Clark变换(等幅值变换)
Iα = Ia
Iβ = (Ia + 2*Ib) / √3
// 或者写成矩阵形式
[ Iα ] [ 1 -1/2 -1/2 ] [ Ia ]
[ Iβ ] = [ 0 √3/2 -√3/2 ] [ Ib ]
[ Ic ]
嗯,这里要注意:Clark变换有两种常用形式——等幅值变换和等功率变换。我个人习惯用等幅值变换,因为算出来的电流幅值跟实际一致,调试时直观。但如果你做功率计算,记得用等功率变换,否则功率会差1.5倍。
实战技巧:我在项目中遇到过,Clark变换后α轴和β轴的电流幅值不一致。查了半天,发现是ADC采样时序有问题,三相电流不是同时采的。记住:Clark变换要求三相电流是同一时刻的值。
4.2.2 Park变换(2s/2r)
Park变换把两相静止坐标系(α、β)变成两相旋转坐标系(d、q)。这个旋转坐标系跟着转子转,转速就是电机的电角速度。
公式长这样:
// Park变换
Id = Iα * cos(θ) + Iβ * sin(θ)
Iq = -Iα * sin(θ) + Iβ * cos(θ)
// 其中θ是转子电角度
你想想看,经过Park变换后,Id和Iq变成了直流量。Id控制励磁,Iq控制转矩。这不就跟直流电机一样了吗?
避坑指南:我曾经因为角度传感器零点没校准,导致Park变换后的Id、Iq全是错的。电机一启动就飞车。后来我养成了习惯:每次上电先做角度自校准,确认零点偏移量。
4.3 电压方程与磁链方程
有了坐标变换这个工具,咱们就可以在dq坐标系下写出PMSM的数学模型了。
4.3.1 dq坐标系下的电压方程
Vd = Rs * Id + Ld * dId/dt - ωe * Lq * Iq
Vq = Rs * Iq + Lq * dIq/dt + ωe * (Ld * Id + ψf)
这里:
- Vd、Vq:d轴和q轴电压
- Id、Iq:d轴和q轴电流
- Rs:定子电阻
- Ld、Lq:d轴和q轴电感
- ωe:电角速度
- ψf:永磁体磁链
注意看,方程里有个耦合项:-ωe * Lq * Iq 和 +ωe * Ld * Id。这就是为什么PMSM控制要做解耦。不解耦的话,调Id会影响Iq,调Iq会影响Id,跟打地鼠似的。
4.3.2 dq坐标系下的磁链方程
ψd = Ld * Id + ψf
ψq = Lq * Iq
磁链方程相对简单。d轴磁链由两部分组成:Id产生的磁链和永磁体磁链。q轴磁链只由Iq产生。
这里有个有意思的点:对于表贴式PMSM(SPMSM),Ld = Lq。对于内置式PMSM(IPMSM),Ld < Lq。这个差异直接影响了控制策略的选择。我做过一个项目,客户要求用IPMSM做弱磁控制,Ld和Lq差了将近3倍,控制难度直接上了一个台阶。
4.4 转矩方程与运动方程
搞伺服控制,最终目的是控制转矩和转速。所以转矩方程和运动方程是核心中的核心。
4.4.1 转矩方程
Te = 1.5 * p * [ ψf * Iq + (Ld - Lq) * Id * Iq ]
这个方程分成两部分:
- 永磁转矩:1.5 * p * ψf * Iq —— 这是主要的转矩来源,由永磁体和q轴电流相互作用产生
- 磁阻转矩:1.5 * p * (Ld - Lq) * Id * Iq —— 这是由d、q轴电感差异产生的,只有IPMSM才有
你想想看,对于SPMSM,Ld = Lq,磁阻转矩为0,转矩只跟Iq成正比。控制起来简单,Id给0就行。
但对于IPMSM,你可以利用磁阻转矩。通过给负的Id,不仅能弱磁提速,还能产生额外的转矩。这就是MTPA(最大转矩电流比)控制的基本原理。
个人经验:我在做一款高速主轴驱动器时,用到了MTPA控制。在额定转速以下,通过优化Id和Iq的分配,转矩输出提升了约15%。代价是算法复杂度增加了不少,而且需要精确知道Ld和Lq的值。这些参数会随电流变化,得做查表或者在线辨识。
4.4.2 运动方程
Te - Tl = J * dωm/dt + B * ωm
这里:
- Te:电磁转矩
- Tl:负载转矩
- J:转动惯量
- ωm:机械角速度
- B:阻尼系数
运动方程描述了电机的机械动态。说白了,就是转矩差决定了加速度。你给多大转矩,电机就加多快的速。
这个方程在自整定中特别重要。我后面会讲到,通过让电机做特定的加减速运动,可以辨识出转动惯量J。有了J,就能算出速度环的PI参数。
注意:运动方程里的阻尼系数B,很多人忽略它。但在低速或者高精度定位场合,B的影响不可忽视。我曾经调试一个精密转台,速度环总是有静差,查了半天发现是没补偿摩擦力矩。后来在运动方程里加了摩擦模型,问题才解决。
4.5 知识体系总览
说了这么多,咱们用一张图把整个知识体系串起来:
这张图把咱们今天讲的内容串起来了。从物理模型出发,经过坐标变换,得到dq坐标系下的电压、磁链、转矩方程,再加上运动方程,就构成了完整的PMSM数学模型。后面的矢量控制、自整定、故障诊断,全都建立在这个基础之上。
4.6 小结
今天的内容信息量不小,我帮你捋一下重点:
- 坐标变换是矢量控制的基础,Clark变换把三相变两相,Park变换把静止变旋转
- 电压方程里有耦合项,控制时需要做解耦
- 磁链方程区分了SPMSM和IPMSM,Ld和Lq的差异决定了控制策略
- 转矩方程包含永磁转矩和磁阻转矩,IPMSM可以利用磁阻转矩提升效率
- 运动方程描述了机械动态,是速度环设计和自整定的理论基础
这些方程看着枯燥,但每一个都对应着实际工程问题。你写代码的时候,每行代码背后都是这些方程在支撑。理解了它们,你才能写出真正靠谱的伺服驱动算法。
学习建议:我建议你亲手推导一遍这些方程。别怕麻烦,拿张纸,从三相电压方程开始,一步步推到dq坐标系下的方程。推完一遍,你对矢量控制的理解会上一个台阶。