【導讀】無(wú)人售票公交車(chē)大多采用半自動(dòng)報站系統,雖然人工干預語(yǔ)音報站比傳統語(yǔ)音報站更清晰洪亮,但是會(huì )經(jīng)常出現漏報站、報錯站現象。本文主要講解了基于GPS的嵌入式公交自動(dòng)報站系統,通過(guò)GPS衛星定位播報導航信息,顯示屏上顯示同類(lèi)信息。
1 嵌入式公交自動(dòng)報站系統的原理及特點(diǎn)
1.1 基于GPS公交自動(dòng)報站系統的原理概述
本文提出的新型公交車(chē)自動(dòng)報站系統的基本原理如圖1所示。通過(guò)GPS接收機接收GPS工作衛星的導航信息,從而解算出車(chē)輛目前的經(jīng)、緯度等信息;根據GPS定位數據計算出公交車(chē)的實(shí)時(shí)坐標,將其與站點(diǎn)坐標相比較,當公交車(chē)駛入站點(diǎn)一定距離范圍內時(shí),不用人工干預,系統自動(dòng)報站。將位置信息與數據庫中電子矢量地圖進(jìn)行匹配,根據公交車(chē)位置的不同,LCD顯示屏上顯示不同的公益信息、廣告信息和景點(diǎn)信息等。在離站、到站和拐彎點(diǎn)閾值范圍內語(yǔ)音提示的同時(shí),在顯示屏上顯示同類(lèi)信息,給乘客一種全方位的提示與服務(wù)。

本裝置的定位系統使用GPS接收機進(jìn)行自主定位,GPS接收模塊接收GPS衛星發(fā)送的定位數據,將GPS信號的數據流提取出來(lái),經(jīng)過(guò)簡(jiǎn)單的字符串操作就可以分別找出GPS信號中的經(jīng)度、緯度以及相應的格林威治時(shí)間(該時(shí)間加上8小時(shí)即為我國標準時(shí))等定位信息。在實(shí)際開(kāi)發(fā)中,GPS接收機根據從三顆以上衛星發(fā)來(lái)的數據計算出自身所處的位置,完成定位。
GPS定位的基本原理是根據高速運動(dòng)的衛星瞬間位置作為已知的起算數據,采用空間距離后方交匯的方法,確定待測點(diǎn)的位置。如圖2所示,假設t時(shí)刻在地面待測點(diǎn)上安置GPS接收機,可以測定GPS信號到達接收機的時(shí)間△t,再加上接收機所接收到的衛星星歷等其他數據可以確定以下四個(gè)方程式:


1.3 GPS信息格式
通常GPS模塊支持兩種格式:二進(jìn)制消息格式和NMEA-0183 ASCII消息格式。前者的通信協(xié)議為 9600b/s、無(wú)校驗、8位數據位、1位停止位;后者的通信協(xié)議為4800b/s、無(wú)校驗、8位數據位、1位停止位。由于NMEA-0183 ASCII格式直觀(guān)、易于識別及應用,因此本設備采用ASCII格式。
系統接收到的GPS數據主要由幀頭、幀尾和幀內數據組成。根據數據幀的不同,幀頭也不相同,主要有$GPGGA、$GPGSA、$GPGSV以及$GPRMC等。這里選用推薦的$GPRMC。各類(lèi)數據幀分別包含了不同的信息,在此列舉出$GPRMC的各項含義:
$GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,*hh
<1>當前位置的格林威治時(shí)間,格式為hhmmss。
<2>狀態(tài),A為有效位置,V為非有效接收警告,即當前天線(xiàn)視野上方的衛星個(gè)數少于3顆。
<3>緯度,格式為ddmm.mmmm。
<4>標明南北半球,N為北半球、S為南半球。
<5>徑度,格式為dddmm.mmmm。
<6>標明東西半球,E為東半球、W為西半球。
<7>地面上的速度,范圍為000.0節~999.9節(1節=1.852km/h)。
<8>方位角,范圍為000.0度~359.9度。
<9>日期,格式為ddmmyy。
<10>地磁變化,從000.0度~180.0度。
<11>地磁變化方向,為E或W。
由于幀內各數據段由逗號分割,因此在處理緩存數據時(shí)一般通過(guò)搜尋ASCII碼“$”來(lái)判斷是否是幀頭。在對幀頭的類(lèi)別進(jìn)行識別后,再通過(guò)對所經(jīng)歷逗號個(gè)數的計數判斷出當前正在處理的是哪一種定位導航參數,并做出相應處理。
2 嵌入式智能公交系統設計
車(chē)載設備安裝于公交車(chē)上,其工作環(huán)境比較惡劣,對設備的結構也有一定的要求,本系統采用工作穩定可靠、抗干擾能力強的嵌入式系統。嵌入式系統固化于存儲器中,其可靠性高、成本低、體積小、功耗低。嵌入式系統有著(zhù)廣泛的應用領(lǐng)域,在車(chē)輛與交通工程中的應用是其中一個(gè)重要的方面。將嵌入式設備作為車(chē)載終端應用于智能公交系統,使車(chē)載終端設備具有更高的智能性、穩定性和擴展性,從而建立起全方位、實(shí)時(shí)準確、高效的智能交通系統。
本系統采用先進(jìn)的衛星定位技術(shù)與語(yǔ)音合成技術(shù)相結合的方式,改變了傳統公交車(chē)語(yǔ)音報站器必須有司機操控才能工作的落后方式,進(jìn)站、出站自動(dòng)播報站名及服務(wù)用語(yǔ),準確、及時(shí)、不需要人工介入,實(shí)現了公交車(chē)報站器的完全智能化。本裝置主要特點(diǎn)為:
(1)采用GPS衛星定位技術(shù),自動(dòng)、準確地播報站名、服務(wù)用語(yǔ)、廣告等。
(2)站名及有關(guān)事項可以在計算機上形成電子文件,通過(guò)串口下載到報站器中,方便快捷。
(3)與顯示屏直接連接,同步顯示報站信息、廣告等。
(4)可存儲多條線(xiàn)路,方便公交車(chē)臨時(shí)更換運營(yíng)線(xiàn)路。
GPS公交自動(dòng)報站系統包含硬件和軟件兩部分。硬件以ARM9S3c2410x處理器為核心,配置存儲器、I/O設備、通信模塊等必要的外設;軟件以嵌入式Linux操作系統為核心,向上提供應用編程接口A(yíng)PI,向下屏蔽具體硬件特性的板級支持包BSP。嵌入式系統中,軟件和硬件緊密配合,協(xié)調工作,共同完成系統預定的功能。
2.1 系統硬件設計
嵌入式GPS公交自動(dòng)報站系統按功能模塊可分為:GPS模塊、Flash/RAM、JTAG口/串行接口/USB口、音頻設備/揚聲器、LCD觸摸屏及核心處理器S3c2410x。系統硬件框圖如圖3所示。

GPS模塊采用美國Garmin公司的GPS 15模塊。GPS 15系列是Garmin公司新推出的產(chǎn)品,具備12個(gè)平行接收頻道,最多能同時(shí)解算12顆衛星訊息,以供快速定位與導航。使用者不需初始化設定,可自動(dòng)搜尋衛星信號,進(jìn)行定位功能,并輸出NMEA 0183標準資訊。所有GPS 15系列產(chǎn)品皆具有低耗電設計。使用讀寫(xiě)式記憶體設計,內部使用記憶體電池,斷電后儲存資料不流失。3.3V~40V的大范圍輸入電壓承載設計及輸出界面選擇,針對不同領(lǐng)域提供全方位更靈活的運用,即便是在公交車(chē)上電壓不穩定的環(huán)境下也不會(huì )受到影響。表1為GPS模塊接口定義,與ARM處理器相應管腳連接即可。

[page]
2.2 系統軟件設計
目前主流的嵌入式實(shí)時(shí)操作系統有:Windows CE系列(含Pocket PC)、VxWorks和嵌入式Linux。相對于Windows CE、VxWorks,Linux用作嵌入式操作系統具有如下優(yōu)勢:用戶(hù)可以依照需要自行對Linux系統進(jìn)行裁剪,這對于在功能、可靠性、體積、成本和功耗方面有嚴格要求的專(zhuān)用終端系統來(lái)說(shuō)是一個(gè)非常重要的特點(diǎn);可以用于多種硬件平臺;Linux為開(kāi)源軟件,使用靈活,開(kāi)發(fā)成本低。
本方案采用的Linux版本為韓國MIZI公司為S3C2410X處理器開(kāi)發(fā)的開(kāi)源版本板級BSP包Linux 2.4.18-rmk7-pxa1。該版本也是三星公司的S3C2410X demo板上的Linux演示版本,已根據S3C2410X處理器的配置作了片級開(kāi)發(fā),但由于是開(kāi)源版本,外圍驅動(dòng)做的并不完整,需要加入一些驅動(dòng)程序(LCD驅動(dòng)、USB驅動(dòng))。同時(shí),由于使用的硬件芯片和三星的demo板并不相同,需要在配置Linux時(shí)進(jìn)行一些調整,并修改部分源代碼。最主要的工作是對存儲單元的配置以及文件系統的建立,并在Linux內核的基礎上開(kāi)發(fā)應用程序(MPlayer播放器、Qt圖形應用程序、GPS定位應用程序),如圖4。

QT/Embedded是一個(gè)專(zhuān)門(mén)為小型設備提供圖形用戶(hù)界面的應用框架和窗口系統。它提供了豐富的窗口小部件(Widgets),并支持窗口部件的定制,因此可以為用戶(hù)提供漂亮的圖形界面。Qt是KDE等項目使用的GUI支持庫,有許多基于Qt的X Window程序可以方便地移植到Qt/Embedded上。Qt/Embedded以原始Qt為基礎,并做了許多出色的調整以適用于嵌入式環(huán)境。在Qt中加入觸摸屏驅動(dòng)的接口函數,便可支持觸摸功能。
移植Qt時(shí),在裝有Linux的PC機上安裝交叉編譯環(huán)境,編譯器版本為arm-linux-gcc-3.4.1,在/root/.bash_profile中修改編譯器搜索路徑;編譯庫文件(libjpeg-iwmmxxt.tar.bz2);編譯工具包(tslib.tar.gz、tmake-1.13.tar.gz);編譯Qtopia桌面環(huán)境(qtopia-free-source-2.1.1.tar.bz2);最后將交叉編譯后得到的Qtopia桌面環(huán)境、Qtopia.sh文件及相應的庫文件下載到自動(dòng)報站系統。
在公交車(chē)未到站時(shí),如果有乘客通過(guò)觸摸屏查詢(xún)信息,則觸發(fā)人機交互中斷,調用Qt圖形應用程序。該程序可以通過(guò)觸摸屏顯示當前時(shí)間、本公交運行路線(xiàn)圖、首末班車(chē)發(fā)車(chē)時(shí)間及本線(xiàn)路沿途各站點(diǎn)所經(jīng)過(guò)的其他公交車(chē)。
2.2.2 多媒體播放器
用于播放景點(diǎn)介紹、廣告等信息的播放器選用MPlayer播放器,它基于0.2.0版本的Libmpeg2函數庫編寫(xiě),因此支持多種流行的圖像壓縮格式,例如:MPG、DAT、BIN、VOB、ASF、WMF、AVI等。MPlayer播放器本身編譯自帶了多種類(lèi)型的編碼器,不需要再安裝xvid、ffdshow、ac3、filter、ogg、vobsub等解碼器。本系統移植采用較新版本的MPlayer-1.0pre7try2.tar.bz2。
2.2.3 GPS定位應用程序
GPS模塊工作流程如圖5所示。任務(wù)啟動(dòng)后,模塊接收GPS信息,然后解析出GPS信息,根據解析出來(lái)的經(jīng)緯度信息與數據庫中存儲的站點(diǎn)信息比較,計算出實(shí)際距離。如果距離到達閥值時(shí),啟動(dòng)GPS報站中斷。
2.2.4 系統軟件總流程


相關(guān)閱讀:
步步精講:電子巡查中GPS智能移動(dòng)終端電路設計
教你DIY價(jià)格昂貴的GPS模塊,只需50元
【DIY】工科牛人自制GPS接收機