步驟1:硬件要求 - 1
對于這個項目,我們需要混合使用電子元件和木工工具。
電子元件包括:
A Perfboard
NodeMCU
蜂鳴器屏蔽或蜂鳴器和100Ω電阻器
SPDT開關
4 x TM1637 4位數字7段顯示器
連接電纜很少
用于上傳代碼的USB電纜
和常規焊接設備
步驟2:硬件要求 - 2
對于我們需要的工作位:
Palate Wood
鉛筆
卷尺
手/剁鋸
錘子
釘子
砂光工具
和個人用于木材切割的防護設備(PPE)
我正在用托盤木材制作外殼,因為我的其他DIY木工項目留下了一大堆托盤。您也可以用紙板或塑料容器制作盒子并涂上它以使其看起來很酷。
第3步:主題覆蓋
第4步:計劃
計劃是制作一個24厘米x 10厘米的盒子來容納電路。
設備開機后,它將首先使用代碼中提供的SSID和密碼對連接到指定的Wi-Fi網絡。建立連接后,代碼會使用“Google API密鑰”組合(我將在后面的部分中向您展示如何生成密碼)和“YouTube頻道ID”以從YouTube服務器獲取數據。然后,設備使用7段顯示器顯示視圖和訂戶計數。
顯示信息后,等待5分鐘后再從YouTube服務器獲取下一組信息。變量用于存儲當前訂戶計數。如果新用戶數大于舊計數,則蜂鳴器繼續,藍色和白色LED交替閃爍(發光)。
步驟5:接線
接線非常簡單。我們將首先將7段顯示器連接到微控制器。每個顯示器都有4個引腳,2個用于電源,1個用于時鐘,另一個用于數據。按照屏幕上提供的說明將數據和時鐘引腳連接到NodeMCU。
然后我們將顯示器的所有VCC引腳連接到NodeMCU的3.3V引腳。然后,將蜂鳴器屏蔽/蜂鳴器與100Ω電阻器連接到D8引腳。之后,將藍色和白色LED分別連接到帶有220Ω限流電阻的D9和D10引腳。
現在,繼續將所有接地引腳連接到NodeMCU的GND引腳。連接所有引腳后,將開關連接到NodeMCU的VIN和GND到降壓轉換器的GND。
步驟6:使用的庫
頻道的用戶和頻道ID列在“帳戶信息”下
登錄您的YouTube帳戶。
點擊右上角的帳戶圖標》設置。
從左側面板單擊“高級設置”。
通過從名稱中刪除任何特殊字符和“master”來解壓縮并重命名庫。將文件夾放在Arduino的libraries文件夾中。如果這是您的第一個庫,則可能需要創建Libraries文件夾。重新啟動IDE,以便正確加載KEYWORD文件,示例,并將庫添加到庫菜單。
》唯一標識符:
除了庫,您還需要很少的此項目的唯一標識符。
第一個是無線網絡的SSID和密碼。
然后,您需要擁有YouTube頻道的唯一頻道ID。為此:
登錄您的YouTube帳戶。
點擊右上角的帳戶圖標》設置。
從左側面板中單擊“高級設置”。
頻道的用戶和頻道ID列在“帳戶信息”下
最后,您需要生成“Google API密鑰” “為你的頻道。要生成密鑰
Google搜索“使用API密鑰”或打開下面說明中提供的鏈接。
向下滾動并單擊“API& Services→Credentials”
如果這是您第一次訪問此頁面,則必須通過單擊“創建”按鈕創建一個新項目。
接受條款并為項目命名,然后點擊“創建”按鈕創建項目
創建項目后,只需單擊“創建憑據”下拉列表
系統將花時間生成密鑰,然后從那里選擇“API密鑰”。生成后,它會在彈出對話框中顯示密鑰。 - 復制并將其保存在您的電子郵件中
現在點擊左側面板中的“圖書館”選項,然后
向下滾動并啟用“YouTube Data API v3”和“YouTube報告” API“通過單擊它們并點擊”啟用“按鈕
等待5到10分鐘,然后您就可以使用剛剛在代碼中生成的API密鑰。
第7步:木工
《讓我們通過組裝木箱開始我們的項目。如前所述,我將削減:
2 x 24x10cm,2 x 10x6cm側板和一個24x10cm背板。切割完所有的木塊后,我將加入并打磨它們,使盒子看起來漂亮順滑。在單元的后面,我要鉆2個孔,其中一個用于電源線,另一個用于開關。
步驟8:焊接
一旦盒子準備就緒,我將焊接所有電子元件并安裝他們在盒子里。
我將從焊接NodeMCU開始。然后,我將100Ω電阻焊接到NodeMCU的D8引腳。之后,我將蜂鳴器焊接到穿孔板,并將其連接到NodeMCU。接下來,我將焊接開關并將其安裝在盒子的背面。根據原理圖,開關的一個引腳將連接到NodeMCU的VIN,另一個引腳連接到降壓轉換器的+ ve端子。轉換器的-ve端將連接到NodeMCU的GND引腳。現在,我將根據原理圖焊接7段。
接下來,我將藍色和白色LED焊接到NodeMCU的D9和D10引腳。所以,這就是我的面板的樣子。在安裝面板之前,讓我做一個快速測試。看起來一切都按照他們應該的方式運作。好的,讓我安裝面板,然后我會向你們解釋代碼。
第9步:代碼
這些是我們為此項目所需的庫列表。
現在,如果您使用的是與我相同的原理圖,則除了這幾行之外,您不必修改此代碼中的任何內容。您只需在此處添加WiFI網絡的SSID和密碼以及Google API密鑰和渠道ID。您可以保持原樣并將代碼加載到NodeMCU。
“api_mtbs”是微處理器發出的API請求之間的平均時間。
然后,我正在初始化通過設置時鐘和數據引腳來顯示。之后我設置了蜂鳴器和2個LED。
在設置()部分,我正在設置LED引腳模式并在啟動時打開藍色LED。然后我清除所有7段并在顯示器1和3上顯示0.然后設備將使用提供的憑證連接到WiFI網絡。
在loop()部分中的值為計數器超出了api_mtbs或簡單來說,當需要向YouTube服務器發出下一個請求時,會進行帶有通道ID的API調用,結果將顯示在串行監視器和7段顯示器上。您需要計算接收計數的MOD以顯示最后4位數,然后從原始值中減去MOD值以獲得前4位數。我注意到的一件事是,如果MOD是24,那么顯示器只顯示24而不是0024.所以我們必須將缺少的零添加到顯示器。這段代碼是添加缺失的0。
最后,當新訂戶數量大于舊訂戶數時,此位代碼將打開蜂鳴器和LED。
注意:引腳D9和D10是RX和NodeMCU的TX引腳。因此,如果將LED連接到這些引腳,您將無法在串行監視器上獲得任何信息。因此,在測試過程中,不要將任何東西連接到D9和D10引腳,并注釋設置這些引腳的引腳模式的位。
您可以從以下描述中提供的鏈接下載代碼。
第10步:未來增強
我將在本項目的即將發布的版本中包含的幾件事情是:
將每日計數保存到網絡服務器的數據庫
將每月計數保存到網絡服務器的數據庫
生成Web界面以顯示每日/每月分析條形圖/折線圖
添加NeoPixels而不是閃爍的LED
-
通知機制
+關注
關注
0文章
3瀏覽量
6296 -
Youtube
+關注
關注
0文章
143瀏覽量
15547
發布評論請先 登錄
相關推薦
評論