基于GPS的公交自動報站系統(tǒng)的研究
2 嵌入式智能公交系統(tǒng)設(shè)計
車載設(shè)備安裝于公交車上,其工作環(huán)境比較惡劣,對設(shè)備的結(jié)構(gòu)也有一定的要求,本系統(tǒng)采用工作穩(wěn)定可靠、抗干擾能力強(qiáng)的嵌入式系統(tǒng)。嵌入式系統(tǒng)固化于存儲器中,其可靠性高、成本低、體積小、功耗低。嵌入式系統(tǒng)有著廣泛的應(yīng)用領(lǐng)域,在車輛與交通工程中的應(yīng)用是其中一個重要的方面。將嵌入式設(shè)備作為車載終端應(yīng)用于智能公交系統(tǒng),使車載終端設(shè)備具有更高的智能性、穩(wěn)定性和擴(kuò)展性,從而建立起全方位、實時準(zhǔn)確、高效的智能交通系統(tǒng)。
本系統(tǒng)采用先進(jìn)的衛(wèi)星定位技術(shù)與語音合成技術(shù)相結(jié)合的方式,改變了傳統(tǒng)公交車語音報站器必須有司機(jī)操控才能工作的落后方式,進(jìn)站、出站自動播報站名及服務(wù)用語,準(zhǔn)確、及時、不需要人工介入,實現(xiàn)了公交車報站器的完全智能化。本裝置主要特點為:
(1)采用GPS衛(wèi)星定位技術(shù),自動、準(zhǔn)確地播報站名、服務(wù)用語、廣告等。
(2)站名及有關(guān)事項可以在計算機(jī)上形成電子文件,通過串口下載到報站器中,方便快捷。
(3)與顯示屏直接連接,同步顯示報站信息、廣告等。
(4)可存儲多條線路,方便公交車臨時更換運營線路。
GPS公交自動報站系統(tǒng)包含硬件和軟件兩部分。硬件以ARM9S3c2410x處理器為核心,配置存儲器、I/O設(shè)備、通信模塊等必要的外設(shè);軟件以嵌入式Linux操作系統(tǒng)為核心,向上提供應(yīng)用編程接口API,向下屏蔽具體硬件特性的板級支持包BSP。嵌入式系統(tǒng)中,軟件和硬件緊密配合,協(xié)調(diào)工作,共同完成系統(tǒng)預(yù)定的功能。
2.1 系統(tǒng)硬件設(shè)計
嵌入式GPS公交自動報站系統(tǒng)按功能模塊可分為:GPS模塊、Flash/RAM、JTAG口/串行接口/USB口、音頻設(shè)備/揚聲器、LCD觸摸屏及核心處理器S3c2410x。系統(tǒng)硬件框圖如圖3所示。
核心處理器S3C2410X是一款由Samsung公司設(shè)計的低功耗、高度集成的16/32位RISC處理器,它采用272 腳FBGA 封裝,為手持設(shè)備和一般類型應(yīng)用提供了低價格、低功耗、高性能小型微控制器的解決方案。S3C2410X的顯著特性是其CPU核心為一個16/32位的ARM920T RISC處理器。ARM920T實現(xiàn)了MMU、AMBA BUS和Harvard高速緩沖體系結(jié)構(gòu)。這一結(jié)構(gòu)具有獨立的16KB指令Cache和16KB數(shù)據(jù)Cache,每個都是由8字長的行(line)構(gòu)成。通過提供一系列完整的系統(tǒng)外圍設(shè)備,S3C2410X可大大減少整個系統(tǒng)的成本,不需要為系統(tǒng)配置額外器件。工作頻率最高達(dá)到203MHz,同時具有MMU(內(nèi)存管理單元),使得處理器輕松運行于Windows CE、Linux等操作系統(tǒng),可進(jìn)行較為復(fù)雜的信息處理。
GPS模塊采用美國Garmin公司的GPS 15模塊。GPS 15系列是Garmin公司新推出的產(chǎn)品,具備12個平行接收頻道,最多能同時解算12顆衛(wèi)星訊息,以供快速定位與導(dǎo)航。使用者不需初始化設(shè)定,可自動搜尋衛(wèi)星信號,進(jìn)行定位功能,并輸出NMEA 0183標(biāo)準(zhǔn)資訊。所有GPS 15系列產(chǎn)品皆具有低耗電設(shè)計。使用讀寫式記憶體設(shè)計,內(nèi)部使用記憶體電池,斷電后儲存資料不流失。3.3V~40V的大范圍輸入電壓承載設(shè)計及輸出界面選擇,針對不同領(lǐng)域提供全方位更靈活的運用,即便是在公交車上電壓不穩(wěn)定的環(huán)境下也不會受到影響。表1為GPS模塊接口定義,與ARM處理器相應(yīng)管腳連接即可。
系統(tǒng)外擴(kuò)一個USB口,使用廉價的1GB或2GB的U盤作為海量存儲器來存放站點信息及廣告等多媒體文件。
2.2 系統(tǒng)軟件設(shè)計
目前主流的嵌入式實時操作系統(tǒng)有:Windows CE系列(含Pocket PC)、VxWorks和嵌入式Linux。相對于Windows CE、VxWorks,Linux用作嵌入式操作系統(tǒng)具有如下優(yōu)勢:用戶可以依照需要自行對Linux系統(tǒng)進(jìn)行裁剪,這對于在功能、可靠性、體積、成本和功耗方面有嚴(yán)格要求的專用終端系統(tǒng)來說是一個非常重要的特點;可以用于多種硬件平臺;Linux為開源軟件,使用靈活,開發(fā)成本低。
本方案采用的Linux版本為韓國MIZI公司為S3C2410X處理器開發(fā)的開源版本板級BSP包Linux 2.4.18-rmk7-pxa1。該版本也是三星公司的S3C2410X demo板上的Linux演示版本,已根據(jù)S3C2410X處理器的配置作了片級開發(fā),但由于是開源版本,外圍驅(qū)動做的并不完整,需要加入一些驅(qū)動程序(LCD驅(qū)動、USB驅(qū)動)。同時,由于使用的硬件芯片和三星的demo板并不相同,需要在配置Linux時進(jìn)行一些調(diào)整,并修改部分源代碼。最主要的工作是對存儲單元的配置以及文件系統(tǒng)的建立,并在Linux內(nèi)核的基礎(chǔ)上開發(fā)應(yīng)用程序(MPlayer播放器、Qt圖形應(yīng)用程序、GPS定位應(yīng)用程序),如圖4。
2.2.1 GUI設(shè)計
QT/Embedded是一個專門為小型設(shè)備提供圖形用戶界面的應(yīng)用框架和窗口系統(tǒng)。它提供了豐富的窗口小部件(Widgets),并支持窗口部件的定制,因此可以為用戶提供漂亮的圖形界面。Qt是KDE等項目使用的GUI支持庫,有許多基于Qt的X Window程序可以方便地移植到Qt/Embedded上。Qt/Embedded以原始Qt為基礎(chǔ),并做了許多出色的調(diào)整以適用于嵌入式環(huán)境。在Qt中加入觸摸屏驅(qū)動的接口函數(shù),便可支持觸摸功能。
評論