DC-DC升压转换器设计与微控制器智能控制实现

1. 项目背景与核心器件选型

在电力电子设计中,DC-DC升压转换是常见需求,尤其当需要从低压电源(如锂电池或USB端口)生成较高工作电压时。本次项目选用TI的TPS61170作为核心转换器件,搭配NXP的MK64FX512VDC12微控制器实现智能控制,构建一个输入3-18V、输出最高38V的高效升压系统。

TPS61170的关键特性使其成为本设计的理想选择:

  • 集成1.2A/40V功率MOSFET,省去外部分立器件
  • 1.2MHz固定开关频率,允许使用小型电感(典型值2.2μH)
  • 轻载时自动切换至脉冲跳跃模式,提升效率
  • 93%占空比上限,支持宽输入电压范围应用

MK64FX512VDC12微控制器提供以下支持:

  • ARM Cortex-M4内核,带FPU和DSP指令集
  • 512KB Flash存储,适合复杂控制算法
  • 丰富的外设接口(PWM、ADC、DAC等)
  • 工作电压范围2.7-3.6V,需注意电平转换

2. 电路设计与关键参数计算

2.1 基本升压拓扑结构

典型应用电路包含以下核心元件:

  1. 输入电容CIN:选用10μF/25V X7R陶瓷电容,低ESR特性可抑制输入纹波
  2. 功率电感L1:2.2μH饱和电流≥1.5A的屏蔽式电感(如TDK VLS2010ET-2R2N)
  3. 输出二极管D1:40V/1A肖特基二极管(如B140-13-F)
  4. 输出电容COUT:22μF/50V X7R陶瓷电容阵列

注意:布局时需将功率地(PGND)与信号地(AGND)单点连接,避免开关噪声干扰控制电路。

2.2 输出电压设定

输出电压由FB引脚分压电阻决定:

VOUT = VFB × (1 + R1/R2)

其中VFB=1.229V(典型值)。例如需要24V输出时:

  • 取R2=10kΩ
  • 计算R1=10kΩ×(24/1.229 -1)≈185kΩ 选用1%精度的187kΩ标准电阻,实际输出电压24.16V。

2.3 电感选型计算

电感峰值电流需满足:

IL(PEAK) = IOUT × (VOUT + VD) / (VIN × η) + ΔIL/2

假设:

  • VIN=5V, VOUT=24V, IOUT=150mA
  • 效率η=90%, VD=0.3V
  • 取纹波电流ΔIL=30%×IL 计算得IL(PEAK)≈0.89A,选择额定电流1.5A以上的电感。

3. 微控制器接口设计

3.1 PWM动态调压实现

通过MK64FX512VDC12的FTM模块生成PWM信号至CTRL引脚,实现输出电压动态调节:

// 初始化PWM(1kHz频率,50%占空比) void PWM_Init(void) { SIM->SCGC6 |= SIM_SCGC6_FTM0_MASK; // 启用FTM0时钟 FTM0->MOD = 1000 - 1; // 1kHz PWM FTM0->CONTROLS[0].CnV = 500; // 初始50%占空比 FTM0->SC = FTM_SC_CLKS(1) | FTM_SC_PS(0); // 启用计数器 }

输出电压与PWM占空比D呈反比关系:

VOUT_ADJ = VOUT_NOM × (1 - D)

其中D∈[0,0.8],超过80%占空比可能导致调节失效。

3.2 故障检测与保护

利用MCU的ADC监测关键参数:

  • 输入电压检测:分压至0-3V范围接入ADC0_SE8
  • 输出电流检测:50mΩ采样电阻+INA199放大至ADC0_SE12
  • 温度监测:NTC热敏电阻分压接ADC0_SE17

保护策略示例代码:

void Safety_Check(void) { float vin = ADC_Read(8) * 6.0; // 1:5分压 float iout = ADC_Read(12) * 0.1; // 100mV/A float temp = 25 + (ADC_Read(17)-0.76)/0.0025; // NTC换算 if(vin < 3.0 || vin > 18.0) Shutdown(); if(iout > 1.0) Current_Limit(); if(temp > 85) Reduce_Power(); }

4. 实测性能优化技巧

4.1 效率提升方案

实测数据对比(VIN=5V, VOUT=12V@300mA):

优化措施效率提升实现方法
同步整流+3.2%替换肖特基二极管为SI7860DP MOSFET
低ESR电容+1.8%使用GRM32ER61E226KE15L电容阵列
屏蔽电感+2.1%更换为Würth Elektronik 7443630220

4.2 常见问题解决

  1. 启动失败问题:

    • 现象:EN引脚使能后无输出
    • 排查:检查EN引脚电压>1.5V,SS引脚电容≥10nF
    • 方案:增加100kΩ上拉电阻确保可靠使能
  2. 输出电压振荡:

    • 现象:轻载时输出±5%波动
    • 排查:补偿网络RC取值不当
    • 方案:调整Type II补偿网络,典型值Rc=10kΩ, Cc=1nF, Cz=100pF
  3. 过热保护误触发:

    • 现象:室温下频繁进入TSD
    • 排查:电感饱和或布局不当
    • 方案:更换更高饱和电流电感,加强PCB散热过孔

5. 进阶应用扩展

5.1 SEPIC拓扑实现

通过调整外部元件,可配置为SEPIC转换器:

  1. 增加耦合电感(如Würth 760308101)
  2. 添加隔直电容(10μF/50V)
  3. 修改反馈网络计算:
    VOUT = VFB × (1 + R1/R2) + VD

典型应用:输入4-16V转输出12V@200mA,效率可达87%

5.2 多模块并联方案

使用MK64FX512VDC12的FlexIO模块实现交错控制:

  1. 硬件配置:
    • 两片TPS61170共用输入输出
    • 相位差180°的PWM信号驱动
  2. 软件实现:
// 交错PWM初始化 void Interleave_PWM_Init(void) { FTM0->MOD = 1000 - 1; FTM0->CONTROLS[0].CnV = 250; // 通道1 25%占空比 FTM0->CONTROLS[1].CnV = 750; // 通道2 75%占空比 FTM0->SYNC = FTM_SYNC_SWSYNC_MASK; // 同步触发 }

实测显示纹波电流降低40%,适合大电流应用。

通过合理选择外围元件和优化控制策略,该设计可满足工业传感器、便携设备等场景的高压供电需求。实际开发中建议先用TPS61170EVM-280评估板验证关键参数,再着手定制PCB设计。