共计 1260 个字符,预计需要花费 4 分钟才能阅读完成。
背景与痛点
Buck 电路作为最常见的 DC-DC 降压拓扑,其闭环控制是确保输出电压稳定的关键。在工业应用中,我们经常遇到因 PI 参数设置不当导致的问题:

- 输出电压振荡,纹波增大
- 动态响应迟缓,突加负载时电压跌落严重
- 系统不稳定,甚至出现发散振荡
这些问题轻则影响电源质量,重则损坏后级设备。因此,科学计算和合理设置 PI 参数是每个电源工程师必须掌握的技能。
理论分析:从传递函数到物理意义
-
Buck 电路平均模型
小信号分析下,Buck 电路的占空比到输出电压传递函数为:
$$G_{vd}(s)=\frac{V_{in}}{1+s\frac{L}{R}+s^2LC}$$
这是一个典型的二阶系统,包含 LC 滤波器的谐振特性。 -
电压环闭环结构
加入 PI 控制器后,系统开环传递函数变为:
$$G_{open}(s)=G_{PI}(s)\cdot G_{vd}(s)=K_p\left(1+\frac{1}{T_is}\right)\cdot G_{vd}(s)$$
其中: - $K_p$:比例系数,决定系统响应速度
- $T_i$:积分时间常数,影响稳态精度
工程实用计算方法
方法一:临界比例度法
- 先去掉积分项(纯 P 控制),逐渐增大 $K_p$ 直到系统出现等幅振荡
- 记录此时的临界增益 $K_{cr}$ 和振荡周期 $P_{cr}$
- 按以下规则设置参数:
- $K_p=0.45K_{cr}$
- $T_i=0.83P_{cr}$
方法二:Ziegler-Nichols 阶跃响应法
- 获取系统开环阶跃响应曲线
- 测量延迟时间 $L$ 和时间常数 $T$
- 根据下表设置参数:
| 控制器类型 | $K_p$ | $T_i$ |
|---|---|---|
| PI | $0.9\frac{T}{L}$ | $3.3L$ |
MATLAB/Simulink 仿真验证
% Buck 电路参数
Vin = 24; % 输入电压 [V]
Vref = 12; % 参考电压 [V]
L = 50e-6; % 电感 [H]
C = 100e-6; % 电容 [F]
Rload = 5; % 负载电阻 [Ω]
% 用临界比例度法得到的参数
Kp = 0.15; % 比例系数
Ti = 0.0012; % 积分时间常数 [s]
% 建立仿真模型
model = 'buck_pi_control';
open_system(new_system(model));
% ...(详细模型搭建代码略)
仿真结果对比显示:
– 参数过小:调节时间长达 5ms,动态性能差
– 参数过大:出现明显超调(>15%)
– 优化参数:调节时间 2ms,超调 <5%
实际调试避坑指南
- 抗饱和处理
- 积分项在启动时容易饱和,需加入抗饱和限制
-
实现方法:当输出饱和时暂停积分
-
噪声抑制
- 电压采样噪声可能引起控制器误动作
-
解决方案:
- 硬件增加 RC 滤波
- 软件采用移动平均滤波
-
负载突变应对
- 突加负载时电压跌落难以避免
- 改进措施:
- 前馈控制补偿
- 增加输出电容
总结与进阶思考
通过本文介绍的方法,工程师可以快速确定 PI 参数的初始值。但要注意:
- 不同负载条件下可能需要微调参数
- 对动态性能要求高的场景,建议考虑峰值电流控制等更先进的控制方式
电源控制是一个需要理论结合实践的领域,建议读者:
1. 先用仿真验证参数合理性
2. 实际调试时从小参数开始逐步增大
3. 记录不同工况下的最优参数,建立自己的经验数据库
正文完
