今天介绍几个有刷直流电机驱动芯片。

图片

有刷直流电机简单来说就是接出俩正负极,给它正向供电就正转,反向供电就反转的那种。玩具里那种小马达就是了。

由于芯片的GPIO口能承受的电流大小都不高,所以基本无法直接驱动电机。

我们要么自己搭一个驱动电路要么就是直接使用电机驱动芯片。

今天介绍俩(原本是仨的,写完俩发现内容还挺多就不加了),第一个TB6612大家应该不太陌生,江科大的STM32教程里用的就是它,某宝一搜电机驱动模块就会出来一堆的TB6612模块。(所以可以给芯片厂商提个醒,可以投广告到教学视频里啊,万一视频火了,以后人家买的都是你的芯片)

然后和TB6612一起卖的还有DRV8833,说是平替,可以直接替换,所以今天也讲讲DRV8833,看看有哪些区别。

图片

从价格上看,TB6612一个芯片差不多得两块多(模块加了仨电容就卖五六块以上,我甚至看到卖十多块的)。

DRV8833一个芯片的价格就可以压到一块钱左右了,和TB6612相比价格直接腰斩。

所以同志们呐,如果是比赛或者是项目要用到电机驱动芯片,咱还是买芯片回来自己画外围电路吧,在某宝商家眼里我们都是嗷嗷待宰的羔羊呐。

芯片加几个电容电阻就是模块,然后价格就可以翻一翻,甚至排针还不给你焊,焊排针的话还

图片

(顺带一提,我超喜欢周一围)

你说你不会画,还是老老实实加钱买模块省事?我这不就开始教你了嘛!

第一个TB6612。

图片

我们普通使用就关注两个参数,最高给电机供电是15V,电流峰值是3.2A,平均电流是1.2A。

小电机基本都能带动。

图片

接着看看它的引脚,一共是24个。

我们依次来看。

AO1和AO2这俩是接到电机的两极上的。

我们可以看到AO1占了两个引脚,这是因为单一一个引脚可能承受不了大电流,所以我们在走线的时候要把这俩引脚走线在一起,并且尽可能大的加粗走线的宽度。

AO2,BO1,BO2也是一样的。

有AO和BO,就表示TB6612是可以同时控制两个电机的。

PWMA/B就是分别控制A电机和B电机的,PWM的占空比越大,电机转的也就越快。

一起控制电机转动的还有AIN1/2、BIN1/2。

关于如何控制电机,我们后面再说。

STBY这个可以看成是使能引脚,给它高电平芯片才会工作,给低电平就不工作。

VM是电源正极,不过是给电机供电的,刚刚看了,最高是可以供15V的,但是最好不要这么极端。

VCC就和我们主控芯片的电源一样,因为AIN、BIN、PWMA/B是要接到主控芯片上的,所以VCC是逻辑电源,VCC最高是6V(最好也不要)。

具体参数参考下表。

图片

然后关于如何控制电机,我们参考下表和示意图,我就讲一遍哈,因为电机驱动芯片都差不多一样的原理,所以以后介绍其他芯片的时候我就不讲如何使用了,就单单介绍一下参数和外围电路。

图片

我们以电机A为例,AO1和AO2分别接到电机的两端,让两端有电压差,那么电机转动,而控制AO1和AO2的是AIN1和AIN2,所以我们只需要让AIN1和AIN2一个高电平一个低电平就行,具体谁高谁低这就会决定电机是正转还是反转了。

那么PWMA是做什么用的呢?

如果我们就直接给电机两端供电,那么电机就会以固定的速度旋转,但如果我们供电一下再断开,供电一下再断开,电机就会断断续续地旋转,如果我们供电断开的速度够快,那么就可以达到控制电机转速的效果了,这和PWM呼吸灯是一样的原理。

PWMA的占空比越大,电机A的转速也就越大,如果我们就是像让它以最高转速工作,那么我们直接给高电平即可。

知道怎么玩这个芯片之后我们再看看外围电路。

图片

外围电路相当简单,电机电源和逻辑电源处各加俩电容,100nf和10uf的。

加完之后就是模块了,你就可以把物料成本翻个两三番去卖了。

甚至我们一般买到的模块只有三个电容,它们把VCC的10uf电容省掉了。

虽然影响不大吧,但就是很不爽。

接下来是DRV8833,作为TB6612的平替,我们来看看它的实力如何。

图片

和TB6612相比,DRV8833的引脚少了8个。

少在了GND和AO上,TB6612的GND有很多个,并且每个AO都有两个引脚,但DRV8833却没这么做。

这样的后果就是DRV8833过电流的能力会减弱,我们等等来看看它的参数。

再比较一下它的引脚,发现有一些引脚和TB6612不一样,不是说好平替的吗,我们来看看这些不一样的引脚。

nSLEEP,这个和使能引脚差不多,给低电平就进入睡眠模式,高电平就是正常工作模式。

nFAULT,这个是故障输出引脚,也就是说DRV8833有啥问题了,比如说过热过流之类的,它就会输出低电平,不需要的话我们不用它就行。

VCP这个是什么电源泵引脚,我们直接通过一个10nf的电容接到VM就行。

VINT通过2.2uf的电容接地。

AISEN和BISEN是TB6612没有的,同时DRV8833也没有PWMA/B。

AISEN和BISEN是电流控制,公式如下:

图片

不需要的话直接接地。

那DRV8833没有PWM,如何控制电机转速呢?

图片

答案就是固定一个IN端,给另一个IN端PWM,这样也可以达到一样的效果。

然后看看参数。

图片

VM范围是2.7~10.8V,电流峰值是2A,一般是1.5A。

并且我们能够发现DRV8833是没有VCC逻辑电压的,这也就意味着VM同时也给逻辑供电。

因此DRV8833和TB6612相比,它的VM最高电压以及过电流能力会弱一些,并且只适合小电机。

所以到底DRV8833能不能完美代替TB6612,还是得看各位具体的项目情况了,一般情况下小功率电机是可以直接替换的。

最后看看它的电路图。

图片

外围电路也就几个电容,也是很简单的。

同名公众号“折途想要敲代码”私信回复关键词"电机驱动"即可免费下载所有芯片手册。

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐