
1. 项目缘起与整体设计思路智能车竞赛里电机驱动板是绕不开的一道坎。很多队伍在调试阶段发现车子跑起来一顿一顿的、弯道响应慢半拍、电机发热严重追根溯源问题往往不在控制算法而是驱动板本身没设计好。我这次做的双路电机驱动板核心驱动芯片选的是DRV8701一颗单通道 H 桥栅极驱动器配合外置 MOS 管组成完整的 H 桥功率级。两块 DRV8701 并排布局就能独立控制左右两个直流有刷电机实现差速转向。为什么不用现成的 L298N 或者 TB6612 模块这是很多新手第一个会问的问题。L298N 是老牌方案内部双 H 桥接线简单但它的导通压降大得离谱典型值在 1.8V 到 3V 之间大电流下发热非常夸张效率低。TB6612 比 L298N 好不少导通内阻小支持 PWM 频率更高但它本质是一颗集成 MOS 的驱动芯片持续电流能力有限通常在 1.2A 左右峰值 3.2A对于稍微大一点的电机或者需要瞬时大扭矩的场景就力不从心了。DRV8701 不一样它只负责驱动外置 MOS 管的栅极功率级完全由你选的 MOS 决定。你选 IRF3205那就是 110A 的电流能力你选 AO3400那就是小电流紧凑方案。灵活性是它最大的优势而且外置 MOS 的导通内阻可以做到毫欧级别发热控制远好于集成方案。这次设计的定位很明确双路独立驱动、支持 7.4V 到 12V 供电、持续电流 5A 以上、峰值 15A、支持 20kHz 以上 PWM 频率、板载电流采样、带完整保护逻辑。目标是用在智能车竞赛的 B 型车模或者自制车模上驱动 RS-380 或者类似的直流有刷电机。整板尺寸控制在 45mm × 35mm 以内四层板设计方便固定在车模底盘上。整体架构上我把板子分成几个功能区左侧是电源输入和滤波中间是两路独立的 DRV8701 驱动电路右侧是电机输出端子和电流采样网络底部是控制信号接口。这种分区布局的好处是功率路径短、信号路径清晰减少强弱电之间的干扰。电源输入先经过一个防反接 MOS 和 TVS 管然后进入大容量电解电容和陶瓷电容组成的滤波网络再分别供给两路 H 桥。每路 H 桥由四个 N 沟道 MOS 管组成DRV8701 负责驱动上桥臂和下桥臂的栅极内部集成了电荷泵所以上桥臂不需要额外的自举电容这一点比 IR2104 那种半桥驱动器方便很多。控制接口方面每路 DRV8701 需要三个信号PH/EN 或者 PWM 加方向具体取决于你配置的模式。DRV8701 支持两种控制模式一种是 PH/EN 模式PH 控制方向EN 控制使能或者 PWM另一种是 PWM 模式两个输入分别控制上下桥。我选的是 PH/EN 模式因为智能车的控制逻辑通常是方向加 PWM 调速这种模式最直观。另外还有 nSLEEP 引脚用于低功耗休眠nFAULT 引脚用于故障反馈这两个信号我都引出来了方便主控监测驱动板状态。注意DRV8701 的供电范围是 5.9V 到 45V但逻辑电平是 3.3V 兼容的可以直接和 STM32 或者 TC264 这类主控连接不需要电平转换。这一点在选型时很关键省去了额外器件。2. 核心电路细节与关键参数解析2.1 DRV8701 外围电路设计要点DRV8701 的外围电路不算复杂但有几个地方容易踩坑。先看电源引脚VM 是电机供电输入VCP 是电荷泵输出需要接一个 1μF 的陶瓷电容到 VM这个电容必须是 X7R 或者 X5R 材质耐压至少 25V。我见过有人用 Y5V 的电容结果温度一高容量掉得厉害电荷泵工作不稳定上桥臂驱动波形直接畸变。VCP 和 VM 之间的电容是电荷泵的飞跨电容布局时要尽量靠近芯片引脚走线越短越好。GVDD 引脚是栅极驱动电压输出典型值 10V 左右需要接一个 1μF 到 10μF 的电容到地。这个电压决定了 MOS 管的栅极驱动幅度直接影响导通内阻。GVDD 电压越高MOS 管导通越充分但也不能超过 MOS 管的 VGS 最大值。大部分逻辑电平 MOS 管的 VGS 最大是 ±20V10V 驱动完全没问题。如果你选的 MOS 管是标准电平的VGS 阈值在 4V 左右10V 驱动也能让它完全导通。SH 引脚是上桥臂源极也就是 H 桥的输出节点需要连接到上桥臂 MOS 的源极和下桥臂 MOS 的漏极。这个节点是功率开关节点dv/dt 很高布局时要特别注意走线要短而粗减少寄生电感。寄生电感大了会导致开关瞬间电压尖峰严重时直接击穿 MOS 管。我一般会在这个节点加一个 RC 吸收电路10Ω 电阻串联 1nF 电容到地抑制高频振铃。GH 和 GL 分别是上桥臂和下桥臂的栅极驱动输出各串联一个 10Ω 到 22Ω 的栅极电阻。这个电阻的作用是限制栅极充电电流控制开关速度。电阻太小开关速度快但 EMI 大、振铃严重电阻太大开关损耗增加MOS 管发热。我实测下来20kHz PWM 频率下15Ω 的栅极电阻是比较平衡的选择。上桥臂和下桥臂的栅极电阻可以选一样的也可以下桥臂稍微小一点因为下桥臂的源极接地开关行为更可控。2.2 功率 MOS 选型与 H 桥布局MOS 管的选择直接决定了驱动板的电流能力和发热水平。我选的是IRF3205N 沟道VDSS 55VRDS(on) 8mΩID 110A。这个管子有点大材小用但胜在便宜、好买、耐造。实际工作时电机持续电流 5A峰值 15AIRF3205 的导通损耗是 I²R5A 时是 0.2W15A 时是 1.8W加上开关损耗总体发热在可接受范围内。如果你追求更小的体积可以选AO3400或者SI2302这类 SOT-23 封装的 MOS但电流能力会降到 5A 以下适合小功率场景。H 桥的布局是 PCB 设计的重头戏。四个 MOS 管组成一个 H 桥上桥臂两个下桥臂两个。布局时要把上桥臂 MOS 放在靠近电源输入的一侧下桥臂 MOS 放在靠近电机输出的一侧这样功率路径最短。每个 MOS 管的漏极和源极走线要尽量宽我一般用 80mil 到 100mil 的线宽或者直接铺铜。如果是四层板功率路径走在顶层和底层中间两层分别是地和电源平面这样寄生电感最小。提示H 桥的四个 MOS 管不要对称布局而是要按照电流流向布局。电流从电源正极进入经过上桥臂 MOS到电机再经过下桥臂 MOS回到电源负极。布局时让这个环路面积最小是降低 EMI 和电压尖峰的关键。自举电容的问题前面提过DRV8701 内部集成了电荷泵不需要外部自举电容。但电荷泵需要外部飞跨电容就是 VCP 和 VM 之间的那个 1μF 电容。这个电容的布局非常关键必须紧贴芯片走线长度控制在 5mm 以内。我见过有人把这个电容放在板子另一头结果上桥臂驱动电压不足MOS 管工作在线性区几分钟就烧了。2.3 电流采样与保护电路电流采样是智能车控制里的重要环节。有了电流反馈你可以做力矩控制、堵转保护、电流环 PID。DRV8701 本身不带电流采样需要外置采样电阻。我在每路 H 桥的下桥臂源极和地之间串了一个5mΩ 的采样电阻用差分运放放大后送给主控 ADC。5mΩ 的阻值选择是权衡的结果阻值太大功耗和压降大阻值太小信号弱容易被噪声淹没。5A 电流下5mΩ 产生 25mV 压降功耗 0.125W用 2512 封装的合金电阻完全能承受。差分运放我选的是INA240专门为电流采样设计的共模抑制比高支持 -4V 到 80V 的共模电压增益有 20V/V、50V/V、100V/V 几个版本。我用的是 50V/V 的版本5A 电流下输出 1.25V正好在 3.3V ADC 的量程内。INA240 的 REF 引脚接 1.65V 基准这样正负电流都能采样不过智能车场景下电机电流基本是单向的REF 接 GND 也可以。保护电路方面DRV8701 自带过流保护、过温保护、欠压锁定。过流保护的阈值由外接采样电阻和内部比较器决定具体公式在数据手册里有。我设置的是 20A 触发过流保护对应采样电阻上的压降是 100mV。过温保护是芯片内部结温超过 150°C 时自动关断这个不需要外部配置。欠压锁定是 VM 低于 5.9V 时关断输出防止 MOS 管在低电压下工作在线性区。另外我在电源输入端加了一个SMBJ15A 的 TVS 管钳位电压 24.4V用来吸收电机反电动势和电源浪涌。电机在急停或者换向时会产生很高的反电动势如果没有 TVS 管吸收很容易超过 MOS 管的 VDSS 导致击穿。SMBJ15A 的响应时间在皮秒级能有效保护功率级。3. 实操过程与核心环节实现3.1 原理图绘制与元件选型清单原理图绘制我用的是嘉立创 EDA主要是因为它元件库全、封装库和立创商城打通选型方便。整个原理图分三页第一页是电源输入和滤波第二页是两路 DRV8701 驱动电路第三页是电流采样和接口。分页的好处是逻辑清晰评审的时候一目了然。电源输入部分我用了XT30 接口支持 15A 持续电流比 JST 或者杜邦线靠谱得多。输入后先经过一个AO3401 P 沟道 MOS做防反接栅极通过一个 10kΩ 电阻下拉到地源极接输入正极漏极接负载。正常接入时MOS 管导通压降只有几十毫伏反接时MOS 管关断电路不通。这个防反接方案比二极管好二极管有 0.7V 压降大电流下发热严重。滤波网络用了两个 470μF 的电解电容并联再加四个 10μF 的陶瓷电容和两个 100nF 的陶瓷电容。电解电容负责低频滤波陶瓷电容负责高频去耦。布局时电解电容靠近电源输入陶瓷电容靠近 DRV8701 的 VM 引脚。这种大小电容搭配的方式能覆盖从几十赫兹到几十兆赫兹的噪声频段。DRV8701 的外围元件清单如下元件参数数量说明DRV8701栅极驱动器2每路一颗IRF3205N-MOS8每路 H 桥四颗采样电阻5mΩ 25122每路一颗INA240电流采样运放2增益 50V/V飞跨电容1μF 25V X7R2VCP 到 VMGVDD 电容4.7μF 16V X7R2GVDD 到地栅极电阻15Ω 06038每路四个去耦电容100nF 50V X7R4VM 和 GVDD 各两个TVS 管SMBJ15A1电源输入保护防反接 MOSAO34011P 沟道注意采样电阻一定要选合金电阻温漂小。普通厚膜电阻的温漂在 100ppm/°C 以上电流采样精度会随温度漂移。合金电阻的温漂在 50ppm/°C 以内5mΩ 的阻值在 50°C 温升下变化不到 0.5%。3.2 PCB 布局与走线实战PCB 布局我采用的是四层板叠层结构是顶层信号和功率、第二层地平面、第三层电源平面、底层信号和功率。四层板比两层板贵不了多少但性能提升明显。地平面完整回流路径短EMI 小很多。智能车竞赛对 EMI 有要求四层板是稳妥的选择。布局顺序是这样的先放 XT30 接口和电源滤波电容再放两路 DRV8701 和 H 桥最后放电流采样和信号接口。两路 H 桥左右对称布局中间用地平面隔开减少相互干扰。每路 H 桥的四个 MOS 管按照电流流向排列上桥臂两个 MOS 靠近电源平面下桥臂两个 MOS 靠近电机输出端子。功率走线全部用100mil 以上的线宽或者直接铺铜。我实测过100mil 的 1oz 铜厚走线载流能力在 5A 左右温升 10°C。如果走 15A 峰值电流线宽要加到 200mil 或者用 2oz 铜厚。为了保险我在功率路径上直接铺铜不依赖走线宽度。铺铜的时候注意功率地和信号地要分开最后在电源输入处单点连接这就是常说的星型接地。信号走线方面DRV8701 的控制信号线PH、EN、nSLEEP、nFAULT走 6mil 到 8mil 线宽尽量短远离功率走线。如果空间允许在信号线两侧包地减少串扰。电流采样运放的差分输入线要走等长、靠近最好走成差分对减少共模干扰。INA240 的输出线走模拟信号远离 PWM 信号线避免耦合噪声。过孔的使用也有讲究。功率路径上的过孔要多打几个每个过孔载流能力在 1A 左右5A 电流至少打 6 个过孔。过孔孔径用 0.3mm 到 0.4mm太大占空间太小加工成本高。信号过孔用 0.2mm 到 0.3mm 就够了。过孔不要打在焊盘上除非做塞孔工艺否则焊接时锡会流走过孔导致虚焊。3.3 焊接调试与上电测试焊接顺序是先焊矮的元件再焊高的元件。先焊 MOS 管、电阻、电容再焊 DRV8701最后焊接口和电解电容。DRV8701 是 HTSSOP 封装引脚间距 0.65mm焊接时容易连锡。我的做法是先用烙铁给焊盘上锡然后放芯片用热风枪 300°C 吹锡融化后芯片自动对齐。吹的时候不要用力压芯片表面张力会让它自动归位。吹完后用放大镜检查引脚有连锡的地方用助焊剂和吸锡线清理。上电测试分三步第一步不焊 MOS 管只焊 DRV8701 和外围元件上电测 GVDD 电压。正常应该是 10V 左右如果偏差超过 0.5V检查飞跨电容和 GVDD 电容。第二步焊上 MOS 管不接电机用示波器看 GH 和 GL 的波形。给 EN 引脚 20kHz PWM 信号GH 和 GL 应该有互补的方波输出死区时间在 100ns 左右。如果波形畸变或者没有输出检查 nSLEEP 是否拉高、nFAULT 是否正常。第三步接电机从小占空比开始慢慢加大观察电流采样输出和电机运转情况。提示第一次上电一定要用限流电源限流值设在 500mA。如果板子有短路限流电源会保护不会烧板子。我见过有人直接上锂电池结果 MOS 管焊反了一上电就冒烟。调试过程中我用示波器抓了 GH 和 GL 的波形。20kHz PWM 下上升沿和下降沿都很干净过冲在 2V 以内说明栅极电阻和布局都合理。电机空载电流 0.3A堵转电流 8A电流采样输出对应 0.15V 和 4V线性度很好。满载运行 10 分钟MOS 管表面温度在 45°C 左右DRV8701 表面温度在 40°C 左右都在安全范围内。4. 常见问题与排查技巧实录4.1 上电无输出或输出异常这是最常见的问题排查思路要按顺序来。先测 VM 电压如果 VM 正常但 GVDD 没有输出检查 nSLEEP 引脚是否拉高。DRV8701 的 nSLEEP 是低电平有效休眠必须拉高才能工作。很多人忘了这个引脚以为悬空就行实际上悬空时电平不确定芯片可能处于休眠状态。我一般用 10kΩ 电阻上拉到 3.3V确保高电平。如果 GVDD 正常但 GH 和 GL 没有输出检查 PH 和 EN 信号。PH/EN 模式下EN 为高时输出使能PH 决定方向。如果 EN 一直是低输出就是关断的。用示波器看 EN 引脚应该有 PWM 波形。如果没有检查主控的 PWM 输出配置或者信号线是否虚焊。如果 GH 有输出但 GL 没有或者反过来检查对应的栅极电阻和 MOS 管。栅极电阻虚焊或者阻值不对会导致栅极驱动电压不足。MOS 管焊反了栅极和源极短路也会导致没有输出。用万用表二极管档测 MOS 管的体二极管正常应该有一个 0.5V 左右的压降如果短路或者开路说明 MOS 管坏了。4.2 电机发热严重或驱动板发烫电机发热严重通常是 PWM 频率太低或者驱动波形有问题。PWM 频率低于 10kHz 时电机电流纹波大铜损和铁损都增加。我建议 PWM 频率设在 20kHz 以上超出人耳听觉范围电机运行也更平滑。如果 PWM 频率已经很高但电机还是烫检查驱动波形是否有振铃或者死区时间不够。死区时间不够会导致上下桥臂直通瞬间大电流烧 MOS 管。驱动板发烫先摸 MOS 管和 DRV8701。MOS 管发烫检查导通内阻和开关损耗。IRF3205 的 RDS(on) 是 8mΩ5A 电流下功耗 0.2W不应该烫。如果烫可能是栅极驱动电压不足MOS 管工作在线性区。测 GVDD 电压正常 10V如果只有 5V检查飞跨电容和 GVDD 电容。DRV8701 发烫检查 VM 电压是否超过 45V或者输出电流是否超过芯片的驱动能力。DRV8701 的栅极驱动电流是 1A 峰值驱动 IRF3205 这种大管子有点吃力如果 PWM 频率很高芯片会发热。解决办法是降低 PWM 频率或者换用栅极电荷更小的 MOS 管。4.3 电流采样噪声大或不准电流采样噪声大首先是布局问题。采样电阻的走线要开尔文连接即从采样电阻的两个焊盘分别引出两根线到运放不要从电阻中间引线。开尔文连接能消除焊盘和走线的寄生电阻影响。INA240 的差分输入线要走等长、靠近最好包地。如果噪声还是大在运放输出加一个 RC 低通滤波截止频率设在 10kHz 左右能滤掉大部分开关噪声。采样不准检查采样电阻的阻值精度和温漂。5mΩ 的电阻如果精度是 1%误差就是 0.05mΩ5A 电流下误差 0.25mV对应运放输出误差 12.5mVADC 采样误差在 1% 左右。如果精度要求高选 0.5% 或者 0.1% 的电阻。另外检查 INA240 的 REF 引脚电压如果 REF 不是精确的 1.65V输出会有偏置。我用的是 TL431 产生的 1.65V 基准精度 0.5%够用了。4.4 常见问题速查表现象可能原因排查方法解决办法上电无输出nSLEEP 未拉高测 nSLEEP 电压10kΩ 上拉到 3.3VGVDD 无电压飞跨电容虚焊测 VCP 到 VM 通断重新焊接电容GH 无输出PH/EN 信号异常示波器看 EN 引脚检查主控 PWM 配置电机发热PWM 频率低测 PWM 频率提高到 20kHz 以上MOS 管发烫栅极驱动不足测 GVDD 电压检查 GVDD 电容电流采样噪声大布局不合理检查采样走线开尔文连接加 RC 滤波电流采样不准采样电阻精度低测电阻阻值换 0.5% 精度电阻上电冒烟MOS 管焊反测体二极管重新焊接 MOS 管注意调试时一定要用限流电源这是保命的手段。我见过太多人直接上电池一烧就是一片。限流电源设在 500mA即使有短路也不会烧板子最多就是电源进入恒流模式电压拉低。5. 实测性能与优化方向板子打样回来焊好之后我做了完整的性能测试。供电用 3S 锂电池电压范围 9V 到 12.6V。电机用 RS-380空载电流 0.3A堵转电流 8A。PWM 频率 20kHz死区时间 100ns。测试项目包括空载运行、满载运行、堵转保护、电流采样线性度、温升测试。空载运行时电机运转平滑噪音很小。示波器看电机两端电压PWM 波形干净过冲在 1V 以内。满载运行时电机电流 5A驱动板温升 15°CMOS 管表面温度 45°CDRV8701 表面温度 40°C。堵转测试时电流迅速上升到 8A过流保护在 20A 触发实际堵转电流没到保护阈值电机和驱动板都安全。电流采样线性度测试从 0A 到 8A采样输出从 0V 到 4V线性拟合 R² 达到 0.999精度满足控制需求。优化方向有几个。一是把采样电阻换成 2mΩ降低功耗和压降但需要运放增益更高INA240 有 100V/V 的版本可以用。二是把 MOS 管换成CSD18540或者BSC0902NS这类低栅极电荷的管子降低开关损耗允许更高的 PWM 频率。三是把 DRV8701 换成DRV8703它支持 SPI 配置可以动态调整过流阈值和死区时间更灵活。四是把电流采样从下桥臂采样改成 inline 采样放在 H 桥中间这样正反转都能采样不过需要支持高共模电压的运放。我个人在实际操作中的体会是DRV8701 这颗芯片非常适合智能车竞赛的电机驱动场景。它的外围电路简单不需要自举电容电荷泵集成在内部布局难度低。外置 MOS 的设计让功率级完全可定制你可以根据电机功率选合适的管子。唯一需要注意的是栅极驱动能力有限驱动大栅极电荷的 MOS 管时芯片会发热选型时要看 MOS 管的 Qg 参数尽量选 Qg 小于 50nC 的管子。最后再分享一个小技巧PCB 打样的时候可以多打几块焊接的时候先焊一块测试板验证原理图和布局没问题再批量焊接。测试板上电前先用万用表测一遍电源和地的通断确认没有短路。上电时用限流电源观察电流是否正常。这些步骤看起来繁琐但能帮你省下不少烧板子的钱和时间。