news 2026/10/30 2:31:33

从三相到 dq:无刷电机数学模型与 FOC 控制链解析

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
从三相到 dq:无刷电机数学模型与 FOC 控制链解析

目录

  • 一、为什么要建电机模型
  • 二、三相绕组与磁场
    • 三相电机结构
    • 三相电流
    • 为什么要变换坐标系
  • 三、Clarke/Park 变换
    • Clarke 变换(三相 → 两相静止)
    • Park 变换(两相静止 → 两相旋转)
    • 变换的意义
  • 四、dq 坐标系电机方程
    • 电压方程(dq 坐标)
    • dq 方程各项物理意义速查表
    • 方程直觉
  • 五、电磁转矩方程
    • 转矩公式
    • 为什么只靠 iq
    • 转速与转矩关系
  • 六、FOC 的完整控制链
  • 七、模型对调试的价值
  • 八、小结与延伸阅读
    • 核心公式回顾
    • 延伸阅读方向

一、为什么要建电机模型

入门理解"无刷电机靠换向转",但要做 FOC、调电调、诊断电机问题,必须懂电机内部的数学关系——电压怎么变电流、电流怎么生转矩、转矩怎么带转速。

一句话理解:「电机模型是电调/ FOC 的"底层物理"——不懂它,FOC 就只是"别人写好的黑盒代码"」。


二、三相绕组与磁场

三相电机结构
  • 定子三相绕组(U/V/W),空间相隔 120°。
  • 三相电流合成一个旋转磁场,牵引转子磁钢旋转。
三相电流
  • 三相电流相位差 120°:ia + ib + ic = 0(星形接法,无中线)。
  • 合成电流矢量 = 三相的矢量和,方向随时间旋转。
为什么要变换坐标系
  • 三相在"静止坐标系"里是三个交变量,不好控制。
  • 变换到"旋转坐标系"后变成两个直流量——控制就简单了。

三、Clarke/Park 变换

Clarke 变换(三相 → 两相静止)
  • 把 ia/ib/ic 变成 α/β 两轴(静止坐标系)。
  • 数学上就是把 120° 三相投影到 90° 两轴。
iα = ia iβ = (ia + 2·ib) / √3
Park 变换(两相静止 → 两相旋转)
  • 把 α/β 投影到随转子旋转的 d/q 轴。
  • 旋转角 = 转子位置角 θ(由编码器/观测器得到)。
id = iα·cosθ + iβ·sinθ iq = −iα·sinθ + iβ·cosθ
变换的意义
  • iq:与转子磁场垂直的分量 → 真正产生转矩。
  • id:与转子磁场平行的分量 → 只产生磁场,不产生转矩(通常控制为 0)。

四、dq 坐标系电机方程

电压方程(dq 坐标)
vd = Rs·id + L·(did/dt) − ω·L·iq vq = Rs·iq + L·(diq/dt) + ω·L·id + ω·ψf
符号含义
Rs绕组电阻
L电感
ω电角速度
ψf永磁体磁链
dq 方程各项物理意义速查表
项物理含义量纲低速主导度高速主导度调试关注点
Rs·id / Rs·iq绕组电阻上的欧姆压降,纯耗散项V(Ω·A)主导(低速时电流大、反电动势小)次要(相对反电动势占比下降)由绕组温度与相电阻决定;发热、铜损排查先看它
L·(did/dt) / L·(diq/dt)电感上的动态压降,电流变化时才出现V(H·A/s)阶跃/突变时明显稳态时趋近 0决定电流环带宽与响应速度;PI 增益按 L 整定
ω·L·iq / ω·L·idd/q 轴交叉耦合压降,一轴电流在另一轴感应出的电压V(rad/s·H·A)可忽略主导,随转速线性增大高速需前馈解耦补偿,否则 id/iq 互相拖拽、动态变差
ω·ψf永磁体旋转产生的反电动势(仅 q 轴出现)V(rad/s·Wb)很小主导,逼近母线电压决定最高转速与电压余量;高速失步、调制比饱和先查它

速查口诀:低速看 Rs(电阻压降),动态看 L(电感压降),高速看 ω·L(交叉耦合)与 ω·ψf(反电动势)——四类项随转速此消彼长,调 PI 与前馈补偿时按当前工况抓主要矛盾。

方程直觉
  • 电阻压降:Rs·i(欧姆定律)。
  • 电感压降:L·di/dt(电流变化)。
  • 交叉耦合项:ω·L·iq / ω·L·id——转速越高,d/q 轴互相干扰越大。
  • 反电动势项:ω·ψf(永磁体旋转感应的电压)。

直觉:vq 要"对抗电阻+电感+交叉耦合+反电动势"才能让 iq 跟上指令——这就是 FOC 里 q 轴 PI 要做的事。


五、电磁转矩方程

转矩公式
T = (3/2) · p · ψf · iq (表贴式永磁电机) p = 极对数;ψf = 磁链;iq = q 轴电流
为什么只靠 iq
    <
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/30 2:30:54

slub add_full

add_full() 是 SLUB 调试中用于把完全占满的 slab 页加入 per-node 的 full 链表的函数。这个函数只在 CONFIG_SLUB_DEBUG 下存在&#xff0c;因为正常运行时 SLUB 不追踪满 slab。一、函数签名static void add_full(struct kmem_cache *s,struct kmem_cache_node *n, struct s…

作者头像 李华
网站建设 2026/10/30 2:30:31

结构化输出为何“格式正确、答案错误”?JSON Schema 的能力边界

结构化输出为何“格式正确、答案错误”&#xff1f;JSON Schema 的能力边界 JSON 能解析、字段也都符合 Schema&#xff0c;业务结果仍然可能错。结构化输出约束的是可接受的形式&#xff0c;字段是否来自证据则是另一层问题。 一个必填下拉框没有“不知道”选项时&#xff0c…

作者头像 李华
网站建设 2026/10/30 2:29:48

FunASR安装

在 Windows 上配置和运行 FunASR&#xff0c;最省事的路子是走 Docker 一键部署&#xff0c;或者用现成的整合包‌。下面按不同需求给出对应方案。&#x1f433; 方案一&#xff1a;Docker 一键部署&#xff08;推荐&#xff0c;适合离线转写服务&#xff09; 这是目前最省心的…

作者头像 李华
网站建设 2026/10/30 2:26:28

浏览器网页加载流程抓包复现

在进入实验室之前&#xff0c;我们已经浅浅学过计算机网络原理&#xff0c;大概了解了网络如何运行&#xff0c;了解TCP/IP四层模型和OSI七层模型&#xff0c;那么&#xff0c;数据从浏览器到服务器经历了哪些层&#xff1f;HTTP请求和响应长什么样&#xff1f;为什么输入网址后…

作者头像 李华