2. 电机驱动原理:直流电机模型、H桥电路、MOSFET开关特性

做电机控制,说白了就是跟三个东西打交道:电机本身、驱动它的电路、还有控制电流的开关。这三样搞不明白,PWM调得再好也是白搭。我见过不少新手,上来就调PID参数,结果电机嗡嗡响就是不转——其实就是驱动级没弄对。

2.1 直流电机的等效模型

先看电机。直流电机从外面看是个旋转的负载,从电路看其实就是一个电阻串一个电感,再加一个反电动势。

直流电机等效电路模型:

电枢回路方程:V_a = R_a * i_a + L_a * di_a/dt + E_b
反电动势:    E_b = K_e * ω
电磁转矩:    T_e = K_t * i_a
机械方程:    T_e - T_L = J * dω/dt + B * ω

这里几个参数我得强调一下:

  • R_a —— 电枢电阻,通常几欧到几十欧。我遇到过一块板子,电机堵转电流只有标称值的一半,查了半天发现是PCB走线太长,线阻吃掉了一截电压。
  • L_a —— 电枢电感,决定了电流的上升斜率。电感太小,PWM纹波大;电感太大,电流响应慢。
  • E_b —— 反电动势,跟转速成正比。电机转得越快,反电动势越高,电流自然就小了。这就是为什么空载时电流很小。
  • K_e 和 K_t —— 在SI单位制下,这两个值数值相等。记住了,这是检查电机参数是否合理的一个快速方法。

经验之谈: 我习惯在选型阶段先估算电机的时间常数 τ = L_a / R_a。这个值决定了电流环的带宽上限。如果τ只有几百微秒,那PWM频率至少要10kHz以上才能有效控制电流纹波。

2.2 H桥电路拓扑

直流电机要正反转,就得用H桥。名字很形象——四个开关管摆成H形,电机在中间横杠上。

H桥电路拓扑与工作状态 Q1 (高侧) Q2 (高侧) Q3 (低侧) Q4 (低侧) 电机 M VCC (电源) GND 正转:Q1+Q4导通,电流从左向右流过电机 | 反转:Q2+Q3导通,电流从右向左流过电机 制动:Q3+Q4同时导通(低侧制动)或 Q1+Q2同时导通(高侧制动)

H桥有四种基本工作状态:

状态 导通的开关管 电机行为 电流路径
正转 Q1 + Q4 正向加速 VCC → Q1 → 电机 → Q4 → GND
反转 Q2 + Q3 反向加速 VCC → Q2 → 电机 → Q3 → GND
制动 Q3 + Q4 急停(能耗制动) 电机两端短路,能量消耗在MOSFET和电机内阻上
滑行 全部关断 自由减速 无驱动电流,反电动势通过体二极管续流

注意: 绝对不能让Q1和Q2同时导通,也不能让Q3和Q4同时导通。这就是所谓的“直通”或“穿通”。我曾经在调试时因为软件死区时间设得太短,导致上下管瞬间导通,MOSFET直接冒烟。从那以后,我每次改死区时间都会用示波器先确认一下。

2.3 MOSFET开关特性

H桥里的开关管,现在主流都是用MOSFET。MOSFET不是理想开关,它有三个关键特性直接影响PWM性能。

2.3.1 导通电阻 RDS(on)

MOSFET导通时,漏源之间有个电阻,叫RDS(on)。这个值通常在几毫欧到几十毫欧。电流流过它就会发热,功率损耗是 I² × RDS(on)。

举个例子,一个10mΩ的MOSFET,流过10A电流,导通损耗就是1W。如果散热没做好,温度一上来,RDS(on)还会增大——这是个正反馈,搞不好就热失控了。

2.3.2 开关损耗

MOSFET开关不是瞬间完成的。每次开通和关断,电压和电流会有重叠时间,这段时间里产生的损耗就是开关损耗。

开关损耗估算公式:

P_sw = 0.5 × V_DS × I_D × (t_rise + t_fall) × f_sw

其中 f_sw 就是PWM频率。频率越高,开关损耗越大。这就是为什么PWM频率不能无脑往上提。

我记得有个项目,客户要求PWM频率到40kHz,说是为了听不到噪声。结果MOSFET烫得能煎鸡蛋。后来算了一下,开关损耗占了总损耗的60%以上。最后换了栅极电荷更小的MOSFET才解决。

2.3.3 栅极电荷 Qg

MOSFET的栅极像个电容。要让它导通,得先给这个电容充电。Qg就是充满它需要的电荷量。

Qg越大,驱动电路需要提供的峰值电流就越大,开关速度也越慢。我一般选型时会看两个参数:

  • Qg —— 总栅极电荷,决定了驱动功耗
  • Vgs(th) —— 栅极阈值电压,一般在2-4V。实际驱动电压我习惯用10-12V,保证MOSFET完全导通

选型建议: 对于电机驱动,我倾向于选Qg在20-50nC之间的MOSFET。太小了电流能力不够,太大了开关损耗吃不消。另外,注意看数据手册里的“Miller plateau”——那是栅极电压平台期,跟开关速度直接相关。

2.4 续流二极管与死区时间

电机是感性负载。当MOSFET关断时,电感里的电流不能突变,必须有个回路让它继续流。这个回路就是续流二极管——通常是MOSFET内部的体二极管。

体二极管的恢复速度很关键。如果恢复太慢,在上下管切换时会造成瞬间短路。解决办法就是加死区时间——让上下管都关断一小段时间,等电流完全换向后再开通另一个管子。

参数 典型值 对PWM的影响
死区时间 100ns - 1μs 太短会直通,太长会失真
体二极管反向恢复 30 - 100ns 恢复慢会增加开关损耗
续流电流峰值 取决于电机电感 决定MOSFET的峰值电流定额

避坑指南: 我曾经在批量生产时发现一批板子电机噪音特别大。查了半天,发现是死区时间设置得太保守,导致PWM波形出现了明显的“台阶”。电机电流波形畸变,转矩脉动就大了。后来把死区时间从500ns调到200ns,问题解决。但前提是——你得确认MOSFET的开关速度跟得上。

2.5 小结

这一章我们聊了直流电机的等效模型、H桥的四种工作状态、MOSFET的三个关键参数,还有续流和死区的问题。这些东西看着基础,但实际项目中80%的PWM问题都出在这里。你想想看,如果连电机的时间常数都没算过,怎么定电流环带宽?如果连MOSFET的开关损耗都没估过,怎么选PWM频率?