从上图可看出,此电机驱动电路由4个NMOS管构成,形如H型,故名全H桥电路。通过控制4个MOS管的导通与截止达到对中间电机的不同控制效果。NMOS管的栅极为高电平时导通,低电平时截止。
当Q1、Q4的栅极为高电平,Q2、Q3为低电平时,Q1,Q4导通,如下图所示,电机正向旋转。
当Q2、Q3的栅极为高电平,Q1、Q4为低电平时,Q2,Q3导通,如下图所示,电机反向旋转。
可打开下面两篇文章详细了解。
慢速,混合和快速衰减模式
步进驱动器中的电流衰减
1.此处我也进行大致讲解:
所谓衰减模式,可简单理解为如何使电机停下:如果控制电机一直向一个方向旋转不会产生问题。但是如果这是想让电机停下,那么问题就来了。由于电机是感性负载,电流不能突变。在断开电机两端所加的电压时,电机产生的反向电动势很有可能损坏FET。因此想让电机停下,除了断开供电,还要形成一个续流的回路,释放掉电机上的能量。
2.驱动和衰减模式图:(来源于数据手册)
图中添上了FET的寄生二极管。
以左侧正向旋转的图为例:
1.首先电机正向旋转,电流流向如①线所示;
2.如果此时采取滑动/快衰减模式:四个MOSFET关断,电机上的电流会通过Q2和Q3的寄生二极管继续流动,如②线所示。可发现,此时电流的流向是与电源电压相反的,因此电流衰减很快,当电流衰减为0时,由于FET是关断的,电源电压不会加在电机上,电机会逐渐停下。
3.如果采取制动/慢衰减模式:Q2、Q4导通,Q1、Q3关断。电机上的电流通过Q2和Q4继续流动,如③线所示,电机上的能量会逐渐消耗在电机本身和Q2、Q3上,这样的电流衰减相对较慢。
★ ★ ★ 有一点需要特别注意:快慢衰减指的是电流,而不是电机转动的速度。 ★ ★ ★
控制直流电机时,在快衰减模式下,由于电流迅速下降,那么电感电机上储存的能量就会释放很慢(简单理解E=I^2R),电机会逐渐停止,因此该模式又叫滑动;
而在慢衰减模式下,电机的两端类似于短接,电流很大且衰减慢,储存的能量被瞬间释放,此时电机会瞬间停止,因此该模式又叫制动。
下面这篇文章很好地对其进行了解释:
The Difference Between Slow Decay Mode and Fast Decay Mode in H-Bridge DC Motor Applications
★H桥中绝对不能出现同侧(左侧/右侧)的FET同时导通的情况,因为这样会导致电流不经过电机直接到地,形成短路!因此在状态切换时需要一步一步来,而集成H桥的芯片一般会在内部自动解决这个问题(利用死区控制),如下图所示:在正转和制动之间切换时,会有一个过渡状态(OFF)。
★此处还需补充一个知识:MOS管的高端与低端驱动。简单来说,高端驱动即MOS管在负载的高电位一端;相反低端驱动即MOS管在负载的低电位一端。如上图所示:Q1、Q3为高端驱动,Q2、Q4为低端驱动。在H桥中也常常被称为上臂和下臂。
★此外,如果对MOS管原理有所了解,则可看出,打开高端NMOS所需的栅极电压会比打开低端NMOS所需的栅极电压大很多(要高于驱动电源电压)。(因为开启需要条件Vgs>Vth,而高端FET的源极电位较高,几乎接近电源电压)
★驱动电压越大,转速越快;电流越大,扭矩越大;
★当扭矩<负载时,电机转速会下降,电流上升从而增大扭矩。当负载非常大,电机带不动从而停止转动时(堵转),电流达到最大值,此时需特别注意,很有可能烧坏电机驱动。
由于驱动直流电机需要的电流很大,单片机I/O的驱动能力是远远达不到的。因此需要使用专用的电机驱动芯片。此款电机驱动芯片即是基于上述的H桥电路。芯片中共有两个全H桥。因此最多可以同时驱动两个直流电机或一个步进电机。(对于步进电机的驱动在我的另外一篇文章进行了详细介绍)
★电源供电电压2.7~10.8V,每个H桥输出的均方根(RMS)电流为1.5A,峰值可达2A。
★内置过热保护和用户可调的限流保护电路。
引脚名称 | 引脚标号 | I/O | 功能 | 引脚名称 | 引脚标号 | I/O | 功能 |
---|---|---|---|---|---|---|---|
nSLEEP | 1 | I | 睡眠模式控制,高电平使能芯片,低电平进入睡眠模式(关闭芯片) | BIN1 | 9 | I | H桥B的逻辑输入1脚 |
AOUT1 | 2 | O | H桥A的输出1脚 | BIN2 | 10 | I | H桥B的逻辑输入2脚 |
AISEN | 3 | O | H桥A的电流控制,可通过一个电阻接地限制电流(不限电流时直接接地),详见后面介绍 | VCP | 11 | IO | 用于高端FET栅极驱动电压,需要一个10nF,耐压16V的陶瓷电容接到VM脚 |
AOUT2 | 4 | O | H桥A的输出2脚 | VM | 12 | – | 电机电源供应2.7V-10.8V,需要一个10uF的滤波电容接地 |
BOUT2 | 5 | O | H桥B的输出2脚 | GND | 13 | – | 器件接地脚 |
BISEN | 6 | O | H桥B的电流控制,可通过一个电阻接地限制电流(不限电流时直接接地),详见后面介绍 | VINT | 14 | – | 芯片内部稳压器的输出(3.3V),需要一个2.2uF,耐压6.3V的滤波电容接地 |
BOUT1 | 7 | O | H桥B的输出1脚 | AIN2 | 15 | I | H桥A的逻辑输入2脚 |
nFAULT | 8 | OD | 当温度过高或通过电流过大时会输出低电平进行提示 | AIN1 | 16 | I | H桥A的逻辑输入1脚 |
★由于MOS管导通后会产生一定的饱和压降(Vsat,不同芯片有较大差异,具体看手册),因此在选择驱动电压VM时,可以接近或比所用电机额定电压稍高。
★芯片逻辑电压VINT的选择要根据所用单片机的逻辑电平决定。如果单片机是5V逻辑电平,则VINT同样选择5V输入。
框图中也包含了芯片外部所需要的元件,主要是三个电容以及两个电流检测电阻(电阻可不接)。
当温度过高,温度检测保护模块会使nFAULT所接的FET导通拉到低电平,同时H桥转成衰减模式,不再给电机供电。
1. 通过xIN1和xIN2给出四种逻辑组合“00”、“01”、“10”、“11”,然后通过中间的逻辑控制转换电路令相应的FET导通或截止,从而对应产生四种输出效果。(需注意:xIN1和xIN2并非直接控制H桥的栅极电压,只是给出所需功能对应的逻辑组合信号)
2.xISEN脚接电阻用于限制通过的电流。整理一下即如下图所示。
当电机转动时,电流流过电阻,在xISEN处产生电压(即将电流转成电压进行检测)。然后与200mV的参考电压比较,如果大于200mV,则比较器输出低电平,同样使nFAULT拉低,H桥转成衰减模式,不再给电机供电。
如果不需要限流,则xISEN脚直接接地即可。
限流电阻大小的选择:
R X I S E N = 200 m V I C H O P , 其 中 R X I S E N 为 所 需 的 电 阻 值 , I C H O P 为 设 定 的 限 流 值 。 R_{XISEN}=\frac{200mV}{I_{CHOP}},其中R_{XISEN}为所需的电阻值,I_{CHOP}为设定的限流值。 RXISEN=ICHOP200mV,其中RXISEN为所需的电阻值,ICHOP为设定的限流值。
下表为最基础逻辑控制表:
借助此表便可对直流电机进行简单的驱动与制动(此时电机工作于全速状态,无速度控制)。
把xIN1和xIN2分别接到单片机I/O口,xOUT1和xOUT2接到直流电机两端。
当控制xIN1为1,xIN2为0时,电机便正转。
★再进一步便可借助PWM对电机转速进行控制,如下表所示:
以xIN1为PWM,xIN2为0为例,电机在正向转动模式与快衰减模式之间不断切换。
波形图类似如下:前面提到,电压的大小决定直流电机转速。从第三个图V12=Vout1-Vout2可看出,加在电机两端的电压变化随着PWM变化,则其平均值Vave=D*Vcc(D为PWM占空比,VCC为驱动电压)也随着占空比的增大而增大,从而速度也相应增加;反之则降低。
把上表归纳总结一下:
1.当xIN中有一个恒为低电平,另一个为PWM时:采取正反转与滑动/快衰减,占空比越大,转速越快。
2.当xIN中有一个恒为高电平,另一个为PWM时:采取正反转与制动/慢衰减,占空比越小,转速越快。
PWM调速模式下快慢衰减的选择:
★配合慢衰减调速时,当转速较低会产生抖动;而配合快衰减调速会更平滑一些。
★配合快衰减调速相比慢衰减调速,速度会更快,但扭矩会更小。
★如上图所示:此芯片在结构上唯一不同之处在于,H桥的高端驱动变成了两个PMOS管,低端驱动同样为两个NMOS管。
★由于PMOS管是栅极为低电平时导通,因此不像前一个芯片需要极大的高端驱动NMOS栅极电压。该芯片也因此无VINT引脚(该脚位空脚)。
★在性能上,此芯片相当于低电流版本:输出RMS电流只能0.7A,峰值电流1A。
TB6612FNC是东芝半导体公司的一款电机驱动芯片,也是集成了两个全H桥。在应用上基本与DRV8833相似,但性能更好,价格也相对较高。
★电源供电电压2.5~13.5V,H桥输出的平均电流1.2A,最大可到3.2A。(可见驱动能力比DRV8833略强)
★内置过热保护和低压检测关断电路
★PWM控制的频率可达100kHZ
此芯片的很多引脚其实是重复的,是从同一处引出的,这样在接线时可增加接触面积,从而提高可通过的电流。
引脚名称 | 引脚标号 | I/O | 功能 | 引脚名称 | 引脚标号 | I/O | 功能 |
---|---|---|---|---|---|---|---|
AO1 | 1 | O | H桥A的输出1 | VM2 | 13 | – | 电机电源供应2.5~13.5V,需要一个100nF和10uF的滤波电容接地 |
AO1 | 2 | O | 同1脚 | VM3 | 14 | – | 同13脚 |
PGND1 | 3 | – | H桥A的电机电源地 | PWMB | 15 | I | H桥B的PWM输入 |
PGND1 | 4 | – | 同3脚 | BIN2 | 16 | I | H桥B的逻辑输入2 |
AO2 | 5 | O | H桥A的输出2 | BIN1 | 17 | I | H桥B的逻辑输入1 |
AO2 | 6 | O | 同5脚 | GND | 18 | – | 信号地 |
BO2 | 7 | O | H桥B的输出2 | STBY | 19 | I | 待机模式控制,高电平(3.3V/5V)使能芯片,低电平进入待机状态 |
BO2 | 8 | O | 同7脚 | VCC | 20 | – | 给内部逻辑电路供电(3.3V/5V均可),需要一个100nF和10uF的滤波电容接地 |
PGND2 | 9 | – | H桥B的电机电源地,实际与3脚相连 | AIN1 | 21 | I | H桥A的逻辑输入1 |
PGND2 | 10 | – | 同9脚 | AIN2 | 22 | I | H桥A的逻辑输入2 |
BO1 | 11 | O | H桥B的输出1 | PWMA | 23 | I | H桥A的PWM输入 |
BO1 | 12 | O | 同11脚 | VM1 | 24 | – | 同13脚 |
★一般会将VCC与STBY接在一起然后共同接到3.3V或5V,此时芯片不会进入待机模式。
从上面的TB6612的功能框图可发现,其与DRV8833最大不同即在输入控制上,除了输入1和输入2,还有一个PWM输入脚。下面就看看TB6612具体的控制方式。
CW(Clockwise顺时针):即正向旋转;
CCW(Counterclockwise逆时针):即反向旋转;
Stop(自由停车):即前述的滑动/电流快衰减;
Short brake(刹车):即前述的制动/电流慢衰减;
Standby(待机):即芯片不工作
仔细观察上表,可发现其相比于DRV8833的控制,不同在于多了一个PWM脚。
★如果令PWM输入脚一直为高电平,即只通过IN1和IN2控制电机的四个状态(旋转时为满速状态),这便是最基础的控制。
★当加入了PWM后,便可和之前一样,通过占空比调节速度。
1.一种是IN1和IN2固定,PWM脚输入PWM,此时是配合慢衰减调速。例如:IN1为1,IN2为0,PWM为PWM,则正转和慢衰减相互切换;
2.另外一种是PWM脚为高电平,IN1、IN2中的一个固定另一个为PWM输入,此时是配合快衰减调速。例如,IN1为1,IN2为PWM输入,PWM为1,则正转与快衰减相互切换。
★PWM的频率一般选在5k~20kHz;
A4950是美国埃戈罗公司生产的一款单H桥电机驱动芯片。因此网上卖的模块多是使用两块芯片以达到可以控制两个直流电机的能力。
★电机驱动电压:8~40V,输出最大电流可达3.5A;
★内置过温保护,短路保护和可选择的过流保护;
引脚名称 | 引脚标号 | I/O | 功能 |
---|---|---|---|
GND | 1 | – | 接地 |
IN2 | 2 | I | H桥逻辑输入1 |
IN1 | 3 | I | H桥逻辑输入2 |
VREF | 4 | I | 逻辑电压和用于限流比较的电压,一般接5V |
VBB | 5 | – | 电机驱动电压(内部对其处理后供给逻辑电路) |
OUT1 | 6 | O | H桥输出1 |
LSS | 7 | I | H桥的电流控制,可通过一个电阻接地限制电流(不限电流时直接接地) |
OUT2 | 8 | O | H桥输出2 |
PAD | – | – | 用于散热 |
通过引脚说明和功能框图可看出,此芯片不同之处有:
★只有单H桥,因此引脚较少;
★限流比较的参考电压由外部给出(VREF脚);因此限流值Isense=Vref/10/Rsense。如上面的模块中,Vref接5V,Rsense为R250精密检测电阻(0.25Ω),因此限流值为2A。
★当IN1和IN2均保持低电平1ms,芯片进入待机模式。而不是通过引脚直接控制。
经过对比发现,此芯片的驱动逻辑与上述的DRV8833PWP芯片一模一样,因此不再单独讲解。
L298N是ST公司的一款电机驱动芯片,也是集成了双H桥,但与上面两个略有不同。
★电机驱动电压3~48V;可持续工作的输出电流为2A,峰值可达3A。
★如上图,L298N模块明显比前两个芯片模块外接的元件多,这与L298N的内部结构有关(下面将介绍)。
★如上图,由于该芯片在H桥上的损耗严重发热较明显(饱和压降大),需要加装散热片,因此在使用上比前两个芯片复杂,体积也相对较大。
引脚名称 | 引脚标号 | I/O | 功能 | 引脚名称 | 引脚标号 | I/O | 功能 |
---|---|---|---|---|---|---|---|
Sense A | 1 | O | H桥A的电流控制,可通过一个电阻接地限制电流(不限电流时直接接地) | VSS | 9 | – | 给内部逻辑电路供电,一般接5V |
Out 1 | 2 | O | H桥A的输出1脚 | Input 3 | 10 | I | H桥B的逻辑输入1 |
Out 2 | 3 | O | H桥A的输出2脚 | Enable B | 11 | I | H桥B的使能控制端,高电平打开,低电平关闭 |
Vs | 4 | – | 电机驱动电压3~48V,需要一个100nF的滤波电容接地 | Input 4 | 12 | I | H桥B的逻辑输入2 |
Input 1 | 5 | I | H桥A的逻辑输入1 | Out 3 | 13 | O | H桥B的输出1脚 |
Enable A | 6 | I | H桥A的使能控制端,高电平打开,低电平关闭 | Out 4 | 14 | O | H桥B的输出2脚 |
Input 2 | 7 | I | H桥A的逻辑输入2 | Sense B | 15 | O | H桥B的电流控制,可通过一个电阻接地限制电流(不限电流时直接接地) |
GND | 8 | – | 接地 |
★由上表可发现:L298N有两个使能控制引脚可分别控制两个H桥是否使能。
★其余则和前两个芯片类似。
如上图所示:L298N的内部功能很多都类似,比如电流检测,H桥驱动,外接电容等;
★主要区别在于L298N的H桥采用了BJT而不是MOSFET。这就直接导致没有寄生二极管,无法像前两个芯片一样实现续流。因此需要外接8个续流二极管。因为频率不高,选用普通的整流二极管即可(如1N4007)。如下图所示:
★此芯片的电流检测脚Sense X并不像前面的芯片,其没有在内部进行电压比较从而限流,从数据手册上看,需要一个L297芯片配合进行限流。因此一般直接接地,不进行限流。
以H桥A为例:
Enable A | IN1 | IN2 | 工作模式 |
---|---|---|---|
0 | X | X | 滑动/快衰减 |
1 | 0 | 0 | 制动/慢衰减,用H桥下臂 |
1 | 0 | 1 | 反转 |
1 | 1 | 0 | 正转 |
1 | 1 | 1 | 制动/慢衰减,用H桥上臂 |
这也是最基础的控制方式(全速转动);
★如果想进行速度的控制,那么一种方法是对Enable A输入PWM, 当IN1=1,IN2=0时,即在正转与快衰减之间来回切换,与前面原理类似,占空比越大,速度越快。
★1.三款芯片的内部原理和控制方式大同小异。
★2.可通过两个H桥输出的并联控制一个直流电机,这样最大驱动电流可翻倍,这在芯片的数据手册中均有说明。
★3.以上三种芯片驱动能力排序:DRV8833 ★4.DRV8833、TB6612和A4950的体积小,外接元件少,使用简单;L298N体积大,外接元件多,使用相对复杂; ★5.个人认为:A4950在这4款芯片中是比较好的选择,虽然价格稍贵且需两块芯片才能实现双H桥。 ★6.选择这种集成H桥芯片时,需要考虑的参数有:可承受的工作电流要大于电机的堵转电流,防止堵转时驱动芯片烧毁;导通电阻尽可能小,减少芯片的发热损耗。 ★7.以上四种芯片所能驱动的电流最大也就3A。对于一些堵转电流十几安的电机来说是远远不够的。此时,所能选择的集成H桥芯片也很少(英飞凌的BTN系列,价格较高,一般在30元以上)。因此常常采取电桥驱动+MOS管的方式自行搭建H桥。