4、电流环建模(二):电流采样与滤波,数字控制延迟分析,电流环连续域模型建立
好,咱们接着聊电流环建模。上一章我们把电机本体和逆变器给摸透了,这一章重点解决一个实际问题——你想想看,控制器里的电流信号是怎么来的?
说白了,不是直接拿个万用表去量。你得采样、滤波、还得等CPU算完再输出。这一套流程走下来,信号早就不是原来的样子了。我当年刚入行时,就吃过这个亏——仿真跑得飞起,一上电机就抖成筛子。后来才发现,是采样延迟和滤波相位滞后搞的鬼。
4.1 电流采样:你看到的不是真实的
电流采样,最常用的是霍尔电流传感器或者采样电阻。传感器输出模拟电压,经过ADC转换成数字量。这里有个关键点:采样时刻。
我个人习惯把采样时刻放在PWM载波的波峰或波谷。为什么?因为这时候开关噪声最小,电流纹波也刚好在平均值附近。你如果在开关动作瞬间采样,那噪声能把你淹死。
采样定理回顾:
采样频率至少是信号最高频率的2倍。但实际工程中,我建议留3~5倍余量。电流环带宽通常设计在1/10~1/5的开关频率,所以采样频率等于开关频率时,基本够用。
采样值进ADC之前,必须经过抗混叠滤波器。这个滤波器通常是一阶RC低通,截止频率选在采样频率的1/2以下。但注意——滤波器会引入相位滞后,后面我们会详细算这笔账。
4.2 数字控制延迟:躲不开的“死时间”
数字控制器不是瞬间完成的。从采样到输出,中间有三大块延迟:
- ADC转换延迟——一般几微秒到十几微秒,取决于ADC精度和转换速度
- 计算延迟——CPU跑完电流环算法的时间,通常几微秒到几十微秒
- PWM更新延迟——新占空比要等到下一个PWM周期才能生效
这三块加起来,就是所谓的“数字控制延迟”。我做过一个项目,用的DSP主频150MHz,电流环计算耗时约8μs,加上ADC转换5μs,PWM更新延迟半个周期(假设开关频率10kHz,就是50μs),总延迟大约63μs。
我的经验:延迟每增加10μs,电流环带宽大约下降5%~10%。所以想提高带宽,就得拼命压缩延迟。我见过有人用FPGA做电流环,延迟能压到1μs以内,带宽直接翻倍。
延迟在频域里怎么表示?很简单——一个纯滞后环节 e-sTd。其中Td就是总延迟时间。这个环节的相频特性是线性的,频率越高,相位滞后越大。当滞后达到180°时,系统就振荡了。
4.3 电流环连续域模型:把离散的“假装”成连续的
好,现在我们把所有环节串起来。电流环的连续域模型长这样:
电流环开环传递函数:
G_open(s) = K_pwm * (1 / (R + sL)) * e^(-sT_d) * (1 / (1 + sT_f))
其中:
- K_pwm:逆变器增益(通常是Vdc/2,或者Vdc,取决于调制方式)
- 1/(R+sL):电机电枢传递函数(R是电阻,L是电感)
- e-sTd:数字控制延迟
- 1/(1+sTf):采样滤波器的低通特性(Tf=RfCf)
你可能会问:数字控制器明明是离散的,为什么用连续域模型?
嗯,这里有个工程上的“潜规则”——当采样频率远高于系统带宽时(通常10倍以上),离散系统可以用连续域近似。这样做的好处是,我们可以直接用经典控制理论(波特图、根轨迹)来设计PI参数,方便得很。
注意:如果采样频率只比带宽高3~5倍,连续域近似误差就大了。这时候必须用离散域模型(z变换)。我建议初学者先掌握连续域方法,等熟练了再搞离散域。
4.4 知识体系:一张图说清楚
下面这张SVG图,把电流环建模的核心逻辑串起来了。从物理量到数学模型,每一步都有对应的延迟和滤波环节。
4.5 实战经验:滤波器参数怎么选?
我直接给个经验值吧。对于10kHz开关频率的驱动器:
| 参数 | 推荐值 | 说明 |
|---|---|---|
| 采样频率 | 10 kHz | 等于开关频率 |
| 抗混叠滤波截止频率 | 3~5 kHz | 一阶RC,R=1kΩ,C=47nF |
| 总延迟Td | 50~80 μs | 取决于DSP/FPGA性能 |
| 电流环带宽目标 | 1~2 kHz | 约为开关频率的1/10~1/5 |
一个小技巧:如果你发现电流环带宽上不去,先别急着调PI参数。用示波器测一下从PWM更新到电流响应的延迟,往往能发现问题。我曾经在一个项目里发现,因为ADC触发配置错误,采样延迟比设计值大了3倍,改过来之后带宽直接提升40%。
好了,这一章的内容就到这儿。电流采样、滤波、延迟、连续域模型——这四个概念串起来,就是电流环建模的骨架。下一章我们会在这个模型基础上,设计PI控制器,并做频域分析。
公众号:蓝海资料掘金营,微信deep3321