姜杰文
摘 要: 計(jì)算機(jī)技術(shù)的飛速發(fā)展帶動(dòng)語(yǔ)音識(shí)別技術(shù)不斷取得突破,功能日漸強(qiáng)大的語(yǔ)音控制系統(tǒng)正逐漸應(yīng)用于實(shí)際生活中。LD3320是一款語(yǔ)音識(shí)別專(zhuān)用芯片,響應(yīng)快,識(shí)別率高,系統(tǒng)結(jié)合STC11L08XE單片機(jī)及外圍電路和nRF24L01無(wú)線(xiàn)傳輸芯片進(jìn)行了聲控?zé)粝到y(tǒng)總體結(jié)構(gòu)及各個(gè)模塊的硬件選型和程序編寫(xiě),并基于非特定人完成了對(duì)聲控?zé)粝到y(tǒng)功能的靜態(tài)測(cè)試,識(shí)別率接近95%,實(shí)驗(yàn)效果理想。該嵌入式系統(tǒng)體積小、功耗低、性能穩(wěn)定、實(shí)時(shí)性好,在生產(chǎn)和生活中具有較高實(shí)用價(jià)值。
關(guān)鍵詞: 語(yǔ)音識(shí)別; 聲控?zé)簦?非特定人; LD3320
中圖分類(lèi)號(hào): TN912.34?34 文獻(xiàn)標(biāo)識(shí)碼: A 文章編號(hào): 1004?373X(2015)11?0027?04
Design of LD3320?based voice?controlled light system for person?independent recognition
JIANG Jie?wen, JIANG Yan?ji, BING Xiao?huan, WANG Yang
(School of Software, Liaoning Technical University, Huludao 125105, China)
Abstract: Since the break?though of voice recognition technology is droved by rapid development of computer technology, the powerful voice control system is gradually applied in real life. LD3320 is a dedicated chip for voice recognition, with fast response and high recognition rate characteristics. The overall structure design of voice?controlled light system combines STC11L08XE, peripheral circuit and wireless transmission chip nRF24L01, in which hardware selection and software programming of each module are proceeded. The static test of the functions for voice? controlled light system based on person?independent was implemented, the recognition rate is approach to 95% and the experimental effect is satisfying. The proposed embedded system has the characteristics of small size, low power dissipation, stable performance and good real?time performance. It has high practical value in manufacture and living.
Keywords: voice recognition; voice?controlled light; person?independent; LD3320
0 引 言
語(yǔ)音處理和識(shí)別技術(shù)始于20世紀(jì)50年代,經(jīng)過(guò)幾十年探索和研究已較為成熟,從特定人、孤立詞的識(shí)別到非特定人、大詞匯量連續(xù)語(yǔ)音的識(shí)別,一系列的突破使得語(yǔ)音成為人與計(jì)算機(jī)系統(tǒng)之間新的通訊手段。近年來(lái),作為直接有效的人機(jī)交互方式,語(yǔ)音識(shí)別在工業(yè)生產(chǎn)控制、智能家居生活和醫(yī)療衛(wèi)生系統(tǒng)等方面應(yīng)用日益廣泛,在嵌入式系統(tǒng)領(lǐng)域中,具有很高的研究及實(shí)用價(jià)值[1?2]。
本文設(shè)計(jì)開(kāi)發(fā)了一種基于LD3320語(yǔ)音識(shí)別芯片的非特定人識(shí)別的聲控?zé)粝到y(tǒng),采用兩級(jí)語(yǔ)音指令,分別控制兩盞不同顏色的LED小燈,實(shí)現(xiàn)用戶(hù)發(fā)出語(yǔ)音指令后精確控制小燈開(kāi)關(guān)的功能,為人們的生產(chǎn)生活帶來(lái)便利[3?4]。
1 語(yǔ)音識(shí)別概述
語(yǔ)音識(shí)別過(guò)程主要包括語(yǔ)音信號(hào)的預(yù)處理、特征提取、訓(xùn)練、模式匹配、識(shí)別結(jié)果幾個(gè)部分[5]。訓(xùn)練通常離線(xiàn)完成,對(duì)預(yù)先收集好的海量語(yǔ)音、語(yǔ)言數(shù)據(jù)庫(kù)進(jìn)行信號(hào)處理和特征提取,獲取語(yǔ)音識(shí)別系統(tǒng)所需要的“聲學(xué)模型”和“語(yǔ)言模型”,保存為模板庫(kù)。識(shí)別階段通常在線(xiàn)完成,用戶(hù)實(shí)時(shí)語(yǔ)音信號(hào)經(jīng)過(guò)相同的通道得到語(yǔ)音特征參數(shù),生成測(cè)試模板,與參考模板進(jìn)行匹配,將相似度最高的參考模板作為識(shí)別結(jié)果[6]。語(yǔ)音識(shí)別流程基本框圖如圖1所示。
按照識(shí)別對(duì)象即對(duì)說(shuō)話(huà)人的依賴(lài)程度可分為特定人和非特定人的語(yǔ)音識(shí)別系統(tǒng)[7]。特定人指訓(xùn)練和識(shí)別對(duì)象為專(zhuān)門(mén)的人,其他人的語(yǔ)音不能識(shí)別;非特定人的訓(xùn)練和識(shí)別對(duì)象面向大眾,不區(qū)分個(gè)人,后者的實(shí)現(xiàn)難度要大得多。
2 聲控系統(tǒng)結(jié)構(gòu)設(shè)計(jì)
考慮到嵌入式系統(tǒng)組件對(duì)成本、體積和集成度的要求,本系統(tǒng)采用的處理單元是宏晶科技生產(chǎn)的STC11L08XE單片機(jī)及其外圍電路,整個(gè)系統(tǒng)由語(yǔ)音輸入模塊(咪頭),語(yǔ)音識(shí)別模塊,無(wú)線(xiàn)傳輸模塊,控制模塊(繼電器),電源模塊和顯示模塊(紅色和綠色LED小燈各1)構(gòu)成,系統(tǒng)總體框架圖如圖2所示。
系統(tǒng)啟動(dòng)后,當(dāng)語(yǔ)音輸入模塊即咪頭開(kāi)始收集語(yǔ)音信號(hào),每接收到一個(gè)語(yǔ)音信號(hào)后通過(guò)單片機(jī)和語(yǔ)音識(shí)別模塊進(jìn)行識(shí)別并判斷,得到正確的語(yǔ)音指令后,執(zhí)行單片機(jī)程序,通過(guò)其TXD串口對(duì)外進(jìn)行數(shù)據(jù)輸出,無(wú)線(xiàn)模塊A的RXD接收口接收數(shù)據(jù)并保持?jǐn)?shù)據(jù)原樣,再通過(guò)無(wú)線(xiàn)信號(hào)發(fā)送至無(wú)線(xiàn)模塊B,無(wú)線(xiàn)模塊B根據(jù)接收的信號(hào)改變引腳電平來(lái)控制繼電器,進(jìn)而控制LED等回路的閉合。
3 硬件選型
3.1 處理器
處理器是整個(gè)系統(tǒng)的核心,不同的應(yīng)用領(lǐng)域、不同的用戶(hù)需求,對(duì)處理器的選擇是多樣化的。本文針對(duì)嵌入式語(yǔ)音識(shí)別系統(tǒng)設(shè)計(jì),采用宏晶科技生產(chǎn)的主要用于語(yǔ)音識(shí)別的處理器STC11L08XE。其核心開(kāi)發(fā)板結(jié)構(gòu)具備嵌入式系統(tǒng)功能及所需外圍設(shè)備。規(guī)格為43 mm×29.7 mm,供電電壓為5 V。I/O口輸出高電平3.3 V,擁有8 KB的FLASH,512 B的SRAM,串口通信(TTL電平)方式。是高速/低功耗/超強(qiáng)抗干擾的新一代8051單片機(jī),指令代碼完全兼容傳統(tǒng)8051,但速度快8~12倍。內(nèi)部集成高可靠復(fù)位電路,適應(yīng)高速通信,智能控制,強(qiáng)干擾場(chǎng)合。
在選擇此處理器時(shí)主要是出于體積小易開(kāi)發(fā)角度來(lái)考慮。單片機(jī)原理圖如圖3所示。
3.2 語(yǔ)音識(shí)別模塊
LD3320是一款“語(yǔ)音識(shí)別”專(zhuān)用芯片,采用并行方式直接與STC11L08XE單片機(jī)相接。該芯片集成了語(yǔ)音識(shí)別處理器和外部電路,包括A/D、D/A轉(zhuǎn)換器、麥克風(fēng)接口、聲音輸出接口等。其內(nèi)部集成了快速穩(wěn)定的優(yōu)化算法,無(wú)需事先訓(xùn)練錄音即可完成非特定人語(yǔ)音識(shí)別,不需要外接任何輔助芯片,直接集成在現(xiàn)有產(chǎn)品中就可以實(shí)現(xiàn)聲控及人機(jī)對(duì)話(huà)功能[8]。內(nèi)部原理圖如圖4所示。
3.3 無(wú)線(xiàn)傳輸模塊
nRF24L01是一款工作在2.4~2.5 GHz世界通用ISM頻段的單片無(wú)線(xiàn)收發(fā)器芯片。無(wú)線(xiàn)收發(fā)器包括:頻率發(fā)生器、增強(qiáng)型SchockBurst?模式控制器、功率放大器、晶體振蕩器、調(diào)制器、解調(diào)器。輸出功率頻道選擇和協(xié)議的設(shè)置可以通過(guò)SPI接口進(jìn)行設(shè)置[9]。當(dāng)工作在發(fā)射模式下發(fā)射功率為-6 dBm時(shí)電流消耗為9 mA,接收模式時(shí)為12.3 mA,掉電模式和待機(jī)模式下電流消耗更低。
3.4 控制模塊
控制模塊主要指繼電器,這里選用1路繼電器,本模塊兼容3.3 V和5 V單片機(jī)信號(hào)控制使用,觸發(fā)電平為高電平(3~5 V都可以)。設(shè)計(jì)方式以3.3 V向上兼容5 V,采用光耦隔離信號(hào)更穩(wěn)定。
4 系統(tǒng)程序設(shè)計(jì)
系統(tǒng)程序在Keil μVision4軟件開(kāi)發(fā)環(huán)境下采用C語(yǔ)言進(jìn)行模塊化編程。工作流程包括系統(tǒng)初始化、指令設(shè)置、識(shí)別判斷、中斷處理等。
4.1 系統(tǒng)初始化
當(dāng)單片機(jī)通電后系統(tǒng)軟件先從主函數(shù)開(kāi)始執(zhí)行,在對(duì)系統(tǒng)進(jìn)行初始化的過(guò)程中包括調(diào)用函數(shù)將單片機(jī)初始化,通過(guò)測(cè)試開(kāi)發(fā)板小燈指示單片機(jī)是否工作。執(zhí)行相應(yīng)函數(shù)復(fù)位LD3320芯片,再對(duì)串口進(jìn)行初始化,還要通過(guò)設(shè)置LD模塊寄存器對(duì)其命令初始化以及ASR功能初始化。
4.2 指令設(shè)置
為降低其他音源影響,提高識(shí)別率,本系統(tǒng)采用兩級(jí)指令完成對(duì)系統(tǒng)的控制。向LD模塊添加關(guān)鍵詞時(shí),通過(guò)編輯程序定義二維數(shù)組設(shè)定一級(jí)語(yǔ)音指令為“管家”,二級(jí)語(yǔ)音指令為“開(kāi)紅燈”、“開(kāi)綠燈”,設(shè)定指令時(shí),添加拼音的輸入方式作為關(guān)鍵詞數(shù)組,例如添加“管家”命令,則寫(xiě)入“guan jia”,漢字間的拼音用空格隔開(kāi)。實(shí)現(xiàn)功能為接收語(yǔ)音指令“管家”時(shí),開(kāi)發(fā)板指示燈點(diǎn)亮,繼而接收語(yǔ)音指令“開(kāi)綠燈”,LED綠燈點(diǎn)亮,接收語(yǔ)音指令“開(kāi)紅燈”,LED紅燈點(diǎn)亮。
4.3 中斷處理
當(dāng)LD模塊接收到音頻信號(hào)時(shí),進(jìn)入到中斷處理函數(shù)進(jìn)行識(shí)別,讀取內(nèi)部寄存器返回識(shí)別碼,若每次讀取到的識(shí)別結(jié)果在寄存器中可以找到對(duì)應(yīng)數(shù)值,則判斷指令正確,將數(shù)據(jù)通過(guò)TXD串口對(duì)外進(jìn)行輸出,此時(shí)無(wú)線(xiàn)傳輸芯片A的RXD接收口再把接收到的數(shù)據(jù)保持不變發(fā)送到另一個(gè)無(wú)線(xiàn)模塊B,B針對(duì)信號(hào)對(duì)于引腳進(jìn)行高低電平控制,進(jìn)而控制繼電器。芯片B的引腳置為高電平3.3 V的時(shí)候繼電器打開(kāi)即為通路,連接在繼電器上面的小燈成功通電打開(kāi)。當(dāng)引腳置為低電平的時(shí)候小燈關(guān)閉。程序執(zhí)行流程圖如圖5所示。
4.4 部分代碼
向LD模塊添加關(guān)鍵詞的代碼如下,添加拼音關(guān)鍵詞,同時(shí)注意修改sRecog 和pCode 數(shù)組的長(zhǎng)度,拼音串和識(shí)別碼一一對(duì)應(yīng)。
uint8 LD_AsrAddFixed()
{
uint8 k, flag;
uint8 nAsrAddLength;
#define DATE_A 8 /*數(shù)組二維數(shù)值*/
#define DATE_B 25 /*數(shù)組一維數(shù)值*/
uint8 code sRecog[DATE_A][DATE_B] = { "guan jia",\
"kai hong deng",\ "guan hong deng",\
"kai lv deng",\
"guan lv deng",\ };
uint8 code pCode[DATE_A] = {
CODE_CMD,\
CODE_KCFD,\
CODE_GCFD,\
CODE_KWSD,\
CODE_GWSD,\
CODE_KKTD,\
CODE_GKTD,\
CODE_FSG
flag = 1;
for (k=0; k { if(LD_Check_ASRBusyFlag_b2() == 0) { flag = 0; break; } LD_WriteReg(0xc1, pCode[k] ); LD_WriteReg(0xc3, 0 ); LD_WriteReg(0x08, 0x04);
delay(1);
LD_WriteReg(0x08, 0x00);
delay(1);
for (nAsrAddLength=0; nAsrAddLength { if (sRecog[k][nAsrAddLength] == 0) break; LD_WriteReg(0x5, sRecog[k][nAsrAddLength]); } LD_WriteReg(0xb9, nAsrAddLength); LD_WriteReg(0xb2, 0xff); LD_WriteReg(0x37, 0x04); } return flag; } 5 測(cè)試結(jié)論與分析 為了更好地檢測(cè)語(yǔ)音指令識(shí)別效果和系統(tǒng)功能的實(shí)現(xiàn),測(cè)試過(guò)程中選擇多個(gè)不同音色的人進(jìn)行試驗(yàn),觀察非特定人群對(duì)系統(tǒng)的控制效果,每個(gè)語(yǔ)音指令測(cè)試100遍。部分非特定人語(yǔ)音指令識(shí)別結(jié)果見(jiàn)表1。表中數(shù)據(jù)表示試驗(yàn)100次的成功次數(shù)。 由表1可見(jiàn),該系統(tǒng)對(duì)于非特定人語(yǔ)音指令的識(shí)別準(zhǔn)確率接近95%。誤識(shí)別率大約在5%,響應(yīng)快,準(zhǔn)確度高,實(shí)用性強(qiáng)。 6 結(jié) 論 隨著語(yǔ)音識(shí)別技術(shù)的成熟發(fā)展,嵌入式功能的日漸強(qiáng)大,嵌入式語(yǔ)音控制系統(tǒng)的需求和應(yīng)用也越來(lái)越廣泛。本文設(shè)計(jì)的基于LD3320的非特定人識(shí)別聲控?zé)粝到y(tǒng),硬件模塊選型合理,程序功能設(shè)計(jì)完善,系統(tǒng)識(shí)別率高,穩(wěn)定性好,方便集成,較理想地實(shí)現(xiàn)了非特定人通過(guò)語(yǔ)音指令控制小燈系統(tǒng)開(kāi)關(guān)的功能,在工業(yè)自動(dòng)控制、醫(yī)療系統(tǒng)以及智能家居等很多領(lǐng)域具有廣闊的市場(chǎng)前景。 參考文獻(xiàn) [1] 胡航.現(xiàn)代語(yǔ)音信號(hào)處理[M].北京:電子工業(yè)出版社,2014. [2] [美]拉比納,[美]謝弗.數(shù)字語(yǔ)音處理理論與應(yīng)用(英文版)[M].北京:電子工業(yè)出版社,2011. [3] 陳喜春.基于LD3320語(yǔ)音識(shí)別專(zhuān)用芯片實(shí)現(xiàn)的語(yǔ)音控制[J].電子技術(shù),2011(11):20?21. [4] OH Y R, YOON J S, PARK J H, et al. A name recognition based call?and?come service for home robots [J]. IEEE Transactions on Consumer Electronics, 2008, 54(2):247?251. [5] 周慧芳.基于HMM的嵌入式語(yǔ)音識(shí)別系統(tǒng)的研究[D].廣州:廣東工業(yè)大學(xué),2011. [6] RABINER L, JUANG B H. Fundamentals of speech recognition [M]. Englewood: Prentice?Hall, 1993. [7] 顧亞強(qiáng).非特定人語(yǔ)音識(shí)別關(guān)鍵技術(shù)研究[D].長(zhǎng)沙:國(guó)防科技大學(xué),2009. [8] 金鑫,田犇,闕大順.基于LD3320的語(yǔ)音控制系統(tǒng)設(shè)計(jì)實(shí)現(xiàn)[J].電腦與信息技術(shù),2011,19(6):22?25. [9] 劉志平,趙良國(guó).基于nRF24L01的近距離無(wú)線(xiàn)數(shù)據(jù)傳輸[J].應(yīng)用科技,2008,35(3):55?58.