将led灯带连接到arduino的最终指南

其中最常见的LED产品是LED带。在本文中,我们将介绍如何使用Arduino设置两种最常见的类型。...

LED照明的兴起是平流层的,很容易理解为什么。它们生产成本低廉,耗电量明显低于其他照明选择,而且在大多数情况下不会发热,因此可安全地用于各种用途。

led-strip-arduino

其中最常见的LED产品是LED带。在本文中,我们将介绍如何使用Arduino设置两种最常见的类型。这些项目非常简单,即使你是一个初学者与Arduino或DIY电子,你将能够做到这一点。

我们还将使用ArduinoIDE来控制它们。这个项目使用一个Arduino Uno,尽管你可以使用几乎任何兼容的板(比如NodeMCU)。

选择你的衣服

当购买LED带材时,有一些事情需要考虑。首先是功能性。如果您计划使用的带主要用于环境照明,那么一个简单的12v RGB LED带(SMD5050)将是正确的选择。

许多这样的条带带有一个红外遥控器来控制它们,尽管在这个项目中我们将使用Arduino来代替。花点时间逛街,在写这篇文章的时候,每米只要1美元就可以买到这些金属条。

LED Strip Lights

如果你想要更高技术的东西,可以考虑WS2811/12/12B。这些条带(有时称为Neopix)集成了芯片组,可以单独寻址。这意味着它们不仅仅能够提供环境照明。

你可以用它们从头开始构建一个廉价的LED像素显示器。你甚至可以用它们来**你自己的室内风暴云灯。

LED Pixel Display

这些条带只需要5伏的电源。虽然可以直接从Arduino板上为少量电池供电,但通常最好使用一个单独的5V电源来避免油炸Arduino的味道。如果您正在寻找单独可编程的LED,这些是为您。在撰写本文时,它们的价格约为每米4美元。

另一个需要考虑的问题是,这些条带可能会在哪里使用。这两种类型的带都有不同的长度、LED密度(每米LED的数量)和不同的耐候性。

查看LED灯带时,请注意列表上的数字。通常,第一个数字将是每米LED的数量,字母IP后跟数字将是其防风雨功能。例如,如果列表中显示30 IP67,这意味着每米将有30个LED。6表示完全密封防尘,7表示防止临时浸入水中。(了解更多有关防风雨和IP等级的信息。)一旦您选择了LED灯带,就可以将其与Arduino连接起来了。让我们从SMD5050开始。

建立联系

Electronic Components Required

为了将12v LED带连接到Arduino,您需要几个组件:

  • 12v RGB LED带(SMD5050)
  • 1 x Arduino Uno(任何兼容板都可以)
  • 3 x 10k欧姆电阻器
  • 3 x逻辑电平N通道MOSFET
  • 1 x试验板
  • 连接线
  • 12v电源

在设置电路之前,我们先来谈谈MOSFET。

每当你控制的是比你的微控制器更高的电压的东西,你需要一些中间的东西来阻止你的电路板被炸。其中一个简单的方法是使用MOSFET。通过向栅极支路发送脉宽调制(PWM)信号,可以控制漏极和源极支路之间传递的功率。通过将每个LED条的颜色通过MOSFET,可以控制LED条上每个颜色的亮度。

在使用微控制器时,使用逻辑级组件是很重要的,以确保事情按您希望的方式工作。确保你的MOSFET是逻辑电平而不是标准的。

像这样设置电路:

Arduino MOSFET Circuit

  1. 将Arduino引脚9、6和5连接到三个MOSFET的栅极支脚上,并将一个10k电阻器与接地导轨成一条直线。
  2. 将震源支腿连接到地轨。
  3. 将放电管脚连接到LED条上的绿色、红色和蓝色接头。
  4. 将电源导轨连接到LED灯带的+12v连接器(请注意,在本图中,电源线为黑色,以匹配我的LED灯带上连接器的颜色)。
  5. 将Arduino接地连接至接地轨。
  6. 将12v电源连接到电源轨。

大多数LED带都有杜邦(Dupont)连接器,很容易连接。如果你没有你可能需要焊接电线到LED带。不要惊慌,如果你是相当新的焊接,这是一个简单的工作,我们有一个指南,以开始焊接,如果你需要它。

我们将为这个项目提供USB电源。您可以选择使用VIN pin为您的板供电,但在执行此操作之前,请确保您知道板的电源限制。

当您的电路完成时,它应该如下所示:

Arduino MOSFETs on Breadboard

现在你已经连接了所有的东西,是时候做一个简单的Arduino草图来控制它了。

淡入淡出

通过USB将Arduino板连接到计算机并打开Arduino IDE。确保在Tools>board和Tools>port菜单中为您的电路板选择了正确的电路板和端口号。打开一个新草图并用适当的名称保存它。

这个素描会使灯光一次淡入一种颜色,保持亮几秒钟,然后淡出直到再次熄灭。您可以在这里完成并自己绘制草图,或者从GitHub下载完整的代码。

首先定义将用于控制MOSFET的管脚。

#define RED_LED 6#define BLUE_LED 5#define GREEN_LED 9

接下来需要一些变量。创建一个整体亮度变量,以及每个颜色的亮度变量。我们将只使用主亮度变量来关闭LED,因此在这里将其设置为最大亮度值255。

您还需要创建一个变量来控制淡入的速度。

int brightness = 255;int gBright = 0;int rBright = 0;int bBright = 0;int fadeSpeed = 10;

在您的设置功能中,我们将设置我们的Arduino引脚输出。我们还将调用两个函数,其中延迟5秒。这些函数还不存在,但是别担心,我们会找到它们的。

void setup() { pinMode(GREEN_LED, OUTPUT); pinMode(RED_LED, OUTPUT); pinMode(BLUE_LED, OUTPUT); TurnOn(); delay(5000); TurnOff();}

现在创建TurnOn()方法:

void TurnOn() { for (int i = 0; i < 256; i++) { ****ogWrite(RED_LED, rBright); rBright +=1; delay(fadeSpeed); } for (int i = 0; i < 256; i++) { ****ogWrite(BLUE_LED, bBright); bBright += 1; delay(fadeSpeed); } for (int i = 0; i < 256; i++) { ****ogWrite(GREEN_LED, gBright); gBright +=1; delay(fadeSpeed); } }

这三个for循环使每种颜色在fadeSpeed值指定的时间内达到最大亮度。

最后,您需要创建TurnOff()方法:

void TurnOff() { for (int i = 0; i < 256; i++) { ****ogWrite(GREEN_LED, brightness); ****ogWrite(RED_LED, brightness); ****ogWrite(BLUE_LED, brightness); brightness -= 1; delay(fadeSpeed); }}void loop() {}

此方法将亮度变量应用于所有三个颜色管脚,并在一段时间内将其降至零。为了避免编译错误,这里也需要一个空循环方法。

完成此草图后,请保存它。验证草图并将其上载到Arduino板。如果出现错误,请再次检查代码是否有任何令人讨厌的拼写错误或缺少分号。

现在,您应该看到您的LED条分别向上渐变每种颜色,保持白色5秒钟,然后均匀地淡出为零:

LED Strips Flashing

如果您遇到任何困难,请重新检查您的接线和代码。

这个项目是一个简单的方式开始,但其中涵盖的思想可以扩展到真正有效的照明。只需几个组件,你就可以创建自己的日出警报。如果您的Arduino配备了启动套件,您可以使用任何按钮或传感器在进入房间时触发LED,例如:

Arduino Motion Controlled Lighting

现在我们已经介绍了SMD5050,让我们继续讨论WS2812B条带。

好主意

这些条带需要较少的组件才能运行,而且对于您可以使用的组件的具体值有一定的回旋余地。此电路中的电容器确保5v LED获得稳定的电源。电阻器确保从Arduino接收到的数据信号不受任何干扰。

您需要:

  • WS2811/12/12B 5v LED灯带(三种型号都有集成芯片,工作方式基本相同)
  • 1 x Arduino Uno(或类似兼容板)
  • 1 x 220-440欧姆电阻器(这两个值之间的任何值都可以)
  • 1 x 100-1000微法拉电容器(这两个值之间的任何值都可以)
  • 试验板和连接线
  • 5V电源

如图所示设置电路:

Arduino Circuit

注意,电容器的方向必须正确。你可以通过寻找电容器主体上的减号(-)来判断哪一侧连接到接地轨。

这次我们使用5v电源为Arduino供电。这使得项目在我们完成之后就独立了,尽管这里有一些重要的事情需要注意。

首先,在将电路板连接到电源之前,请确保电路板可以接收5v电源。几乎所有的开发板都通过USB端口以5v的电压运行,但是有些开发板上的电源输入管脚有时会跳过电压调节器,把它们变成土司。

另外,确保多个单独的电源没有连接到Arduino也是一个很好的做法——在使用外部电源时,请断开USB电缆。

一旦接通电源,它应该是这样的:

Arduino Completed Circuit

现在我们的LED带已经连接好了,让我们继续看代码。

舞动的灯光

为了安全地对电路板进行编程,请断开VIN线与电源线的连接。稍后再重新连接。

将Arduino连接到计算机并打开Arduino IDE。检查是否在“工具”&gt;“板和工具”&gt;“端口”菜单中选择了正确的板和端口号。

我们将使用FastLED库来测试我们的设置。您可以通过单击“草图”&gt;“包含库”&gt;“管理库”并搜索FastLED来添加库。单击install,库将被添加到IDE中。

在“文件”&gt;“示例”&gt;“快速LED”下,选择DemoReel100草图。这个素描循环的各种事情,可以做的WS2812发光二极管带,是难以置信的容易设置。

您只需更改DATA\u PIN变量,使其与PIN 13匹配,并更改NUM\u LEDS变量,以定义您正在使用的条带中有多少个led。在本例中,我只使用从较长的条带上切下的10个LED的一小行。用更多的灯光表演更大!

Arduino Code

就这样!将草图上传到电路板,断开USB电缆并打开5v电源。最后,将Arduino的车辆识别号重新连接到电源线上,观看演出!

如果什么也没发生,检查你的线路,并确认你在演示草图中指定了正确的Arduino引脚。

无限的可能性

演示草图展示了WS2812条带可以实现的许多可能的效果组合中的一些。除了比普通的LED灯条更先进之外,它们还可以投入实际使用。一个好的下一个项目将是建立自己的环境光为您的媒体中心。

虽然这些带肯定比SMD5050更具功能性,但不要对标准12v LED带大打折扣。它们在价格上是无与伦比的,而且LED灯带的应用也非常广泛。

学习使用LED灯带是熟悉Arduino上基本编程的好方法,但最好的学习方法是修修补补。修改上面的代码,看看你能做什么!如果所有这些对你来说有点太多了,可以考虑从这些面向初学者的Arduino项目开始。

图片来源:mkarco/Shutterstock

  • 发表于 2021-03-17 18:44
  • 阅读 ( 375 )
  • 分类:IT

你可能感兴趣的文章

如何用python编程和控制arduino

...。随着这门新语言的兴起,DIY电子领域也蓬勃发展。来自Arduino和Raspberry Pi等公司的开发板和单板计算机改变了人们生产家用电子产品的方式。如果你能用Python编程一个Arduino,那不是很棒吗? ...

  • 发布于 2021-03-11 16:20
  • 阅读 ( 889 )

你现在可以做10个预算的arduino星球大战项目

... 在本文中,我们将介绍一些基于Arduino的星球大战项目,你可以在预算。这些项目有的只花了几美元,有的甚至高达40美元。我们还加入了一些更大项目的链接,虽然没有一个项目可以说是预算意识强,但...

  • 发布于 2021-03-12 05:05
  • 阅读 ( 276 )

如何为youtube视频制作自己的led环形灯

...当你的框架完成后,是时候安装LED了。我们有一个LED带和Arduino的终极指南,但你今天不需要Arduino。RGB LED条基本上是三色LED,每英寸左右排列在一条细条上。它们的美妙之处在于,通过组合单个的红色、绿色和蓝色LED,几乎可以...

  • 发布于 2021-03-12 14:11
  • 阅读 ( 245 )

8个令人毛骨悚然的万圣节照明项目,每个不到5美元

... 这些板条是一个奇妙的项目,学习使用与Arduino板相结合,在你知道它之前,你将使用它们照亮你的一生。 ...

  • 发布于 2021-03-12 18:48
  • 阅读 ( 269 )

6个显示器从arduino输出数据

所以,你有一个Arduino。你已经学会了一些基础知识,也许你已经按照初学者指南开始了。接下来呢? ...

  • 发布于 2021-03-12 19:42
  • 阅读 ( 260 )

6种将arduino连接到android的简单方法

Arduino板和类似的微控制器使创造力比以往任何时候都更容易获得。无论你是控制LED灯带,自动化你的家,甚至保护你的财产,这些小奇迹是大多数DIY电子产品的核心。 ...

  • 发布于 2021-03-12 23:13
  • 阅读 ( 353 )

作为一个arduino初学者不要犯的10个错误

Arduino板,以及随之而来的许多价格合理的微控制器,永远改变了人们的电子爱好。曾经是超级极客的领域,拥有广泛的电子和计算知识,现在所有人都可以使用。 ...

  • 发布于 2021-03-13 03:20
  • 阅读 ( 248 )

如何用arduino遥控你的家,5个diy项目

...何工作的基础知识,并给出一些任何人都能做的简单DIY Arduino项目的例子。 ...

  • 发布于 2021-03-13 11:21
  • 阅读 ( 285 )

arduino入门:初学者指南

Arduino是一个开源的电子产品原型平台,它是世界上最流行的平台之一——除了Raspberry Pi之外。销量超过300万台(更多的是以第三方克隆设备的形式):是什么让它这么好,你能用它做什么? ...

  • 发布于 2021-03-14 15:19
  • 阅读 ( 294 )

用rgb led条点亮生活的22种方式

...多是即插即用的,而有些需要更多的修补和微控制器(如Arduino)。 ...

  • 发布于 2021-03-15 03:21
  • 阅读 ( 225 )