第1章:速度环设计——从电流环到速度环的跃迁
大家好,我是你们的老朋友。今天咱们聊聊速度环。
说实话,速度环是FOC控制里最「有手感」的一环。电流环太底层,位置环太抽象,唯独速度环——你调好了,电机转起来那个顺滑感,啧啧,会上瘾的。
1.1 速度环与电流环的级联关系
先搞清楚一件事:速度环不是独立存在的。它骑在电流环上面。
什么意思?
电流环是内环,速度环是外环。速度环算出来的输出,直接作为电流环的输入——也就是Iq的给定值。你想想看,速度环说「我要加速」,电流环就负责「好,我给你加电流」。
这个级联结构,我画过无数次框图了。简单说就是:
- 速度环输入:目标转速 - 实际转速 = 速度误差
- 速度环输出:Iq_ref(电流环的q轴电流目标值)
- 电流环任务:快速跟踪Iq_ref,让实际电流等于目标电流
我在项目里见过有人把速度环带宽设得比电流环还高,结果电机抖得像筛糠。为什么?因为内环跟不上外环的指令,系统就振荡了。
核心原则:速度环的带宽,必须低于电流环带宽的1/5到1/10。这是铁律。
举个例子。电流环带宽能做到1000Hz,那速度环带宽顶多设到200Hz。再高?等着抖吧。
1.2 速度环PI参数整定
好,级联关系搞清楚了。接下来就是重头戏——怎么调PI参数。
速度环的PI,说白了就是两个数:Kp(比例增益)和Ki(积分增益)。但这两个数怎么来?
1.2.1 理论计算法
如果你手头有电机参数,可以用公式算:
Kp = β * J / Kt
Ki = β * Kp / τ
其中:
- β:速度环期望带宽(rad/s)
- J:转动惯量(kg·m²)
- Kt:转矩常数(N·m/A)
- τ:机械时间常数
这个公式我用了好多年。但说实话,实际项目中很少直接用。为什么?因为J和Kt往往不准,尤其是带负载的时候。
我的习惯:先用公式算个大概值,然后现场微调。公式给的是「起点」,不是「终点」。
1.2.2 工程整定法
这才是实战派的方法。我一般这么干:
- Ki先给0,只调Kp。从小到大加,直到电机出现轻微振荡。
- Kp回调20%,留点余量。这时候电机响应应该挺快了,但可能有静差。
- 加Ki,从小往大加。观察稳态误差是否消除。
- Ki加到刚好消除静差,再大就会超调了。
我曾经调一个伺服项目,Kp加到3000多才出现振荡,当时吓一跳——后来发现是负载惯量太大。嗯,这种情况要特别注意。
警告:调Ki的时候,千万别一次加太多。我曾经手抖多加了0.5,电机直接飞车,差点把夹具打飞。安全第一,增量要小。
1.2.3 参数整定的经验值
不同应用场景,PI参数的风格完全不同:
| 应用场景 | Kp特点 | Ki特点 | 典型带宽 |
|---|---|---|---|
| 工业伺服(高刚性) | 较大 | 适中 | 100-200 Hz |
| 机器人关节(柔顺控制) | 较小 | 较小 | 20-50 Hz |
| 风机/泵类(恒速) | 中等 | 较大 | 10-30 Hz |
| 无人机电机(快速响应) | 很大 | 很小 | 200-400 Hz |
你看,没有万能参数。每个场景都有自己的脾气。
1.3 速度前馈补偿
光靠PI,有时候不够快。尤其是当目标速度频繁变化时,PI会有滞后。这时候就需要前馈了。
前馈是什么?说白了就是「预判」。在误差还没产生之前,先给一个补偿量。
1.3.1 前馈的原理
速度前馈的公式很简单:
Iq_ff = J * α / Kt
其中α是目标加速度。你想想看,如果我知道电机接下来要加速到多少,我提前把需要的电流给进去,是不是比等误差出来了再调要快?
我在做高速贴片机项目时,用了前馈后,速度响应时间从15ms降到了5ms。效果立竿见影。
1.3.2 前馈的三种形式
- 速度前馈:根据目标速度变化率(加速度)补偿。最常用。
- 加速度前馈:根据目标加速度的导数(加加速度)补偿。更精细,但容易引入噪声。
- 摩擦前馈:根据速度方向补偿静摩擦和库仑摩擦。低速时特别有用。
我的建议:新手先从速度前馈开始。加加速度前馈太敏感,搞不好会引入振荡。摩擦前馈嘛,等你有静差问题了再加。
1.3.3 前馈的注意事项
前馈不是万能的。有几点要记住:
- 前馈不能完全替代反馈。它只是辅助,PI还是要调的。
- 前馈系数要标定。J和Kt不准,前馈反而帮倒忙。
- 前馈量要限幅。别让前馈把电流指令推到超过电机额定值。
我曾经犯过一个错:前馈系数设大了,结果电机启动时电流直接爆表,驱动器报警。从那以后,我每次加前馈都会先限幅到额定电流的80%。
1.4 速度环调试的常见坑
最后,分享几个我踩过的坑:
- 坑一:速度反馈噪声大。编码器分辨率不够或者采样频率低,速度信号全是毛刺。这时候先滤波,再调PI。不然你调的其实是噪声。
- 坑二:积分饱和。速度环输出限幅后,积分项还在累积。等误差反转时,要花很长时间才能退饱和。解决办法:加积分限幅或者条件积分。
- 坑三:负载变化。空载调好的参数,一加负载就抖。这时候可以考虑自适应控制或者增益调度。
嗯,今天就先聊到这儿。速度环这东西,说难不难,说简单也不简单。关键是多动手、多试错。下一章咱们聊位置环,那个更有意思。
记住:调参没有捷径,但有方法。按我说的步骤来,至少能少走一半弯路。
课后小作业:找个电机,先把电流环调好(带宽1000Hz左右),然后按1.2.2节的步骤调速度环。试试看,不加前馈和加前馈,响应速度差多少?