2、理论基础:同步旋转坐标系下的电机模型与PI控制原理
做电流环整定,绕不开一个核心问题——电机模型。
很多人一上来就调PI参数,调了半天电流还是抖,或者响应慢得像蜗牛。为什么?说白了,你连被控对象长什么样都没搞清楚,怎么可能调得好?
我个人习惯,拿到一个新项目,先花半天把数学模型捋一遍。磨刀不误砍柴工,真的。
2.1 为什么非要用同步旋转坐标系?
三相电机的物理量,比如电流、电压,在静止坐标系下都是正弦波。你想想看,PI控制器对付直流信号是拿手好戏,但让它去跟踪一个正弦波,那就尴尬了——稳态误差永远消不掉。
所以,我们需要一个坐标变换,把正弦波变成直流量。
这就是Clark变换和Park变换干的事。
- Clark变换:把三相静止坐标系(abc)变到两相静止坐标系(αβ)。
- Park变换:把两相静止坐标系(αβ)变到两相旋转坐标系(dq)。
经过这两步,交流量变成了直流量。PI控制器终于可以大显身手了。
核心思想:同步旋转坐标系下,基波分量变成直流,PI控制可以实现无静差跟踪。
2.2 dq坐标系下的电机数学模型
嗯,这里要上点公式了。别怕,我会用大白话讲清楚。
在dq坐标系下,永磁同步电机(PMSM)的电压方程长这样:
ud = Rs * id + Ld * (did/dt) - ωe * Lq * iq
uq = Rs * iq + Lq * (diq/dt) + ωe * (Ld * id + ψf)
解释一下每个符号的意思:
- ud, uq:d轴和q轴电压(我们要控制的量)
- id, iq:d轴和q轴电流(我们要控制的量)
- Rs:定子电阻
- Ld, Lq:d轴和q轴电感
- ωe:电角速度
- ψf:永磁体磁链
你仔细看,方程里有两项特别扎眼:-ωe * Lq * iq 和 +ωe * (Ld * id + ψf)。
这两项就是反电动势耦合项。它们把d轴和q轴串在了一起。我在项目中遇到过,如果不处理这个耦合,高速时电流环会乱成一锅粥。
避坑指南:我曾经在一个高速主轴项目里,没做解耦补偿,结果q轴电流一上去,d轴电流也跟着跑偏,id死活控不到零。后来加了前馈解耦,问题才解决。
2.3 电流环的PI控制原理
电流环的控制目标很简单:让实际的id、iq快速准确地跟踪给定值。
标准的PI控制器表达式:
u = Kp * (e) + Ki * ∫(e) dt
其中 e = i_ref - i_fbk,是电流误差。
但直接这么用,效果一般。为什么?因为电机模型里有一阶惯性环节(电阻和电感形成的RL回路)。
我个人习惯,把电流环简化成一阶RL模型:
G(s) = 1 / (Ls + R)
然后根据这个模型来设计PI参数。常用的方法是极点配置法:
- 把PI控制器的零点,抵消掉被控对象的极点
- 让闭环系统的带宽达到我们期望的值
具体公式:
Kp = L * ωc
Ki = R * ωc
其中 ωc 是期望的电流环带宽(单位:rad/s)。
经验之谈:带宽ωc一般取速度环带宽的5~10倍。我通常先设ωc = 1000 rad/s(约160Hz),然后根据实际响应微调。
2.4 解耦与前馈补偿
前面提到,dq轴之间有耦合项。如果不处理,d轴和q轴的PI控制器会互相打架。
解决办法是前馈解耦:
ud_ref = ud_PI - ωe * Lq * iq
uq_ref = uq_PI + ωe * (Ld * id + ψf)
你看,就是把耦合项算出来,加到PI输出上。这样d轴和q轴就变成了两个独立的系统,各调各的,互不干扰。
我建议,只要转速超过额定转速的10%,就必须加上解耦。否则电流环性能会明显下降。
2.5 本章知识体系总览
下面这张图,把本章的核心逻辑串起来了。建议你保存下来,以后调参时对照着看。
2.6 参数整定的前置准备
在动手调PI之前,有几件事必须做:
- 测量电机参数:Rs、Ld、Lq、ψf。这些是计算Kp、Ki的基础。我建议用LCR表测电感,用直流伏安法测电阻。
- 确定电流环带宽:根据系统要求来。伺服系统一般取500~2000 rad/s,低速大扭矩场景可以取低一些。
- 检查采样和PWM频率:电流环带宽不能超过采样频率的1/10,否则数字控制延迟会导致系统不稳定。
一句话总结:同步旋转坐标系下的电机模型,把交流控制问题变成了直流控制问题。PI参数可以根据RL模型和期望带宽直接计算,再配合前馈解耦,就能获得优秀的电流环性能。