基于PSTN的智能家居遠(yuǎn)程語音控制系統(tǒng)設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
摘要:結(jié)合語音識(shí)別技術(shù)、嵌入式技術(shù)設(shè)計(jì)了智能家居語音控制系統(tǒng),根據(jù)智能家居控制的特點(diǎn)以及人機(jī)自然交互的理念,設(shè)計(jì)了一種利用S3C2410設(shè)計(jì)的智能家居語音控制器,給出了整體設(shè)計(jì)框圖、硬件電路的各部分具體構(gòu)成以及相應(yīng)的軟件設(shè)計(jì)思想。該方案設(shè)計(jì)并研制出的語音控制器具有成本低,且既能進(jìn)行本地控制又能通過PSTN實(shí)現(xiàn)遠(yuǎn)程控制的特點(diǎn)。實(shí)驗(yàn)表明,該語音控制系統(tǒng)的語音識(shí)別效率高,可靠性強(qiáng)。
關(guān)鍵詞:遠(yuǎn)程控制;語音識(shí)別;PSTN;MFCC;HMM
0 引言
隨著科技的發(fā)展,越來越多的智能家居產(chǎn)品進(jìn)入人們的家庭,如何對(duì)它們進(jìn)行簡(jiǎn)單、有效的控制是擺在人們面前的一個(gè)難題。另一方面,人們渴望用電話在需要時(shí)遠(yuǎn)程控制各種家電以方便生活之需。目前,針對(duì)智能家居的遠(yuǎn)程控制往往采用類似于計(jì)算機(jī)網(wǎng)絡(luò)的分層體系結(jié)構(gòu),成本較高。由于家電控制網(wǎng)絡(luò)傳送的信息量是很少的,不必像計(jì)算機(jī)網(wǎng)絡(luò)那樣進(jìn)行分層設(shè)計(jì),故結(jié)合語音識(shí)別技術(shù)、PSTN(公共交換電話網(wǎng))等實(shí)現(xiàn)了智能家居的本地及遠(yuǎn)程控制。
1 整體方案設(shè)計(jì)
目前,常用的語音識(shí)別方法有DTW(動(dòng)態(tài)時(shí)間規(guī)整)、HMM(隱馬爾科夫模型)、VQ(矢量量化)和人工神經(jīng)網(wǎng)絡(luò),考慮到數(shù)據(jù)量、實(shí)時(shí)性、識(shí)別率及控制人為多數(shù)的問題,采用了VQ和HMM相結(jié)合的方式。
語音控制系統(tǒng)主要有預(yù)處理、特征提取、語音識(shí)別及控制程序組成,其原理框圖如圖1所示,圖1中碼書是輸入矢量的近似矢量的集合。
當(dāng)前控制技術(shù)正從傳統(tǒng)控制向現(xiàn)場(chǎng)總線控制以及網(wǎng)絡(luò)控制跨越,RS 485是現(xiàn)場(chǎng)總線中使用較廣泛的一種,本文結(jié)合語音識(shí)別技術(shù)、嵌入式技術(shù)和現(xiàn)場(chǎng)總線技術(shù),采用ARM(三星公司生產(chǎn)的S3C2410)作為語音控制器的處理器,設(shè)計(jì)了智能家居語音控制系統(tǒng),其系統(tǒng)框圖如圖2所示。
2 硬件設(shè)計(jì)
硬件部分包括預(yù)處理模塊設(shè)計(jì)、振鈴檢測(cè)電路、總線接口設(shè)計(jì)以及電器控制電路設(shè)計(jì)。其中,預(yù)處理模塊包括功率放大電路、自增益控制電路(AGC)、低通濾波器和A/D變換電路。
預(yù)處理包括自增益控制電路、低通濾波器及A/D變換電路。自增益控制電路是為了把輸入的語音信號(hào)控制在一定的幅度內(nèi),低通濾波器是為了濾除高頻(大于濾波器截止頻率)噪聲。自增益控制電路采用M51304L芯片實(shí)現(xiàn);低通濾波器采用4節(jié)巴特沃思型低通濾波器,其截止頻率為4.8 kHz;預(yù)加重電路采用集成運(yùn)算放大器來實(shí)現(xiàn)。A/D變換電路采用UDA1341芯片,采樣頻率設(shè)置為8 kHz,通過S3C2410的IIS接口與處理器相連。
2.1 振鈴檢測(cè)電路設(shè)計(jì)
如圖3所示,電鈴檢測(cè)信號(hào)通過C8,D1,R3~R5和C9共同構(gòu)成的整形電路整形后輸入光電耦合器TLP521,在光耦的后端轉(zhuǎn)化為TTL電平,然后送到ARM的UART1的RXD端進(jìn)行檢測(cè)。
2.2 自動(dòng)摘機(jī)電路設(shè)計(jì)
如圖4所示,摘機(jī)信號(hào)由ARM中UART1的TXD腳發(fā)出,當(dāng)TXD發(fā)送高電平時(shí),驅(qū)動(dòng)晶體管VT2導(dǎo)通,這又使VT1導(dǎo)通,相當(dāng)于在電話線路上并人了一個(gè)330Ω的電阻,同時(shí)加上并在其上的發(fā)光二極管的消耗,一方面使模擬摘機(jī)電流達(dá)到30 mA,另一方面用于指示摘機(jī)。因?yàn)閂T1的電流大于30mA時(shí),控制電路向交換機(jī)發(fā)出模擬摘機(jī)信號(hào),交換機(jī)響應(yīng)摘機(jī)信號(hào),完成電話線路的接通。
2.3 總線接口設(shè)計(jì)
RS 485接口常用的通信方式有半雙工通信和全雙工通信2種。在大多數(shù)情況下,RS 485的端口連接都采用半雙工通信方式。結(jié)合家庭控制網(wǎng)絡(luò)的特點(diǎn),本系統(tǒng)也采用半雙工通信方式。圖5為RS 485端口半雙工連接的電路圖。其中,RS 485差動(dòng)總線收發(fā)器采用SN75176,圖中有一個(gè)UART是ARM的,其余為單片機(jī)的。
2.4 電器控制電路的設(shè)計(jì)
該控制電路主要由單片機(jī)、晶閘管組成,如圖6所示。
當(dāng)單片機(jī)接收到相應(yīng)的控制命令時(shí),向P1.0發(fā)送相應(yīng)的占空比脈沖信號(hào),可實(shí)現(xiàn)連續(xù)控制或開關(guān)量的控制。
例如,當(dāng)從本地或從電話發(fā)出打開熱水器時(shí),經(jīng)過語音控制器識(shí)別后,語音控制器通過URAT0的TXD端口向總線上發(fā)送打開熱水器命令,連接在總線上的單片機(jī)通過RXD端口識(shí)別該命令,然后向P1.0發(fā)送占空比為∞的信號(hào),既是高電平,則熱水器被打開。
3 軟件設(shè)計(jì)
軟件部分的設(shè)計(jì)包括特征提取模塊、矢量量化模塊、HMM模塊。
特征提取采用MFCC。首先做預(yù)加重處理,然后進(jìn)行加窗,窗函數(shù)的寬度采用120點(diǎn)。將加窗處理過的時(shí)域信號(hào)x(n)后補(bǔ)若干0,形成長(zhǎng)為256點(diǎn)的序列,然后經(jīng)過256點(diǎn)FFT(快速傅里葉變換)后得到線性頻譜X(k),然后將X(k)通過26維的MEL帶通濾波器組并通過對(duì)數(shù)能量的處理得到對(duì)數(shù)頻譜S(m),將S(m)進(jìn)行離散余弦變換(DCT)就得到26維的MFCC。取MFCC的前12維作為語音特征矢量。
矢量量化采用LBG算法。碼字搜索則采用最近鄰搜索算法。該算法的思想把待識(shí)別的矢量與碼字逐一比較,計(jì)算其失真,然后把該矢量歸類為失真最小的碼字所屬的類(胞腔)。
HMM采用離散從左到右無跳轉(zhuǎn)的HMM,HMM訓(xùn)練采用Baum-Welch算法,識(shí)別過程采用前向一后向算法。
4 結(jié)語
本文結(jié)合語音識(shí)別技術(shù)、嵌入式技術(shù)以及現(xiàn)場(chǎng)總線技術(shù)設(shè)計(jì)了智能家居語音控制系統(tǒng)的方案,獲得了較高的識(shí)別率。結(jié)合振鈴檢測(cè)及自動(dòng)摘機(jī)電路實(shí)現(xiàn)了智能家居語音控制系統(tǒng)的遠(yuǎn)程控制,由于采用嵌入式技術(shù),大大降低了系統(tǒng)成本。