2. 驱动器硬件架构:驱动芯片选型、H桥与MOSFET驱动电路、电流检测与反馈回路

好,咱们直接进入正题。这一章聊的是驱动器的“骨架”和“神经”——硬件架构。说白了,就是选什么芯片、怎么搭功率电路、怎么把电流信号抓回来。我做了这么多年步进驱动,见过太多“软件写得飞起,硬件一上电就炸”的案例。嗯,硬件是基础,基础不牢,地动山摇。

2.1 驱动芯片选型:DRV8825 vs TMC2209

选驱动芯片,我个人习惯先看三个指标:耐压、电流能力、静音需求。市面上最常见的两款,就是TI的DRV8825和Trinamic的TMC2209。它们俩定位不同,我分别说说。

DRV8825:皮实耐造的老将

DRV8825我用了很多年。它的优点是便宜、稳定、好买。最大支持2.5A峰值电流,32细分,内部集成了H桥和电流检测。我在一个工业标签机项目里用过它,连续跑了两年没出过问题。

但要注意,它的电流检测是内部采样电阻,精度一般。如果你对电流纹波要求高,得自己加外部滤波。另外,它的步进模式是固定的,想改微步数得重新配置引脚电平,有点麻烦。

关键参数对比(DRV8825):

  • 供电电压:8.2V – 45V
  • 最大电流:2.5A(峰值)
  • 微步:1/32
  • 封装:HTSSOP-28
  • 特点:内部电流检测,无需外部采样电阻

TMC2209:静音与顺滑的代名词

TMC2209是我近几年项目里的首选。为什么?因为它有StealthChop2静音技术StallGuard2堵转检测。说白了,电机转起来几乎听不到声音,而且还能在堵转时自动报警。我在一个医疗注射泵项目里用过,护士说“这机器怎么没声音?”——这就是效果。

不过,TMC2209的电流能力稍弱,最大2.0A RMS。而且它需要外部配置UART或SPI来调参数,对新手来说门槛高一点。我个人建议:如果做静音、低振动的设备,闭眼选TMC2209;如果做高扭矩、低成本的产品,DRV8825更合适。

我的选型口诀:

要静音,选TMC;要皮实,选DRV;要省钱,看预算。

参数 DRV8825 TMC2209
最大电压 45V 29V
最大电流(RMS) 1.5A 2.0A
微步 1/32 1/256
静音技术 StealthChop2
堵转检测 StallGuard2
接口 Step/Dir Step/Dir + UART
典型价格 ¥8-12 ¥15-25

2.2 H桥与MOSFET驱动电路

H桥是驱动器的“心脏”。说白了,就是四个开关管(MOSFET)组成一个H形电路,控制电流方向。我见过很多新手直接拿单片机的IO去推MOSFET,结果烧得一塌糊涂。为什么?因为MOSFET的栅极需要足够的驱动电压和电流,否则会工作在线性区,发热巨大。

H桥的基本结构

一个标准的H桥由两个上管(Q1、Q3)和两个下管(Q2、Q4)组成。上管通常是P沟道MOSFET,下管是N沟道。但P沟道MOSFET的导通电阻大、价格贵,所以现在主流方案是全N沟道H桥,配合自举电路来驱动上管。

我在一个3D打印机项目里用过全N沟道方案,用的是IR2104半桥驱动芯片。它内部集成了自举二极管和死区时间控制,非常方便。你只需要给一个PWM信号,它就能自动生成互补的上下管驱动信号。

H桥驱动电路设计要点:

  • 死区时间:上下管不能同时导通,否则会直通短路。一般设置100-500ns的死区。
  • 栅极电阻:限制MOSFET的开关速度,防止振铃。我习惯用10-22Ω。
  • 自举电容:给上管栅极供电,典型值0.1-1μF,耐压要高于母线电压。
  • 续流二极管:保护MOSFET免受反向电压冲击,用快恢复二极管或肖特基管。

MOSFET选型

MOSFET选型,我主要看三个参数:Vds(漏源击穿电压)、Rds(on)(导通电阻)、Qg(栅极电荷)。Vds要留1.5倍余量,比如24V系统选40V的管子。Rds(on)越小越好,但Qg会变大,开关损耗增加。这是个取舍。

我曾经在一个48V系统里选了60V的MOSFET,结果电机反电动势把管子击穿了。后来换成100V的,再也没出过问题。嗯,这里要注意:步进电机在急停或换向时,会产生很高的反电动势,所以MOSFET的耐压一定要留足余量。

避坑指南:

我曾经在MOSFET的栅极和源极之间忘了加10kΩ下拉电阻,结果上电瞬间MOSFET误导通,直接短路烧了保险丝。从那以后,我每个MOSFET的栅源之间都加一个10-100kΩ的电阻,确保上电时是关断状态。

2.3 电流检测与反馈回路

电流检测是驱动器的“眼睛”。没有准确的电流反馈,你就不知道电机实际走了多少力。步进电机驱动本质上是电流环控制,所以检测精度直接决定了驱动性能。

检测方式:采样电阻 vs 霍尔传感器

最常用的方法是在H桥下管串联一个低阻值采样电阻(比如0.1Ω),然后用差分放大器测量电阻两端的电压。这种方法成本低、精度高,但采样电阻会发热,要选功率足够的(比如2W以上)。

另一种方式是霍尔电流传感器,比如ACS712。它不需要串联电阻,隔离性好,但成本高、带宽低。我一般只在需要隔离的场合用,比如高压系统。

我的经验:

采样电阻的布局很重要。我习惯把采样电阻放在靠近GND侧,这样共模电压低,放大器容易处理。另外,采样电阻的焊盘要加粗,否则大电流会烧断铜箔。我曾经在一个样板里用了0.5mm宽的走线,结果10A电流直接把它熔断了。

反馈回路:PI调节与电流纹波

电流反馈信号经过放大后,送入MCU的ADC或比较器。MCU根据目标电流和实际电流的误差,调整PWM占空比。这就是PI调节器。比例系数Kp决定响应速度,积分系数Ki决定稳态精度。

我一般先调Kp,让电流能快速跟踪目标值,再调Ki消除稳态误差。但Ki不能太大,否则会振荡。我记得在一个项目中,Ki设得太大,电机在低速时“嗡嗡”响,就是电流环在振荡。后来把Ki减小一半,问题解决了。

电流检测电路设计要点:

  • 差分放大器:用INA180或AD8418这类专用电流检测放大器,共模抑制比高。
  • 低通滤波:在ADC输入端加RC低通滤波,截止频率设为PWM频率的1/10左右。
  • 保护电阻:在放大器输入端串联1kΩ电阻,防止过压损坏。
  • 参考电压:如果MCU的ADC是3.3V,要确保电流检测信号不超过3.3V。

好了,这一章的内容就这些。硬件架构是驱动器的根基,选对芯片、搭好H桥、抓准电流,后面的软件控制才能发挥出来。下一章我们聊聊软件层面的电流环和速度环实现,到时候见。