<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應用 > 機器人聲控系統(tǒng)的設(shè)計

          機器人聲控系統(tǒng)的設(shè)計

          作者: 時間:2012-10-20 來源:網(wǎng)絡 收藏

          3.2 語音識別程序

            語音識別程序是整個程序編寫過程中最重要的部分, 主要可以分為辨識器初始化、識別過程實時監(jiān)控、獲取辨識結(jié)果和終止辨識四部分。

            3.2.1 辨識初始化

            辨識初始化使用void BSR_InitRecognizer (int AudioSource)函數(shù)來實現(xiàn)。當參數(shù)AudioSource 取1 時為LINE_IN 電壓模擬量輸入;當參數(shù)AudioSource 取0 時為MIC 語音輸入。

            3.2.2 識別過程實時監(jiān)控

            該功能調(diào)用void BSR_EnableCOUIndicator()函數(shù)來實現(xiàn),主要用來辨識是否正常工作。如果辨識正常,CPU 會產(chǎn)生一個占空比為50%的方波。如果CPU 超載,則會產(chǎn)生不穩(wěn)定的波形,這時為了避免語音辨識產(chǎn)生錯誤信息,就需要刪除命令或者優(yōu)化程序。

            3.2.3 獲取辨識結(jié)果

            該功能調(diào)用int BSR_GetResult()函數(shù)來實現(xiàn),當無命令識別出來時,返回值為0;當識別器未初始化或識別未激活返回-1;當識別不合格時返回-2;當識別出來時,返回命令的序號。

            3.2.4 終止辨識

            該功能調(diào)用void BSR_StopRecognizer()函數(shù)實現(xiàn),主要用于停止識別,并關(guān)閉FIQ_TMA 中斷。

            3.3 辨識結(jié)果輸出

            通過BSR_GetResult()可以得到命令的序列號,將命令的序列號改寫成Voyager II 型的相關(guān)協(xié)議, 然后通過RS232口傳輸給即可達到語音控制的目的。

            3.4 串口通信程序

            為了方便用戶對Voyager II 型進行二次開發(fā), 北京博創(chuàng)興盛機器人技術(shù)有限公司提供了標準串行接口, 并制定了詳細的通信協(xié)議,供用戶使用。為了提高通信的效率和穩(wěn)定性,在Voyager II 型機器人內(nèi)部,先將RS-232 標準電平轉(zhuǎn)換為TTL電平,再將TTL 電平通過MAX491 轉(zhuǎn)換為RS-485 的標準電平。

            由于協(xié)議中,只支持一個主機,所以在本中,將的單片機作為整個硬件系統(tǒng)的主機, 即整個硬件系統(tǒng)的最高管理者,其地址默認為0.其他設(shè)備的地址默認為1-255.具體分配如下:系統(tǒng)設(shè)備占用地址0x01-0x0F;電機設(shè)備地址0x100-0x1F;系統(tǒng)保留地址為0x20-0x7F;用戶設(shè)備地址:0x80-0xAF;在系統(tǒng)運行過程中,主機一直占用自己的TXD 線,從機的RXD 線在不進行通信時為高阻狀態(tài),只有在接收到與自己地址相符的數(shù)據(jù)幀時,才能占用總線,一旦通信結(jié)束,立即釋放總線,回到高阻狀態(tài)。

            主機和從機采用標準的"一問一答"通信機制,如果主機的命令需要有數(shù)據(jù)反饋,則返回需要的數(shù)據(jù);如果不需要數(shù)據(jù)反饋,就返回上位機發(fā)送的命令。

            下面,以控制機器人前進為例說明串口通信的協(xié)議格式:

           ?。?)發(fā)送固定通信字頭兩字節(jié):0x55 0xAA

           ?。?)發(fā)送接收設(shè)備地址:0x01

            (3)發(fā)送數(shù)據(jù)長度:0x04

           ?。?)發(fā)送命令字:0x26

           ?。?)發(fā)送左電機速度兩字節(jié):0x00 0x06

            (6)發(fā)送右電機速度兩字節(jié):0x00 0x06

           ?。?)發(fā)送數(shù)據(jù)效驗和:0x3A

            在明確了協(xié)議格式和需要發(fā)送的內(nèi)容之后, 就可以編寫串口通信程序。首先,根據(jù) 的PLL 頻率和需要設(shè)定的波特率,計算出P_UART_BaudScalarHigh 和P_UART_BaudScalar-Low 的取值,完成串口參數(shù)的設(shè)定。在完成設(shè)定后,將需要發(fā)送的數(shù)據(jù)存儲到P_UART_Data 中, 就可以將數(shù)據(jù)發(fā)送給Voyager II 型機器人。由于, 的串口每次只能發(fā)送1個字節(jié)的數(shù)據(jù),所以需要采用循環(huán)的方式,依次將通信內(nèi)容發(fā)送給Voyager II 型機器人。Voyager II 型機器人收到指令后, 就可以按照指令,進行相應的動作。

            4 總結(jié)

            本系統(tǒng)采用了低成本的DSP-SPCE061A 作為主控芯片,和傳統(tǒng)的基于PC 機的語音識別系統(tǒng)相比, 雖然識別的語音庫相對較少,但是其具有低成本、低功耗、體積小和使用靈活方便等特點,不僅適合于中、小型機器人,還適合于教學科研使用。所以,本具有良好的市場前景和廣闊的使用空間。

            本文作者創(chuàng)新觀點: 本文提出了一種以凌陽單片機為核心的Voyager II 型機器人聲控系統(tǒng)的設(shè)計方案, 該產(chǎn)品具有低成本、低功耗、體積小和使用靈活方便等特點,不僅適合于中、小型機器人使用,還適合與教學科研使用。


          上一頁 1 2 下一頁

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();