新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于ARM處理器的非特定人語音識別系統設計

        基于ARM處理器的非特定人語音識別系統設計

        作者: 時間:2016-09-12 來源:網絡 收藏

        語音合成電路采用芯片硬件數據手冊提供的典型應用電路進行設計[5],在此不做介紹,功率放大電路采用美國國家半導體生產的音頻功率放大器LM386進行放大。

        本文引用地址:http://www.104case.com/article/201609/303639.htm

        在進行語音合成時首先進行初始化,包括發音人選擇、數字處理策略、語速調節、語調調節、音量調節等。

        由于該系統要模擬多人發音,所以不同的從設備設置不同的發音人及語調與語速以便于區分。初始化后等待測控計算機的語音合成命令,待收到命令后芯片會向上位機發送1字節的狀態回傳,上位機可根據這個回傳來判斷芯片目前的工作狀態。語音合成流程圖如圖7所示。

        7.jpg

        3 系統軟件設計

        示教與回放系統的軟件設計包括測控計算機的軟件設計和各從設備Arduino mega260控制器的軟件設計。

        測控計算機是整個系統的控制核心,其軟件采用C#進行編寫,在示教與回放系統中主要是對操作數據的記錄以便根據所記錄的數據對操作過程進行精確回放,需要記錄的數據包括:各從設備操作人員的操作口令,操作動作,口令及動作時間,各操作對應的操作現象。為簡化記錄數據,事先編制好各事件代碼,記錄過程只記錄代碼,大大提高程序效率。建立結構體如下:

        8.jpg

        在操作訓練過程中測控計算機每隔50 ms 對下位機進行控制及輪詢,并記錄反饋數據,在數據記錄時以50 ms 為一個單位。采用定時器對時間進行控制。在回放過程中首先比對當前時間和所記錄的時間,當所記錄的時間與當前時間吻合時測控計算機控制下位機執行該事件,完成事件回放。

        Arduino mega2560控制器負責接收測控計算機的控制指令并執行指令,讀取語音識別結果,對聲強數據采集和處理,控制語音合成單元進行語音合成等。Arduinomega2560 控制器采用串口中斷的方式進行命令接收。

        只有正確接收到命令才會執行并回傳結果,若測控計算機在限定時間內未收到回傳結果則表明發生錯誤,測控計算機需重新發送。數據接收流程圖如圖8所示。

        9.jpg

        4 總結

        本文利用智能語音芯片設計了某模擬訓練器的示教與回放系統,該系統不需要現在流行的虛擬現實技術的支持,僅在MCU的控制下就可以運行。該系統也可以在小型的便攜式設備上實現,具有良好的應用前景。


        上一頁 1 2 下一頁

        關鍵詞: SYN6658 LD3320 ARM

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 砚山县| 镇坪县| 北辰区| 屏山县| 临清市| 南汇区| 天水市| 曲靖市| 涞水县| 社旗县| 河池市| 保山市| 越西县| 疏附县| 康乐县| 关岭| 佛坪县| 涿州市| 北京市| 阳城县| 高雄县| 关岭| 黔江区| 聂拉木县| 小金县| 全州县| 长岛县| 集安市| 博湖县| 莱州市| 滦南县| 泸定县| 海兴县| 韶山市| 昌图县| 义马市| 浪卡子县| 双辽市| 鄢陵县| 安顺市| 吉木萨尔县|