描述簡介:基于武漢芯源半導體CW32F030C8T6和啟英泰倫CI-C22GS02制作的智能語音分類垃圾桶,能夠實現識別語音來判斷垃圾種類,同時打開相應的垃圾桶,可外接普通按鍵或者觸摸按鍵,也可以外接紅外接近傳感器來打開對應的垃圾桶。
項目說明


本次設計采用武漢芯源半導體的CW32F030C8T6作為主控,主要負責和離線語音模塊的串口通訊,負責輸出4路PWM信號、驅動IPS顯示屏、控制2路MOS驅動電路(控制風扇和燈光)、驅動4個WS2812B燈。語音識模塊采用啟英泰倫CI-C22GS02模塊(主芯片采用Cl1122,支持本地200條命令詞以下的離線語音識別),主要負責語音識別和播報語音,可通過串口與MCU通訊。
項目相關功能介紹
介紹
1.離線語音模塊的命令詞可自行定制,最多可錄入200個命令詞,目前已錄入了168條垃圾名詞和一些控制指令。當語音模塊識別到正確的命令詞后,串口輸出規定協議的數據。語音模塊也可以接收規定協議的串口數據來播報指定的語音。離線語音模塊的串口1和MCU主控的串口2使用跳線連接,方便分別開發調試。

2.主控輸出4路PWM信號(周期20us,頻率50Hz),可直接驅動4路舵機。

3.四個WS2812B燈作為4類垃圾的指示燈,語音模塊在識別到正確的語音后,由CW32主控來控制指定的燈點亮對應的顏色。

4.電路采用直流12V供電,經DC-DC降壓后輸出5.2V,5.2V再經LDO降壓后輸出3.3V。其中CI-C22GS02模塊、舵機、WS2812B、外部燈光和風扇供電均采用5.2V供電,MCU主控、IPS顯示屏采用3.3V供電。

5.電路設計了2路MOS驅動電路,可外接5V的小風扇和5V供電的燈。另外預留了2種屏幕接口,支持8針的SPI接口的屏幕或者4針的I2C接口的屏幕。預留3組擴展接口,將剩余的IO口全部引出,方便擴展。

硬件部分介紹
智能語音分類垃圾桶主要包含主控板、顯示屏、獨立按鍵模塊、加裝舵機的垃圾桶模型、12V電源適配器。
軟件部分介紹
軟件分兩部分,一部分是針對CW32F030C8T6的程序開發,另一部分是針對CI-C22GS02離線語音模塊的命令詞、語言模型、聲學模型以及固件的制作。
1.CW32F030C8T6的程序開發。采用Keil5開發,借鑒了CW32官方例程和開源平臺上一些大佬的程序。程序中涉及GPIO、DMA、定時器、ADC、UART、PWM、SPI等功能的實現。
因本人水平有限,寫的程序只能說能用,但不保證好用。里面使用了大量的全局變量,還有很多改進的地方。
下面展示了部分程序。
(1)主程序


(2)串口發送程序

(3)串口接收程序(有BUG,接收兩遍才能接收完整)


(4)舵機執行動作的程序
采用定時器和標志位,使舵機緩慢打開,一定時間后緩慢自動關閉,4路舵機相互不受影響。

2.CI-C22GS02離線語音模塊的命令詞、語言模型、聲學模型以及固件的制作。具體制作教程建議參考啟英泰倫文檔中心
(1)命令詞列表(根據自己需要定制)

(2)生成的語言模型相應的文件放在這里


(3)生成的聲學模型相應的文件放在這里

(4)生成固件之前需要手動修改這里,這里按照數字順序(16進制)來修改。

(5)合并燒錄固件

(6)打包固件

(7)燒錄固件。使用CH340串口工具,CH340的TX接語音模塊串口0的RXD,CH340的RX接語音模塊串口0的TXD,GNG接GND。CH340先插入電腦,燒錄軟件中出現對應的串口后,在右邊的方框中打勾,然后按住UPDATE 按鈕,CH340D的5V接語音模塊+5V,此時燒錄軟件會顯示開始燒錄,直到燒錄完成。

固件燒錄成功后,喇叭應該會播報事先錄入的歡迎詞,這就說明燒錄成功。
設計圖

原理圖_V1.0

原理圖_V2.0

PCB_V2.0
-
單片機
+關注
關注
6050文章
44687瀏覽量
641186 -
半導體
+關注
關注
335文章
28012瀏覽量
225474
發布評論請先 登錄
相關推薦
【藍牙4.1申請】智能垃圾桶
基于ARM的家用智能垃圾桶怎么實現?
人工智能分類垃圾桶原理
基于小凌派RK2206的智能垃圾桶設計
基于LD3320的語音識別智能垃圾桶設計

智能垃圾桶有哪些功能及特點_智能垃圾桶市場前景_智能垃圾桶怎么用
如何快速DIY一個智能語音垃圾桶

基于51單片機的智能垃圾桶(語音版)

評論