第1步:收集零件
要制作此項目,您需要以下內容。請記住機箱的材料,您可以在其他項目中使用大量的剩余物(這使得未來構建的成本更便宜)。如果你想在ebay上查看價格等,我已經上傳了你需要的PDF文件。
工具(我假設你已經有了這些)
烙鐵
焊料
焊錫泵(如果您出錯并需要去除焊料)
熱膠槍
熱膠棒
工藝刀(又名斯坦利刀)
標尺/卷尺/游標卡尺
無繩電鉆+鉆頭(1 mm至13 mm) )
帶切割圓盤的旋轉式多用工具(又名Dremel)
清洗液如異丙醇(便宜的須后水)也是如此。
安全面罩(用于噴漆)
電子產品(電子產品成本= 13.05英鎊)
其中一些是免費的。舊的電子玩具如果將它們分開,就會將這些漂亮的Mylar揚聲器放在里面。當你在那里時,你可能也會得到一個DC桶和一個按鈕。
Dupont/Jumper電纜 - £0.99
DS1307實時時鐘模塊 - £0.99 (我建議改用DS3231)
8 Ohm Mylar揚聲器 - £0.99
SPST瞬間推按鈕 - £1.49
5.5mm DC桶形插座 - £1.26
5v,0.5A DC電源 - £2.83
MAX7219點陣顯示器 - £3.76
外殼(外殼材料成本= 17.19英鎊)
60mm方形排水管 - £5.99(你將有ALOT)
黑色噴漆 - £4.85
黑色PVC(foamboard) - £2.99
超級膠水 - £0.99
li》
60mm端蓋 - £2.37
總成本=£30.24 :-) 。..。..。.截至今天這是相當于38美元的國際讀者。
我喜歡使用PVC方管。它們很容易鉆孔,切割,涂漆,我用了一個用于我的蒸汽朋克時鐘。
第2步:準備排水管
標出你要放東西的地方
這很容易。我沒有使用任何花哨的東西。首先,我用一把黑客鋸在家里(約30厘米)將我的長凳的長度縮小到2.5米。我后來用dremel將它剪下來,使邊緣變得美觀和筆直。然后我將部件放在管道表面上,并使用永久性市場來標記我想要鉆孔和切割的位置。我在LED矩陣的外面進行了追蹤,并使用了一個旋轉式多功能工具來切割一個方孔,使其適合齊平。我使用數字卡尺來測量按鈕和DC鏡筒的直徑,以在背面和頂部切割正確尺寸的孔。
切割擋板
《我有大量PVC泡沫板鋪設在以前的項目中。它們非常適合將電路安裝到外殼中,使用它將環氧樹脂混合在一起,制作其他鉆頭和外殼。取一個A4或A5尺寸的片,并切割一個5毫米的正方形環繞或邊框,以構成LED矩陣。這將隱藏您在切割矩陣方孔時所做的任何不穩定的局限。為此,我在Inkscape上繪制了一個小模板并將其打印出來(附帶SVG文件)。然后我用遮蔽膠帶將它貼在船上,并用工藝刀仔細切割。要做到正確是很棘手的,我建議首先將內部切割到外部。
涂抹所有東西
鉆完所有孔并切割后,將其移除毛邊。用一些酒精擦拭物清潔表面以去除任何灰塵或污染(如果您沒有任何IPA,可以使用便宜的須后水)。嘗試在通風良好的區域噴灑并盡可能使用面罩。我在外面用一些紙板在地板上做了這個但是它并不理想,即使微風也會讓油漆飛回你的臉。小心并盡可能穿戴防護裝備。
噴涂管道,擋板和端蓋,使它們都是相同類型的黑色,然后讓它們干燥幾個小時。
步驟3:程序Arduino
有關代碼的一些信息
歸功于GeckoDiode,因為我已經將他的代碼修改為使用MAX7219芯片。 Adafruit版本使用I2C總線,MAX使用SPI總線。為此我使用了MaxMatrix庫,我將其下載并安裝到Arduino IDE中。如果您想了解更多關于MaxMatrix以及LED矩陣如何工作的原因,那么HowToMechatronics.com上有一個非常簡短的教程。 LED矩陣完全由單一顏色的LED組成,而不是具有多色顯示器。
我有一個令人沮喪的是,沒有明確的定義庫的功能是什么和需要將哪些參數傳遞給每個參數。幸運的是,我能夠通過反復試驗找出了什么做了什么,最后讓它正常工作并不困難。首先要了解的是,您必須定義矩陣中有多少個8x8模塊。在我的代碼中,它存儲在一個名為“modules”的整數中,如下所示:
“int modules = 4;”
這是8x8的數字您在顯示器中鏈接在一起的模塊。不是LED的數量或你使用發送數據的引腳。接下來要記住的是,如果你的“精靈”或其他任何覆蓋所有四個矩陣,那么字節數組需要像這樣定義:
“byte text_start_bmp [] = {32,8,。.. *某些字節數據* 。..};”
數字表示行和列的數量矩陣。在這種情況下,名為“text_start_bmp”的字節顯示在32列和8行上。這些數字僅顯示在一個8x8矩陣上,因此分鐘數10如下所示:
“byte minute_ten_bmp [] = {8,8,。.. *某些字節數據* 。. 。};“
入侵者覆蓋兩個矩陣,因此在字節數據中字節將被賦予16,8。
另一件讓我感到震驚的是精靈數據的定位。您可以要求Arduino在默認起始位置的矩陣上的不同X/Y位置顯示精靈。對于分鐘零,代碼看起來像這樣:
“matrix.writeSprite(8,0,minute_zero_bmp);”
一個數字是X調整,另一個是Y.不記得現在是哪一個,但是如果你想將精靈向上或向下推動1行或者列,你只需要增加正數或負數。對于8x8矩陣來說足夠簡單但是當你的精靈覆蓋多個矩陣時,你必須相應地設置起始位置。 “POP”精靈如下所示:
“matrix.writeSprite(16,0,invader_pop_bmp);”
現在請注意原位如何16不是8?這里的代碼表示精靈從位置行/列16從左到右顯示。它認為兩個8x8顯示器是一個16x8顯示器,即使有4個!因此,重要的是要考慮精靈將顯示多少顯示,并相應地調整每個精靈的字節數組的大小。否則你會有一些非常有趣的精靈!
DS1307 RTC
雖然DS1307與Adafruit RTClib.h庫一起工作正常,你無法手動設置時間只是一種痛苦。我剛剛接受了這個,因為它意味著更少的代碼需要改變。 DS1307使用從計算機編譯代碼的時間和日期來設置時間。而是學習如何使用DS3231庫并在將來提前一到兩分鐘設置它。它也有較少的“漂移”,因此隨著時間的推移它會保持更好的時間。兩個模塊都使用I2C總線,我相信如果你想繼續使用它,DS3231可以與RTClib.h一起使用。
上傳代碼
一旦您對代碼感到滿意,請將其上傳到Arduino。我附上了我的Arduino草圖供你考慮。
第4步:組裝電子設備
雖然上傳代碼我建議有首先在面包板上用杜邦/跳線組裝電子設備,這樣當你上傳代碼時,你知道一切都按照預期工作。這允許您在開始粘合和粘貼之前解決顯示精靈等問題。在我的代碼中,您可以看到我正在使用數字引腳4,5,6,7,9,但您可以根據需要更改這些引腳。您可能需要將電纜焊接到按鈕,DC插孔和揚聲器上,但大多數應該是易于推入式連接器。
一旦您滿意,電子設備就可以正常工作,您應該考慮焊接連接。您可以使用銅條板/veroboard來完成此操作,但對于少量組件,您可以直接焊接到Arduino的引腳。它看起來像一只老鼠窩,但無論如何都沒有人會看到它內部,只要確保所有金屬部件都是隔離的,你不要在這種情況下做任何短路。
I當“mainButton”引腳拉低時,按鈕工作。我發現Arduino正在識別當浮動電子設備安裝在它上面時按下假按鈕。在按鈕上使用10K下拉電阻并將引腳設置為“INPUT_PULLUP”為我解決了這個問題。
附上PDF和PNG的原理圖,以便您知道在哪里連接引腳。
步驟5:安裝電子設備并關閉
對于我的時鐘,我使用熱膠安裝電子設備,但要注意不要涂抹太多(電子產品不喜歡被加熱太久)。我在擋板周圍點了一小滴超級膠水,然后將它壓在前面。我通過推動每端的端蓋完成了外殼。當然你可以粘上端蓋以完全封閉組件,但是我把我的一側打開了,所以我仍然可以訪問arduino的USB端口來重置日期和時間。
第6步:享受
總體而言,我很滿意它的出現方式,考慮到它只是一些排水管和噴霧涂料。我希望你喜歡它并讓我知道你是否可以想到任何可以添加的很酷的升級。我有興趣知道是否有人可以使這個更便宜,或者如果有另一種節制方式制作一個外殼我可以在我的下一個項目中嘗試。
責任編輯:wv
-
時鐘
+關注
關注
11文章
1891瀏覽量
133011
發布評論請先 登錄
智能井蓋防入侵監測技術應用與解析

定位型光纖振動入侵探測器:周界安防的精準守護者

時鐘電路與晶振電路兩者的區別有哪些
如何在失重環境下實現太空種植?

設計者怎樣根據DSP的規格書來確定哪根IO口可以當做LCD的時鐘信號呢?
24家太空芯片主要玩家及產品

時鐘抖動和時鐘偏移的區別
時鐘抖動與相位噪聲的關系
基于CNN的網絡入侵檢測系統設計
太空霸權戰打響!中國版“星鏈”如今到底進展如何?

評論