用MOSFET和微控制器驱动直流电动机?


13

我正在开发一个使用Atmega328微控制器,功率为3.3V的纳米四轴飞行器以及非常小的有刷直流电动机。这些电机使用的平均电流约为3.7V时为800mA。

最初,为了驱动它们,我使用了L293D电机驱动器,但是该组件效率很低。电动机以最大功率运行时测得的电流约为500mA,因此推力远低于应有的水平。

现在,要解决此问题,我将用4个逻辑电平MOSFET替换该电机驱动器。经过长时间的搜索,我找到了这个(2SK4033)。

你知道它是否应该工作吗?我必须与二极管一起使用吗?如果答案为“是”,那么这个(MBR360RLG)怎么办?

我之所以选择这些组件也是因为我可以从同一家在线商店购买它们。


2
安迪回答了您问题的MOSFET部分,但没有人提到一个更基本的问题:您打算如何用4 N MOSFET替换L293D?将N MOSFET置于高端可能会导致效率问题。原理图可以帮助您明确想法。
Laszlo Valko 2014年

“高端”是什么意思?目前,我仅有的原理图是L293D。如果可以,我可以发布它。我的想法是,每个电动机都由mosfet(总共4个)驱动,如果需要,也可以由一个二极管驱动。什么是更有效的解决方案?
supergiox 2014年

每个L293D输出包括一个“高侧”晶体管(在Vcc和输出之间)和一个“低侧”晶体管(在GND和输出之间)。如果用N MOSFET替换“高端”晶体管,则需要一个电源,该电源可以提供高于输出电压的Vgs(至少2..3..4V)。或最大 输出电压将为Vcc-Vgs ...
Laszlo Valko 2014年

Vgs必须为3.3V,输出(Vds)必须为3.7V(电池的相同电压,这是唯一的)。那么,如果有这个问题,我该怎么办?您可以提出其他解决方案吗?
supergiox 2014年

2
您有以下选择:a)在高端使用P MOSFET;b)使用单独的倍压器或DC-DC转换器电路提供2 * Vcc来驱动高端MOSFET栅极;c)使用自举电路提供适当的Vout + Vcc电压来驱动高端MOSFET栅极。这些中的每一个都有其缺点和/或局限性。
Laszlo Valko 2014年

Answers:


17

MOSFET在该应用中应能很好地工作。这里有一些要考虑的事情:

1:

使用FET驱动负载时,可以选择高端或低端配置。高侧将FET置于电源轨和负载之间,而负载的另一侧接地。在低端配置中,负载的一根引线连接到电源轨,而FET则位于负载和地之间:

高低

驱动电动机(或其他负载)的最简单方法是在低端配置中使用N沟道MOSFET。当N-FET的栅极电压高于其源极电压时,它便开始导通。由于源极接地,因此可以使用正常的开关逻辑来驱动栅极。在FET导通之前,存在栅极电压必须超过(“ Vth”)的阈值。某些FET的Vth为数十伏。您想要一个“逻辑级” N-FET,其阈值远小于您的Vcc。

低端FET配置有两个缺点:

  • 电机绕组直接连接到电源导轨。当FET关断时,整个绕组都是“热”的。您正在切换地面,而不是电源连接。

  • 电机将没有真实的接地参考。它的最低电位将比FET的正向电压高出地电位。

这些对您的设计都不重要。但是,如果您不期望它们,它们可能会成问题!特别是在高功率电路时:)

为了克服这些问题,您可以在高端配置中使用P-FET。但是,驱动电路变得有点复杂。P-FET开关通常将其栅极拉至电源轨。该电源轨高于uC的Vcc,因此您不能将uC的I / O引脚直接连接到门。常见的解决方案是使用较小的低侧N-FET下拉高侧P-FET的栅极:

双脚

存在R1和R3可以保持FET截止,直到驱动Q2。即使在低端配置中,您也将需要R3。

就您而言,我认为一个简单的低端N-FET(带有R3)将为您提供更好的服务。


2:

注意最后一张图中的R2。MOSFET栅极用作电容器,必须在漏极-源极电流开始流动之前对其充电。初次供电时可能会有很大的浪涌电流,因此需要限制该电流以防止损坏uC的输出驱动器。上限看起来只是短暂的一瞬间,因此不需要大的误差范围。例如,您特定的Atmel可以提供40mA的电流。3.3V / 35mA => 94.3欧姆 一个100欧姆的电阻会很好用。

但是,该电阻会减慢FET的开启和关闭时间,这会给您的开关频率设置上限。而且,这会延长FET在线性工作区域的时间,这会浪费功率。如果您以高频进行切换,则可能会出现问题。一个指标是FET是否过热!

解决此问题的方法是使用FET驱动器。它们是有效的缓冲器,可提供更多电流,因此无需限制电阻即可更快地为栅极充电。而且,大多数FET驱动器可以使用比典型Vcc更高的功率轨。较高的栅极电压降低了FET的导通电阻,从而节省了额外的功率。在您的情况下,可以用3.7V的FET驱动器供电,并用uC的3.3V对其进行控制。

FetDriver


3:

最后,您将需要使用肖特基二极管来防止电动机引起的电压尖峰。随时切换感性负载时,请执行以下操作:

低侧二极管

电机绕组是一个大电感器,因此它将抵抗电流的任何变化。想象一下,电流流过绕组,然后关闭FET。当电场崩溃时,电感将导致电流继续从电动机流出。但是,没有任何地方可以流下去!因此,它可以穿透FET,或者做其他破坏性的事情。

肖特基与负载平行放置,为电流的传播提供了安全的路径。电压尖峰在二极管的正向电压时最大,对于您指定的电压,在1A时仅为0.6V。

上图是带有反激二极管的低端配置,简单,便宜且相当有效。


使用MOSFET解决方案时,我看到的唯一另一个问题是它本质上是单向的。您原来的L293D是多半桥驱动器。这使得可以双向驱动电动机。在1Y和2Y之间连接电动机的成像。L293D可以使1Y = Vdd和2Y = GND,并且电动机沿一个方向旋转。或者,它可以使1Y = GND和2Y = Vdd,并且电动机将以另一种方式旋转。很方便。

祝好运并玩得开心点!


真好!在微引线和栅极之间需要电阻吗?220欧姆是一个好价钱吗?(3.3V / 0.02A = 170欧姆
〜220

1
好问题。在理想世界中,门根本不会吸收任何电流。这是FET优于BJT的优势之一。但是,在现实世界中,栅极充当一个小型电容器,在漏极-源极电流开始流动之前,它必须先充电。您希望它快速充电,以快速打开FET。首次打开uC引脚时,栅极电容显示为短路。ATmega328的每个引脚可提供40mA的电流。上限看起来只是短暂的一瞬间,所以我不会为过多的误差而烦恼。假设是3.3V,35mA:〜100欧姆。我将其合并,今天晚些时候!
2014年

1
哦,如果您要在高频率下切换电动机,此电阻将成为问题。这会减慢栅极的充电和放电,从而降低开关频率。而且,这会延长FET在线性工作区域的时间,这会浪费功率。如果发现这是一个问题,请使用“ FET驱动器”或其他一些缓冲器,以使栅极产生更大的电流或从栅极吸收更大的电流。然后,您可以最小化(或消除)电阻。
bitsmack 2014年

我认为开关频率是pwm频率,因此应该约为500Hz。
supergiox

1
不错:)我很嫉妒;我一直想建造一个四轴飞行器已经有一段时间了!让我们知道...
Bitsack 2014年

12

这就是我要看的任何MOSFET。这是来自2SK4033的数据表:

在此处输入图片说明

您说平均电流为800mA,但是在负载下可以增加到1A以上吗?无论如何,在1A的电流和3.3V的栅极驱动电压下,当为1A负载供电时,MOSFET的两端电压会下降0.15V。您能忍受这种功率损耗(150mW)吗?更重要的是,当电池电压降至3V以下时,由于栅极电压不可避免地下降,您能否承受性能损失。

只有您可以回答这个问题。有比这更好的MOSFET,但是您必须计算期望看到的电动机的实际负载电流。

编辑

这是我遇到的一个芯片,它可以代替MOSFET很有用。这是TI 的DRV8850。它包含两个半桥,这意味着它可以独立驱动4个电机中的两个而无需反激二极管(实际上,顶部FET用作同步整流器,这当然可以减少损耗)。每个FET的导通电阻为0.045欧姆,额定值为5A(功耗约为1.1瓦),但是,考虑到OP希望约为1A,这变得非常琐碎。电源电压范围为2V至5.5V,因此再次非常适合:-

在此处输入图片说明


非常感谢。是的,电动机可以将电流增加到稍微超过1A的值,但只能持续很短的时间。我知道的一个实用规则是考虑电流是平均值(1.6A)的两倍。我认为150mW的功率损耗不是一个大问题。
supergiox 2014年

当栅极驱动较差且损耗增大时,在较低的电池电压下会怎样。我当然是在打魔鬼拥护者!
安迪(aka Andy)2014年

关于电池电压下降到3V以下,我不知道我是否理解你的意思。无论如何,我使用稳压器(LE33CZ)为ATmega供电,电压为3.3V。这不是意味着电压“始终”为3.3V吗?还有一个问题。二极管呢?
supergiox 2014年

1
当电池电压下降到3.4伏时,稳压器输出也将开始下降,这意味着到栅极的驱动电压也开始下降,FET变得效率更低。在二极管之前处理此情况。相比之下,二极管是微不足道的。
安迪(aka Andy)2014年

1
您需要一个Fet来控制一两个电动机。Laszlo假定您需要2,因为您最初使用的是L293。
安迪(aka Andy)2014年

6

由于使用的是有刷直流电动机,因此不一定需要使用H桥作为驱动器。只有两种情况确实需要H桥;需要从外部对电动机进行换向(例如,以无刷PM电动机为例)或需要反向旋转。这些似乎都不适用于这里。使用单向或单象限驱动器(SQD)将大大简化您要尝试执行的操作。

您正在考虑使用的FET(2SK4033)与可用的驱动电压不是很好的匹配(Andy已经指出了原因),稍后我们将介绍有关选择FET的更多详细信息。

使用单象限驱动器(SQD)驱动有刷直流电机

通常,这将与选择FET作为控制元件有关。我们假设只有一个旋转方向,这意味着一个单象限驱动器(SQD)就足够了。对于SQD,可以使用P沟道或N沟道FET。N通道部分将是低压侧开关,而P通道部分将是高压侧开关。边缘将进入N沟道部分,因为驱动电路将更简单(反转少一点),对于给定的芯片尺寸,导通损耗更低,并且更容易找到低单位。这是使用N沟道FET的基本SQD的示意图。 Vth

在此处输入图片说明

- [R ř VωRwindRgRpdVbVdrv

ImIdpkIdrmsIcr-ave

  • IdpkIm
  • Id-rms2Im2
  • Icr-aveIm

选择FET的基本标准(选择FET的ABC种类):

  • VDS1.5VB-max

VDS

  • Vth-maxVDrv-min3

    Vth-maxRds

  • ΔTJA

    热量升高非常重要。它考虑了所有损耗,包括传导损耗,栅极损耗和开关损耗。

基于3个标准的样品零件选择:

VB-maxVDrv-minVDSVth-maxRDS

  • VDSVth-max

Rth

PTPcondPsw

哪里

PcondRdsIm2

Psw12ImVbFPWM(τf+τr)

VgsVdsVgsVmpVds

在此处输入图片说明

QmpVmpVdrvRgVmpVdrv

QmpτVdrv2Rgτ2RgQmpVdrv2(100Ohms)(4nC)3.3V

ImRdsRds

PT0.9(33mOhm)(1.2A)2(3.3V)(1.2A)(242nSec)(20kHz)

Im

松散的结局

  • 将驱动电路和开关靠近电动机。

  • 虽然微控制器可以直接驱动FET,但保护微控制器的驱动器是个好主意(类似于NC7WZ16可以在此处工作)。

  • Ciss

  • Im

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.