朱省委,宋玥,鄭棟梁,熊光磊,梁君威
(鄭州工業(yè)應(yīng)用技術(shù)學(xué)院,河南鄭州,451150)
隨著智能識(shí)別技術(shù)和分類(lèi)技術(shù)的快速發(fā)展,世界各地有許多優(yōu)秀的公司來(lái)處理垃圾分類(lèi)問(wèn)題,大多數(shù)公司的產(chǎn)品使用控制器、監(jiān)控?cái)z像頭和人工智能技術(shù)來(lái)檢測(cè)和識(shí)別垃圾[1]。然后根據(jù)人工服務(wù)或機(jī)械設(shè)備系統(tǒng),垃圾被分類(lèi)在相應(yīng)的垃圾桶中。當(dāng)前,國(guó)內(nèi)大多數(shù)智能垃圾桶控制系統(tǒng)相對(duì)簡(jiǎn)單,垃圾桶的功能相對(duì)單一。基本上可分為三類(lèi):第一類(lèi)是使用超聲波測(cè)距技術(shù)或紅外線(xiàn)測(cè)距技術(shù)來(lái)檢測(cè)投放垃圾,然后驅(qū)動(dòng)電機(jī)運(yùn)行,使得連接電機(jī)的垃圾桶蓋能夠自動(dòng)側(cè)翻功能[2]。第二種類(lèi)型的控制系統(tǒng)能夠進(jìn)行語(yǔ)音識(shí)別垃圾種類(lèi),并且在內(nèi)部具有收集太陽(yáng)能裝置的設(shè)備,可為整個(gè)垃圾桶供電。該系統(tǒng)中的垃圾桶通常稱(chēng)為太陽(yáng)能垃圾桶[3]。在第五屆2016年中國(guó)-亞洲東盟農(nóng)業(yè)博覽會(huì)中曾經(jīng)展示出現(xiàn)了一種可以利用太陽(yáng)能作為清潔利用能源的自動(dòng)立式開(kāi)蓋智能垃圾桶,借助其中內(nèi)部嵌入的自動(dòng)智能垃圾控制管理系統(tǒng),垃圾桶還甚至可以進(jìn)行自動(dòng)檢測(cè)現(xiàn)場(chǎng)觀眾用力的手,并自動(dòng)地進(jìn)行打開(kāi)和自動(dòng)關(guān)閉整個(gè)垃圾桶的蓋,但是它基本上只能用于有陽(yáng)光的地方,這就限制了它的商業(yè)價(jià)值而致使沒(méi)有得到投資者的支持。第三類(lèi)垃圾桶同樣配置了所謂的太陽(yáng)能收集設(shè)備,這里的所謂太陽(yáng)能收集裝置僅僅目的是為了處理垃圾桶外面的一個(gè)廣告燈而提供一種電力支持,它雖然是相對(duì)通用的具有一定的經(jīng)濟(jì)和商業(yè)價(jià)值,但是它沒(méi)有任何處理垃圾的技術(shù)能力。
在本設(shè)計(jì)中,AI攝像頭捕捉圖像并處理識(shí)別到的垃圾,垃圾桶控制系統(tǒng)對(duì)識(shí)別結(jié)果進(jìn)行分類(lèi),并且本系統(tǒng)增加了語(yǔ)音命令識(shí)別可以對(duì)圖像識(shí)別的誤差進(jìn)行糾正,同時(shí)語(yǔ)音播報(bào)功能、垃圾桶自動(dòng)檢測(cè)狀態(tài)等功能更是讓垃圾桶更加智能。通過(guò)上述功能的實(shí)現(xiàn),彌補(bǔ)了一定程度上的智能垃圾分類(lèi)回收軟件的不足,是一種可行的垃圾分類(lèi)防止細(xì)菌感染的方法。本設(shè)計(jì)使用STM32F407單片機(jī)作為主要控制元件。圖1顯示了系統(tǒng)的整體框圖。

圖1 系統(tǒng)整體框圖
系統(tǒng)機(jī)械結(jié)構(gòu)采用一個(gè)步進(jìn)電機(jī)帶動(dòng)舵機(jī)與托盤(pán)旋轉(zhuǎn)到對(duì)應(yīng)的垃圾桶上方,舵機(jī)負(fù)責(zé)將托盤(pán)傾倒以投放垃圾,下方具有平均分布的四個(gè)小垃圾桶,分對(duì)應(yīng)有害垃圾、可回收垃圾、廚余垃圾、其他垃圾。
2.2.1 控制器最小系統(tǒng)
本設(shè)計(jì)最小系統(tǒng)采用的是STM公司開(kāi)發(fā)的STM32F407 ZGT6,其特點(diǎn)為內(nèi)部采用ARM Cortex-M4內(nèi)核,32位的MCU+FPU,210DMIPS,內(nèi)部特點(diǎn)是具有一個(gè)可以運(yùn)行高達(dá) 1MB Flash /192+ 4KB ARM 、以太網(wǎng)接口、多達(dá)17個(gè)定時(shí)器、三個(gè)數(shù)模轉(zhuǎn)換、十五個(gè)通信接口以及一個(gè)攝像頭接口。供電電源滿(mǎn)足電源供電的穩(wěn)定性、供電監(jiān)測(cè)、電源管理以及對(duì)低功耗的要求,每一個(gè)電源采用陶瓷電容進(jìn)行去耦以滿(mǎn)足要求的電源波紋。振蕩時(shí)鐘電路是所有數(shù)字計(jì)算機(jī)系統(tǒng)必不可少的,又被形象的稱(chēng)為系統(tǒng)的“脈搏”,是系統(tǒng)正確運(yùn)行的關(guān)鍵,本設(shè)計(jì)為HSE提供時(shí)鐘的晶體振蕩器采用8MHz,根據(jù)晶體振蕩器大小選擇相應(yīng)的負(fù)載電容大小并對(duì)其進(jìn)行調(diào)整。對(duì)于高頻電容 C41、C42 ,選擇專(zhuān)為符合要求高頻率場(chǎng)合而設(shè)計(jì)能滿(mǎn)足晶體或諧振器要求的高品質(zhì)陶瓷電容器。
2.2.2 圖像識(shí)別模塊
本設(shè)計(jì)中所采用圖像處理芯片是2019年嘉楠公司推出的一款名為K210 的 MCU,嘉楠公司自研的卷積神經(jīng)網(wǎng)絡(luò)軟件和硬件加速器KPU已經(jīng)集成在了此芯片架構(gòu)中,可以實(shí)現(xiàn)高性能有效地對(duì)卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行運(yùn)算。利用平臺(tái),進(jìn)行垃圾圖像數(shù)據(jù)采集訓(xùn)練,通過(guò)K210控制攝像頭讀取當(dāng)前垃圾圖像,進(jìn)行圖像識(shí)別判斷,對(duì)垃圾進(jìn)行自動(dòng)分類(lèi)。在AI計(jì)算方面,K210的算力是相當(dāng)可觀。K210的KPU算力高達(dá)0.8TFLOPS,對(duì)比于目前擁有128個(gè)核心CUDA兩個(gè)單元核心GPU的三星英偉達(dá)Jetson Nano的KPU算力高出0.33TFLOPS;與最新版的樹(shù)莓機(jī)4版本進(jìn)行了對(duì)比,算力更是高出了0.7TFLOPS。
2.2.3 語(yǔ)音識(shí)別模塊
LD3320是 一 種 基 于SI-ASR(Speaker-Independent Automatic Speech Recognition)控制技術(shù)的自動(dòng)語(yǔ)音信號(hào)識(shí)別、控制語(yǔ)音信號(hào)處理器以及控制系統(tǒng)芯片。LD3320芯片已經(jīng)完全集成了精密的A/D和D/A接口,可直接輕松實(shí)現(xiàn)人機(jī)語(yǔ)音自動(dòng)識(shí)別、人機(jī)語(yǔ)音自動(dòng)控制、人機(jī)交互等多種應(yīng)用功能。主要技術(shù)具有以下幾個(gè)特點(diǎn):非特定的數(shù)字語(yǔ)音數(shù)據(jù)識(shí)別輸入技術(shù)、用戶(hù)可以無(wú)需自己動(dòng)手進(jìn)行語(yǔ)音錄入或其他培訓(xùn)操作即可直接通過(guò)一個(gè)動(dòng)態(tài)程序編輯語(yǔ)音識(shí)別的每個(gè)關(guān)鍵字信息列表,只需將被語(yǔ)音識(shí)別的每個(gè)關(guān)鍵字按照一個(gè)相應(yīng)的語(yǔ)音數(shù)據(jù)傳輸格式進(jìn)行傳輸顯示出來(lái)并將其附帶輸入到一個(gè)芯片上的一個(gè)特定字符集或串?dāng)?shù)據(jù)格式庫(kù)中即可。在本設(shè)計(jì)中,語(yǔ)音識(shí)別模塊作為識(shí)別垃圾的輔助工具,用于對(duì)圖像識(shí)別糾偏功能,當(dāng)接受到圖像識(shí)別指令以及語(yǔ)音識(shí)別指令,系統(tǒng)進(jìn)行判斷,確保垃圾識(shí)別的準(zhǔn)確率,最終實(shí)現(xiàn)垃圾分類(lèi)自動(dòng)化。圖像識(shí)別模塊與語(yǔ)音識(shí)別模塊串口通訊電路原理圖如圖2所示。

圖2 圖像模塊與語(yǔ)音模塊串口通訊
2.2.4 顯示模塊設(shè)計(jì)
本模塊設(shè)計(jì)采用TFT-LCD (Thin Film Transistor- Liquid Crystal Display)作為顯示硬件部分,它是一種小型薄膜晶體管的小型液晶顯示屏。TFT-LCD矩陣是不同于無(wú)源TNLCD和有源STN-LCD的簡(jiǎn)易矩陣。薄膜晶體管(TFT)在每處理一臺(tái)大型液晶圖像顯示器的各種掃描量和行數(shù)以及像素上都是獨(dú)一無(wú)二存在,使得一臺(tái)液晶圖像顯示屏的各種動(dòng)和態(tài)及靜態(tài)掃描特點(diǎn)與每個(gè)掃描行的參數(shù)完全獨(dú)立無(wú)關(guān),能夠有效地幫助克服非高頻選通時(shí)的高頻串?dāng)_,從而極大地大幅改善了液晶圖像的掃描質(zhì)量。
本設(shè)計(jì)的系統(tǒng)中以一個(gè)帶有分辨率為320×240的液晶顯示屏,接口為16位80并口3.5寸的ALIENTEK TFTLCD作為主要的視頻顯示模塊,該視頻顯示模塊最多可以同時(shí)支持65k各種色彩的視頻顯示,可選擇自身帶有觸摸屏的配置。利用LCD作為顯示模塊,讀取存儲(chǔ)的宣傳視頻,進(jìn)行播放展示。同時(shí)還具有顯示提示功能,可顯示當(dāng)前各類(lèi)垃圾投擲數(shù)量,并進(jìn)行箱滿(mǎn)提醒。其電路原理圖如圖3所示。

圖3 LCD電路原理圖
2.2.5 電機(jī)驅(qū)動(dòng)模塊
本設(shè)計(jì)采用A4988作為電機(jī)驅(qū)動(dòng)模塊,用于控制智能分類(lèi)垃圾桶垃圾托盤(pán)運(yùn)轉(zhuǎn)。當(dāng)系統(tǒng)識(shí)別出垃圾所在分類(lèi),發(fā)送指令讓電機(jī)控制托盤(pán),使垃圾投擲到相應(yīng)的分類(lèi)箱中。A4988是一款完整的小型微步進(jìn)式步進(jìn)電機(jī)電壓驅(qū)動(dòng)器,易于安裝使用,內(nèi)置電壓轉(zhuǎn)換器。驅(qū)動(dòng)雙極的步進(jìn)電機(jī)同時(shí)具有五種不同驅(qū)動(dòng)電壓模式均可供用戶(hù)選用,分別為:全步、半步、四分之一、八至四分之一和十六至四分之一步,可以輕松實(shí)現(xiàn)輸出驅(qū)動(dòng)電壓高達(dá)35V、±2A的驅(qū)動(dòng)電流。A4988具有一個(gè)混合電流自動(dòng)調(diào)節(jié)器,這個(gè)裝置可以用于使驅(qū)動(dòng)系統(tǒng)固定地連續(xù)關(guān)斷驅(qū)動(dòng)電源一段時(shí)間,可以使系統(tǒng)保持在緩慢或者快速混合電壓衰減的電流模式下正常運(yùn)行工作。在直接驅(qū)動(dòng)時(shí)不必再考慮需要使用高頻相序表、高頻微步控制線(xiàn)或復(fù)雜函數(shù)編程器的接口,只要在一個(gè)STEP引腳上輸入一個(gè)脈沖可用來(lái)直接驅(qū)動(dòng)一個(gè)電機(jī)微步。
各個(gè)子模塊和整體要想實(shí)現(xiàn)該系統(tǒng)的邏輯控制能力需要經(jīng)由應(yīng)用程序這座橋梁來(lái)連接。通過(guò)單片機(jī)查詢(xún)圖像識(shí)別模塊收到的分類(lèi)信息,根據(jù)圖像識(shí)別分類(lèi)內(nèi)容來(lái)控制輸出電路,并參考輔助語(yǔ)音識(shí)別結(jié)果,實(shí)現(xiàn)智能分類(lèi)的效果。
為了更好地完成所需要的軟件設(shè)計(jì),軟件設(shè)計(jì)常用的方法就是通常將一個(gè)系統(tǒng)的整體劃分為幾個(gè)組成部分,每個(gè)組成部分被統(tǒng)稱(chēng)為一個(gè)軟件模塊。從本質(zhì)上來(lái)說(shuō),需要完成某些特定功能的相對(duì)獨(dú)立程序段被稱(chēng)為“模塊”,這種技術(shù)又被人們稱(chēng)為模塊化編程。本程序的設(shè)計(jì)是采用了模塊化的結(jié)構(gòu),程序設(shè)計(jì)包括了主程序和子程序兩部分。智能垃圾分類(lèi)系統(tǒng)的主流程序和操作框圖如圖5所示。

圖4 總電路圖

圖5 主程序流程圖
YOLO模型是一種先進(jìn)的現(xiàn)場(chǎng)實(shí)時(shí)目標(biāo)檢測(cè)控制系統(tǒng)。YOLO模型是在YOO模型的研究基礎(chǔ)上加以改進(jìn)。YOLO模型利用大的分類(lèi)數(shù)據(jù)集Image Net來(lái)擴(kuò)展對(duì)目標(biāo)檢測(cè)數(shù)據(jù)的種類(lèi),并用于高分辨率的圖像培養(yǎng)和訓(xùn)練的分類(lèi)網(wǎng)絡(luò)。該模型會(huì)自動(dòng)地選擇前一幀的合理長(zhǎng)度與寬度,并限制在網(wǎng)格中的預(yù)期偏移。使用共同合作訓(xùn)練機(jī)制的多尺度輸入影像將會(huì)通過(guò)混合從檢測(cè)和歸納數(shù)據(jù)集中的影像來(lái)進(jìn)行訓(xùn)練。我們可以把檢測(cè)到的網(wǎng)絡(luò)劃分為三個(gè)層次:第一層次,在ImageNet的數(shù)據(jù)集上對(duì)其進(jìn)行訓(xùn)練 Finetune的分類(lèi)模型;第二階段,調(diào)整網(wǎng)絡(luò)的輸入,繼續(xù)對(duì)其進(jìn)行分類(lèi)培訓(xùn);第三個(gè)階段,將分類(lèi)網(wǎng)絡(luò)更改成檢測(cè)網(wǎng)絡(luò),并持續(xù)進(jìn)行 該模型的訓(xùn)練。
該設(shè)計(jì)垃圾模型識(shí)別訓(xùn)練過(guò)程如下:收集不同類(lèi)型的垃圾圖像,訓(xùn)練并創(chuàng)建初始樣本模型,輸入盡可能多的圖像,得到多尺度特征圖,以實(shí)現(xiàn)更好的準(zhǔn)確性。使用圖像分割以及批量產(chǎn)品操縱和歸一化來(lái)捕獲不同的垃圾模型,以實(shí)現(xiàn)您的目標(biāo)檢測(cè)目標(biāo)。最后,進(jìn)行物理檢查,以確認(rèn)識(shí)別時(shí)間和準(zhǔn)確性是否合理,如果不合理則再次進(jìn)行更改,然后再次調(diào)試直至完成。將訓(xùn)練好的模型下載至圖像識(shí)別模塊Maix Bit開(kāi)發(fā)板內(nèi)運(yùn)行,主控制器通過(guò)串口1讀取垃圾識(shí)別結(jié)果。其訓(xùn)練模型流程圖見(jiàn)圖6所示。

圖6 YOLO模型訓(xùn)練流程圖
利用訓(xùn)練完成的YOLO模型,進(jìn)行垃圾圖像識(shí)別,攝像頭采集到的圖像數(shù)據(jù),反饋給MCU,在訓(xùn)練識(shí)別的模型數(shù)據(jù)庫(kù),進(jìn)行類(lèi)別判斷,自動(dòng)判斷分類(lèi)處理垃圾。圖像識(shí)別流程圖見(jiàn)圖7所示。

圖7 圖像識(shí)別流程圖
本設(shè)計(jì)利用LD3320語(yǔ)音識(shí)別模塊作為自動(dòng)識(shí)別的輔助,以確保自動(dòng)識(shí)別的準(zhǔn)確性。在LD3320芯片上進(jìn)行指令控制,必須使用寄存器配置的存儲(chǔ)器來(lái)滿(mǎn)足要求。例如設(shè)置標(biāo)志位、讀取寄存器狀態(tài)、將數(shù)據(jù)寫(xiě)入FIFO緩沖區(qū)等。寄存器讀寫(xiě)操作有:并行模式和串行SPI模式。主控件使用串行通信來(lái)控制語(yǔ)音識(shí)別模塊并讀取識(shí)別的語(yǔ)音。其控制流程圖如圖8所示。

圖8 語(yǔ)音識(shí)別模塊流程圖
本設(shè)計(jì)的基于神經(jīng)網(wǎng)絡(luò)的智能分類(lèi)垃圾箱控制系統(tǒng)主要使回收站具有自動(dòng)識(shí)別和自動(dòng)分類(lèi)的功能。該系統(tǒng)可以減少人與廢物的直接接觸,防止細(xì)菌感染。
多功能垃圾分類(lèi)控制系統(tǒng)的設(shè)計(jì)還是存在一些問(wèn)題,系統(tǒng)設(shè)計(jì)的宗旨就是要?jiǎng)?chuàng)造一個(gè)環(huán)保無(wú)污染的垃圾桶自動(dòng)控制系統(tǒng),由于目前該設(shè)計(jì)的控制系統(tǒng)主要應(yīng)用于室內(nèi)環(huán)境,尚未真正實(shí)現(xiàn)環(huán)保和無(wú)污染,隨后的技術(shù)改進(jìn)是只需在其外殼上再增加一塊太陽(yáng)能電池板即可為內(nèi)置鋰電池進(jìn)行充電,以實(shí)現(xiàn)可持續(xù)運(yùn)行。
此次設(shè)計(jì)的多功能分類(lèi)垃圾桶控制系統(tǒng)仍處于初步設(shè)計(jì)模式,可以在此增強(qiáng)設(shè)計(jì)方案的其他功能。通過(guò)提高其他功能,例如可以執(zhí)行廢棄物的全自動(dòng)包裝、可以自動(dòng)收集散落的廢棄物、完成廢物的自動(dòng)分離和回收。