4. 功率驱动电路设计:H桥驱动拓扑、MOSFET选型与驱动、电流检测与保护电路
各位同学,咱们今天聊聊功率驱动电路。这部分是太阳翼驱动控制器的“肌肉”,说白了就是负责把控制信号变成实实在在的大电流,去驱动电机转动。我做了这么多年航天电子,这块电路出过的问题可真不少,咱们得好好掰扯掰扯。
4.1 H桥驱动拓扑:电机正反转的核心
H桥这个名字,你一看电路图就明白了。四个开关管(咱们用MOSFET)摆成个“H”形,电机在中间横杠上。通过控制四个管的通断,电流就能从左边流到右边,或者反过来,电机也就正转反转了。
我习惯把H桥的工作状态分成四种:
- 正转:Q1和Q4导通,Q2和Q3关断。电流从VCC→Q1→电机→Q4→GND。
- 反转:Q2和Q3导通,Q1和Q4关断。电流从VCC→Q2→电机→Q3→GND。
- 刹车(慢速衰减):Q1和Q3导通,或者Q2和Q4导通。电机两端短路,利用反电动势快速制动。
- 滑行(快速衰减):四个管全关断。电机自由旋转,电流通过体二极管续流。
关键点:在航天应用中,我们最常用的是“互补PWM”控制方式。上管和下管交替导通,通过调节占空比来控制电机速度。但这里有个大坑——死区时间。
为什么会这样?因为MOSFET开关需要时间。如果上管还没完全关断,下管就导通了,那就直接VCC对GND短路,这叫“直通”,瞬间就能把管子烧掉。我曾经在初样阶段就吃过这个亏,一个疏忽,死区设得太小,结果上电瞬间“啪”的一声,MOSFET直接炸了。从那以后,我对死区时间就特别敏感。
4.2 MOSFET选型与驱动:选对管子,用对方法
MOSFET选型,我总结了几个硬指标,咱们一个一个看:
| 参数 | 要求 | 我的经验 |
|---|---|---|
| 漏源电压(VDS) | ≥ 母线电压 × 1.5倍 | 航天上我习惯留2倍余量,母线28V,我选60V以上的管子 |
| 漏极电流(ID) | ≥ 电机峰值电流 × 1.5倍 | 别只看额定值,要看脉冲电流能力 |
| 导通电阻(RDS(on)) | 越小越好 | 我一般选10mΩ以下的,发热能小很多 |
| 栅极电荷(Qg) | 越小越好 | 直接影响开关速度,Qg大的管子驱动起来费劲 |
| 抗辐射能力 | 满足总剂量和单粒子要求 | 这是航天的特殊要求,普通工业管不能用 |
选好管子,接下来是驱动电路。MOSFET是电压控制器件,但栅极有寄生电容。你想想看,要让它快速导通,就得瞬间灌入大电流把电容充满。我常用的驱动芯片有TC4427、IXDN609这类专用驱动IC,它们能提供几安培的峰值电流。
我的小技巧:在栅极串联一个10Ω左右的电阻,可以抑制开关振荡。但别太大,否则开关速度会变慢,增加开关损耗。这个值我一般通过实验调出来的,看栅极波形,振铃小了就行。
4.3 电流检测与保护电路:看得见,守得住
电流检测,说白了就是知道电机在吃多少电。我常用的方法有两种:
- 采样电阻法:在H桥下管和GND之间串一个小电阻(比如10mΩ),测它两端的电压。优点是简单、便宜、线性度好。缺点是会有功率损耗,而且信号很小,需要差分放大器放大。
- 霍尔电流传感器法:用ACS712这类芯片,非接触式测量。优点是隔离性好,没有损耗。缺点是带宽有限,而且贵。
在航天项目里,我倾向于用采样电阻法,因为可靠性更高,而且我们可以通过精密电阻和仪表放大器(比如INA240)得到很干净的信号。嗯,这里要注意,PCB布线时,采样电阻的走线要用开尔文接法,避免大电流路径干扰到小信号。
保护电路这块,我把它分成三级:
- 软件保护:MCU通过ADC读取电流值,如果超过阈值,就关断PWM。响应速度在微秒级。
- 硬件比较器保护:用比较器直接监测电流信号,一旦过流,立即触发硬件关断。响应速度在纳秒级。我习惯用LMV7235这类高速比较器。
- 保险丝/自恢复保险:最后一道防线,防止硬件保护失效。但航天上很少用,因为保险丝熔断后不可恢复。
警告:千万别只依赖软件保护!我曾经在一个项目中,软件因为跑飞了没来得及响应,结果电机堵转,电流飙升,直接把MOSFET烧了。从那以后,我每个项目都必加硬件比较器保护,这是底线。
最后,给大家一个完整的驱动电路代码示例,这是我常用的PWM初始化配置:
// H桥PWM初始化示例(基于STM32)
void H_Bridge_PWM_Init(void) {
// 使能定时器时钟
RCC->APB1ENR |= RCC_APB1ENR_TIM2EN;
// 配置PWM引脚为复用功能
GPIOA->AFR[0] |= (0x01 << 4); // PA0 - TIM2_CH1 (上管)
GPIOA->AFR[0] |= (0x01 << 8); // PA1 - TIM2_CH2 (下管)
// 设置死区时间(关键!)
// 这里设置死区时间为100ns,根据MOSFET开关速度调整
TIM2->BDTR |= (100 << 0); // DTG[7:0] = 100
// 配置PWM模式
TIM2->CCMR1 |= (0x06 << 4); // CH1 PWM模式1
TIM2->CCMR1 |= (0x06 << 12); // CH2 PWM模式1
// 使能互补输出
TIM2->CCER |= TIM_CCER_CC1E | TIM_CCER_CC1NE;
TIM2->CCER |= TIM_CCER_CC2E | TIM_CCER_CC2NE;
// 启动定时器
TIM2->CR1 |= TIM_CR1_CEN;
}
好了,功率驱动电路这块就讲这么多。记住,H桥设计的关键在于死区时间、MOSFET选型和保护电路。这三个环节任何一个出问题,你的电机都转不起来。下一章咱们聊聊控制策略,到时候我会讲讲怎么用PID让太阳翼精准对日。