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