4. 电机驱动电路设计:H桥电路原理与设计、MOSFET选型与栅极驱动、PWM调速与电流限制、堵转保护电路
门锁电机驱动,说白了就是让电机正转、反转、停。你想想看,锁门和开门,电机转的方向正好相反。那怎么实现呢?H桥电路就是干这个的。
我在做第一个门锁项目时,觉得H桥很简单,四个开关管嘛。结果一上电,MOS管直接冒烟了。嗯,从那以后我再也不敢小看驱动电路的设计了。
4.1 H桥电路原理与设计
H桥的名字很形象。四个开关管组成一个"H"形状。负载电机接在中间横杠上。通过控制四个管的通断,就能改变电流方向。
基本工作模式就三种:
- 正转:Q1和Q4导通,Q2和Q3截止。电流从左到右流过电机。
- 反转:Q2和Q3导通,Q1和Q4截止。电流从右到左。
- 停止:四个管全关断,或者同侧两个管同时导通(刹车模式)。
关键点:绝对不能让Q1和Q2同时导通,也不能让Q3和Q4同时导通。这就是"直通"现象,会直接烧毁MOS管。我见过一个同事,调试时忘了加死区时间,结果板子上的铜箔都烧断了。
实际设计中,我习惯用N沟道MOSFET做下管,P沟道做上管。为什么?N管导通电阻小,价格便宜。但上管用P管可以简化驱动电路,不需要自举电容。
不过现在更主流的方案是四个管都用N沟道。虽然上管驱动麻烦点,但导通电阻可以做到更低。对于门锁这种大电流应用,效率更重要。
4.2 MOSFET选型与栅极驱动
MOSFET选型,我总结了几条硬指标:
| 参数 | 要求 | 我的经验 |
|---|---|---|
| Vds(漏源耐压) | ≥ 2倍电源电压 | 12V系统选30V以上,留够余量 |
| Rds(on)(导通电阻) | 越小越好 | 门锁电机启动电流大,我一般选10mΩ以下 |
| Id(漏极电流) | ≥ 2倍峰值电流 | 堵转电流可能到5A,选10A以上的管子 |
| Qg(栅极电荷) | 越小越好 | 影响开关速度,我习惯选20nC以下的 |
栅极驱动这块,很多人容易忽略。MOSFET的栅极是个电容,充电需要时间。驱动电流不够,开关速度就慢,开关损耗就大。
我个人习惯用专用的栅极驱动芯片,比如IR2104或者类似型号。它们内置了死区时间控制,还能提供足够的驱动电流。如果你用分立元件搭,一定要加栅极串联电阻,限制充放电电流。
小技巧:栅极串联电阻一般选10Ω到100Ω。阻值太小,开关速度快但容易振荡。阻值太大,开关损耗增加。我通常从47Ω开始调,用示波器看栅极波形,直到没有振铃为止。
4.3 PWM调速与电流限制
门锁电机不需要精确调速,但需要控制启动电流。直接全压启动,电流冲击很大,可能把电源拉垮。
PWM调速的原理很简单:占空比越大,平均电压越高,电机转速越快。但门锁应用里,我们更关心的是电流限制。
我常用的方法是:
- 启动时用低占空比(比如30%),让电机慢慢转起来
- 检测电流,如果没超过阈值,逐步提高占空比
- 如果电流超过设定值,立即降低占空比
电流检测怎么做?最简单的是在H桥下管串联一个采样电阻。电阻两端的电压除以电阻值,就是电流。采样电阻要选功率大的,我一般用0.01Ω、2W以上的。
// 伪代码:电流限制PWM控制
void motor_start() {
uint8_t duty = 30; // 初始占空比30%
while (duty < 100) {
set_pwm_duty(duty);
uint16_t current = read_current();
if (current > CURRENT_LIMIT) {
duty -= 5; // 超限,降低占空比
} else {
duty += 2; // 正常,缓慢提升
}
delay_ms(10);
}
}
注意:电流采样电阻的布局很关键。要靠近H桥,走线要短粗。我吃过一次亏,采样线走得太长,引入了噪声,导致电流检测不准,电机一直保护性降速。
4.4 堵转保护电路
门锁电机最怕什么?堵转。门卡住了,或者锁舌顶死了,电机还在使劲转。这时候电流会飙升到正常值的5到10倍。不保护的话,几分钟就能烧掉电机和MOS管。
堵转保护,说白了就是检测到电流过大且持续一段时间,就关断电机。
我的实现思路是这样的:
- 硬件层面:用比较器监测采样电阻电压,超过阈值直接触发硬件关断
- 软件层面:MCU定时读取电流值,如果连续200ms超过堵转阈值,就执行保护动作
硬件保护比软件快。我习惯两者都用,硬件做第一道防线,软件做第二道。万一比较器误触发,软件还能恢复。
堵转保护后的处理也很重要:
- 立即关断所有MOS管
- 等待1到2秒
- 尝试反向转动一小段,看看能不能解除堵转
- 如果连续3次尝试都失败,就彻底停止,上报故障
避坑指南:我曾经遇到过一个问题:电机堵转保护后,用户反复按开关,MCU反复尝试启动,结果MOS管过热损坏。后来我加了保护锁定机制——堵转保护触发后,必须断电重启才能恢复。这个经验分享给你,少走弯路。
最后,画一张H桥驱动电路的核心逻辑图,帮你理清思路:
这张图把整个驱动链路串起来了。MCU发PWM信号,栅极驱动芯片做电平转换和死区控制,H桥功率级驱动电机。电流采样电阻把电流转换成电压,一路送给比较器做硬件保护,一路送给MCU做软件保护。两层保护,双重保险。
好了,电机驱动这块就讲到这里。记住一句话:H桥设计,安全第一。死区时间、电流限制、堵转保护,一个都不能少。
公众号:蓝海资料掘金营,微信deep3321