《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 嵌入式技術(shù) > 設(shè)計應(yīng)用 > 基于凌陽SPCE061A單片機(jī)的音控小車的設(shè)計
基于凌陽SPCE061A單片機(jī)的音控小車的設(shè)計
郭娜娜,,侯媛彬,,王 磊
摘要: 設(shè)計并制作了一種智能音控小車,。以凌陽單片機(jī)SPCE061A為核心控制部件,以減速直流電機(jī)LS17RU419i,、電機(jī)驅(qū)動芯片L298N、紅外線光電傳感器ST178等為主要元件,,開發(fā)了系統(tǒng)的硬件和智能控制軟件,,其中軟件包括小車避障及路徑控制軟件、語音識別及播放軟件,。智能音控小車的運(yùn)行狀態(tài)表明該設(shè)計方案是可行的,。
Abstract:
Key words :

    摘 要:設(shè)計并制作了一種智能音控小車。以凌陽單片機(jī)SPCE061A為核心控制部件,,以減速直流電機(jī)LS17RU419i,、電機(jī)驅(qū)動芯片L298N、紅外線光電傳感器ST178等為主要元件,,開發(fā)了系統(tǒng)的硬件和智能控制軟件,,其中軟件包括小車避障及路徑控制軟件,、語音識別及播放軟件。智能音控小車的運(yùn)行狀態(tài)表明該設(shè)計方案是可行的,。
    關(guān)鍵詞: 語音識別; 凌陽單片機(jī); 智能; 傳感器

 

    隨著電子業(yè)的發(fā)展,,自動化已經(jīng)不再是新鮮的話題了,在對系統(tǒng)業(yè)提出更高更深入的要求的同時,,智能化已成為必然的發(fā)展趨勢,。智能化產(chǎn)品已開始逐漸投入市場,走進(jìn)千家萬戶,,滲入各個領(lǐng)域,。隨著經(jīng)濟(jì)的增長,個人擁有私家汽車已不再是夢想,,伴隨著汽車業(yè)的發(fā)展,,無人駕駛的智能汽車也必將進(jìn)入實(shí)用階段。
    本設(shè)計的主要目的是針對智能無人駕駛汽車設(shè)計出智能音控小車,,在智能化小車上實(shí)現(xiàn)語音控制,,避免出現(xiàn)許多大大小小的事故。本設(shè)計方案也可應(yīng)用于移庫倒庫過程中,,而且在諸如智能建筑,、公共便民設(shè)施、自動立體車庫等類似的人性化環(huán)境中也能夠發(fā)揮其作用[1],。
1 系統(tǒng)的總體設(shè)計方案及硬件設(shè)計
1. 1系統(tǒng)的總體設(shè)計描述
    本設(shè)計以凌陽單片機(jī)SPCE061A為核心控制部件,,采用減速直流電機(jī)LS17RU419i、電機(jī)驅(qū)動芯片L298N,、紅外線光電傳感器ST178等為主要元件,,以智能控制技術(shù)為理論基礎(chǔ),通過程序利用SPCE061A的語音模塊,,根據(jù)麥克風(fēng)采集的語音信號與事先訓(xùn)練好的語音庫的特征語音進(jìn)行對比,,進(jìn)行語音辨識并通過語音命令小車行進(jìn)、轉(zhuǎn)向及倒庫等操作,。音控小車總體結(jié)構(gòu)如圖1所示,。

 

 

1. 2系統(tǒng)的核心部件
    SPCE061A 芯片內(nèi)部集成了 ICE、FLASH,、SRAM,、通用 I/O 端口、定時器/計數(shù)器,、中斷控制,、CPU 時鐘鎖相環(huán)、ADC,、DAC輸出,、UART,、SIO、低電壓監(jiān)測/低電壓復(fù)位等模塊[2-3],。SPCE061A可以使外圍電路大大簡化,節(jié)省小車內(nèi)部的空間,,并且凌陽單片機(jī)具有語音功能,可以加入語音識別模塊,。
1. 3 小車電機(jī)驅(qū)動設(shè)計
    L298是SGS公司的產(chǎn)品,,L298N為15個管角的單塊集成電路,高電壓,,高電流,,四通道驅(qū)動,設(shè)計用L298N來接收DTL或者TTL邏輯電平,,驅(qū)動感性負(fù)載(比如繼電器,直流和步進(jìn)馬達(dá))和開關(guān)電源晶體管,。內(nèi)部包含4通道邏輯驅(qū)動電路,,其額定工作電流為 1 A,最大可達(dá) 1.5 A,,Vss 電壓最小 4.5 V,,最大可達(dá) 36 V;Vs 電壓最大值也是 36 V,。L298N可直接對電機(jī)進(jìn)行控制,,無須隔離電路,可以驅(qū)動雙電機(jī),。根據(jù)L298N芯片的特點(diǎn)以及SPCE061A自身的特點(diǎn),,把IOA4~I(xiàn)OA7作為輸出口,分別與L298N的IN1~I(xiàn)N4相接,,其VS,、VSS分別接+12 V、+5 V電源,,其輸出口OUT1~OUT2接轉(zhuǎn)向電機(jī),,OUT3~OUT4接驅(qū)動電機(jī),根據(jù)設(shè)計要求,,結(jié)合所編好的程序,,根據(jù)所發(fā)語音命令,接收信號,,便可給[P_IOA_DATA]傳送數(shù)據(jù),,從而控制轉(zhuǎn)向電機(jī)和驅(qū)動電機(jī)。其連接圖如圖2所示,。

 

 

1. 4車身微調(diào)裝置
    車身的微調(diào)裝置采用紅外線光電傳感器ST178,,ST178由4個管腳組成,,是集發(fā)射和接收于一體的傳感器。發(fā)射和接收管分別采用高發(fā)射功率紅外線光電二極管和高靈敏度光電晶體管組成,。工作的范圍可達(dá)到4 mm~10 mm左右,采用非接觸監(jiān)測的方式,。
    經(jīng)過反復(fù)試驗證實(shí),ST178紅外線光電傳感器的發(fā)射管要加500 Ω的電阻用來限流,,而接收管則要接20 kΩ上拉電阻,,兩管均接5 V電源,工作時電壓達(dá)到4.8 V,,當(dāng)距離發(fā)射頭或接收頭1cm左右的位置有障礙物阻擋時電壓迅速降到1 V,。具體電路如圖3所示。

 


1. 5系統(tǒng)硬件部分設(shè)計
    音控小車主要由電機(jī)和電機(jī)驅(qū)動部分組成,,電機(jī)有2個分別用來控制后輪的驅(qū)動和前輪的轉(zhuǎn)向,,采用芯片L298做為電機(jī)的驅(qū)動電路,可以驅(qū)動雙電機(jī),。小車為4輪結(jié)構(gòu),,其中前面2個車輪由前輪電機(jī)控制,在連桿和支點(diǎn)作用下控制前輪左右擺動,,來調(diào)節(jié)小車的前進(jìn)方向,。在自然狀態(tài)下,前輪在彈簧作用下保持中間位置,。后面2個車輪由后輪電機(jī)驅(qū)動,,為整個小車提供動力,所以又稱前面的輪子為方向輪,,后面的兩個輪子為驅(qū)動輪,。利用直流減速電機(jī)控制小車的驅(qū)動,可以不考慮調(diào)速,,利用步進(jìn)電機(jī)控制小車的轉(zhuǎn)向來提高小車的整體性能,,具有很高的性價比。供電電源選用3塊4 V手機(jī)電池串聯(lián)成12 V電源給小車提供電能,。車身裝有5個傳感器在不同方向用來進(jìn)行微調(diào),,防止撞壁。小車前進(jìn)過程中當(dāng)接收到語音命令時,,可執(zhí)行行進(jìn),、轉(zhuǎn)向及倒庫等操作。
    本設(shè)計最終實(shí)現(xiàn)了對音控小車的設(shè)計,,圖4所示是基于凌陽單片機(jī)語音控制小車的實(shí)物圖,,其具體結(jié)構(gòu)是1喇叭、2車輪、3凌陽單片機(jī),、4光電傳感器,、5電池及驅(qū)動板、6電機(jī),。

 

 

2系統(tǒng)的軟件設(shè)計
2. 1語音識別模塊設(shè)計

    小車的語音識別模塊選用凌陽科技公司SPCE061A開發(fā)板,。SPCE061A內(nèi)嵌7通道10位電壓A/D轉(zhuǎn)換器(ADC)和單通道聲音A/D轉(zhuǎn)換,聲音A/D轉(zhuǎn)換器輸入通道內(nèi)置麥克風(fēng)放大器和自動增益控制功能,其本身已經(jīng)成為基本的語音處理平臺。本系統(tǒng)采用A2000模塊,,其語音壓縮編碼率為24 kb/s,,采樣頻率為16 kHz[4]
    語音識別主要分為“訓(xùn)練”和“識別”兩個階段,。在訓(xùn)練階段,,單片機(jī)對采集到的語音樣本進(jìn)行分析處理,從中提取出語音特征信息,,建立一個特征模型,;在識別階段,單片機(jī)對采集到的語音樣本也進(jìn)行類似的分析處理,,提取出語音的特征信息,,然后將這個特征信息模型與已有的特征模型進(jìn)行對比,如果二者達(dá)到了一定的匹配度,,則輸入的語音被識別。
    語音識別小車過程分為以下4大部分:
    (1)初始化部分:初始化操作將 IOB8~I(xiàn)OB11 設(shè)置為輸出端,,用以控制電機(jī),。必要時還要有對應(yīng)的輸入端設(shè)置。整個小車的行駛狀態(tài)由2個電機(jī)來控制,,電機(jī)1控制左拐和右拐,,電機(jī)2控制前進(jìn)、倒退,。具體行使?fàn)顟B(tài)控制如表1所示,。

 

    (2)訓(xùn)練部分:訓(xùn)練部分完成的工作就是建立語音模型。程序一開始判斷小車是否被訓(xùn)練過,,如果沒有訓(xùn)練過則要求對其進(jìn)行訓(xùn)練,,整個訓(xùn)練過程共有 5 次,依次為:名稱—前進(jìn)—倒車—左拐—右拐,。在訓(xùn)練成功之后將訓(xùn)練的模型存儲到 FLASH,,在以后使用時不需要重新訓(xùn)練,;如果已經(jīng)訓(xùn)練過會把存儲在 FLASH 中的模型調(diào)出來裝載到辨識器中,。
    (3)識別部分:在識別環(huán)節(jié)當(dāng)中,,如果辨識結(jié)果是名字,,停止當(dāng)前的動作并進(jìn)入待命狀態(tài),,然后等待動作命令。如果辨識結(jié)果為動作指令,,小車會語音告知相應(yīng)動作,,并執(zhí)行該動作,在運(yùn)動過程中可以通過呼叫小車的名字使小車停下來,。
    (4)重訓(xùn)操作:考慮到有重新訓(xùn)練的需求,,設(shè)置了重新訓(xùn)練的按鍵(61 板的 KEY3),循環(huán)掃描該按鍵,,一旦檢測到此鍵按下,,則將擦除訓(xùn)練標(biāo)志位(0xe000 單元),并等待復(fù)位,。復(fù)位后,,程序重新執(zhí)行,當(dāng)檢測到訓(xùn)練標(biāo)志位為 0xffff 時會要求重新對其進(jìn)行訓(xùn)練,。小車訓(xùn)練流程圖如圖5所示[5],。


 

 


2. 2系統(tǒng)的軟件設(shè)計流程圖
    系統(tǒng)的軟件設(shè)計流程如圖6所示。本設(shè)計采用C語言和匯編語言聯(lián)合編程的方法,。其中,,C語言作為主程序編程,可以充分利用C語言的優(yōu)點(diǎn),,調(diào)用其他程序模塊,。匯編語言主要用在子程序的模塊中,利用它的中斷,、延時等方面的優(yōu)點(diǎn),。匯編語言的主要優(yōu)點(diǎn)是占用硬件資源少、程序直接對硬件操作加快了處理速度,。本設(shè)計的所有程序均在凌陽單片機(jī)集成開發(fā)環(huán)境IDE中進(jìn)行,。本系統(tǒng)的軟件部分采用模塊化程序結(jié)構(gòu),其軟件設(shè)計主要包括初始化,、系統(tǒng)主程序,、語音提示程序、小車微調(diào)程序等部分,。

 


           
    本文設(shè)計并制作的小車以凌陽單片機(jī)為控制核心,,完成了語音辨識功能,并在實(shí)現(xiàn)語音控制的基礎(chǔ)上擴(kuò)展了SPCE061AI/O接口,,實(shí)現(xiàn)了緊急避障微調(diào)功能,,能夠按照語音指令很好地完成前進(jìn)、倒車,、左轉(zhuǎn),、右轉(zhuǎn)以及倒庫。能夠識別人的語音命令,并根據(jù)命令的含義執(zhí)行相應(yīng)的動作,。整個部分設(shè)計合理,,小車運(yùn)行正常。
參考文獻(xiàn)
[1]  COX I,,BALNCHE J. An expermient in gudiance and gravtiaiton of an autonomous vechicel[J] .IEEE Trans on Robost and Autonomaiton,1991, 7(2): 193-200.
[2]  羅亞非. 凌陽十六位單片機(jī)應(yīng)用基礎(chǔ)[M].北京:北京航空航天大學(xué)出版社,,2003.
[3]  薛均義, 張彥斌.凌陽十六位單片原理及其應(yīng)用. [M] 北京:北京航空航天大學(xué)出版社,2003.
[4]  侯媛彬. 凌陽單片機(jī)原理及其畢業(yè)設(shè)計精選[M]. 北京:科學(xué)出版社,,2006.
[5] 北陽公司內(nèi)部技術(shù)資料. m’nSP 單片機(jī). 2001,11.

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載。