3、转向执行器建模:永磁同步电机(PMSM)数学模型、电机扭矩控制、电流环与速度环设计
转向系统的执行器,说白了就是电机。在咱们这个领域,永磁同步电机(PMSM)是绝对的主流。为什么?因为它功率密度高、响应快、扭矩波动小。你想想看,方向盘上那点细微的路感,如果电机扭矩控制不好,全白搭。
我个人习惯,在开始写代码之前,先把电机的数学模型在脑子里过一遍。这不是学院派作风,而是我在项目里吃过亏——有次直接调电流环,结果高频震荡,查了半天才发现是模型里的反电动势项没补偿干净。
3.1 PMSM 的数学模型
咱们先看最核心的东西。PMSM 在 d-q 旋转坐标系下的电压方程是这样的:
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:永磁体磁链
嗯,这里要注意:Ld 和 Lq 不相等,这是凸极电机的特点。对于表贴式 PMSM,Ld ≈ Lq,方程会简化一些。但转向电机大多是内置式的,所以咱们按凸极来处理。
电磁转矩方程更关键:
Te = 1.5 * p * [ψf * Iq + (Ld - Lq) * Id * Iq]
看到没?第一项是永磁转矩,第二项是磁阻转矩。我在做路感模拟时,就靠精确控制 Iq 来生成期望的电机扭矩。至于 Id,通常控制为 0,除非你要用弱磁扩速。
3.2 电机扭矩控制策略
转向系统的扭矩控制,我把它分成两层:上层是扭矩分配,下层是电流控制。上层根据方向盘转角、车速、路感模型算出目标扭矩 T_ref,然后交给下层去执行。
具体怎么做?
- 目标扭矩 → 目标电流:根据 Te = 1.5 * p * ψf * Iq,算出 Iq_ref = T_ref / (1.5 * p * ψf)。Id_ref 设为 0。
- 电流限幅:根据电机和逆变器的最大电流,对 Iq_ref 和 Id_ref 做限幅。我一般留 10% 的余量,防止过流。
- 电流闭环控制:用 PI 控制器让实际电流跟踪目标电流。
3.3 电流环设计
电流环是底层控制,要求带宽高、响应快。转向系统的电流环带宽,我一般设计在 500 Hz ~ 1 kHz。太低了,路感会滞后;太高了,容易引入噪声。
电流环的传递函数可以简化为:
G(s) = 1 / (Ls + Rs)
其中 L 是电感,R 是电阻。用 PI 控制器补偿:
C(s) = Kp + Ki/s
参数整定我推荐 零极点对消法:
- 令 Ki/Kp = Rs/Ls,对消掉电气时间常数
- Kp = Ls * ωc,其中 ωc 是期望的闭环带宽
举个例子:L = 0.5 mH,R = 0.1 Ω,期望带宽 800 Hz(约 5000 rad/s)。
- Kp = 0.0005 * 5000 = 2.5
- Ki = Kp * R/L = 2.5 * 0.1 / 0.0005 = 500
嗯,这只是理论值。实际调试时,我会在台架上扫频,看电流环的波特图,然后微调。我记得有个项目,电机电感随电流变化很大,理论值根本不能用,最后是靠 增益调度 解决的。
3.4 速度环设计
速度环在电流环外面。转向系统里,速度环主要用于主动回正、阻尼控制、末端限位。带宽比电流环低一个数量级,一般在 10 Hz ~ 50 Hz。
速度环的传递函数:
Gv(s) = 1 / (Js + B)
J 是转动惯量,B 是阻尼系数。PI 控制器参数:
- Kp_v = J * ωc_v
- Ki_v = Kp_v * B/J
这里有个坑:转向系统的惯量是变化的。方向盘在中间位置时,惯量小;打到极限位置时,惯量大。我曾经用固定参数,结果低速回正时 overshoot 很大,高速时又回正不足。
后来我用了 自适应速度环:根据方向盘位置和车速,在线调整 Kp 和 Ki。效果立竿见影。
3.5 电流环与速度环的协同
两个环串在一起,顺序不能错:速度环在外,电流环在内。速度环的输出作为电流环的输入(即 Iq_ref)。
我画了一张结构图,帮你理清关系:
从图里你能看到:
- 速度环:比较目标速度和实际速度,输出 Iq_ref
- 电流环(q 轴):跟踪 Iq_ref,输出 Vq
- 电流环(d 轴):跟踪 Id_ref = 0,输出 Vd
- PMSM:接收 Vd、Vq,输出实际速度和电流
两个环的采样频率不同。我一般速度环 1 kHz,电流环 10 kHz。这样既能保证速度环的稳定性,又能让电流环有足够的带宽去抑制谐波。
3.6 参数对比与选型建议
最后,我把电流环和速度环的关键参数整理成一张表,方便你对照:
| 参数 | 电流环 | 速度环 |
|---|---|---|
| 带宽 | 500 Hz ~ 1 kHz | 10 Hz ~ 50 Hz |
| 采样频率 | 10 kHz ~ 20 kHz | 1 kHz ~ 2 kHz |
| 控制器 | PI(零极点对消) | PI(自适应增益) |
| 主要扰动 | 反电动势、死区效应 | 惯量变化、摩擦 |
| 调试重点 | 相位裕度 > 60° | 无超调、稳态误差 < 1% |
嗯,这张表是我多年经验的浓缩。你照着这个框架去设计,基本不会出大问题。当然,具体参数还得根据你的电机和系统来微调。