第1章 电机控制基础回顾:直流与交流电机原理、FOC基本概念、Clark与Park变换
各位同学,欢迎来到《三环控制SVPWM与速度环联动》的第一章。
说实话,做电机控制这些年,我见过太多人一上来就啃SVPWM、调PID,结果连电机为什么转都说不清楚。这就像盖楼不打地基——早晚要塌。所以咱们第一章,先把底子夯实。
我会从最基础的直流电机讲起,一路聊到交流电机的FOC控制,最后把Clark和Park变换的数学推导掰开揉碎了给你看。别怕数学,我会用我踩过的坑帮你理解。
1.1 直流电机:最朴素的调速逻辑
直流电机为什么好控制?说白了,它的转矩和转速是解耦的。
你看这个公式:T = Kt × Ia,转矩只跟电枢电流有关。转速呢?n = (U - Ia×Ra) / Ke,主要看电压。这就是为什么早期调速都用直流电机——你调电压就控转速,调电流就控转矩,互不干扰。
但直流电机有个硬伤:电刷和换向器。我当年在实验室调一个直流伺服电机,刷握弹簧松了,火花打得跟电焊似的。从那以后,我对无刷方案就特别上心。
直流电机核心特点:
- 转矩与电流成正比(线性好)
- 转速与电压成正比(调速简单)
- 有刷结构:维护成本高,有火花,寿命短
- 无刷直流(BLDC):用电子换向替代机械电刷
1.2 交流电机:为什么需要FOC?
交流电机没有电刷,结构简单、皮实耐用。但问题来了——它的转矩和电流不是简单的线性关系。
异步电机里,转子电流是感应出来的,你没法直接控制。同步电机虽然转子有永磁体,但定子磁场和转子磁场之间有个夹角,这个夹角直接决定了输出转矩。你想想看,如果夹角变了,转矩就变了,可你根本不知道夹角是多少。
这就是交流电机调速的痛点:非线性、强耦合。
FOC(磁场定向控制)就是来解决这个问题的。它的核心思路是:把交流电机假装成直流电机来控制。
我的理解: FOC不是魔法,它是一套坐标变换的数学工具。通过变换,把三相交流的耦合量,拆成两个独立的直流分量——一个控磁通,一个控转矩。跟直流电机的电枢和励磁分开控制是一个道理。
1.3 Clark变换:从三相到两相
Clark变换是第一步。它把三相静止坐标系(a, b, c)上的电流,映射到两相静止坐标系(α, β)上。
为什么这么做?因为三相系统有冗余——三个量其实只有两个自由度(ia + ib + ic = 0)。两相坐标系更简洁,方便后续处理。
数学推导:
假设三相电流为 ia, ib, ic,且满足 ia + ib + ic = 0。Clark变换公式为:
iα = ia
iβ = (ia + 2×ib) / √3
或者用矩阵形式(等幅值变换):
[ iα ] [ 1 -1/2 -1/2 ] [ ia ]
[ iβ ] = [ 0 √3/2 -√3/2 ] [ ib ]
[ ic ]
我刚开始学的时候,老记不住系数。后来我习惯这么记:α轴跟a轴重合,β轴垂直于α轴。这样投影关系就清楚了。
注意: Clark变换有两种常用形式——等幅值变换和等功率变换。系数差一个√(2/3)因子。我在项目中吃过亏:用等幅值变换算的PI参数,换到等功率变换下直接震荡。所以一定要确认你的库用的是哪种。
1.4 Park变换:从静止到旋转
Clark变换之后,我们有了αβ坐标系下的两相正弦量。但正弦量还是时变的,不好控。
Park变换就是干这个的:把静止的αβ坐标系,旋转到与转子磁场同步的dq坐标系。这样一来,正弦量就变成了直流量。
数学推导:
设转子位置角为 θ(电角度),Park变换公式为:
id = iα × cosθ + iβ × sinθ
iq = -iα × sinθ + iβ × cosθ
矩阵形式:
[ id ] [ cosθ sinθ ] [ iα ]
[ iq ] = [ -sinθ cosθ ] [ iβ ]
到这里,id 和 iq 就是直流量了。id 对应励磁分量(产生磁通),iq 对应转矩分量(产生转矩)。
我记得第一次在示波器上看到 id、iq 变成平直的直线时,那种感觉真的很爽——你终于把交流电机看透了。
1.5 FOC整体框架:一张图说清楚
下面这张SVG图,把FOC的完整信号流画出来了。你跟着箭头走一遍,就能理解整个控制链路。
1.6 三种变换的对比总结
我把三种变换放在一张表里,方便你对照记忆:
| 变换名称 | 坐标系 | 输入 | 输出 | 关键参数 |
|---|---|---|---|---|
| Clark变换 | 三相静止 → 两相静止 | ia, ib, ic | iα, iβ | 无(固定系数) |
| Park变换 | 两相静止 → 两相旋转 | iα, iβ | id, iq | 转子位置角 θ |
| 反Park变换 | 两相旋转 → 两相静止 | Vd, Vq | Vα, Vβ | 转子位置角 θ |
一个小技巧: 我习惯把Park变换看作“旋转的投影仪”。你站在转子上看,id和iq就是两个固定方向的直流分量。角度θ就是投影仪的旋转角度——只要θ跟得准,投影就清晰。
1.7 避坑指南:我踩过的三个坑
最后,分享几个实战中容易翻车的地方:
- 角度对齐问题: 我曾经在换电机型号后,忘了重新校准编码器零位。结果Park变换出来的id、iq全是错的,电机嗡嗡响就是不转。折腾了两天才发现是角度偏了30度。所以,每次换电机或编码器,务必重新做角度对齐。
- 变换系数混淆: 等幅值和等功率变换的系数不同。如果你从别人的代码里抄了Clark变换,但PI参数是按另一种系数调的,系统必炸。我建议你统一用等幅值变换,因为调试时更直观——电流幅值直接对应物理值。
- 浮点精度: 早期我在DSP上做Park变换,直接用float算sin/cos。结果角度一高,误差累积,电流波形开始抖。后来换成查表+插值,问题解决。如果你用MCU,注意三角函数计算的精度和速度。
好了,第一章就到这里。这些基础概念和数学工具,是后续所有章节的基石。你如果能把Clark和Park变换的推导自己手推一遍,后面的SVPWM和速度环联动,学起来会轻松很多。