伴著高新技能在軍事范疇的大范圍利用,武器裝備逐漸向高、精、尖方面開展。傳統(tǒng)的軍事練習(xí)因為練習(xí)時刻長、練習(xí)費用高、練習(xí)空間窄,常常不能到達(dá)預(yù)期的練習(xí)作用,已不能滿意現(xiàn)代軍事練習(xí)的需求。為解決上述問題,模仿練習(xí)應(yīng)運而生。
為進(jìn)一步提高練習(xí)作用,這篇文章利用智能語音交互芯片規(guī)劃了某模仿練習(xí)器的示教與回放系統(tǒng)。示教系統(tǒng)為操作人員生動的演示規(guī)范操作流程及相應(yīng)的操作表象,極大地縮短了對操作人員的練習(xí)時刻,提高了練習(xí)作用。回放系統(tǒng)經(jīng)過記載操作練習(xí)進(jìn)程中各操作人員的口令、聲響強(qiáng)度、動作、時刻、操作表象等,待操作練習(xí)結(jié)束后經(jīng)過重演練習(xí)進(jìn)程,以便操作者及時糾正自個的問題。示教系統(tǒng)也可理解為對規(guī)范操作練習(xí)進(jìn)程的回放。該系統(tǒng)不需求虛擬現(xiàn)實技能的撐持,在小型的嵌入式系統(tǒng)上就能夠完結(jié)。
1 系統(tǒng)原理
該模仿練習(xí)器由一臺測控計算機(jī)和多臺從設(shè)備構(gòu)成。如圖1所示。在此僅對一臺從設(shè)備進(jìn)行介紹,其硬件系統(tǒng)主要由測控計算機(jī)、Arduino mega2560 操控器、語音辨認(rèn)單元、聲強(qiáng)檢測單元、語音組成單元、面板操控單元、儀器面板等構(gòu)成。面板操控單元較為復(fù)雜,包含多種操控電路,在模仿練習(xí)中擔(dān)任該從設(shè)備在Arduino mega2560 操控器的操控下完結(jié)整個練習(xí)進(jìn)程,在示教與回放系統(tǒng)中完結(jié)對方才操作練習(xí)操作表象的重演,其詳細(xì)電路規(guī)劃在此不做介紹。
語音辨認(rèn)單元擔(dān)任辨認(rèn)操作人員的操作口令;聲強(qiáng)檢測單元擔(dān)任檢測聲強(qiáng)巨細(xì)并以此作為判別是哪臺從設(shè)備操作人員口令的依據(jù);Arduino mega2560操控器擔(dān)任監(jiān)督儀器面板各元件的狀況來辨認(rèn)操作人員的動作,然后完結(jié)對操作練習(xí)進(jìn)程的記載。各儀器的操作表象依據(jù)操作動作事前編制無需記載。在操作回放進(jìn)程中,測控計算機(jī)依據(jù)所記載的數(shù)據(jù),經(jīng)過操控相應(yīng)從設(shè)備的Arduino mega2560操控器重現(xiàn)所記載的操作進(jìn)程。
2 單元系統(tǒng)規(guī)劃
2.1 語音辨認(rèn)單元規(guī)劃
當(dāng)時,語音辨認(rèn)技能的開展十分迅速,依照辨認(rèn)目標(biāo)的類型能夠分為特定人和非特定人語音辨認(rèn)。特定人是指辨認(rèn)目標(biāo)為專門的人,非特定人是指辨認(rèn)目標(biāo)是針對大多數(shù)用戶,通常需求收集多自己的語音進(jìn)行錄音和練習(xí),經(jīng)過學(xué)習(xí),然后到達(dá)較高的辨認(rèn)率。
這篇文章選用的LD3320語音辨認(rèn)芯片是一顆依據(jù)非特定人語音辨認(rèn)(Speaker Independent AutomaTIc SpeechRecogniTIon,SI ASR)技能的芯片。該芯片上集成了高精度的A/D 和D/A 接口,不再需求外接輔佐的FLASH 和RAM,即能夠完結(jié)語音辨認(rèn)、聲控、人機(jī)對話功用,供給了真實的單芯片語音辨認(rèn)解決方案。而且,辨認(rèn)的要害詞語列表是能夠動態(tài)編輯的。
語音辨認(rèn)單元選用ATmega168 作為MCU,擔(dān)任操控LD3320完結(jié)一切和語音辨認(rèn)有關(guān)的作業(yè),并將辨認(rèn)成果經(jīng)過串口上載至Arduino mega2560 操控器。對LD3320芯片的各種操作,都必須經(jīng)過寄存器的操作來完結(jié),寄存器讀寫操作有2種方法(規(guī)范并行方法和串行SPI方法)。在此選用并行方法,將LD3320的數(shù)據(jù)端口與MCU的I/O口相連。
語音辨認(rèn)流程選用中止方法作業(yè),其作業(yè)流程分為初始化、寫入要害詞、開端辨認(rèn)和呼應(yīng)中止等。MCU的程序選用ARDUINO IDE編寫,調(diào)試完結(jié)后經(jīng)過串口進(jìn)行燒錄,操控LD3320完結(jié)語音辨認(rèn),并將辨認(rèn)成果上載至Arduino mega2560操控器。
2.2 聲強(qiáng)檢測單元規(guī)劃
在進(jìn)行語音辨認(rèn)時需求判別是某一臺從設(shè)備操作人員的口令,為此規(guī)劃聲強(qiáng)檢測單元電路,該電路僅需能夠判別出相對聲強(qiáng)的巨細(xì),無需檢測聲級,對檢測精度需求較低。
電容式MIC聲響傳感器將外部聲響信號變換成電信號,經(jīng)NE5532擴(kuò)大電路進(jìn)行擴(kuò)大,將輸入的微弱音頻信號變換為具有一定幅值的電壓信號,該電壓信號經(jīng)AC/DC有效值變換電路進(jìn)行裝換后進(jìn)行再次擴(kuò)大,最終由Arduino mega2560操控器的A/D進(jìn)行采樣。其間D1 端接Arduinomega2560操控器的A/D,INT1端接Arduino mega2560操控器的外部中止1.當(dāng)外界聲響信號大于預(yù)設(shè)的閾值時,三極管導(dǎo)通INT1端由高電平變?yōu)榈碗娖桨l(fā)作外部中止,操控器呼應(yīng)中止并進(jìn)行A/D 采樣,采樣數(shù)據(jù)經(jīng)均值濾波后保留,待測控計算機(jī)查詢時上載該聲強(qiáng)數(shù)據(jù)。
2.3 語音組成單元規(guī)劃
TTS(Text To Speech)文本轉(zhuǎn)語音技能是人機(jī)智能對話開展的趨勢。依據(jù)TTS技能的語音系統(tǒng)無需事前錄音就能夠隨時依據(jù)查詢條件查出并組成語音進(jìn)行播報,然后大大減少了系統(tǒng)維護(hù)的作業(yè)量。利用此技能,經(jīng)過MCU或許PC機(jī)就能操控語音芯片發(fā)音。
這篇文章選用SYN6658中文語音組成芯片進(jìn)行語音組成。SYN6658 經(jīng)過UART 接口或SPI接口通訊方法,接納待組成的文本數(shù)據(jù),完結(jié)文本到語音(或TTS語音)的變換。操控器和SYN6658 語音組成芯片之間經(jīng)過UART接口銜接,操控器經(jīng)過串口通訊向SYN6658語音組成芯片發(fā)送操控指令和文本,SYN6658語音組成芯片把接納到的文本組成為語音信號輸出,輸出的信號經(jīng)LM386 功率擴(kuò)大器進(jìn)行擴(kuò)大后銜接到喇叭進(jìn)行播映。
SYN6658語音組成電路選用芯片硬件數(shù)據(jù)手冊供給的典型使用電路進(jìn)行規(guī)劃,在此不做介紹,功率擴(kuò)大電路選用美國國家半導(dǎo)體出產(chǎn)的音頻功率擴(kuò)大器LM386進(jìn)行擴(kuò)大。
在進(jìn)行語音組成時首要進(jìn)行初始化,包含發(fā)音人挑選、數(shù)字處理策略、語速調(diào)理、語調(diào)調(diào)理、音量調(diào)理等。
因為該系統(tǒng)要模仿多人發(fā)音,所以不一樣的從設(shè)備設(shè)置不一樣的發(fā)音人及語調(diào)與語速以便于區(qū)別。初始化后等待測控計算機(jī)的語音組成指令,待收到指令后芯片會向上位機(jī)發(fā)送1字節(jié)的狀況回傳,上位機(jī)可依據(jù)這個回傳來判別芯片當(dāng)時的作業(yè)狀況。
3 系統(tǒng)軟件規(guī)劃
示教與回放系統(tǒng)的軟件規(guī)劃包含測控計算機(jī)的軟件規(guī)劃和各從設(shè)備Arduino mega260操控器的軟件規(guī)劃。
測控計算機(jī)是整個系統(tǒng)的操控中心,其軟件選用C#進(jìn)行編寫,在示教與回放系統(tǒng)中主要是對操作數(shù)據(jù)的記載以便依據(jù)所記載的數(shù)據(jù)對操作進(jìn)程進(jìn)行準(zhǔn)確回放,需求記載的數(shù)據(jù)包含:各從設(shè)備操作人員的操作口令,操作動作,口令及動作時刻,各操作對應(yīng)的操作表象。為簡化記載數(shù)據(jù),事前編制好各事情代碼,記載進(jìn)程只記載代碼,大大提高程序效率。
在操作練習(xí)進(jìn)程中測控計算機(jī)每隔50 ms 對下位機(jī)進(jìn)行操控及輪詢,并記載反應(yīng)數(shù)據(jù),在數(shù)據(jù)記載時以50 ms 為一個單位。選用定時器對時刻進(jìn)行操控。在回放進(jìn)程中首要比對當(dāng)時時刻和所記載的時刻,當(dāng)所記載的時刻與當(dāng)時時刻吻合時測控計算機(jī)操控下位機(jī)履行該事情,完結(jié)事情回放。
Arduino mega2560操控器擔(dān)任接納測控計算機(jī)的操控指令并履行指令,讀取語音辨認(rèn)成果,對聲強(qiáng)數(shù)據(jù)收集和處理,操控語音組成單元進(jìn)行語音組成等。Arduinomega2560 操控器選用串口中止的方法進(jìn)行指令接納。
只要正確接納到指令才會履行并回傳成果,若測控計算機(jī)在限制時刻內(nèi)未收到回傳成果則標(biāo)明發(fā)作錯誤,測控計算機(jī)需從頭發(fā)送。
這篇文章利用智能語音芯片規(guī)劃了某模仿練習(xí)器的示教與回放系統(tǒng),該系統(tǒng)不需求如今盛行的虛擬現(xiàn)實技能的撐持,僅在MCU的操控下就能夠運轉(zhuǎn)。該系統(tǒng)也能夠在小型的便攜式設(shè)備上完結(jié),具有杰出的使用遠(yuǎn)景。