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

电器工程 微控制器 晶体管 场效应管 大气压 直流电机
2022-01-25 03:22:48

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

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

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

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

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

3个回答

MOSFET 应该非常适合这种应用。这里有一些要考虑的事情:

1:

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

高与低

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

低端 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 控制它。

驱动程序


3:

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

LowSideWithDiode

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

与负载并联的肖特基为电流提供了一条安全的路径。电压尖峰在二极管的正向电压处达到最大值,对于您指定的电压,在 1A 时仅为 0.6V。

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


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

祝好运并玩得开心点!

这是我对任何 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,所以这也是非常合适的:-

在此处输入图像描述

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

您正在考虑使用的 FET (2SK4033) 与可用的驱动电压不太匹配(Andy 已经指出了原因),稍后我们将详细介绍如何选择 FET。

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

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

在此处输入图像描述

它可能看起来不像,但这只是一个降压功率调制器,就像用于驱动电流通过 LED 的那种。只有在这里,不是与电感串联的 LED,而是电机 EMF (\$V_{\omega }\$) 和绕组损耗 (\$R_{\text{wind}}\$)。\$R_g\$ 是总栅极电路电阻,包括驱动器、互连和 FET 封装中的电阻(选择 100 欧姆值只是为了方便,没有真正的原因)。\$R_{\text{pd}}\$ 是一个下拉电阻,只是为了在上电时保持 FET 关闭。\$V_b\$ 是电池电压。\$V{\text{drv}}\$ 是来自 FET 驱动器的电压。

电流、电压和部分功耗基本上是降压的。为简化起见,我们假设电机纹波电流可以忽略不计,这对于小于电机电流 10% 的纹波电流几乎是正确的。对于电机电流 (\$I_m\$) 和给定的 PWM 占空比 (DC),会有 FET 电流(峰值 \$I_{d-pk}\$, rms \$I_{d-rms}\$)和二极管电流(平均 \$I_{\text{cr-ave}}\$)相关为:

  • \$I_{d-pk}\$ = \$I_m\$
  • \$I_{\text{d-rms}}^2\$ = DC \$I_m^2\$
  • \$I_{\text{cr-ave}}\$ = (1-DC) \$I_m\$

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

  • \$V_{\text{DS}}\$ > \$1.5 V_{\text{B-max}}\$

\$V_{\text{DS}}\$ 不应该更低,但也没有必要更高。事实上,更高电压的部件具有更大的裸片,并且封装尺寸要高于约 55V。

  • \$V_{\text{th-max}}\$ < \$\frac{V_{\text{Drv-min}}}{3}\$

    以这种方式选择 \$V_{\text{th-max}}\$ 将充分利用零件的 \$R_{\text{ds}}\$。

  • \$\text{$\Delta $T}_{JA}\$ < 50C

    升温真的很重要。它解释了所有损耗……传导损耗、栅极损耗和开关损耗。

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

在这种情况下 \$V_{\text{B-max}}\$ = 3.7V 和 \$V_{\text{Drv-min}}\$ = 3.3V,寻找具有 \$V_ 的 N 通道部分{\text{DS}}\$ > 5.6V 和 \$V_{\text{th-max}}\$ < 1.1V 并且猜测 \$R_{\text{DS}}\$ 约为 40mOhms进入球场。我把它放到了 digikey 屏幕上,但任何类似的供应商都可以。几个部分出现了。由于您提到的部分是东芝,因此选择其中一个进一步研究。

  • SSM3K123TU:\$V_{\text{DS}}\$ = 20V,\$V_{\text{th-max}}\$ = 1V

下一步是计算热量上升。这部分能承受什么样的功率,仍然有不到50C的上升?这是一个小零件,2mm X 2.1mm。查看数据表中的热阻图(表 5,曲线 c),我们看到安装最少的部件 \$R_{\text{th}}\$ 收敛到 500C/W。因此,对于 FET 中的 50C 上升功率,必须将总功率限制在 0.1W 才能使零件可接受。FET 中的功率是传导损耗和开关损耗的总和:

\$P_T\$ = \$P_{\text{cond}}\$ + \$P_{\text{sw}}\$

在哪里

\$P_{\text{cond}}\$ = \$R_{\text{ds}}\$ DC \$I_m^2\$

\$P_{\text{sw}}\$ ~ \$\frac{1}{2} I_m V_b F_{\text{PWM}} \left(\tau _f + \tau _r\right)\$

当 FET 切换时,这一切都发生在米勒高原。要打开 FET,随着 \$V_{\text{gs}}\$ 的增加,\$V_{\text{ds}}\$ 将在某个点开始下降。这就是米勒高原的开始。\$V_{\text{gs}}\$ 将停留在该电压(米勒高原电压 \$V_{\text{mp}}\$),直到 FET 开启并且 \$V_{\text{ ds}}\$ 达到 0V。发生这种情况所需的时间是开关波形的下降时间。

在此处输入图像描述

这就是 SSM3K123 的米勒高原。看到那里用红色圈起来了吗?看起来它的宽度约为 4nC。因此,FET 切换所需的时间与栅极驱动电路(通过位移电流)处理 4nC 米勒高原电荷 (\$Q_{\text{mp}}\$) 所需的时间相同。驱动程序中的电流将由 (\$V_{\text{mp}}\$ - \$V_{\text{drv}}\$)/\$R_g\$ 确定。也近似认为 \$V_{\text{mp}}\$ 是 1/2 \$V_{\text{drv}}\$,因此:

\$Q_{\text{mp}}\$ = \$\frac{\tau V_{\text{drv}}}{2 R_g}\$ 或 \$\tau \$ = \$\frac{2 R_g Q_{\text{mp}}}{V_{\text{drv}}}\$ = \$\frac{2(100 Ohms) \text{(4nC)}}{\text{3.3V}}\$ = 242nSec

是时候进行一些操作假设了。 环境温度为 50C(因此最大 FET 芯片温度为 100C),PWM 频率为 20kHz(因为可以听到较低的频率,而 5kHz 到 10kHz 真的令人讨厌),占空比 (DC) 为 90%,电机电流 (\$ I_m\$) 为 1.2A。从数据表第 3 页上的 \$R_{\text{ds}}\$ 与温度曲线,我们看到在 100C 时,\$R_{\text{ds}}\$ 为 33mOhms。现在我们准备计算 FET 中的功率损耗。

\$P_T\$ = \$0.9 \text{(33mOhm)} \text{(1.2A)}^2 \$ + \$\text{(3.3V)} \text{(1.2A)} \text{( 242nSec)} \text{(20kHz)}\$ = 36mW + 19mW = 55mW

因此,在这些条件下,FET 的热量上升约为 100mW 极限的 1/2。事实上,\$I_m\$ 可能是 1.65A,而 FET 仍将处于热升预算之内。

松散的末端

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

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

  • 栅极电路电阻成为阻抗匹配的练习。最低的门电路电阻应该是门电路寄生L和FET的特性阻抗\$C_{\text{iss}}\$。是一个较早的问题,该问题更详细,可能会有所帮助。

  • 选择与 FET 额定电压相同且额定电流高于最大 \$I_m\$ 的二极管。肖特基二极管的损耗较低,但如果 FET 占空比 > ~70%,则使用开关二极管代替并不重要。