LED蜡烛的制作教程

电子说

1.2w人已加入

描述

第1步:分析蜡烛

l

l

l

用LED制作逼真的蜡烛的第一步是知道真正的蜡烛是什么样的。这个问题有很多种方法,有些方法比其他方法更好。我们可以观看蜡烛并尝试实时识别闪烁模式,但如果我们改用技术来帮助我们,那就容易多了。我使用连接到软件的相机创建了光照水平图。

首先,蜡烛闪烁的数量并不总是相同的。当频率保持不变时,幅度会发生变化。其次,如果你看一般模式,你会看到你可以将闪烁分成不同的部分。每个部分长约一到五秒。最后,蜡烛似乎遵循每个部分的一般向上或向下曲线。

现在我们知道蜡烛火焰应该如何看,我们可以开始构建。

步骤2:接线

l

l

l

l

将LED连接到Arduino的最简单方法是但是直接连接会带来一些问题。 LED只能处理一定的安培数,通常为20 mA; Arduinos将输出大约55毫安。

为了解决这个问题,每个LED应该有一个电阻阻止一些电流。逻辑结论是通过电阻器发送每个输出。虽然这有效,但需要很多电阻才能完成这项工作。

连接LED的最佳方法是通过电阻发送接地,从而允许每个LED共用同一电阻,同时保持输出线分离。

显示时这样,您将需要确保LED畅通无阻且外观良好。要做到这一点,最好使用短线并相互放置每种颜色。

步骤3:代码

l

l

我在本教程中假设了Arduino编程的基本知识,因此我将跳过编码过程的某些部分。即使您不知道如何编码,Candle.ino文件也可以正常工作并进行全面评论。

现在我们连接了LED,我们可以编码Arduino以匹配蜡烛。您可能还记得,我们对蜡烛的分析告诉我们,我们的LED应该:

每1-5秒更换一次模式

并不总是有相同数量的闪烁

每个部分的平均变化不变

第一步是允许蜡烛改变模式。使用for循环最简单的方法。循环的每次运行都是一个帧,它循环的次数控制每个部分的长度。每次循环结束时,都会启动一个新循环。伪代码将如下所示:

loop (forever) {

loop (section length) number of times {

flicker LEDs

wait (frame length)

}

}

对于闪烁量,我们应该为两个变量分配最大值和最小值,并在它们之间选择一个随机值。这将允许我们改变每个LED的平均亮度和闪烁范围。在每个部分期间,参数将被更改。我们的新伪代码:

loop (forever) {

set LED range

loop (section length) number of times {

flicker LEDs with range as parameters

wait (frame length)

}

}

最后一步是让每个部分的平均亮度发生变化。要做到这一点,我们需要首先用变量存储当前亮度。我们还应该创建一个变量来决定最终亮度应该是多少。当我们进入for循环时,我们想要使亮度缓慢衰减,因此我们可以编写一些代码,以匹配未来/当前亮度与比率帧/长度的比率。伪代码:

loop (forever) {

set LED range

store current brightness

set future brightness

loop (section length) number of times {

fade brightness

flicker LEDs with range and brightness as parameters

wait (frame length)

}

}

现在我们的代码完成了,让我们展示我们的工作!

步骤4:显示

最后一步是显示您的手工作品。你在显示它的地方很有创意,但是一些一般规则仍然适用。

最明显的是,你要确保你的Arduino有稳定的电源。长的USB线应该可以用于此,但是你应该确保线不会被击倒或绊倒。

其次,Arduino应该处于良好的环境中。确保你的Arduino不会摔倒,如果你点亮了一个千斤顶,请小心南瓜内的水分。

最后,为了获得良好的蜡烛外观,你应该有良好的光扩散。有很多选择,但我在灯笼面前放了一块布而不是购买扩散纸。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 相关推荐
  • l
  • A

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分