步骤1:零件清单
单色漫射LED x512,配有约30个备件(您可能会注意到,我自己使用了三种颜色。这本来是为了帮助反映波形幅度(比如红色表示幅度更高),但是我没有把切片焊对,所以最后我只是把它们看成一样的。如果你仍然对产生垂直方向的颜色变化感兴趣,请阅读关于垂直切片步骤:)
PC,中型x7和小型x2(这些在我的实验室都有,不过可以随意调整大小,看你能用什么!请阅读电路部分以供参考。我发现初学者更容易适应没有任何连接条的PCB,主要是因为你可以随意添加和切割连接。焊接可能很棘手!)
2Nn3904晶体管x72
1k电阻x 150
100欧姆电阻x 72
p沟道MOSFET IRF9Z34 x8加8个夹式散热器
100微法电容x8
74HC595移位寄存器x9
Ardnuno螺旋盾(我用过)原型螺旋盾R3套件)
8种颜色的绝缘线(我强烈推荐用不同的颜色!你会有很多电线紧挨着。当我们检查颜色时,颜色真的很有用。)
5v.8a电源(只要你的电源限流高于64 *(流过1个LED的电流),应该能正常工作:))
线接头
8针和6针Molex连接器。
Molex线外壳有8个引脚和6个引脚(这些数字会根据您的PCB尺寸而变化)您的电路设计,在决定您需要的数字之前,请阅读整个说明书(尤其是电路部分:)
S
裸铜线(50米安全)
大木板(每边约9英寸)
12英寸木弦(可选;如果你找到了一条直线,你就不需要它了。)
透明胶带
长指甲x16
工具
熨斗
剪钳
螯
胶枪(可选;如果你找到了做直线的方法,就不需要这个了)
压床
散热器x2(鳄鱼夹也能正常工作)
剥皮钳
第二步:制作LED灯排。
首先,测试所有的发光二极管!我用led和100欧姆的电阻组装了一个电路板。然后,我一次测试一个LED,并将其与另一个LED并联。我们想丢弃1)损坏的LED和2)阳极和阴极反向的LED(你不想只记住“哪一个使它翻转!)3)调光LED。
接下来,我们制作了一个木制夹具,这也是我最后一次安装立方体。在孔中心之间钻一个1英寸的8x8网格。选择直径刚好比LED直径大的钻头,这样可以放入孔中并保持平直。我们在四周钉了额外的木条,这样可以保持木板平整(我们用胶合板作为木板,所以有点弯曲)。此外,这增加了具有孔的面积,使得led可以穿过孔。选择一边并将两个尖钉放在与孔中心相同的线上。我们将把电线绑在这些钉子上。
现在我们可以开始制作LED灯排了!没有找到有效的做直线的方法,只能用木块解线。将金属丝穿过木块的边缘;用拇指将电线固定在电池组的一侧,然后将电线穿过;滑车的边缘会解开铁丝。我建议戴手套保护拇指: (
将8个led放在这一排,长“腿”,阳极,面向一个方向。我们需要把它们焊接到电线上。阳极腿和阴极腿形成的平面应垂直于导体,阴极腿应远离导体。将电线系在钉子上,穿过LED,直到它变直。把它绑在另一个钉子上。调整电线高度(我注意到LED腿上有一小块平坦区域,我调整了电线,使其接触所有LED的这一区域)。这个高度是任意的,但是请记住:1)立方体内的水平高度差在1英寸左右(所以电线不能太高);2)2)LED在烙铁的热量下可能会断(所以线不能太低)(虽然我个人没遇到过问题)。现在你的电线应该接触所有发光二极管的长腿,形成一个十字。焊接导线和阳极引线,然后修整引线。
在这个项目中,我尝试了两种不同的焊接触点配置。一种是上面提到的交叉接触,另一种是弯曲LED引脚,使接触线平行。理论上来说,平行接触式接头的抗压能力更强,但考虑到LED的亮度,交叉接头可能没有那么大的危害。你将在焊接电线和LED灯腿方面获得大量实践,因此你可以尝试不同的技术!我用扁平的烙铁。个人认为可以更好的控制焊点,更大的热接触表面积。
焊接后,使用LED检查面包板检查连接(重要)。将正极引线夹在电线上,将负极引线扫过LED短腿。他们应该都亮了!在我们检查它们都正常后,轻轻地将led从电路板下推出,使它们错位,并将电线向上滑到钉子上。你可以修剪掉循环的末端,但是你绝对可以节省一些长度!
我的LED不亮怎么办?
首先你可以检查的是你是否有阴极和阳极翻转。然后尽量把正极引线夹在LED腿上,而不是整条线。如果您的LED指示灯亮起,您可以再次焊接LED。如果您的LED仍然不亮,请更换一个。
我们需要制造64个这样的LED行:)
第三步:焊接垂直切片
作为预览,连接每层中的所有阳极,并且连接每个垂直列中的所有阴极。现在我们需要制作垂直切片。还记得我们放在电路板上用来绑电线的两个钉子吗?现在用类似的方法再加14个:)(注意:尖指甲好!你会用你的手指按压这些尖端。)
现在,在电路板上排列8个发光二极管,确保它们的引脚面向同一个方向。请注意,铁丝要和钉线平行!按下指示灯,使它们都处于同一高度。如果一些发光二极管不断弹出(可能是由于弯曲的电线),请将两端的透明胶带放在电路板下。现在,像以前一样穿钉子。我只能看到电线在差不多的高度,但这不重要,因为你真正关心的是led在同一高度。
将阴极引线焊接到电线上。你会注意到,我在这里使用了平行接触焊接配置。我确实觉得比十字接头更结实美观,但是更费时间,因为你需要1)用钳子把电线折弯;2)确保弯曲部分接触主线;3)将零件弯曲到合适的高度,因为你的烙铁会以一个角度进入,你需要烙铁同时接触两根电线。
如果你想在不同的图层中使用不同的颜色。
确保每个切片都反映了配色方案。例如,如果我希望前三层是黄色LED,中间两层是橙色LED,最后三层是红色LED,我将依次放置三个黄色LED列、两个橙色LED和三个红色LED。确保所有八个切片的颜色顺序与LED方向一致!
使用面包板设置测试每个切片中的所有指示灯。当LED被固定而不是在空气中时,肯定更容易重新焊接。
如果你的电线不直,请不要把指甲拔出来!看下一步。
如果你已经有一条直线,从下面轻轻推动LED,然后将切片从指甲上滑下。不要修剪末端:)
步骤4:支持垂直切片
如果你的电线有一些弯曲,像我一样,我们可以通过在周边增加刚性支撑来将它们固定在平面上。我选择了12英寸的木串,因为在亚马逊上很容易买到。我在四周粘上细绳,并在角落添加小块来加强框架。详情请看照片。请注意,只有两个扦状物完全连接到电线上,另外两个扦状物在整个网格的上方。我建议先测试一下没有边角的框架。我发现当我堆叠切片时,额外的短杆会阻碍LED,胶缝可能足以保持LED网格。如果网格仍然稍微凸起,按下两个未粘合的边,在几个点上将线粘合到串行端口。暂时不要修剪细枝末节!特别是,在位于立方体底部的那一侧要留一个长串,这样我们就可以把LED放在地板上。
第五步:组装立方体
现在我们有切片了,我们可以做立方体了!我发现把它们堆在一起比把垂直的切片粘在一起更容易,但是如果你有合作者,请随意即兴创作!为避免出错,先将切片粘贴到另一组烤肉串中,然后添加连接线。正如你在照片中看到的,我在角上粘了四根线来帮助对齐和支撑各层。请记住,理想情况下,这些层之间相隔1英寸。我发现我的led都安装在上一层的木框上,贴的时候不需要固定,但是如果你的切片放在更低的高度,那么一个合作者或者一些木条(见图)就能救命了。在粘贴切片之前,请确保它们的方向正确!您希望阴极和阳极端子指向同一方向。还要检查LED的方向。
堆叠每一层时,务必确保LED亮起!一旦所有的组装完成,几乎不可能到达立方体的中心。
你可能会注意到,我的木框不一定相互对齐,但如果你看看led,它们会对齐得更好!正如我们将在黑暗的环境中看到这个立方体,我们可以接受框架的错位。
接下来,使用额外的导线在同一水平面上焊接阳极引线。如果你发现很难将电线保持在那里,可以尝试将电线“编织”穿过电线(改变电线穿过电线的方式,从上到下)。如果这些线不是完全直的,这是可以的,因为主LED结构已经设定好了,一旦我们打开LED,边上的线就不明显了。
为了安全起见(我们宁愿在谨慎上犯错,不是吗?),再次测试所有指示灯。此时,如果立方体中心的一个指示灯不亮,我不确定是否有简单的方法解决这个问题:(不过,如果你仔细检查LED在堆叠时是否细致分层,LED应该还是没问题的。
现在我们可以修剪除底部以外的所有电线。现在我们可以暂时把立方体拿走了!恭喜你!现在我们有一大半了:)
步骤6:电路连接
在印刷电路板上布置电路元件之前,请阅读pdf原理图。这个示意图是凯文达拉设计的RGB立方体。由于我们的立方体有单色LED,我们的工作量实际上只有三分之一(具体来说,我们有三分之一的阴极控制)。我强烈建议先把所有电路元件放在PCB上测试音高。给自己更多的工作空间,尤其是移位寄存器板和阳极控制板。然后把电路元件倒出来,一次只焊几个,因为没有那么多阻碍焊接的电路元件分支,所以没那么难。
以及阳极和阴极电路。
我们的电路设计是这样的,当阳极电路和阴极电路的输入为5V(或更高)时,LED将打开。我们先来看看阳极电路。当输入处于高电平时,晶体管迅速饱和,集电极电压下降到接近0,这意味着MOSFET的栅极被拉至低电平。由于MOSFET的源极连接到5V,栅极中的低电平意味着漏极电压被设置为高电平。源上的电容有助于保持系统稳定。
当阴极控制输入处于高电平时,晶体管再次饱和,集电极电压变为0V。集电极通过限流电阻器连接到LED。您可以根据LED属性选择限流电阻。因为我用的是红橙黄led,所以用100欧姆。我们可以看到,现在led的正极抬高,负极拉起,LED就亮了。
由于我们有64根阴极引线(每列)和8根阳极引线(每层),我们需要64套阴极控制和8套阳极控制。我建议在同一块电路板上安装完整的8个控制器,因为每个移位寄存器连接8个控制器,如果在同一个位置连接8根连接线,看起来更有条理。注意不要让主板过度拥挤!我们要开很多线,一定要给自己足够的空间!将所有元件焊接到电路板上。增加工作表面稳定性的一种技术是焊接相同高度的元件(例如,在焊接所有电阻后焊接晶体管,以避免电阻掉出)。对于每组8个阴极控制电路,确保焊接一个8针连接器,以将数据输出到LED立方体。
从原理图上看不出来,但是只要有晶体管的地方,我们就需要把它接到GND和5V。
移位寄存器电路
移位寄存器通过6根线相互连接。它们并联用于5V、GND、时钟、锁存器和消隐,串联用于数据。连线时,确保阴极移位寄存器在序列的末尾,因为数据总是在串行线的末尾。基本上,Arduino发出一串二进制代码,沿着数据线连接向下流动。然后二进制码被分成每个移位寄存器8位。然后将八个移位寄存器端子连接到一组八个阴极/阳极控制器。5V为整个立方体供电。由于我们最多同时点亮了64个led,请确保总电流不超过电源限制。其他引脚主要控制数据何时进入移位寄存器,以及数据何时从移位寄存器释放到电路控制器。确保每个移位寄存器都有自己的8针连接器,并且每个移位寄存器板(除了最后一个)都有一个6针连接器,通过该连接器可以将5V、GND、时钟、锁存器、空白和数据线连接到下一个移位寄存器板。
Arduino电路
Arduino的电路非常简单。基本上,我们有6条线路来自Arduino(5V、GND、时钟、锁存器、空白和数据)。确保您的GND导线连接到Arduino的GND(实际上,这个项目中的所有gnd都应该连接),但您的5V导线没有连接!请注意,Darrah的原理图中Arduino实际上显示的是ATMEGA芯片的端子。请参考附在芯片和Arduino之间的相应端子上的图像之一。
我们使用了一个螺旋保护罩,以避免将电线直接插入Arduino。焊接到螺旋焊接机所需的组件是数字端口的堆叠插头引脚、6引脚插头和2端口端子。您可以在另一侧添加另一排堆叠的头销来实现平衡。(请注意,图中所示的蓝色端子板实际上不做任何事情)。根据示意图进行焊接。重要提示:为了安全起见,请将6针连接器上的5V端子连接到电源的5V(绿色端子),而不是Arduino的5V。这样你的Arduino就由你的电脑供电,电路中的5V电源全部由电源供电。但是,请将所有gnd连接在一起。如图所示,我将6针连接器的GND针和终端的GND针焊接到螺旋挡板上的GND带上。
虽然我不知道怎么检查移位寄存器电路,但是我们可以也应该用面包板来检查正负极控制电路。更多信息,请看照片。基本上,我们将板输入连接到5V。然后我们可以用万用表检查输出电压。我们发现阳极控制的输出电压只有4V左右,但这是MOSFET的预期结果。
接线提示:
不要吝啬电路板之间连接线的长度!你会有很多电路板和电线。如果电路板分离得很好,排除故障会更清楚,也更容易。
用不同的颜色来区分哪条线是哪条线。这是非常重要的,尤其是考虑到你需要多少行。然后我们按照固定的顺序将这些电线放入电线盒中。使用好的压接钳制作安全的接线端子。
与标题和电线外壳的使用保持一致!在我的项目中,对于某个电路板,所有的输入都来自于线壳,输出通过连接器出来。
因为插头端子靠得很近,所以注意不要把电线焊在一起,尤其是像我这样缺乏焊接经验的人!我发现了一个很有用的技术,用烙铁把电线往下推,让焊料融化,然后用钳子把电线里的绞线夹在一起,把电线推到连接器端子附近。拆下烙铁,焊接接头应尽快冷却并保持其形状。
步骤7:安装立方体
我们可以先将金属丝焊接到金属丝上,然后将金属丝穿过孔,而不是将刚性阴极穿过64个孔,这在实践中非常困难。安装基座侧面钻有9个孔(8个阴极孔和1个阳极孔),以便电线从安装平台下方伸出。
首先,把烤肉串剪成大致相同的长度。切割阴极引线,使它们几乎与扦状物处于同一高度。现在弯曲铁丝,用钳子形成一个小钩子。剥去大约半英寸长的金属线,将其弯曲。把铁丝和铁丝钩在一起,用钳子把钩子合上。这样可以在导线之间提供良好的接触,并且可以释放双手进行焊接。确保在最近的LED焊点前放置一个散热片夹,这样焊点就不会因受热而脱落。如果你没有散热夹,鳄鱼夹也可以。
在完成每一层焊接后检查连接(我测量焊点的电阻)是一个很好的习惯,虽然我发现“钩”的方法提供了非常坚固的焊点。
现在把金属丝穿过这个孔。轻轻拉动电线,推动安装平台与烤串接触。将每组8根电线穿过安装平台侧面的一个孔,并用电工胶带固定电缆束。因为立方体的四个边是相同的,所以你的组的哪一个边都不重要。我建议在上面预先制作接线端子,这样可以快速组装电线外壳。
对于阳极连接,将电线焊接到每个水平面上,然后将电线穿过其中一个孔。你需要两个散热片夹来防止相邻的焊点熔化。
安装立方体后,再次测试每个LED以确保它们正常。
提示:
不要吝啬电线长度!我认为我的电线很容易有12英寸长,但还是有点短。
现在,您已经准备好连接一切并运行立方体了!
步骤8:编码和多路复用
由于项目时间短,我借用了Darrah的代码,只做了微小的修改。附上我用的版本。他对他的代码做了很好的评论,我建议阅读它们以更好地理解它实际上是如何工作的。在这里,我将描述他的代码的两个关键特征,多路复用和位角度调制。
的再利用
我读到的所有LED立方体项目都使用多路复用,这是一种允许我们控制单个光源的技术。通过多路复用,一次只能点亮一层LED。然而,由于这些层以非常高的频率循环,图像在我们的视觉中“停留”了一段时间,我们认为光仍然在那里。在软件中,我们一次将一层拉高,将所有其他层拉低,因此只有这一层的LED可以点亮。为了确定哪些灯被点亮,我们使用移位寄存器来控制64个阴极中的哪一个被拉高。在点亮下一层之前,我们把这一层的阳极设置为LOW,这样这一层的灯就不亮了。然后我们把下一层的阳极拉高。
相角调制
BAM技术允许我们在0到15的范围内控制每个LED的亮度。如果不需要改变亮度,就不需要这么做。基本上,我们有一个四位控制,对应从底层到顶层的15个周期(记住,对于多路复用,我们一次点亮每一层?)。如果我们将1写入第一位,当我们第一次循环通过这些层时,该LED将会亮起。如果我们将1写入第二位,该LED将在接下来的两个周期内点亮。第3位对应接下来的4个周期,第4位对应接下来的8个周期(因此我们在一个完整的集合中有15个周期)。比如我们想把LED设置为全亮度的1/3,也就是5/15。为此,我们将1写入第一位和第三位,将0写入其他两位,以便LED在第一个周期、第二个周期、第四个周期和第八个周期开启。我们骑得太快了,我们的视觉“平均”了亮度,我们得到了全亮度的1/3。
LED立方体作为波函数的显示?
我们在这个项目开始时考虑的一种可能性是用这个显示器来显示一个方形盒子中粒子的波函数。我确实在Arduino代码里写了一个画基态和第一激发态的方法,结果发现分辨率不够。基态看起来不错,但是第一激发态需要一些解释。但是,如果你眯着眼睛,你可以看出,当你从一个方向看它时,这个函数看起来像一个凸起,如果你从另一个方向看,它看起来像一个完整的正弦波周期。波函数的振幅应该是这样的!因为即使是第一个激发态也需要一些事后的解释,所以我没有写其他更复杂的代码。
步骤9:测试并运行!
标签:LED电线立方体