









摘 要:基于STM32單片機設計了一款智能垃圾桶,它能夠依據用戶的語音指令識別日常垃圾種類,助力用戶更便捷地進行垃圾分類與管理。此系統以STM32F103C8T6單片機作為主控芯片。其中,LD3320語音識別模塊用于精準識別用戶的語音指令,并依據指令內容辨別日常垃圾種類;SYN6288語音播報模塊負責對識別出的垃圾種類進行語音播報;ESP8266 WiFi模塊可實現垃圾桶與手機或其他智能設備的數據傳輸和遠程控制;火焰檢測傳感器能實時監測垃圾桶內是否有火源;HC-SR04超聲波與SG90舵機協作實現自動測距。經過實際測試,該設計能夠準確識別常見生活垃圾種類并進行播報,借助ESP8266 WiFi實現對垃圾桶的遠程控制和信息傳輸,當有火源時可及時報警,OLED顯示屏則實時顯示垃圾桶的狀態。此設計能夠滿足現代家庭日常的垃圾分類管理需求,為未來智能家居領域提供有益的參考和借鑒。
關鍵詞:STM32F103C8T6單片機;語音播報;數據傳輸;遠程控制;火焰檢測;自動開合
中圖分類號:TP274 文獻標識碼:A 文章編號:2095-1302(2025)07-0-04
0 引 言
隨著現代城市生活日益繁忙,人們對居住環境品質的要求也不斷提升,城市垃圾處理成為亟待解決的問題。傳統垃圾桶功能單一且缺乏智能化管理,已無法滿足當下城市管理需求。科技不斷進步,嵌入式系統技術[1]、傳感器技術和無線通信技術[2]飛速發展,這為智能垃圾桶[3]的研發與應用提供了有力支持。智能垃圾桶集成這些先進技術后,可實現自動感應開蓋、智能垃圾分類、失火預警和遠程監控等多種功能,極大地提高了垃圾處理效率和智能化管理水平。在眾多微控制器里,STM32性能出色、功耗低且集成度高,是智能垃圾桶控制系統的理想之選。搭載多種傳感器后,STM32能夠對垃圾桶進行全方位智能控制,從而提升用戶體驗和環保效果。基于上述背景,本文設計了一款基于STM32的智能垃圾桶,該垃圾桶是集火焰檢測、測距開蓋、語音識別并播報以及遠程控制[4]于一體的智能化系統,旨在實現垃圾桶的自動化、智能化管理,為城市垃圾處理提供新的解決方案。
1 整體設計方案
該系統以STM32F103C8T6單片機作為主控芯片,此芯片性價比高且處理能力強。系統搭載LD3320和SYN6288語音模塊,能準確識別并播報日常生活垃圾種類;通過ESP8266 WiFi模塊,可實現垃圾桶與手機或其他智能設備的數據傳輸和遠程控制;利用HC-SR04超聲波與SG90舵機實現自動測距;借助火焰檢測傳感器對垃圾桶內火源進行檢測,一旦檢測到火源,能夠通過WiFi及時向系統發送報警信息;還使用OLED顯示屏顯示垃圾桶的狀態。系統的總體設計框架如圖1所示。
2 系統硬件設計
2.1 LD3320語音識別模塊
本系統運用LD3320語音識別模塊[5]來識別用戶的語音指令。此模塊支持用戶自由編輯50條關鍵詞語,工作于口令模式。該模塊采用非特定人語音識別技術,用戶無需進行錄音訓練,這讓應用更加便捷。系統通過判斷用戶語音指令與關鍵詞語的匹配性,借助串口通信[6]把數據傳送到主控芯片,從而控制智能垃圾桶自動開合。
2.2 SYN6288語音播報模塊
本系統采用SYN6288語音播報模塊[7]來播報識別出的垃圾種類。它通過異步串口通信方式接收待合成的文本數據,以實現從文本到語音(TTS語音)的轉換。該模塊具備高效性、準確性和豐富性等優點,用戶可靈活控制語音合成進程,從而高效播報所識別的垃圾種類以及報警提示語音。
2.3 ESP8266 WiFi模塊
基于STM32的智能垃圾桶采用ESP8266 WiFi模塊[8]實現垃圾桶與手機或其他智能設備的數據傳輸和遠程控制。ESP8266 WiFi模塊支持AP、STA以及STA+AP工作模式,此系統采用AP工作模式。在AP模式下,ESP8266 WiFi模塊會創建一個無線網絡,作為中心節點,其他設備能像連接常規WiFi網絡一樣連接到該模塊創建的網絡并與之通信。
2.4 SG90舵機
SG90舵機[9]是一種位置(角度)伺服驅動器,適用于那些需要角度不斷變化且能保持的控制系統。它的控制和輸出較為簡單,這使得單片機系統能輕松與之對接。該舵機的轉動角度在0~180°范圍內,內部結構包含電機、控制電路和機械結構三個部分。基于STM32的智能垃圾桶是通過控制舵機的角度來控制垃圾桶蓋開合的。
2.5 HC-SR04超聲波模塊
本系統運用HC-SR04超聲波模塊[10],借助超聲波發送器和接收器來實現距離測量。其工作原理為:超聲波發送器先把電信號轉換成超聲波脈沖,再經空氣介質向外發送。超聲波在遇到障礙物時會反射,而后被接收器接收。模塊內部設有一個計時器,用來測量超聲波發射與反射回來的時間差,此時間差就是聲波于空氣中傳播的時間。最終,將聲波傳播時間乘以聲速(340 m/s),就能算出目標物體與傳感器間的距離。當判定所測距離小于5 cm時,主控芯片控制舵機自動打開垃圾桶。
2.6 火焰檢測傳感器
火焰檢測傳感器[11]可實時檢測垃圾桶內的火源。它利用紅外線對火焰的敏感特性,把火焰信號轉換為電平信號,從而有效檢測火焰。火焰檢測傳感器的電路接口主要包含電源接口和信號輸出接口。其中,信號輸出接口用于輸出傳感器檢測到的火焰信號。該系統采用數字信號輸出接口(DO),通過讀取DO口的高低電平來判斷是否有火源產生。
2.7 OLED顯示屏
基于STM32的智能垃圾桶采用0.96英寸、基于I2C通信的OLED顯示屏[12]。此顯示屏輕薄柔韌、能耗小、可視效果佳且使用方便,可用于顯示識別出的垃圾類型圖標,便于人機交互[13]。
2.8 蜂鳴器
蜂鳴器為一體化結構的電子訊響器,其由壓電陶瓷片、電路板以及聲音放大器等構成。接通電源時,電路板會控制壓電陶瓷片振動以發聲,聲音經放大器放大后從蜂鳴器傳出。若火焰檢測傳感器檢測到垃圾桶內部有火源,主控芯片將控制蜂鳴器報警提示。
3 軟件程序設計
3.1 系統主程序流程
基于STM32的智能垃圾桶利用Keil5軟件編寫C語言程序,給系統供電后,系統主程序將會對語音識別模塊、ESP8266 WiFi模塊等進行初始化配置;初始化配置完成后,系統會打開ESP8266 WiFi模塊熱點和語音識別模塊響應燈;用戶通過發出一級指令(小凱)喚醒語音識別模塊,若喚醒成功則指示燈閃爍,此時再次進行二級指令采集,從而進行垃圾識別和語音播報;若火焰檢測傳感器檢測到火源,則可通過串口發送指定警報句至系統上且蜂鳴器報警;用戶也可自行分類并將垃圾放在垃圾所屬類型的垃圾桶前,垃圾桶即可自動開蓋,且OLED顯示屏會顯示垃圾所屬種類圖標。系統主程序流程如圖2所示。
3.2 語音識別程序設計
基于STM32的智能垃圾桶具有識別各類生活垃圾的功能。用戶能夠通過簡單話語喚醒這一功能,當系統被一級指令激活時,板子上的LED燈就會作出反饋,之后用戶可給出更具體的指令以正確分類垃圾。該系統以STM32F103C8T6微控制器為基礎,借助串口1與語音識別模塊進行串口通信來交換數據。語音識別程序流程如圖3所示。
3.3 語音播報程序設計
基于STM32的智能垃圾桶具備語音播報功能,這一功能讓人機交互變得更加便捷。在成功喚醒系統后,用戶只要說出垃圾種類,系統就能快速識別并歸類。接著,系統會清晰播報出該垃圾屬于可回收、廚余、有害或者其他類別。此功能極大地提升了用戶的使用體驗,使用戶能夠更輕松地處理垃圾。語音播報程序流程如圖4所示。
3.4 ESP8266 WiFi程序設計
基于STM32的智能垃圾桶搭載ESP8266 WiFi模塊,以此實現智能垃圾桶的遠程控制與通信功能。其工作原理如下:首先,WiFi模塊建立WiFi熱點,手機連接該熱點后,通過手機APP將待發送的數據傳輸給ESP8266芯片;接著,WiFi模塊經串口3向單片機發送指令,單片機執行相應動作,進而實現對垃圾桶的遠程控制。此外,當火焰檢測傳感器檢測到火源時,單片機也會通過串口3向ESP8266芯片發送求救警報,手機APP系統能夠接收到該警報,從而起到預警作用。ESP8266 WiFi程序流程如圖5所示。
3.5 舵機驅動程序設計
基于STM32的智能垃圾桶的蓋子由舵機操縱開啟和關閉。舵機的旋轉角度通過脈沖寬度調制(PWM)來調節,這種調節是通過調整信號高電平時間占比實現的。簡單來講,PWM通過對模擬信號電平進行數字編碼,以改變占空比的方式調控信號變化,占空比即一個周期內信號處于高電平狀態的時間與整個周期時間的比例。舵機驅動程序流程如圖6所示。
3.6 超聲波測距程序設計
首先,利用I/O口TRIG發出持續時間至少為10 μs的高電平信號,以此觸發測距操作。接著,模塊會自動發送8個頻率為40 kHz的方波,并且檢測是否有信號返回。一旦檢測到返回信號,模塊就會通過I/O口Echo輸出高電平,該高電平的持續時間即為超聲波往返的時間。最后,按照公式(高電平時間×聲速)/2來計算測試距離,聲速為340 m/s。
若所測距離小于5 cm,MCU將控制智能垃圾桶自動打開。超聲波程序流程如圖7所示。
3.7 火焰檢測傳感器程序設計
基于STM32的智能垃圾桶配備了火焰檢測傳感器。該傳感器在接通電源后會進行自檢,以確認能否正常工作。若正常工作,其會向控制器輸出信號,控制器則通過接收信號來判斷是否存在火焰。當控制器檢測到火焰信號時,會借助ESP8266 WiFi向手機APP發送求救警報,從而保障設備安全,APP聊天界面如圖8所示。若控制器未檢測到火焰信號,傳感器會持續監測火焰狀況,并向控制器輸出信號。火焰檢測傳感器程序流程如圖9所示。
4 實驗測試結果
圖10為基于STM32的智能垃圾桶實物圖。垃圾桶的主控芯片位于正中間,四個垃圾桶分布在四個角上。每個垃圾桶都配備有一個舵機、超聲波測距和火焰檢測傳感器。語音識別、語音播報、ESP8266 WiFi、OLED顯示屏以及蜂鳴器模塊則集成在主控芯片電路板上。此系統具有高度的集成性和便捷性,能夠為未來的智能家居領域提供有益的參考和借鑒。
在基于STM32完成智能垃圾桶設計之后,開展了一系列實驗。OLED顯示屏顯示、APP遠程控制、超聲波測距自動開合垃圾桶、語音播報功能以及火焰檢測傳感器的測試結果見表1;語音識別模塊功能的測試結果見表2。
5 結 語
在當前國家環境面臨日益嚴重的垃圾處理問題這一背景下,本文提出了一種創新的解決方案。設計了一款簡易、便攜的智能垃圾桶,其運用了先進的智能語音識別技術。這款垃圾桶有多種功能,它具備語音識別功能,能夠依據用戶的語音指令識別垃圾種類,同時還能進行語音播報,以幫助用戶更好地了解不同的垃圾類型;此外,它可以通過WiFi、超聲波測距控制垃圾桶開蓋,利用火焰檢測傳感器檢測是否存在火源。本設計能夠滿足現代家庭對垃圾分類管理的日常需求,為未來智能家居領域提供有益的參考和借鑒。
注:本文通訊作者為黃凱升。
參考文獻
[1]牛勇,李澤,馬麟,等.嵌入式技術在電子信息系統中的應用[J].電子技術,2023,52(9):354-355.
[2]劉金雯.無線通信技術在智能家居中的應用研究[J].數字通信世界,2022(7):103-105.
[3]許韓睿,程家琪,劉華,等.基于STM32的智能垃圾桶系統設計[J].電子質量,2021(9):46-48.
[4]管小明,王孚貴,李士龍.基于STM32的智能家居管理系統設計[J].電子制作,2023,31(19):40-42.
[5]易紅梅,易紅玉,黃東香.基于LD3320語音模塊的簡易投影燈控制系統[J].西部皮革,2018,40(22):59.
[6]張海超,張北偉.基于STM32的多串口通信系統設計[J].國外電子測量技術,2019,38(2):99-102.
[7]單愛軍. SYN6288中文語音合成芯片在智能播種監視器中的應用[J].農業科技與裝備,2012(6):43-44.
[8]吳允強,吳由松.基于ESP8266的智能家居控制系統設計[J].電子測試,2017(21):9.
[9]劉群銘,王勇,史穎剛.基于STM32的舵機控制器電路設計[J].江蘇科技信息,2019,36(21):54-57.
[10]鐘家弘,陶英婷.基于STM32的超聲波測距儀[J].物聯網技術,2023,13(9):32-35.
[11]石發強.基于紫紅外線檢測原理的火焰傳感器的設計[J].煤炭與化工,2015,38(9):101-104.
[12]焦石,王琛,胡澤原,等.基于STM32的OLED顯示屏驅動設計[J].電子世界,2018(12):127-128.
[13]王沙沙,呂鎮,謝波,等.人工智能產品人機交互設計標準化研究[J].標準科學,2024(2):16-22.
收稿日期:2024-05-14 修回日期:2024-06-18
基金項目:2022年度嘉應學院質量工程(含教改)建設項目(ZLGC2 022601);2023年廣東省科技創新戰略專項資金(大學生科技創新培育)立項項目(pdjh2023a0483)