我喜欢LED像素:亮度高,易于控制,价格便宜且用途广泛。我的最后一个项目是流光溢彩的电视背光。今天,我们将把它们变成可以挂在办公室墙上的大像素显示器;
这是一个相对简单的项目,需要花费一些时间来构建,但是在连接LED灯串时可能有点麻烦。基本思想是在相框背面铺设蛇形LED像素条。
From there, it’s mostly a question of which software to use, depending on your needs – I’ll get you started with some demo code and pointers, then revisit the software angle in a later article as we figure out how to pull information like notifications and stock prices onto the display.
步骤0:您将需要
总费用应低于$ 100。在工具方面,您还需要:
请务必先阅读我们的《初学者电子技能指南》!
步骤1:算术
如果您购买了相同的50cm x与我一样的50厘米宜家相框和LED灯串,您应该能够安装15根15盏LED灯。但是,没有什么可以阻止您使用其他尺寸的框架。每个LED的间距大约为1英寸,所以我的目标是在显示器上使用大约平方英寸的像素-是的,即 1 DPI 。不完全是Retina图形。
进行数学计算,并在框架背衬上绘制一些基准线。进行两次测量,然后仔细检查:我必须在线之间留一个小的差异,因为到了粘住所有东西的时候,我意识到我只能安装14串15个LED。无论如何,该软件很容易针对行数和行数不同的不同像素数进行调整。继续,将您的LED切成适当的长度。不幸的是,我发现每条线的15个像素恰好与我的一个线轴上的焊接点重合,因此我不得不对其进行脱焊。从正面看,至少要对它们进行预焊接。
步骤2:为玻璃上蒙上一层雾气
为帮助散射来自LED的光,我决定使用一些基本的两侧都有玻璃磨砂喷雾。由于烟雾很危险,请在室外进行此操作,并尝试尽可能均匀地喷洒。结霜一旦干燥就很难穿了,但是您需要首先确保涂层均匀,并且不惜一切代价避免刮擦。
在外面时,也将相框背面喷涂成白色–这会将LED的光反射回来。我们不会使用白色硬纸板照片环绕。剪掉电源线和信号线的一个角。
步骤3:将LED连接到板上
使用强力粘合剂或强力胶。我试着用双面胶带,却发现它在几周后滑落了。当两面都无孔时,热胶枪会更糟。如果您购买的线束封装在橡胶盒中,则确切的定位并不重要–它们可以在线束中自由移动以重新定位。
请记住,信号会从头到尾缠绕,并且每个链都有特定的方向。放置一个,箭头指向右,然后下一个线束向左移动,然后重复。
步骤4:焊接
连接每根绞线将需要3根长度稍有不同的电线。在每种情况下,您都将用最短的电线连接内部的两个焊盘;然后是中间两个;那么外面的两个最长。内焊盘将在+ 5V线和GND线之间切换,具体取决于您当前正在处理的框架的哪一侧。
确保焊盘和导线均已预焊接。这是项目中最耗时的部分,但至关重要的是您不要着急并仔细检查是否连接了正确的线路!
步骤5:固定所有钢绞线
最后,如果您使用了连接到绞线上的电源线和输入线,则可能会发现不断在板上移动可将第一根绞线释放出来。我决定钻两个小孔,并穿过白色的扎带固定该零件。如果您在购买强力胶时遇到问题,则可能需要考虑使用这种方法来固定两端的所有绞线。
步骤6接线测试
接线简单:插针Arduino上的6用作控制LED的信号引脚;而进入LED的5V电源应直接来自外部电源。在绞线,Arduino和电源之间连接一条公共接地线。 请勿尝试直接从Arduino上为绞线供电,或在连接USB时不要将5V电源直接连接至Arduino (因为它将上传测试代码)。
下载Adafruit NeoPixel库并将其添加到Arduino库文件夹,然后启动Arduino。使用库中包含的示例链测试代码执行初始链测试。调整下一行第一个参数中的LED数量(将60更改为许多):
Adafruit_NeoPixel strip = Adafruit_NeoPixel(60, PIN, NEO_GRB + NEO_KHZ800);
如果动画在特定行停止,请立即将其拔出并检查接线。您要么把链子弄错了方向;要么电线交叉;
第7步:放入框架
由于我使用的凹口比框架设计的允许深,首先使用热胶枪将玻璃密封到框架上。然后,在将LED放回原位之前,我在框架的外边缘周围添加了一些橡胶短包装,以形成所需的深度。在对LED进行最终测试之后,我再次使用热胶枪将所有东西密封到位。
您可能还想在框架的拐角处切一个小凹口,以容纳粗电缆。
就构建实际的显示而言,就是这样,尽管您最终可能希望将电源和Arduino隐藏在项目框中。其余的取决于软件。
Glediator
更新:不幸的是,托管Glediator软件的站点似乎已经离线了一段时间。如果您知道在哪里可以找到固件和PC软件的副本,请在评论中告知我们,以便我们更新本指南。
对于聚会或在专业俱乐部环境中使用,SolderLab.de的Glediator是LED矩阵控制之王,能够以每秒24帧的速度驱动多达512个WS2812 / NeoPixels。它可以让您创建LED动画的实时或预录制的混合,甚至可以添加GIF(是的,我在看着您Nyan Cat);就像DJ软件一样,它包含一个渐变器,可以在动画之间平稳地混合。
要开始使用Glediator,请将此固件加载到Arduino UNO上,并确保信号电缆位于引脚6上。不要
在Glediator运行期间,打开选项并更改矩阵大小和输出。如果您的布局不同,请调整像素顺序,但是很遗憾,此步骤的文档很少,因此主要是反复试验。如果您的输出与屏幕上显示的不匹配,请尝试其他设置。 HS_BL 为我工作,我怀疑这是“ h 原始 s n",从 b 底部 l开始 eft"。
Glediator是专业级应用程序,因此尽管将来可能会涉及到它,但现在我将让您探索界面并玩转。尝试在左侧和右侧加载不同的动画,然后在两者之间滑动推子。或在最右侧找到一个现成的序列播放列表,如上面的演示视频所示。
Adafruit NeoMatrix和GFX库
Adafruit制作了令人惊叹的用于处理此类像素矩阵的有用库。第一个称为Adafruit GFX库,最初是为与TFT和LCD显示器一起使用而设计的。 NeoMatrix库是对此的一种修改,使所有功能均可用于NeoPixel LED矩阵。定义好矩阵后,将打开大量易于使用的功能,例如输出文本或显示位图精灵图形。
如果您完全按照我的方式制作了项目,则可以会发现此示例代码很有帮助。该代码最重要的部分是:
#define XSIZE 15#define YSIZE 14#define PIN 6Adafruit_NeoMatrix matrix = Adafruit_NeoMatrix(XSIZE, YSIZE, PIN,NEO_MATRIX_BOTTOM + NEO_MATRIX_LEFT +NEO_MATRIX_ROWS + NEO_MATRIX_ZIGZAG,NEO_GRB + NEO_KHZ800);
前几行应该是不言自明的。底部的三个告诉图形库有关布局的信息–在这种情况下,我的第一个像素位于左下方,并排列在行中,其后的行之字形模式。如果您以其他方式定向它,请查看库文档。
我已经在代码中定义了一些精灵(尽管只使用了笑脸)。若要创建自己的Sprite,请在GFX库下载中找到一个 Img2Code Java应用程序。
在以后的文章中,我们将介绍如何使用该库显示有用的信息,例如股票报价或Twitter流,但现在您应该可以使用我的示例代码并加载自己的图像。
这一次仅是本教程的内容。您已经制作了一个巨大的LED显示屏,现在这只是弄清楚该如何处理的一种情况。考虑用剩余的LED制作一个迷你的闪电云灯。
如果您准备点亮PC,可以通过以下方法使它通过可编程的LED发光。
标签: LED灯条