電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示
創(chuàng)作
電子發(fā)燒友網>電子資料下載>電子資料>帶LED的畢業(yè)帽開源設計

帶LED的畢業(yè)帽開源設計

2023-06-27 | zip | 0.00 MB | 次下載 | 免費

資料介紹

描述

抽象的:

作為一名即將畢業(yè)的電氣工程師,我想為畢業(yè)做一些特別的事情。開派對或做一些有趣的事情通常不是我的首選,所以我決定開始一個項目。這不僅僅是任何項目。這將是一個帶 LED 的畢業(yè)帽!

現在,這個前提有點蹩腳。任何人都可以在畢業(yè)帽上添加 LED 以顯示漂亮的顏色或圖案。考慮到這一點,我決定帽子需要是一個能夠顯示圖像和文本的 LED 矩陣。雖然這已經是一個很酷的項目,但需要在項目中添加另一層。一些混亂和辛辣的東西。所以,就像互聯網上的其他人一樣,我轉向社交媒體尋求想法,你瞧,我有完美的混亂元素要添加!

然后決定人們應該能夠在我的畢業(yè)帽上播放信息。這些消息可以很容易地從一些社交媒體網站上抓取,并且帽子會自動檢索、格式化,然后在畢業(yè)典禮期間實時顯示這些消息。最后,人們可以說出他們在畢業(yè)時的真實感受,并將其顯示在一個小小的畢業(yè)帽上,讓少數人看到。

要求:

對該項目的要求相當簡單。我希望帽子完全獨立工作,不受我的監(jiān)督。這意味著帽子必須檢索和顯示消息,而無需我檢查社交媒體或擔心帽子的內容。

為了使其易于使用,我希望系統(tǒng)能夠使用我褲子口袋中的 5 伏電池組。使用 28500mAh 電池組為設備供電,我不太關心電源效率,但我想將系統(tǒng)設計為不浪費電力,以便系統(tǒng)無需充電即可運行整整 8 小時。

最后,我不想在這方面花太多錢,因為我是一個貧窮的大學生,有一張花哨/昂貴的紙,還買不起好東西。這意味著我不能使用花哨的 LED 矩陣解決方案,而是選擇將整個項目保持在 50 美元以下。

設計:

對于那些從未見過的人來說,畢業(yè)帽是一個黑色方形頭飾,尺寸為 9.5 英寸 X 9.5 英寸。我為畢業(yè)買的帽子用一塊紙板形成方形底座,一塊黑布覆蓋并固定在紙板方形上。然后將另一塊布材料固定在紙板底座上,這次是在帽子下面,這樣帽子就可以貼合并留在頭上。

pYYBAGN0LW2AatcZAAAWg5Tcx-s500.png
畢業(yè)帽庫存圖片(作者:Balfour)
?

通常,這些頭飾上飾有油漆或可以固定在帽子上的東西。在我的情況下,我需要將蓋子剝離到底座紙板上,添加 LED,然后更換頂部的黑布并重新組裝蓋子。為了使整個過程更容易,可尋址 LED 燈條將用于創(chuàng)建 LED 矩陣和微控制器,在帽的中心下方,將連接以控制帽的功能。

機械設計:

在購買了 16 英尺的 WS2812B LED 燈條后,我將燈條切割成每條 14 個 LED 的長度。這個長度是通過嘗試將盡可能多的 LED 排成一排來決定的,同時在兩側留出空間用于布線。

poYBAGN0LW-AfMaoAAAvufaG9rY292.png
兩條切割成適當長度的 LED 燈條
?

切割 14 條 LED 燈條后,我標記了燈罩,以指示燈罩兩側每個 LED 燈條的中心點。這使所有 LED 燈條彼此平行,提供了美觀且均勻的顯示效果。

pYYBAGN0LXKAafEnAAC2rnxza64812.png
貼上所有 14 個 LED 燈條后蓋上紙板
?

現在開始將所有 LED 連接焊接在一起。為了使焊接更容易,我連接了 LED 燈條,使接線在燈條之間曲折,這意味著我必須在編程中每隔一行反轉一次,但這降低了電線電阻并使焊接變得輕而易舉。

?
?
?
poYBAGN0LXSAKRjlAABNyDF2A6Y715.png
?
1 / 2 ?數據方向和 LED 燈條接線
?

此時,我使用產品隨附的 LED 燈控制器測試了生成的矩陣。連接好所有東西后,我運行了一個基本例程,在 LED 燈串上顯示不同的顏色。該測試成功運行,點亮了我固定在紙板上的每個 LED 段。

poYBAGN0LXaAIVlYAABKyQ4dgjI185.png
重新連接黑布前的 LED 矩陣工作
?

現在一切正常,是時候看看重新裝上黑布后帽子會是什么樣子了。在這一點上,我擔心 LED 不能很好地透過黑色織物發(fā)光。在將織物放置到位的帽子上運行相同的測試程序后,這種擔心被證明是沒有根據的。如果有的話,LED 太亮了,并且在全亮度下消耗大約 2.5 安培,開始變熱,我擔心它會開始融化一些東西。

pYYBAGN0LXmAPTBiAABQhqJmchs597.png
黑布重新貼在帽蓋上后的LED矩陣
?

隨著項目的所有機械部件工作正常,我用膠帶和熱膠重新連接了布套,然后開始研究控制電子設備。

電氣設計:

為了控制 WS2812B LED 燈條,使用 5V 數據線通過單線控制接口傳輸數據。LED 燈條需要 5V 和 GND 連接,使用的電線/電路可以處理最大 3 安培的電流(最好是越過然后越過)。這些條帶的電源直接來自用于為項目供電的 5V 電池組。

ESP32 被選為這個項目的主要微控制器,因為我想要一個可以輕松連接到 Internet 網絡的設備。由于 ESP 內置了 Wi-Fi 收發(fā)器,因此它是用于該項目的理想芯片。ESP 使用 3.3V 電源并輸出 3.3V 邏輯電平,因此我需要確保 LED 可以使用 3.3V 邏輯。數據表顯示邏輯高閾值為 3.5V,但經過測試,證明這些 LED 可以與 3.3V 邏輯一起使用。理想情況下,應該使用電平轉換器將 3.3V 邏輯轉換為 5V,但這是不必要的,因為這是一個不需要 100% 可靠的 DIY 愛好項目(盡管我仍然嘗試滿足該可靠性指標)。

這導致了如下所示的電路。AMS1117-3.3V 芯片用于創(chuàng)建一個干凈(盡管效率低下)的 3.3V 電源,并且各種引腳連接到公水平連接器。

pYYBAGN0LXuAKCvrAABDa20ECoo413.png
控制畢業(yè)帽 LED 矩陣的電路
?

為了把所有東西都裝進一個小而薄的包裝中,我將組件布置在一個 1.5 英寸 x 2 英寸的電路板上。使用了粗跡線和通孔,因此我可以輕松地在我的 CNC 機器上制造電路板,并注意確保所有跡線都能處理所需的最大電流值。

poYBAGN0LX2AODiHAACGUjDnzaI541.png
(右)沒有銅填充區(qū)域的 PCB,(左)具有頂部和底部銅填充的 PCB
?

然后必須組裝和焊接電路板。由于第一次電路板迭代中的錯誤,圖中的 PCB 與上圖所示的成品 PCB 不匹配。成品板和蓋子如下所示:

poYBAGN0LX-AcI7YAABDa__jnAU717.png
帶有 FTDI 芯片和刻度帽線連接的成品刻度帽 PCB
?

物料清單:

該項目中使用的所有部件都包含在以下 BOM 中。總體而言,該項目的成本為 30.70 美元,不包括 5V 電池電源或畢業(yè)帽。

poYBAGN0LYGAIKU1AABCtP6KxBc568.png
PCB的完整零件清單
?

編程:

對 ESP32 進行編程允許在該項目中使用多種編程語言。為了簡化字符串數據的處理,我選擇了 Micropython 固件語言來完成我的所有開發(fā)工作。雖然 C 和 Lua 可以更有效地處理內存和程序操作,但軟件效率并不是最重要的。相反,我想確保連接到互聯網很簡單,并且我想在不使用 SD 卡接口的情況下將數據記錄到設備上。Micropython 請求庫允許輕松的 HTTPS 連接,python 具有動態(tài)內存分配的優(yōu)勢,允許 HTTPS 請求具有不同的有效負載大小,而不會過度分配 RAM最后,Micropython 文件系統(tǒng)允許直接在閃存中創(chuàng)建和修改文件,

第一個挑戰(zhàn)是用自定義圖像點亮 LED 矩陣。為此,我修改了在 Internet 上找到的 WS2812B Micropython 模塊,并添加了一個“ display_sprite() ”函數來生成一個 196 索引數組,該數組將傳遞給 WS2812B 模塊。這具有顯示填充了顏色值的 14x14 數組中的圖像的結果。因為我在 LED 燈條中使用了鋸齒形布線模式,所以我必須每隔一行反轉一次才能準確顯示圖像。如果沒有這種反轉,精靈本身將需要每隔一行反轉,這使得格式化/精靈創(chuàng)建更加困難,因此只要程序為 WS2812B 模塊生成數組,就會處理反轉。下圖中可以看到其中一個精靈:

pYYBAGN0LYOAPhEwAABFA4lQC18964.png
顯示到 LED 矩陣的精靈之一
?

第二個挑戰(zhàn)是在 LED 矩陣上創(chuàng)建滾動文本。我在 WS2812B 模塊中或通過 Internet 上的模塊無法找到任何功能來顯示文本,因此我不得不創(chuàng)建自己的功能。這涉及創(chuàng)建我自己的 6x3 和 7x4 像素字體模塊(使用我在網上找到的像素字體,我沒那么有創(chuàng)意)以及將像素向左移動一位的緩沖協議,從而創(chuàng)建滾動文本效果。矩陣被分成 7x14 像素的部分,因此滾動文本可以從下半部分開始,并在滾動到屏幕外之前繼續(xù)滾動到上半部分。為了正確開發(fā)此功能,我在一個數組中創(chuàng)建了 14 個二進制數,并使用位移和一些 if-else 邏輯來有效地在顯示器上滾動文本。

poYBAGN0LYWAKWCqAABQU1oj3Ik540.png
顯示字符串“Hello”的上限
?

該項目的最大挑戰(zhàn)是將微控制器連接到社交媒體。我沒有讓任何人通過 Twitter 或 Facebook 等平臺發(fā)布消息,而是決定使用我大學內大多數本科電氣工程師用來相互交流的 Discord 頻道。這樣做的好處是限制了人們發(fā)布信息的能力,防止隨機噴子到處投擲炸彈,同時還允許那些將在開始時參與的人。

為了讓這個功能發(fā)揮作用,我必須創(chuàng)建一個 Discord 機器人,它可以訪問 Discord API 以從 Discord 組的“General”頻道獲取消息。該機器人能夠通過分配給機器人的特殊令牌訪問 API,該令牌用于授權機器人具有正確的憑據。向 Discord API 發(fā)出 HTTPS GET 請求,使用授權令牌作為標頭字段,并發(fā)回消息的 JSON 響應。然后程序遍歷所有接收到的消息,尋找與機器人的 Discord ID 對應的整數代碼。如果在消息中找到 ID,表明提到了機器人(“@GradCapBot”),則消息將保存到局部變量中,程序將完成對所有消息的檢查。

串行監(jiān)視器顯示程序成功從 Discord 檢索消息
?

現在程序有一些消息要顯示,程序格式化它將顯示的文本,然后以新文本作為參數調用“ display_7x4_text()” 。程序繼續(xù)顯示所有消息,直到顯示所有消息。此過程循環(huán)運行,因此程序始終在尋找要顯示的新消息。如果沒有要顯示的新消息,我不希望帽子閑置而沒有顯示任何內容。因此,如果沒有要顯示的新消息,程序會顯示編程到閃存中的 10 個圖像之一。然后每個圖像顯示 5 秒鐘,然后程序再次檢查新消息。

在顯示兩個圖像之前帽顯示“祝賀畢業(yè)生”消息
?

創(chuàng)建了一個基本的文本過濾器來過濾掉 75 個“壞詞”,盡管這個列表不是很全面。過濾掉明顯的臟話和誹謗就足夠了,所以我不會表現出完全令人反感的東西。雖然這個過濾器可能很容易繞過,但我還包括一個將消息詳細信息保存到閃存中的功能,這樣我就可以查看顯示的消息文本以及發(fā)送消息的人。

手術:

當 ESP32 連接到串口監(jiān)視器時,可以通過 REPL 提示符控制程序。使用“串行 USB 終端”Android 應用程序,我的手機可以充當串行監(jiān)視器,直接與 ESP32 接口,只需按一下按鈕即可運行一些預編程的功能。此方法還允許我顯示非格式化文本或顯示特定精靈。

顯示圖像的帽子
?

?


下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數據手冊
  2. 1.06 MB  |  532次下載  |  免費
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費
  5. 3TC358743XBG評估板參考手冊
  6. 1.36 MB  |  330次下載  |  免費
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費
  9. 5元宇宙深度解析—未來的未來-風口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費
  11. 6迪文DGUS開發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費
  13. 7元宇宙底層硬件系列報告
  14. 13.42 MB  |  182次下載  |  免費
  15. 8FP5207XR-G1中文應用手冊
  16. 1.09 MB  |  178次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費
  3. 2555集成電路應用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費
  7. 4開關電源設計實例指南
  8. 未知  |  21549次下載  |  免費
  9. 5電氣工程師手冊免費下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費
  11. 6數字電路基礎pdf(下載)
  12. 未知  |  13750次下載  |  免費
  13. 7電子制作實例集錦 下載
  14. 未知  |  8113次下載  |  免費
  15. 8《LED驅動電路設計》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉中文版)
  4. 78.1 MB  |  537798次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191187次下載  |  免費
  13. 7十天學會AVR單片機與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138040次下載  |  免費