第二章 高压充电电路:升压拓扑结构、充电控制策略与能量精度
好,咱们接着聊。上一章我们把除颤仪的能量释放时序整体过了一遍。这一章,我打算深入讲讲高压充电电路——说白了,就是那个把电池的低电压,升到上千伏的核心模块。
你想想看,除颤仪要释放200焦耳的能量,电容上的电压通常得充到2000V甚至更高。电池才12V或者24V,怎么上去?靠的就是升压拓扑。我个人习惯把这块分成三个部分来讲:拓扑选型、控制策略、以及充电时间和能量精度的关系。
2.1 升压拓扑结构:反激 vs 推挽
先聊拓扑。做高压充电,最常用的就两种:反激(Flyback)和推挽(Push-Pull)。
反激变换器,结构简单,元件少。变压器既是储能元件,又是隔离元件。我早期做的一款便携式除颤仪,用的就是反激拓扑。为什么?因为功率不大,200W以内,反激完全够用,而且成本低。
反激的工作方式是这样的:开关管导通时,变压器初级绕组储能;开关管关断时,能量通过次级绕组释放到负载。说白了,就是先存后放。
// 反激拓扑关键参数估算
// 假设:输入12V,输出2000V,功率200W
// 占空比 D 通常取 0.4~0.5
V_in = 12; // 输入电压 (V)
V_out = 2000; // 输出电压 (V)
P_out = 200; // 输出功率 (W)
D = 0.45; // 占空比
f_sw = 100e3; // 开关频率 (Hz)
// 计算初级电感量
L_primary = (V_in * D)^2 / (2 * P_out * f_sw);
// 结果大约 14.5 μH
推挽拓扑呢,效率更高,适合大功率。它用两个开关管交替导通,变压器利用率高。我记得有一次做一台大功率除颤仪,要求500W以上的充电功率,反激已经力不从心了。我换成了推挽拓扑,效率从85%提到了93%。
但推挽有个坑——变压器容易偏磁。我曾经在调试时遇到过,一边的开关管电流越来越大,最后直接炸管。嗯,这里要注意,推挽必须加磁平衡控制,要么用电流互感器检测,要么用隔直电容。
| 参数 | 反激拓扑 | 推挽拓扑 |
|---|---|---|
| 功率范围 | < 300W | 200W ~ 2kW |
| 元件数量 | 少 | 多 |
| 效率 | 80%~88% | 88%~95% |
| 变压器利用率 | 低 | 高 |
| 磁偏风险 | 无 | 有 |
| 成本 | 低 | 中 |
2.2 充电控制策略
拓扑选好了,接下来就是怎么控制充电过程。这里我分两种策略来讲:恒流充电和恒功率充电。
恒流充电,就是充电过程中保持电流恒定。好处是控制简单,坏处是充电后期效率低。你想想看,电容电压低的时候,功率小;电压高了,功率大。但开关管和变压器是按最大功率设计的,所以元件利用率不高。
恒功率充电,是我个人比较推荐的方式。充电过程中保持功率恒定,电流随着电压升高而降低。这样变压器和开关管始终工作在额定功率附近,效率高,充电时间也短。
具体怎么实现?我一般用PI控制器,采样输出电压和初级电流,计算占空比。
// 恒功率充电控制伪代码
// 目标功率 P_target = 250W
void charge_control() {
// 采样输出电压
V_out = adc_read(ADC_CH_VOUT);
// 计算目标电流
I_target = P_target / V_out;
// 采样初级电流
I_primary = adc_read(ADC_CH_IPRIMARY);
// PI控制器计算占空比
error = I_target - I_primary;
duty += Kp * error + Ki * integral;
// 限幅
if (duty > 0.48) duty = 0.48;
if (duty < 0.05) duty = 0.05;
// 更新PWM
pwm_set_duty(TIM1, duty);
}
2.3 充电时间与能量精度的关系
好,最后一个话题。充电时间和能量精度,其实是矛盾的。你想想看,充电越快,控制越粗糙,能量精度就越差。反过来,要精度高,就得慢充,但病人等不起。
我一般把充电过程分成两个阶段:
- 快速充电阶段:从0V充到目标电压的95%,用恒功率控制,追求速度。
- 精确微调阶段:从95%到100%,用恒压控制,小电流慢充,保证精度。
这样做的好处是,总充电时间控制在5~8秒,能量精度能做到±2%以内。我记得有一次做认证测试,要求能量精度±5%,我们实测做到了±1.8%,一次通过。
能量精度的核心,在于电压采样的准确性。电容储能公式是 E = 0.5 * C * V²,电压误差会平方放大。举个例子:
// 能量误差分析
C = 200e-6; // 200μF
V_target = 2000; // 目标电压 2000V
E_target = 0.5 * C * V_target^2; // 400J
// 如果电压误差 ±1%
V_error = 2000 * 0.01; // 20V
E_error = 0.5 * C * (V_target + V_error)^2 - E_target;
// 结果:能量误差约 ±8J,即 ±2%
看到了吧?电压误差1%,能量误差就变成2%。所以电压采样电路一定要用高精度电阻分压,温漂要小。我习惯用0.1%精度的电阻,并且做温度补偿。
- 反激拓扑适合小功率,推挽适合大功率
- 恒功率充电效率高,是主流方案
- 充电分两阶段:快速充 + 精确调
- 电压采样精度直接影响能量精度,误差会平方放大
嗯,这一章就讲到这里。下一章我们聊聊能量释放的时序控制——那个才是除颤仪的灵魂。到时候我会详细讲H桥驱动、脉冲宽度控制、以及怎么避免电弧放电。咱们下章见。