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

📅 2026/7/9 13:52:55 👁️ 阅读次数 📝 编程学习
DC-DC升压转换器设计与PIC微控制器控制实现

1. 高电压DC-DC升压转换系统架构设计

在电力电子领域,DC-DC升压转换器是实现电压变换的关键器件。我们设计的系统采用TPS61170作为核心升压芯片,配合PIC18LF4620微控制器构建智能控制平台。这种组合特别适合需要精确电压调节和高转换效率的应用场景,如工业自动化设备、医疗仪器和便携式测试设备。

TPS61170是一款单片式高压开关稳压器,集成了1.2A、40V的功率MOSFET。它的输入电压范围宽达3-18V,输出电压最高可达38V,开关频率固定为1.2MHz。这些特性使其成为中小功率升压应用的理想选择。芯片采用6引脚2x2mm QFN封装,极大地节省了PCB空间。

PIC18LF4620是Microchip公司生产的一款8位微控制器,具有64KB闪存和3968字节RAM,支持多种通信接口(USART、SPI、I2C)。其内置的10位ADC和PWM模块特别适合电源控制应用。在系统中,PIC主要负责以下功能:

  • 通过ADC监测输入/输出电压和电流
  • 根据负载需求动态调整PWM输出
  • 实现保护逻辑和故障处理
  • 提供用户界面和通信接口

系统工作原理如下:当输入电压(如5V或12V)接入后,TPS61170通过内部开关管和外部电感、二极管构成boost拓扑,将电压升至设定值(如24V或36V)。PIC微控制器通过分压电阻网络检测输出电压,并与内部基准比较,通过调整PWM占空比来稳定输出电压。整个系统采用电压模式控制,具有响应快、稳定性好的特点。

2. TPS61170外围电路设计与参数计算

2.1 关键元器件选型与计算

电感选择是升压转换器设计的核心环节。对于TPS61170,推荐使用饱和电流至少1.5A的电感,电感值可通过以下公式计算:

L = (V_in × (V_out - V_in)) / (ΔI_L × f_sw × V_out)

其中:

  • V_in = 5V(最小输入电压)
  • V_out = 24V(目标输出电压)
  • ΔI_L = 0.3 × I_out × (V_out/V_in) = 0.3 × 0.15 × (24/5) ≈ 0.216A(纹波电流)
  • f_sw = 1.2MHz(开关频率)

代入得L ≈ 4.7μH。实际选用6.8μH/2A的屏蔽功率电感,型号为Murata LQH3N6R8M24,其DCR仅为45mΩ,可有效降低铜损。

输出电容选择需考虑纹波电压和负载瞬态响应。使用低ESR的陶瓷电容可满足要求:

C_out ≥ I_out × D / (f_sw × ΔV_out)

其中:

  • D = 1 - (V_in/V_out) = 1 - (5/24) ≈ 0.79(占空比)
  • ΔV_out = 50mV(允许纹波)

计算得C_out ≥ 19.7μF,选用两个22μF/50V X7R陶瓷电容并联(如GRM32ER71H226KE15),总ESR<5mΩ。

2.2 反馈网络设计

TPS61170的FB引脚基准电压为1.229V。输出电压通过电阻分压网络设定:

V_out = V_ref × (1 + R1/R2)

取R2=10kΩ,对于24V输出: R1 = 10k × (24/1.229 - 1) ≈ 184kΩ

选用1%精度的182kΩ电阻,实际输出电压为24.07V。为增强稳定性,在FB引脚对地接100pF陶瓷电容,形成极点补偿。

2.3 功率器件布局要点

高频开关电路布局直接影响性能和EMI:

  1. 采用星型接地,将输入电容、输出电容和芯片GND直接连接到功率地平面
  2. SW引脚到电感和二极管的走线尽可能短而宽(>50mil)
  3. 反馈电阻靠近FB引脚放置,走线远离噪声源
  4. 在VIN和SW引脚附近放置0.1μF去耦电容
  5. 使用完整的接地平面减少环路面积

肖特基二极管选用MBRS340T3(3A/40V),其低VF(0.5V@3A)可提高效率。实测显示,在5V输入、24V/150mA输出时,系统效率可达89%。

3. PIC18LF4620控制程序设计

3.1 电压调节算法实现

PIC18LF4620通过内置ADC0通道监测输出电压。采用均值滤波提高测量精度:

#define ADC_CHANNEL 0 uint16_t read_ADC() { uint16_t sum = 0; for(uint8_t i=0; i<16; i++) { ADCON0 = (ADC_CHANNEL << 2) | 0x01; while(ADCON0bits.GO); // 等待转换完成 sum += ADRES; } return sum >> 4; // 16次平均 }

PID控制算法调节PWM输出:

typedef struct { float Kp, Ki, Kd; float integral, prev_error; } PID_Controller; void PID_Init(PID_Controller *pid, float Kp, float Ki, float Kd) { pid->Kp = Kp; pid->Ki = Ki; pid->Kd = Kd; pid->integral = 0; pid->prev_error = 0; } float PID_Update(PID_Controller *pid, float setpoint, float measurement) { float error = setpoint - measurement; pid->integral += error; float derivative = error - pid->prev_error; pid->prev_error = error; return pid->Kp*error + pid->Ki*pid->integral + pid->Kd*derivative; }

3.2 保护功能实现

系统集成多重保护机制:

  1. 过压保护(OVP):当输出电压超过设定值10%时切断驱动
  2. 过流保护(OCP):通过采样电阻检测开关电流
  3. 热关断:监测芯片温度
void check_protections() { // 读取温度传感器 float temp = read_temperature(); if(temp > 85.0) { // 超过85℃关断 shutdown_system(); set_fault_flag(THERMAL_SHUTDOWN); } uint16_t v_out = read_ADC(); if(v_out > VOUT_MAX_THRESHOLD) { disable_pwm(); set_fault_flag(OVERVOLTAGE); } }

3.3 PWM信号生成配置

PIC18LF4620的CCP模块产生PWM控制TPS61170的CTRL引脚:

void PWM_Init() { PR2 = 0x4F; // PWM周期=1.2MHz/(4*(PR2+1)) ≈ 24kHz CCP1CON = 0x0C; // PWM模式 CCPR1L = 0x20; // 初始占空比50% T2CON = 0x04; // 预分频1:1,启动定时器2 TRISCbits.TRISC2 = 0; // CCP1输出 }

通过调整CCPR1L寄存器值改变占空比,实现输出电压的动态调节。实测表明,系统负载调整率<1%,线性调整率<0.5%。

4. 系统测试与性能优化

4.1 效率测试与损耗分析

在不同输入电压和负载条件下测试系统效率:

输入电压(V)负载电流(mA)输出电压(V)效率(%)
5.05024.185.2
5.015024.089.1
12.010024.092.3
12.030023.990.7

主要损耗来源:

  1. 电感DCR损耗:P_L = I_RMS² × R_DCR ≈ 45mW@150mA
  2. 二极管导通损耗:P_D = V_F × I_OUT ≈ 75mW@150mA
  3. 开关损耗:P_SW = 0.5 × V_IN × I_OUT × (t_r + t_f) × f_SW ≈ 60mW

优化措施:

  • 更换更低DCR的电感(如LPS3015-682,DCR=28mΩ)
  • 使用同步整流方案替代肖特基二极管
  • 优化栅极驱动电阻减少开关时间

4.2 瞬态响应测试

使用电子负载进行0-150mA阶跃测试,结果如下:

  • 恢复时间:<200μs
  • 过冲电压:<300mV
  • 下冲电压:<400mV

改善方法:

  1. 增加输出电容至47μF
  2. 调整PID参数(Kp=0.5, Ki=0.1, Kd=0.05)
  3. 在反馈网络中加入前馈电容(10nF)

4.3 EMI对策与滤波设计

传导发射测试显示在1.2MHz开关频率处有峰值超标。采取以下改进:

  1. 在输入端口增加π型滤波器(10μH+2×47μF)
  2. 在SW节点串联2.2Ω电阻并并联100pF电容
  3. 使用铁氧体磁珠(600Ω@100MHz)过滤输出噪声
  4. 优化地平面布局,减少高频环路面积

改进后测试结果满足EN55022 Class B标准,余量>6dB。