第2章:OBC系统架构设计

好,咱们直接进入正题。上一章聊了OBC的基本概念,这一章我带你看看它的「骨架」——系统架构。

说实话,我入行那会儿,第一次看到OBC的完整框图,脑子是懵的。那么多模块,怎么搭起来的?后来自己画了几版,踩了坑,才慢慢摸出门道。今天我把这些经验掰开揉碎讲给你。

2.1 OBC系统框图

一个典型的OBC,说白了就是「交流转直流」的能量管道。但这条管道里,有好多关卡要过。

我习惯把OBC分成四大块:

  • 输入级:EMI滤波、浪涌保护、继电器控制
  • 功率级:PFC整流 + DC/DC变换
  • 控制级:DSP做核心算法,MCU做通信管理
  • 辅助级:辅助电源、驱动电路、采样电路

你想想看,电网过来的交流电,220V或者110V,先得经过EMI滤波器,把噪声滤掉。然后继电器吸合,浪涌电阻切出。接着PFC把交流整成稳定的400V直流。最后DC/DC把这400V降到电池需要的电压,比如200V-450V。

嗯,这里要注意:PFC的输出母线电压,通常设计在380V-420V之间。我见过有人为了省成本把电压设低了,结果电网波动时直接掉出工作范围,系统保护重启。得不偿失。

关键节点电压参考

节点典型值说明
交流输入85-265VAC全球通用范围
PFC母线400VDC±5%波动范围
电池侧200-450VDC根据电池包配置
辅助电源12V/24V给控制电路供电

2.2 功率拓扑选择

这是OBC设计的核心,也是大家最纠结的地方。我直接说结论:目前主流方案是「PFC + LLC」组合

为什么?咱们拆开看。

2.2.1 PFC拓扑

PFC这块,选项不多:

  • Boost PFC:经典方案,适合3.3kW以下
  • 交错并联Boost PFC:我常用的方案,纹波小,适合6.6kW
  • 图腾柱PFC:效率高,但控制复杂,适合11kW以上

我个人习惯,6.6kW的OBC用两相交错Boost PFC。为什么?因为电感可以做得小,散热也均匀。我在项目中遇到过单相Boost电感过热的问题,换成交错后,温度直接降了15°C。

2.2.2 DC/DC拓扑

DC/DC这块,才是真正的「神仙打架」:

拓扑效率成本控制难度我的评价
LLC谐振高(95%+)目前最主流
移相全桥中高(93%+)适合低成本方案
CLLC高(96%+)双向充放电必备
双有源桥DAB适合大功率

我建议新手先从LLC入手。为什么?因为LLC能实现软开关,开关损耗小,效率高。而且它的增益曲线是单调的,控制起来相对直观。

不过LLC有个坑——轻载时频率会跑得很高。我曾经调试一个3kW的LLC,空载时开关频率飙到500kHz,驱动芯片直接过热保护。后来加了死区优化和频率限制才搞定。

我的选型建议

  • 3.3kW以下:Boost PFC + 半桥LLC
  • 6.6kW:交错Boost PFC + 全桥LLC
  • 11kW以上:图腾柱PFC + CLLC(双向)

2.3 控制架构:DSP + MCU

控制架构这块,我见过两种流派:

  • 单芯片方案:一颗DSP搞定所有,适合小功率
  • 双芯片方案:DSP做功率控制,MCU做通信管理

我个人强烈推荐双芯片方案。为什么?因为安全隔离

你想想看,功率侧是高压,通信侧是低压。如果所有功能挤在一颗芯片里,一旦功率侧出问题,整个系统都可能瘫痪。分开之后,DSP和MCU之间用SPI或UART通信,中间加隔离芯片,安全多了。

2.3.1 DSP的任务

DSP是「苦力」,负责实时性要求高的活:

  • PFC的电流环、电压环控制
  • LLC的PFM调频控制
  • ADC采样(电压、电流、温度)
  • 保护逻辑(过压、过流、过温)

我常用的DSP是TI的TMS320F280049,主频100MHz,带两个独立的ADC核,采样速度够用。代码里我习惯用中断方式,PWM周期中断触发ADC采样,然后执行控制算法。

// 伪代码示例:PFC控制中断
interrupt void pfcControlISR(void)
{
    // 1. 读取ADC结果
    vBus = AdcResult.ADCRESULT0;  // 母线电压
    iL = AdcResult.ADCRESULT1;    // 电感电流
    
    // 2. 电压外环PI计算
    vErr = vRef - vBus;
    iRef = PI_Update(&vPI, vErr);
    
    // 3. 电流内环PI计算
    iErr = iRef - iL;
    duty = PI_Update(&iPI, iErr);
    
    // 4. 更新PWM占空比
    EPwm1Regs.CMPA = duty;
}

2.3.2 MCU的任务

MCU是「管家」,负责慢速但复杂的活:

  • CAN通信(与BMS、VCU交互)
  • 诊断功能(ISO 14229 UDS协议)
  • 状态机管理(待机、充电、故障等)
  • 参数存储(EEPROM/Flash)

MCU我常用STM32F103或者国产的GD32。说实话,MCU的选择没那么苛刻,只要CAN接口够用、Flash够大就行。

注意! DSP和MCU之间的通信一定要加看门狗。我曾经遇到过SPI通信卡死,DSP还在跑,但MCU已经死机了。结果充电到一半,BMS发来停止指令,MCU收不到,差点出事故。后来我在两边都加了心跳包,500ms互检一次,超时就进入安全状态。

2.4 系统架构图(文字版)

我画个简单的架构图给你看:

交流输入 → EMI滤波 → 继电器 → PFC(交错Boost) → 母线电容(400V)
                                                      ↓
辅助电源(12V) ← 高压取电                    LLC谐振变换器
                                                      ↓
DSP(控制算法) ←→ MCU(CAN通信) ←→ BMS/VCU      输出继电器 → 电池包

这个架构我用了好几年,从3.3kW做到11kW,基本框架没变过。只是功率大了,PFC从单相变成三相,LLC从半桥变成全桥。

2.5 避坑指南

最后,分享几个我踩过的坑:

  1. 母线电容别省:我试过为了省成本,把母线电容从1000μF减到470μF。结果PFC动态响应变差,电网波动时母线电压掉到350V以下,LLC直接进入限流模式。后来老老实实加回去了。
  2. 驱动电路要独立供电:LLC的上管驱动需要悬浮电源。我一开始用自举电路,结果频率一高,自举电容充不满,驱动波形畸变。后来换了隔离电源模块,问题解决。
  3. 采样电阻要选低温漂的:电流采样电阻的温度系数很重要。我吃过亏,用了普通电阻,温度一上来,采样值漂了5%,电流环直接失控。现在一律用25ppm以下的。

好了,这一章的内容就到这儿。系统架构是OBC的「骨架」,骨架搭好了,后面填肉(具体电路设计)就顺了。下一章咱们聊PFC的详细设计,到时候见。