
电流环负责快速响应负载电流变化,电压环负责维持输出电压稳定;储能系统中,输入电压低于输出电压时选Boost(升压),高于时选Buck(降压),选择依据是输入输出电压关系及系统效率需求。
DC-DC变换器的控制通常采用串级(外环电压、内环电流)控制:
简言之,电压环“设定目标”,电流环“快速执行”,共同维持输出电压稳定。
(类比:电压环像“指挥官”,电流环像“执行兵”,指挥官给出电流目标,执行兵快速调整开关动作,最终稳定输出电压。)
| 特性 | Buck变换器(降压) | Boost变换器(升压) |
|---|---|---|
| 定义 | 输入电压高于输出电压,降低电压 | 输入电压低于输出电压,提升电压 |
| 输入输出关系 | (V_{in} > V_{out}),(I_{out} > I_{in}) | (V_{in} < V_{out}),(I_{out} < I_{in}) |
| 电压电流特性 | 电流大,效率高(低电压差时) | 电流小,效率高(高电压差时) |
| 典型应用 | 电池放电(储能输出,给负载供电) | 电池充电(储能输入,从电网吸收能量) |
| 注意点 | 需考虑电感电流连续/断续模式 | 需考虑电感电流连续/断续模式,避免过压 |
(以Buck电路为例,伪代码展示电流环+电压环控制)
# 初始化参数
V_ref = 12 # 输出电压参考值
Kp_v, Ki_v = 1.0, 0.1 # 电压环PI参数
Kp_i, Ki_i = 0.5, 0.01 # 电流环PI参数
integral_v, integral_i = 0, 0
last_d = 0
while True:
# 读取反馈
V_out = read_voltage() # 输出电压
i_actual = read_current() # 实际电感电流
# 电压环计算(外环)
e_v = V_ref - V_out
integral_v += e_v
u_i_ref = Kp_v * e_v + Ki_v * integral_v # 电流指令(i_ref)
# 电流环计算(内环)
e_i = u_i_ref - i_actual
integral_i += e_i
u_d = Kp_i * e_i + Ki_i * integral_i # 占空比指令(d)
# 限制占空比
d = max(0, min(1, u_d))
# 控制开关管(PWM)
control_switch(d)
# 限制积分项防止饱和
if integral_v > 100: integral_v = 100
if integral_i > 10: integral_i = 10
(约90秒)
“电流环和电压环是串级控制结构,电压环作为外环,以输出电压与参考电压的误差,通过PI调节器输出电流指令;电流环作为内环,以电感电流与电流指令的误差,通过PI调节器输出开关管占空比,实现快速电流调节,从而稳定输出电压。在储能系统中,若输入电压低于输出电压(比如电池放电,输出电压高于电池电压),选择Boost升压拓扑;若输入电压高于输出电压(比如电池充电,电池电压低于电网电压),选择Buck降压拓扑。具体来说,Boost用于提升电压,适合储能充电场景,而Buck用于降低电压,适合储能放电场景,选择依据是输入输出电压关系及系统效率需求。”