DSP芯片在自動(dòng)報(bào)站系統(tǒng)中的應(yīng)用
掃描二維碼
隨時(shí)隨地手機(jī)看文章
作者Email: greatchen1979@163.com
引言:
當(dāng)前國(guó)內(nèi)主要大城市的公交車(chē)大都采用人工語(yǔ)音報(bào)站,即每到一站由司機(jī)或者乘務(wù)員按語(yǔ)音鍵來(lái)進(jìn)行報(bào)站。但有時(shí)由于受到各種因素如雨雪天路滑、車(chē)上擁擠、乘務(wù)員心情的變化等的影響,會(huì)出現(xiàn)報(bào)錯(cuò)站,漏報(bào)站的情況,給乘客特別是不熟悉本市地形的乘客帶來(lái)了不必要的麻煩,從而影晌到了一個(gè)城市的窗口形象工程建設(shè),于是開(kāi)發(fā)研制自動(dòng)報(bào)站系統(tǒng)成為必然。系統(tǒng)中由于要求對(duì)接收到的公交車(chē)GPS定位信息(經(jīng)緯度信息等)進(jìn)行處理,由經(jīng)緯度信息生成站牌與公交車(chē)之間的距離信息,這之間會(huì)經(jīng)歷繁瑣的計(jì)算,用一般的微控制器難于實(shí)現(xiàn),而當(dāng)采用DSP處理芯片時(shí),這一問(wèn)題就很好解決了。
1. 自動(dòng)報(bào)站系統(tǒng)的總體結(jié)構(gòu)
整個(gè)自動(dòng)報(bào)站系統(tǒng)主要由車(chē)載設(shè)備及電子站牌兩大部分組成。系統(tǒng)結(jié)構(gòu)框架如圖1.1所示。車(chē)載設(shè)備主要用于對(duì)公交車(chē)定位數(shù)據(jù)的提取以實(shí)現(xiàn)自動(dòng)報(bào)站,而站牌設(shè)備主要用于對(duì)該位置信息的顯示。由于公交車(chē)的位置信息是不斷變化的,而站牌的位置則是相對(duì)固定的,所以兩者之間要建立聯(lián)系,必須要建立在無(wú)線通信的基礎(chǔ)之上。
自動(dòng)報(bào)站原理如下:車(chē)載GPS接收機(jī)不斷接收公交車(chē)的定位信息,在經(jīng)過(guò)DSP處理器處理之后提取有用信息并通過(guò)無(wú)線收發(fā)信機(jī)將此定位信息發(fā)送出去,電子站牌在接收到該定位信息后,將此定位信息與自己的靜態(tài)位置信息(由GPS接收機(jī)預(yù)先測(cè)得)進(jìn)行對(duì)比,如果其差值在規(guī)定的范圍之內(nèi)(比如公交車(chē)進(jìn)站時(shí)),就由電子站牌返回特定的指示報(bào)站站點(diǎn)信息給公交車(chē),在公交車(chē)接收到該特定的指示站點(diǎn)命令后,由DSP處理器通過(guò)并口向語(yǔ)音芯片寫(xiě)入特定的播放地址,語(yǔ)音芯片通過(guò)該播放地址,濾波后由揚(yáng)聲器播放該特定的語(yǔ)音信息,這樣就實(shí)現(xiàn)了公交車(chē)的自動(dòng)報(bào)站功能。
1.1車(chē)載設(shè)備
所謂車(chē)載設(shè)備也就是指安裝在公交車(chē)輛上的設(shè)備,它是公共交通信息服務(wù)系統(tǒng)中重要的組成部分。要實(shí)現(xiàn)公共交通信息系統(tǒng)所具有的功能,即具有GPS衛(wèi)星定位信息接收、公交車(chē)自動(dòng)報(bào)站以及與電子站牌的雙向通信等功能,就硬件構(gòu)成而言,車(chē)載設(shè)備必須由GPS接收天線、GPS接收機(jī)、通信控制器、自動(dòng)報(bào)站設(shè)備以及無(wú)線收發(fā)信機(jī)等幾個(gè)重要的部分組成。
(1)GPS接收機(jī)
公交車(chē)車(chē)載設(shè)備中的GPS接收機(jī)主要是用來(lái)獲取公交車(chē)的定位信息的,它能夠接收衛(wèi)星發(fā)出的定位資料,并可以對(duì)所接收到的GPS信號(hào)進(jìn)行變換、放大和處理,以便測(cè)量出GPS信號(hào)從衛(wèi)星到接收機(jī)天線的傳播時(shí)間,解譯出GPS衛(wèi)星所發(fā)送的導(dǎo)航電文,實(shí)時(shí)的計(jì)算出觀測(cè)站的三維位置、三維速度和時(shí)間等信息[10]。車(chē)載GPS接收機(jī)可以選用可供二次開(kāi)發(fā)的Garmin(高明)GPS25 OEM,它擁有并行12通道,能夠同時(shí)跟蹤12顆GPS導(dǎo)航衛(wèi)星,靈敏度高、定位速度快、功耗低、性價(jià)比高,有2個(gè)兼容RS-232的雙向通道,能同時(shí)傳輸標(biāo)準(zhǔn)的NMEA-0183數(shù)據(jù),其無(wú)差分定位精度在10米以內(nèi),功耗非常小,數(shù)據(jù)更新率較快,可以達(dá)到1次/秒。
在處理GPS接收機(jī)所接收到的數(shù)據(jù)時(shí),一般先通過(guò)對(duì)幀頭的判斷確定是否為"$GPRMC"幀結(jié)構(gòu),然后再對(duì)該幀進(jìn)行數(shù)據(jù)的提取處理。如果情況特殊,需要從其他幀獲取數(shù)據(jù),處理方法與之也是完全類(lèi)似的。由于幀內(nèi)各數(shù)據(jù)段由逗號(hào)分割,因此在處理緩存數(shù)據(jù)時(shí)一般是通過(guò)搜尋ASCII碼"$"來(lái)判斷是否是幀頭,在對(duì)幀頭的類(lèi)別進(jìn)行識(shí)別后再通過(guò)對(duì)所經(jīng)歷逗號(hào)個(gè)數(shù)的計(jì)數(shù)來(lái)判斷出當(dāng)前正在處理的是哪一種定位導(dǎo)航參數(shù),并作出相應(yīng)的處理。
處理的過(guò)程主要分四步進(jìn)行:首先要確定當(dāng)前傳送過(guò)來(lái)的數(shù)據(jù)字節(jié)是否合法,即該數(shù)據(jù)字節(jié)是否是屬于我們所需要的數(shù)據(jù)包中的數(shù)據(jù);然后確定傳來(lái)的數(shù)據(jù)字節(jié)在這個(gè)數(shù)據(jù)包中的位置;接著對(duì)采集到的數(shù)據(jù)字節(jié)進(jìn)行保存;最后當(dāng)整個(gè)數(shù)據(jù)包傳送結(jié)束時(shí),交由處理程序部分進(jìn)行計(jì)算處理。
(2)通信控制器
通信控制器采用DSP處理芯片TMS320VC5402,它是TI公司推出的一款性價(jià)比極高的定點(diǎn)DSP芯片。其性能特點(diǎn)如下:操作速率可達(dá)100MIPS;具有先進(jìn)的多總線結(jié)構(gòu),三條16位數(shù)據(jù)存儲(chǔ)器總線和一條程序存儲(chǔ)器總線;40位算術(shù)邏輯單元(ALU),包括一個(gè)40位桶形移位器和兩個(gè)40位累加器;一個(gè)17×17乘法器和一個(gè)40位專用加法器,允許16位帶/不帶符號(hào)的乘法;整合維特比加速器,用于提高維特比編譯碼的速度;單周期正規(guī)化及指數(shù)譯碼;8個(gè)輔助寄存器及一個(gè)軟件棧,允許使用業(yè)界最先進(jìn)的定點(diǎn)DSP C語(yǔ)言編譯器;數(shù)據(jù)/程序?qū)ぶ房臻g為1M×16bit,內(nèi)置4K×16bit ROM和16k×16bit RAM;內(nèi)置可編程等待狀態(tài)發(fā)生器、鎖相環(huán)(PLL)時(shí)鐘產(chǎn)生器、兩個(gè)多通道緩沖串口、一個(gè)與外部處理器通信的8位并行HPI口、兩個(gè)16位定時(shí)器以及6通道DMA控制器且低功耗。與C54X系列的其它芯片相比,C5402具有高性能、低功耗和低價(jià)格等特點(diǎn)。它采用6級(jí)流水線,且當(dāng)RPT(重復(fù)指令)時(shí),一些多周期的指令就變成了單周期的指令;芯片內(nèi)部RAM和ROM可根據(jù)PMST寄存器中的OVLY和DROM位靈活設(shè)置。這些都有利于算法的優(yōu)化。
C5402采用3.3V和1.8V電源供電,其中I/O采用3.3V電源供電,芯片的核采用1.8V電源供電。
(3)無(wú)線收發(fā)信機(jī)
無(wú)線收發(fā)信機(jī)作為車(chē)載設(shè)備的一部分,是公交車(chē)與電子站牌通信的無(wú)線橋梁。它主要完成接收電子站牌發(fā)送過(guò)來(lái)的指示命令,通過(guò)通信控制器進(jìn)行處理以實(shí)現(xiàn)自動(dòng)報(bào)站功能。由于只需要在報(bào)站的范圍內(nèi)實(shí)現(xiàn)站牌與公交車(chē)之間的無(wú)線通信,所以采用一般的無(wú)線收發(fā)模塊所構(gòu)成的無(wú)線收發(fā)信機(jī)即可,比如這里可以采用摩托羅拉的兩款芯片MC33493發(fā)射芯片以及MC33594接收芯片即可,具體無(wú)線通信這里不加重點(diǎn)介紹。
1.2電子站牌
電子站牌主要完成與公交車(chē)之間信息的交換,另外還可以完成對(duì)站點(diǎn)信息的顯示功能,所以電子站牌系統(tǒng)主要由無(wú)線收發(fā)信機(jī) 、通信控制器以及LED顯示系統(tǒng)構(gòu)成,其中通信控制器也采用DSP處理芯片TMS320VC5402。由于電子站牌在接收到公交車(chē)發(fā)回的定位信息之后,要判斷公交車(chē)是否已經(jīng)到了報(bào)站范圍,具體處理過(guò)程如下:
設(shè)電子站牌的位置信息為:經(jīng)度 ,緯度為 ;公交車(chē)當(dāng)前的位置信息為:經(jīng)度 ,緯度為 ,則當(dāng)前的公交車(chē)與電子站牌的距離(高度差值很小,可以忽略不計(jì))為:
(1-1)
TMS320VC5402運(yùn)算速度快,通過(guò)程序設(shè)計(jì)很簡(jiǎn)單的就能夠得到站牌與公交車(chē)此刻的絕對(duì)距離,當(dāng)滿足報(bào)站范圍時(shí)就由電子站牌發(fā)送相應(yīng)的報(bào)站命令,這樣公交車(chē)在收到報(bào)站命令后就能夠?qū)崿F(xiàn)自動(dòng)報(bào)站了。
2.自動(dòng)報(bào)站系統(tǒng)中相關(guān)硬件電路組成
2.1 串行接口電路組成
自動(dòng)報(bào)站系統(tǒng)中GPS接收機(jī)、無(wú)線收發(fā)信機(jī)與DSP處理器之間的通信都是通過(guò)串口來(lái)實(shí)現(xiàn)的。系統(tǒng)中采用的TMS320VC5402沒(méi)有標(biāo)準(zhǔn)的的RS232接口,但可以利用它的XF、BIO,INT0和定時(shí)器實(shí)現(xiàn)一個(gè)最簡(jiǎn)RS232接口,從而達(dá)到串行通信的目的,這里列舉了DSP處理芯片與GPS接收機(jī)之間的串行通信電路,如圖2所示。
2.2 語(yǔ)音報(bào)站語(yǔ)音硬件電路組成
語(yǔ)音報(bào)站語(yǔ)音硬件電路中可以采用1SD公司生產(chǎn)的1SD4004語(yǔ)音合成芯片,該器件有音質(zhì)自然、使用方便、單片存放、反復(fù)錄音、低功耗、抗斷電等許多特能。在實(shí)際應(yīng)用中,錄音部分預(yù)先將收錄內(nèi)容存儲(chǔ)到語(yǔ)音芯片中,并分配一個(gè)特定的播音地址,當(dāng)需要報(bào)站時(shí),只需要讀取該播音首地址,隨即報(bào)站信息就由語(yǔ)音芯片通過(guò)揚(yáng)聲器自動(dòng)播放出來(lái),以實(shí)現(xiàn)報(bào)站。在這里就采用1SD4004語(yǔ)音芯片來(lái)設(shè)計(jì)汽車(chē)報(bào)站器,其外圍電路及其簡(jiǎn)單,如圖所示:
從圖中可以看出TMS320VC5402和ISD4004之間的線路連接較少,電路結(jié)構(gòu)比較簡(jiǎn)單。TMS320VC5402中的D1接ISD4004的串行輸入引腳MOSI,從該引腳讀入放音的地址;D2數(shù)據(jù)線連接ISD4004的片選引腳/SS,控制ISD4004是否選通;D3和D4分別接ISD4004的串行時(shí)鐘引腳SCLK和中斷引腳/INT。當(dāng)需要報(bào)站時(shí),只需要讀取該播音首地址,隨即由DSP中的D1管腳在時(shí)鐘的控制下依次將該地址送入語(yǔ)音芯片,通過(guò)濾波由揚(yáng)聲器自動(dòng)播放出來(lái),實(shí)現(xiàn)實(shí)時(shí)報(bào)站。
3.系統(tǒng)功能軟件實(shí)現(xiàn)
器件上電后,首先完成程序的初始化,隨后進(jìn)入檢測(cè)接收站點(diǎn)命令狀態(tài)。如果公交車(chē)接收到指示站點(diǎn)命令,則轉(zhuǎn)去執(zhí)行該站點(diǎn)所指向的數(shù)據(jù)處理程序。每一個(gè)站點(diǎn)命令代表相應(yīng)的一站,通過(guò)判斷當(dāng)前站號(hào),并以該站號(hào)為依據(jù)獲得存放該站放音內(nèi)容的首地址,然后調(diào)用放音子程序,讀入預(yù)先存儲(chǔ)的本站放音內(nèi)容首地址,開(kāi)始放音。每一次放音完畢后,ISD4004的中斷引腳(25腳)會(huì)自動(dòng)送一低電平信號(hào)。在硬件設(shè)計(jì)中,該引腳與DSP芯片中的D1連接,因此會(huì)引起一次中斷,在中斷子程序中可以進(jìn)行站點(diǎn)的顯示。此外,如果預(yù)先測(cè)得每一個(gè)拐彎的靜態(tài)GPS定位信息,那么在公交車(chē)接收到定位信息之后,將兩個(gè)定位信息進(jìn)行對(duì)比,如果其差值也在規(guī)定范圍之內(nèi),此時(shí)可以使程序轉(zhuǎn)向執(zhí)行特殊語(yǔ)放音(譬如“拐彎請(qǐng)注意”等語(yǔ)句)。
具體程序流程圖如圖4所示。公交車(chē)在到達(dá)每一站的同時(shí),電子站牌都會(huì)將自己得位置信息與接收到車(chē)子的定位信息對(duì)比,當(dāng)其差值在所定范圍之內(nèi),此時(shí)電子站牌就會(huì)發(fā)送站點(diǎn)報(bào)站命令給公交車(chē)。在公交車(chē)接收到具體的報(bào)站命令之后,通過(guò)判斷站點(diǎn)號(hào)就可以得到相應(yīng)站點(diǎn)的放音內(nèi)容首地址,把獲得的放音內(nèi)容的地址送到ISD4004中,即可以完成放音。在公交車(chē)完成對(duì)本站的自動(dòng)報(bào)站后,馬上切換到對(duì)下一站報(bào)站命令的查詢,依次進(jìn)行下去,就可以實(shí)現(xiàn)對(duì)整條線路的報(bào)站功能。
4.結(jié)論
本文所采用的DSP處理芯片在公交車(chē)自動(dòng)報(bào)站系統(tǒng)中有及其重要的應(yīng)用,它不但起到控制的作用,更重要的是對(duì)接收到的GPS定位信息進(jìn)行處理,生成距離信息,是系統(tǒng)實(shí)現(xiàn)自動(dòng)報(bào)站功能的關(guān)鍵所在。此外,由于DSP芯片對(duì)數(shù)據(jù)處理的速度極快,結(jié)合GPS定位精度的提高,使得整套系統(tǒng)在實(shí)際應(yīng)用中得到很好的體現(xiàn),極大的方便了公交乘客。