如果您已經(jīng)涉獵了一些Arduino初學(xué)者項(xiàng)目,但是正在尋找一些永久性的東西,并且在其他方面都很棒,那么不起眼的4 x 4 x 4 LED立方體是自然的選擇。構(gòu)造比您想像的要容易得多,并且使用多路復(fù)用,我們可以僅通過(guò)單個(gè)Arduino Uno板直接控制所有LED。這是一個(gè)很好的焊接方法,組件的總成本不應(yīng)超過(guò)40美元。
今天,我將詳細(xì)說(shuō)明事物的構(gòu)造方面,并提供一些可在其上運(yùn)行的軟件兩者看起來(lái)都令人印象深刻,并教會(huì)了您一些基礎(chǔ)知識(shí)。
您將需要
一個(gè) Arduino 。提供的代碼假定使用Arduino Uno,但也可以調(diào)整為更大的型號(hào)。
64個(gè)LEDs –確切的選擇取決于您,但是我使用了這些超亮的3mm藍(lán)色LED( 3.2v 30ma )@ 50顆2.64英鎊。
16個(gè)電阻,適合您的LED。對(duì)于上面的LED,99便士購(gòu)買(mǎi)了其中的100個(gè)。使用ledcalc.com –輸入5v作為電源電壓,LED的電壓(在本例中為3.2)和以毫安為單位的電流(3.2)。您所需的電阻器將顯示在標(biāo)有“最近額定值最高的電阻器” 的框中,然后只需在eBay上搜索該值即可。
一些工藝線為了加強(qiáng)基本結(jié)構(gòu)和裝飾–我使用了 0.8mm 的厚度。
某種類(lèi)型的原型板,您可以將所有鉆頭焊接到該板上。我使用的是沒(méi)有履帶切割機(jī)的履帶,但沒(méi)有完整的履帶,但要使用適合自己的履帶。不過(guò),除非您將LED確實(shí)擠在一起,否則Arduino原型屏蔽罩會(huì)有點(diǎn)太小。
隨機(jī)組件線 –某些網(wǎng)絡(luò)電纜線和套件中的一些原型線會(huì)正常工作。
鱷魚(yú)夾或“伸出援助之手”對(duì)于將鉆頭固定在位非常有用。
烙鐵和焊料。
一些廢木材。
一個(gè)鉆頭,大小與您的LED相同。
注意:本教程中的3D繪圖已完成在幾分鐘內(nèi)使用TinkerCAD。我遵循了由用戶 forte1994 詳細(xì)描述的Instructables的現(xiàn)有構(gòu)建,您可能還想在嘗試此操作之前通讀它。
請(qǐng)務(wù)必通讀所有這些說(shuō)明。 首先,然后再自己嘗試。
設(shè)計(jì)原理
在開(kāi)始構(gòu)建之前,重要的一點(diǎn)是,全面了解該事物的原理這樣可以使您在進(jìn)行過(guò)程中即興發(fā)現(xiàn)錯(cuò)誤。有些LED立方體為每個(gè)LED使用一個(gè)輸出引腳-但是在4x4x4立方體中,需要 64引腳-我們?cè)贏rduino Uno上當(dāng)然沒(méi)有。一種解決方案是使用移位寄存器,但這不必要地復(fù)雜。
為了僅用20個(gè)引腳控制所有這些LED,我們將使用一種稱為多路復(fù)用的技術(shù)。通過(guò)將立方體分成4個(gè)單獨(dú)的層,我們只需要16個(gè)LED的控制引腳-因此要點(diǎn)亮特定的LED,我們必須激活該層和控制引腳,總共需要16 + 4個(gè)引腳。每層都有一個(gè)公共陰極-電路的負(fù)極-因此所有的負(fù)極都連接在一起,并連接到該層的單個(gè)引腳上。
在陽(yáng)極上(正)側(cè),每個(gè)LED將連接到其上方和下方的層中的相應(yīng)LED。本質(zhì)上,我們有16列正極,而4層負(fù)極。以下是一些連接的3D視圖,可幫助您理解:
構(gòu)造
由于我們不會(huì)使用完整的金屬結(jié)構(gòu)進(jìn)行焊接,因此我們希望LED的所有支腳重疊大約四分之一,并為結(jié)構(gòu)提供剛性。如圖所示,將LED的陰極折疊-頭部有平坦凹口且腿較短的一側(cè)。 (向左或向右彎曲并不重要,只要您保持一致并且它永遠(yuǎn)不會(huì)碰到陽(yáng)極即可)
該項(xiàng)目的第一個(gè)關(guān)鍵部分是制作木制夾具。在將腳焊接在一起時(shí),這將固定一層LED,因此它需要準(zhǔn)確且不要太松。使用與LED相同大小的鉆頭進(jìn)行測(cè)量,然后鉆出一個(gè)4×4的等量孔矩陣。請(qǐng)記住,您希望四分之一的腿與其鄰域重疊,并使用實(shí)際的標(biāo)尺。檢查每個(gè)孔,以確保LED可以緊密貼合,但又不能太緊,以致無(wú)法再次取出,否則在嘗試去除完全焊接的層時(shí)會(huì)遇到問(wèn)題。
焊接4行LED的陰極。小心不要燒壞LED –您想要一個(gè)好的鐵烙鐵,并且要進(jìn)出。這是我完成的前四行。
現(xiàn)在,為了增強(qiáng)層的剛度,將兩條直的工藝線切割并焊接到任一端,確保它們與每一行連接。這是您完成的第一層。
現(xiàn)在將是測(cè)試的絕佳時(shí)機(jī)–只需加載默認(rèn)的Arduino眨眼應(yīng)用程序,并連接一個(gè)電阻器,將地線放在層框架上即可。 ,然后依次將正極導(dǎo)線按到每個(gè)LED。
希望它們都將點(diǎn)亮。如果不是,請(qǐng)確保您不只是在某個(gè)地方錯(cuò)過(guò)了一個(gè)焊點(diǎn),并且如果需要的話,請(qǐng)更換LED。
從夾具中移除該層,并重復(fù)該過(guò)程 3次以上 》。
請(qǐng)放心,如果您的焊接效果不理想–只要它不會(huì)斷裂且連接牢固,就不會(huì)影響最終產(chǎn)品。我承認(rèn),我的焊接非常無(wú)望,我的夾具沒(méi)了,而且都像比薩斜塔。盡管如此,我還是為完成的立方體感到驕傲,并且當(dāng)LED點(diǎn)亮?xí)r,無(wú)論如何您都不會(huì)去看焊點(diǎn)!
接合層
一旦有了4個(gè)完成的圖層,您需要將所有垂直分支連接在一起。我發(fā)現(xiàn)這是構(gòu)建過(guò)程中最困難的部分,為了幫助我從卡上切下轉(zhuǎn)接卡。
適當(dāng)?shù)母叨龋呛芏嗤热匀粺o(wú)法完美對(duì)齊–為此,我使用了一些鱷魚(yú)夾將它們固定在適當(dāng)?shù)奈恢谩?/p>
要避免的第一個(gè)愚蠢錯(cuò)誤
只有在完成一個(gè)完整的層之后,我才意識(shí)到我的卡片提升卡被卡在適當(dāng)?shù)奈恢茫晕也坏貌粚⑵淝械簦〔灰概c我相同的錯(cuò)誤–將轉(zhuǎn)接卡的側(cè)面較長(zhǎng),并在多維數(shù)據(jù)集的外部連接卡片,因此,當(dāng)您完成該層時(shí),可以解構(gòu)轉(zhuǎn)接卡并將其拔出。/p》
要避免的第二個(gè)愚蠢錯(cuò)誤
顯然,請(qǐng)勿將垂直腳焊接到陰極框架上。垂直支腳只能連接到其他垂直支腳,而不能連接其他任何支腳。
同樣,在連接好每一層后再進(jìn)行測(cè)試。測(cè)試所有的層,實(shí)際上,僅使正極引線接觸最上層的尖端,從而確保所有層之間都具有良好的接觸。
將所有4層焊接在一起時(shí),我開(kāi)始清理一下–我以一種墊腳石的方式讓每一條腿伸出每一層,然后將其放到板上。切掉了金屬框架和腿的其他多余部分。顯然,不要切掉任何垂直的分支,我們需要將其放入原型開(kāi)發(fā)板中。
固定到板上
還記得當(dāng)我說(shuō)將每一層固定到自身是最困難的部分嗎?我撒了謊。試圖將16個(gè)LED支腳安裝到原型板上的小孔中實(shí)際上比較困難。我發(fā)現(xiàn)最簡(jiǎn)單的方法是一次戳4個(gè),用鱷魚(yú)夾將其固定在下面,然后移至下4個(gè)行。如果有幫助,請(qǐng)使用記號(hào)筆提前標(biāo)出間距。
《回想起來(lái),實(shí)際上,我會(huì)先將電阻器放置在原型板上。照原樣,我先將立方體的所有支腳焊接到電路板上,然后嘗試將電阻器之間的電阻精細(xì)地?cái)D壓。從我的錯(cuò)誤中吸取教訓(xùn),然后將電阻放在首位。
我試圖以步進(jìn)方式將它們均勻地隔開(kāi),這樣我就可以將立方體的整個(gè)側(cè)面用于與Arduino的所有最終連接。這是我使用的電路圖:
對(duì)于四個(gè)負(fù)極層,我從每一層上放下一根電線,然后將它們拉到最后,像這樣:
最后,我添加了一些插頭線,然后可以將它們插入相關(guān)的Arduino引腳中。使用最長(zhǎng)的一種。注意由于規(guī)劃不佳,我在一些地方弄亂了訂單。不過(guò),每排LED都有顏色編碼。
就是這樣。完成!
對(duì)多維數(shù)據(jù)集進(jìn)行編程
我知道您迫不及待想把這個(gè)東西放起來(lái),所以插入4負(fù)層進(jìn)入模擬I/O 端口 A2(底層)到 A5(頂層) (這些也可以用作數(shù)字I/O)。然后插入16個(gè)LED控制引腳,從最右邊的 +1 到數(shù)字I/O 端口0 ,使用 +15 和 +16 進(jìn)入模擬 A0和A1 。 (不要使用AREF和GND)
從有指導(dǎo)性的用戶 forte1994 《下載演示模式和代碼。他還提供了一個(gè)有用的在線工具,用于設(shè)計(jì)字節(jié)模式以自定義您自己的序列。這是在我的立方體上運(yùn)行此代碼的視頻(我將速度調(diào)整為5,而不是默認(rèn)的20)。
這不是編程您的唯一方法當(dāng)然,我想花點(diǎn)時(shí)間教您一些以編程方式制作自己的圖案的基本知識(shí),而不是像上面的演示那樣回放預(yù)設(shè)的圖案。
嘗試對(duì)多維數(shù)據(jù)集進(jìn)行編程時(shí),您應(yīng)該了解以下幾點(diǎn):
要尋址單個(gè)LED,請(qǐng)使用編號(hào)為0-3的 plane (層), LED引腳號(hào)為0-15。將平面轉(zhuǎn)為L(zhǎng)OW輸出(因?yàn)檫@是負(fù)腳),將LED引腳號(hào)轉(zhuǎn)為HIGH(正腳),以激活LED。
激活單個(gè)LED之前,請(qǐng)確保所有其他平面均處于關(guān)閉狀態(tài)–這意味著將它們?cè)O(shè)置為HIGH輸出。否則,將導(dǎo)致一列LED點(diǎn)亮,而不是單個(gè)LED點(diǎn)亮。
鑒于此,我已經(jīng)編寫(xiě)了兩個(gè)非常簡(jiǎn)單的編程序列供您檢查–下載這里的代碼。第一個(gè)簡(jiǎn)單地依次依次點(diǎn)亮每個(gè)LED。為此,我們使用兩個(gè)for循環(huán),在每個(gè)層和每個(gè)控制引腳上進(jìn)行迭代。
第二個(gè)是隨機(jī)循環(huán)(您需要注釋掉第一個(gè)并在主循環(huán)中啟用它以對(duì)其進(jìn)行測(cè)試)。它只是選擇一個(gè)隨機(jī)層和一個(gè)隨機(jī)控制引腳,以使它們不斷閃爍。
責(zé)任編輯:wv
-
led
+關(guān)注
關(guān)注
242文章
23742瀏覽量
671383 -
Arduino
+關(guān)注
關(guān)注
189文章
6493瀏覽量
190208
發(fā)布評(píng)論請(qǐng)先 登錄
VirtualLab:立方體分束器上的受抑全內(nèi)反射(FTIR)
免費(fèi)分享Arduino入門(mén)+進(jìn)階(全套例程+書(shū)籍)

《ESP32S3 Arduino開(kāi)發(fā)指南》第二章 Arduino基礎(chǔ)知識(shí)
VirtualLab Fusion應(yīng)用:立方體光束整形器上的全內(nèi)反射(FTIR)
DLPDLCR3010EVM-G2用照相機(jī)給DLP的投影拍照時(shí)會(huì)出現(xiàn)動(dòng)態(tài)條紋,是什么原因引起的?怎么解決?
TE HDC重載連接器助力蛇年春晚視覺(jué)盛宴
開(kāi)源項(xiàng)目!手把手教你制作一個(gè)互動(dòng)式LED墻壁時(shí)鐘!
VirtualLab Fusion應(yīng)用:立方體分束器中的受抑全內(nèi)反射
從片上系統(tǒng)(SoC)到立方體集成電路(CIC)

從SoC 到 SoIC 到 CIC

TCL在2024 IFA展上發(fā)布家庭影院、移動(dòng)技術(shù)和家居生活的未來(lái)愿景
arduino(1)--ESP8266配置
創(chuàng)意挑戰(zhàn)丨從0自制“自平衡立方體”(分享開(kāi)源資料)

評(píng)論