前段時間我正在籌備一個項目,大體是如何巧妙地照亮我們的中庭房間。在秋冬季節(jié)房間變得有點(diǎn)太陰暗了,我想要比 LED 燈更自然的東西,最好是閃爍蠟燭的現(xiàn)場外觀。
創(chuàng)造一個逼真的人造火焰并不是一件容易的事,所以我的想法是:把燈光放在看不到“火焰”的地方,然后我們只能看到所產(chǎn)生的光,接著借此在墻上跳舞。
由于房間主要由玻璃墻制成,顯而易見的選擇是讓光線投射在支撐窗戶的白色光束上。我決定將燈放在水平光束的底部,將光向下投射到垂直光束上。
準(zhǔn)備和計劃
由于我希望能夠單獨(dú)控制每個“蠟燭”,因此 LED 燈的選擇很容易;它顯然應(yīng)該是一組基于 WS2812 的 LED 模塊,所以我訂購了 100 個單獨(dú)的 LED。
正如您在上圖中所見,每個 LED 有六個連接 - 并且背面標(biāo)有箭頭方向。
其中兩個連接標(biāo)記為5V ,兩個是GND ,然后是Din (數(shù)據(jù)輸入)和Dout (數(shù)據(jù)輸出)。兩個5V相連,兩個GND也相連。所以實際上有四個連接;5V 、GND 、Din和Dout 。
在對每個“蠟燭”不同數(shù)量的 LED 進(jìn)行了一些試驗后,我想出了四個。這個數(shù)字使我能夠?qū)γ扛馐M(jìn)行足夠有趣的燈光操作,從而在不需要太多 LED 的情況下制作出逼真的蠟燭外觀。
注:如果我必須再做一次,我會訂購一組 2×2 LED 模塊,以簡化組裝。
控制器不需要非常先進(jìn),我的假設(shè)是Arduino Nano就足夠了。
Arduino 的位置并不明顯。最后,我選擇將它放在水平梁本身上,在上面第一張照片中可見的粗柱后面(最左邊)。柱子放置在兩個玻璃墻相交的房間的角落(照片中顯示了“右”墻)。通過這種方式,我可以將 LED 安裝在兩條平行的燈串上——每堵墻一個——以最小化每個燈串的物理長度?,F(xiàn)在,每根弦的總長度約為 4 米(13 英尺),而不是原來的兩倍。
隱藏電纜
這一步依據(jù)我自身的情況,并沒有那么難。因為 LED 被放置在水平光束的底部,LED 模塊本身只需用強(qiáng)力雙面膠帶放置即可。
創(chuàng)建 LED 模塊
由于我不想將整個東西焊接在一根全長的串上(我想象我在嘗試將東西安裝在梁的底部時會遇到電纜堵塞)我決定用連接器構(gòu)建 LED 模塊。
LED 模塊將放置在垂直光束旁邊,以便盡可能多地反射光線。我還想讓電纜靠近光束。這導(dǎo)致我有兩個版本的模塊;一個設(shè)置放在從 Arduino向右的繩子上,一個向左。
這兩個模塊版本需要兩種獨(dú)特的焊接布局,主要區(qū)別在于保持?jǐn)?shù)據(jù)流從正確的 LED 流向下一個。
由于 LED 非常小,直徑約為 9 毫米(3/8 英寸),因此焊接它們并不容易;鑒于我缺乏焊接經(jīng)驗,結(jié)果并不是那么好和漂亮。但它確實有效。
焊接
在焊接之前,我從 2×5 的原始部分切下一個 2×2 LED 模塊。然后我將一端涂成紅色,另一端涂成黑色,以標(biāo)記靠近 5V 和 GND 的兩側(cè)。
第一步首先做一個焊接練習(xí),在每個 LED 的微小金屬島上滴一滴焊料。
下一步是連接簡單的直線,靠近的連接。
然后跟隨電纜需要保持絕緣,因為它們相互交叉。
總而言之,每個方向都有五根光束——加上角梁——總共有十一根光束。由于每個 LED 模塊有四個 LED,因此單個 LED 的數(shù)量為 44 個。
在幾個模塊之后,我掌握了竅門,最后我可以在大約 30 分鐘內(nèi)焊接一個完整的模塊。
“短電纜技巧”
許多細(xì)小的電纜都需要絕緣層,但是當(dāng)電纜的總長度不到一厘米時,很難在每一端切割出足夠的絕緣層以暴露內(nèi)芯。
然后我想出了這個(明顯的)技巧:
1.焊接電纜的一端,然后將其彎曲并切割成所需的長度。
2.將絕緣層向下滑動一點(diǎn)。
3.從釋放的絕緣層上剪下所需的長度。
4.向后滑動絕緣層,露出自由端的芯線。
這樣就可以創(chuàng)建裸露電纜芯的確切長度,結(jié)果非常好:
完成 LED 模塊
最后,LED 模塊應(yīng)倒置在梁上,因此必須準(zhǔn)備好焊接的、填充電纜的背面以固定膠帶。
我開始使用一些隨機(jī)的扁平塑料,我只是簡單地切成正方形。這些只是用熱膠粘在 LED 模塊上。
這是所有完整的模塊:
完整的模塊很容易用強(qiáng)力膠帶粘在它們現(xiàn)在平坦的背面。
制作電纜
幸運(yùn)的是,我周圍有一卷舊電話延長線。這條電纜有四根獨(dú)立的電線,這綽綽有余,因為我需要三根電線(5V、GND 和數(shù)據(jù))。
在沒有特殊壓接工具的情況下安裝母插座并不容易,但完全可行。
電纜通道很容易安裝;只需將其切成合適的長度并使用預(yù)先粘貼的膠帶將其連接到水平梁上。
這是最終安裝的模塊的樣子:
自動激活和停用
由于我不想在天黑時手動打開燈并在之后將其關(guān)閉,因此我放入了一個光敏電阻。
同時我不想要簡單的開/關(guān),而是在黃昏時分逐漸改變光強(qiáng)度。出于這個原因,我需要知道我的光敏電阻在晚上決定“白天”變成“暮光”和“暮光”變成“黑暗”的時間點(diǎn)的模擬值。
在下面的圖表中,紅色曲線代表光敏電阻在一天中變化時的模擬讀數(shù)(不是下面的實際讀數(shù),只是我的手繪圖)。兩條微弱的水平線標(biāo)志著兩個層次;頂部是“daylight”變成“twilight”的極限,而底部是“twilight”變成“darkness”的極限。所以,當(dāng)紅色曲線高于頂部水平線時,我認(rèn)為它是白天,當(dāng)它低于底部水平線時,它是夜晚。
綠色的直線是“干凈的”日光測量值,即夜間的最小值 (0.0) 和白天的最大值 (1.0),以及黃昏時的線性斜率。
為了知道實際的模擬讀數(shù),我將四個光敏電阻連接到一個 Arduino 和一個 LCD 屏幕,以顯示四個電阻的電流、最小值和最大值。我使用了四個,因為我不知道我是否有一個壞的,所以如果他們中的大多數(shù)人的讀數(shù)大致相同,我知道他們會工作。顯然,我將設(shè)備放置在我打算讓 Arduino 最終驅(qū)動 LED 的同一位置。這是它的樣子:
由于 LCD 非常有限,我當(dāng)時顯示了一個光敏電阻的讀數(shù)大約五秒鐘。然后在白天我不時過去,在一張紙上寫下數(shù)字。(顯然,我本可以將它連接到我的筆記本電腦并通過串行連接發(fā)送數(shù)字,但我白天需要筆記本電腦,不想整天坐在中庭)。
最后我決定它在“630”以下是暗的,在“800”以上是亮的。但是這些數(shù)字顯然正好適合我的光敏電阻和我串聯(lián)使用的 10 kΩ 電阻,所以這不是絕對的事實。
Arduino 源代碼
我希望能夠擁有不同類型的燈光效果,而不僅僅是燭光。出于這個原因,我構(gòu)建了源代碼模塊化,試圖將不同的機(jī)制隔離在不同的文件中,以便于概覽。
主.ino文件非常小。我基本上只是啟動了整個事情并調(diào)用Update()了幾個助手類(這反過來又起到了作用)。
目前源代碼支持兩種不同的效果:“燭光”效果和“圣誕節(jié)”效果。目前效果的選擇是硬編碼的,這意味著如果我想進(jìn)行切換,我需要重新編譯代碼。到這一步,所有需要的步驟就做完了,所以接下來讓我們拭目以待。
-
led燈
+關(guān)注
關(guān)注
22文章
1602瀏覽量
110705 -
Arduino
+關(guān)注
關(guān)注
190文章
6509瀏覽量
194724
發(fā)布評論請先 登錄
Arduino UNO R3的資料分享
dfrobotArduino UNO R3 介紹

Arduino Files的Arduino Uno R3電路原理圖免費(fèi)下載
EUFORIS的Arduino UNO R3開源

使用Arduino Nano R3進(jìn)行紅外遙控的數(shù)字時鐘

基于Arduino Nano R3的日月時報
基于Arduino Nano R3的RFID智能手推車
基于Arduino Nano R3的分鐘交流定時器
基于Arduino Nano R3的UHF天線旋轉(zhuǎn)器
基于Arduino Nano R3的磁場強(qiáng)度儀
基于Arduino nano R3 diy拍手控制的自動燈
如何用Arduino Nano/UNO R3開發(fā)板給另一個Arduino IDE不能下載的Arduino Nano/UNO R3開發(fā)板重新燒錄引導(dǎo)程序bootlaoder

評論