使用微控制器打开 LED 灯条

电器工程 微控制器 晶体管 场效应管 树莓派
2022-01-17 15:42:03

我有 60 个 LED 灯一米长的 LED 灯带需要满足以下条件:

  • 400 毫安
  • 12 伏

我想用微控制器控制这些 LED。我正在考虑使用TIP120和树莓派。

一个树莓派 GPIO 引脚可以连续输出 50 毫安。(更新:这不是真的,见下文)


我是初学者,我不确定我这样做是否正确。我所有的计算都是基于我在这个博客上读到的东西。


数学

基极电流:

TIP120 的集电极电流为 lc = 250 * lb,因此我需要 1.6 mA 的基极电流。

(1.6mA * 250 = 400)

树莓派的基础电流应该没有问题

基极电阻:

我需要一个足够低的电阻,以确保 TIP120 基极保持饱和但保持低于 50 mA,以免树莓派过载。

根据我提到的博客,我通过查找 Vbe(sat) 找到了基极电阻。见图 2。

其中 Vbe(sat) 在 x 轴上为 400,集电极电流在 y 轴上约为 1.3。

在此处输入图像描述

如果 raspberryPi 输出 3.3 伏,则电压降为 2 伏
(3.3 - 1.3)

所以根据我的计算,我需要一个介于 4 和 40 欧姆之间的电阻器 R = V/I
2 / (0.05 A) = 40 欧姆
2 / (0.50 A) = 4 欧姆
(更新:不正确,见问题底部)

我仍然认为自己是一个业余爱好者,而且我有点过头了。

  • 这些计算看起来正确吗?
  • TIP120 会起作用吗?(欢迎任何其他建议)
  • 对于我的原理图,我还应该考虑其他任何因素吗?

在此处输入图像描述

更新

正如答案中指出的那样,我将毫安额定值打错了 10 倍。我应该说:
2 / (0.005 A) = 400 欧姆
2 / (0.050 A) = 40 欧姆

更新 2

Raspberry Pi 上的引脚可以提供的最大电流似乎有些模糊。为了安全起见,我假设它是 8 mA。

https://raspberrypi.stackexchange.com/questions/9298/what-is-the-maximum-current-the-gpio-pins-can-output

https://raspberrypi.stackexchange.com/questions/1130/what-is-the-nominal-gpio-pin-output-current

更新 3

Adafruit 写了一篇很棒的博客文章,介绍如何使用微控制器控制 LED 灯条。她推荐 STP16NF06 或 TIP120

https://learn.adafruit.com/rgb-led-strips/usage

2个回答

你快到了,但有几件事:

基极电阻计算不正确 - 请记住,根据您的计算,您只需要 1.6mA(集电极电流是分开的)。
查看数据表,最小增益为 1000,最大基极-发射极电压为 2.5V,这意味着我们需要调整计算,1.6mA 的基极电流就可以了(如果有额外的开关作为增益总是好的饱和时下降)但我们需要在最坏情况下使用 2.5V 而不是 1.3V(最好使用最坏情况/最大值进行设计,尽管从图表来看,在这个电流下似乎不太可能有额外的 Vbe,所以在某个地方下面两个图之间应该没问题):

所以:

(3.3V - 2.5V) / 1.4mA = 570Ω

要么

(3.3V - 1.5V) / 1.4mA = ~1.2kΩ

这应该可以正常工作,但不是最有效的做事方式 - 晶体管耗散至少为 0.4A * Vce(sat),大约为 0.4A * 0.75V = 0.3W,再加上您的 R-pi 至少需要几毫安左右来驱动它。
现代逻辑电平 MOSFET 可以小得多,用(几乎)没有电流驱动)并且几乎没有耗散。这是一个示例部件FDC637BNZ,从 Farnell 的数千个中随机选择:

在此处输入图像描述

0.5A 是 500 毫安……你会炸掉你的 Pi。0.05 是 50 毫安。这就是上限。没必要为此而去。如您所说,您只需要1.6mA。所以稍微加强一下,说一个不错的甚至 5mA。3.3 - 1.3 = 2v 电阻需要下降。2v / 0.005A (5mA) = 400Ω。向上取整到下一个最大尺寸 470Ω,您在底座处得到 ~ 4mA。

抛开数学错误不谈,TIP120 可以很好地解决这个问题,尽管它对于 LED 灯条所需要的 400mA 电流来说确实有点过分了。它是一个达林顿对,用于高电流倍增。像 PN2222(标准 To-92 封装中的 1 安培)这样的普通单个 BJT 晶体管就足够了。或者您可以将条带分成两三个并使用一些 2n3904 (100~200mA) 并以不同方式闪烁不同的部分(当然,您需要相同数量的 gpio,除非您想从单个 GPIO 驱动它们全部也可以工作。如果您无法获得更大的晶体管,则每个并联晶体管都有自己的基极电阻驱动 LED 灯条的较小部分,这将是处理较小晶体管的好方法。)

而且您的原理图对于模型来说已经足够了。单色 LED 灯条并不是一个非常复杂的电路,因此除了使用正确的部件而不是通用占位符之外,没有其他方法可以改进它。