基于移相控制与PI控制器的双有源全桥(DAB)控制实现
一、系统架构与控制原理
1. 双有源全桥拓扑结构
[输入电源] → [H桥1] ↔ [高频变压器] ↔ [H桥2] → [输出滤波] → [负载]
- 核心组件:两个全桥电路、高频变压器(变比n:1)、辅助电感Lr
- 关键参数:开关频率fs、电感电流纹波ΔIL、电压传输比k=Uo/Ui
2. 移相控制原理
通过调节原边(H桥1)与副边(H桥2)的移相角Δφ实现功率控制:
-
功率传输方程:
-
控制自由度:
- 内移相角
(H桥内部开关相位差) - 外移相角
(H桥间相位差)
- 内移相角
二、双闭环PI控制设计
1. 控制架构
graph LR
A[输出电压反馈] --> B{电压外环PI}
C[电感电流采样] --> D{电流内环PI}
B --> E[生成参考电流]
D --> F[生成移相角指令]
E --> G[调制信号生成]
F --> G
G --> H[PWM驱动]
2. PI参数整定方法
(1) 电流内环设计
-
传递函数:
-
参数整定(基于临界比例度法):
Kp_i = 0.5 * (L_r * fs) / R_r; % 比例系数 Ki_i = 0.1 * Kp_i / (L_r * fs); // 积分系数
(2) 电压外环设计
-
传递函数:
-
参数整定(Ziegler-Nichols法):
Kp_v = 0.6 * Kp_i; Ki_v = 1.2 * Ki_i;
3. 移相角生成算法
// 基于PI输出的移相角计算
delta_phi = Kp_p * (Vref - Vout) + Ki_p * integral_error;
d1 = 0.5 * sin(delta_phi); // 内移相角
d2 = 0.5 * cos(delta_phi);
三、关键实现技术
1. 动态响应优化
-
前馈补偿:引入输入电压前馈项
-
抗饱和处理:采用积分分离策略
if(fabs(error) > threshold) { integral += error * dt; // 正常积分 } else { integral = 0; // 误差小时停止积分 }
2. 非线性补偿
-
查表法补偿:建立
效率映射表 Δφ(°) 效率(%) 补偿系数 15 92.3 1.02 30 94.1 0.98 45 95.6 0.95
3. 数字化实现要点
-
PWM生成:使用STM32定时器互补输出模式
TIM_OCInitTypeDef OC_InitStruct = {0}; OC_InitStruct.OCMode = TIM_OCMODE_PWM1; OC_InitStruct.Pulse = duty_cycle; // 占空比50%+Δφ/π HAL_TIM_PWM_ConfigChannel(&htim1, &OC_InitStruct, TIM_CHANNEL_1);
四、性能优化策略
1. 自适应PI调节
-
在线参数整定(基于模型参考自适应MRAC):
% 在线更新PI参数 Kp = Kp_base + Kp_adapt * (Vref - Vout); Ki = Ki_base + Ki_adapt * integral_error;
2. 混合控制架构
-
模糊PI控制:
// 模糊规则库示例 IF e IS large_positive AND de/dt IS increasing THEN Kp=1.2, Ki=0.5; IF e IS small_negative AND de/dt IS decreasing THEN Kp=0.8, Ki=1.0;
3. 多目标优化
-
NSGA-II算法:同时优化效率与电压纹波
options = optimoptions('gamultiobj','PopulationSize',100); [x,fval] = gamultiobj(@fitnessFcn,2,[],[],[],[],lb,ub,options);
八、开发资源推荐
-
参考
- 《双有源桥变换器控制技术》(王兆安著)
- 采用移相控制与PI控制器实现双有源全桥控制 youwenfan.com/contentalb/52278.html
- IEEE Trans. on PE, "Adaptive PI Control for DAB"