基于ESP32的語音識別控制AI小夜燈
1 項目簡介
使用ESP32-S3N8R8模塊作為主控芯片,S3內(nèi)核增加了用于加速神經(jīng)網(wǎng)絡(luò)計算和信號處理等的指令,這使得我們可以使用它來快速解析訓(xùn)練好的語音模型進行語音識別的功能。
2 原理解析
本項目由四個部分組成,電源部分、LED照明部分、主控部分、語音識別拓展部分,本項目主要是通過麥克風接收語音信號并進行處理,提取人聲進行解析比較,當聲音符合指令后,進行對應(yīng)的控制操作。
2.1 電源電路
采用TYPE-C-16P 接口作為供電接口,同時使用對應(yīng)的USB 數(shù)據(jù)引腳接入S3 對應(yīng)的USB 引腳處(USBD+IO20),(USBD-IO19),直接使用USB 作為下載和調(diào)試,無需轉(zhuǎn)換為串口信號。在CC1 和CC2 引腳處加入5.1 K下拉電阻,便于不同主機識別和配置。
使用AMS1117 作為5 V轉(zhuǎn)3.3 V降壓LDO,ESP32S3在開啟無線射頻或做語音解析運算時,消耗電流較大,再加上有其余外設(shè)電路的存在,在進行電源芯片選型時,因選擇輸出電流至少在600 mA 以上的,AMS1117 輸出電流為1A,能夠滿足。
2.2 LED照明電路
使用四個RGB 三色燈分布在板的四周,通過改變RGB三色燈不同顏色的亮度可以獲得不同的顯示效果。這里考慮到紅燈、藍燈、綠燈在所需電流上不一致,使用不同的電阻分開串聯(lián)在對應(yīng)的支路上,后續(xù)可以通過調(diào)整阻值來使亮度達到統(tǒng)一。同時將每一個顏色的燈串在一起,通過SI2302N溝道m(xù)os管進行統(tǒng)一導(dǎo)通和關(guān)閉,也可以通過PWM 控制導(dǎo)通時間來進行亮度調(diào)整。
RGB LED*4
2.3 主控部分
使用ESP32S3N8R8模組作為主控芯片,這里需要注意,如果需要進行語音識別,所需的資源庫是比較大的,建議選擇Flash 和PSRAM在8M以上。注意在帶有OSPI PSRAM(即內(nèi)置芯片為ESP32-S3R8 及以上)的模組中,管腳IO35,IO36,IO37 用于連接至模組內(nèi)部集成的OSPI PSRAM,不可用于其他功能,這里我們需要在對應(yīng)引腳上打上非連接標識。
在ESP32S3 中,一共有4 個Strapping 引腳,在進行引腳分配時,盡可能不要去在這些引腳處加入上拉或下拉電阻去改變它的默認狀態(tài)。
BOOT&復(fù)位按鍵
表4 Strapping管腳
2.4 語音識別拓展部分
使用I2S 數(shù)字硅麥克風接收語音信號,在I2S 信號線處,為了獲得更好的抗干擾效應(yīng),可以嘗試串聯(lián)小電阻進行阻抗匹配。
使用I2S信號的D類功放芯片進行語音輸出,在聲音輸出路徑中,加入磁珠與電容組成LC 濾波電路,降低輸出干擾。外部喇叭使用GH1.25*2P接口進行連接。
數(shù)字功放喇叭
ESP32S3帶有兩個I2S控制器,所有IO都可以經(jīng)過內(nèi)部矩陣復(fù)用為I2S引腳,大家可以隨意分配。
加入震動傳感器,當手拍打桌面時,也能進行不同燈光的切換,增加可玩性。震動傳感器內(nèi)部為彈簧結(jié)構(gòu),可以簡單理解為彈簧按鍵。
3 器件焊接
3.1 物料清單序號名稱位號封裝參數(shù)數(shù)量器件編號:
3.2 焊接輔助工具
焊接時可以在嘉立創(chuàng)EDA的PCB頁面里點擊頂部菜單欄的工具選擇焊接輔助工具,會跳轉(zhuǎn)到交互式BOM頁面,實時交互顯示元器件在PCB 板上對應(yīng)的坐標位置,可勾選隱藏或顯示已焊接元器件,高效率焊接。
4 實物演示
4.1 3D渲染圖
4.2 實物成品
4.3 軟件資料鏈接:樂鑫語音藤球燈
(本文來源于《EEPW》202504)
評論