【導讀】無人售票公交車大多采用半自動報站系統(tǒng),雖然人工干預語音報站比傳統(tǒng)語音報站更清晰洪亮,但是會經(jīng)常出現(xiàn)漏報站、報錯站現(xiàn)象。本文主要講解了基于GPS的嵌入式公交自動報站系統(tǒng),通過GPS衛(wèi)星定位播報導航信息,顯示屏上顯示同類信息。
1 嵌入式公交自動報站系統(tǒng)的原理及特點
1.1 基于GPS公交自動報站系統(tǒng)的原理概述
本文提出的新型公交車自動報站系統(tǒng)的基本原理如圖1所示。通過GPS接收機接收GPS工作衛(wèi)星的導航信息,從而解算出車輛目前的經(jīng)、緯度等信息;根據(jù)GPS定位數(shù)據(jù)計算出公交車的實時坐標,將其與站點坐標相比較,當公交車駛入站點一定距離范圍內(nèi)時,不用人工干預,系統(tǒng)自動報站。將位置信息與數(shù)據(jù)庫中電子矢量地圖進行匹配,根據(jù)公交車位置的不同,LCD顯示屏上顯示不同的公益信息、廣告信息和景點信息等。在離站、到站和拐彎點閾值范圍內(nèi)語音提示的同時,在顯示屏上顯示同類信息,給乘客一種全方位的提示與服務。
本裝置的定位系統(tǒng)使用GPS接收機進行自主定位,GPS接收模塊接收GPS衛(wèi)星發(fā)送的定位數(shù)據(jù),將GPS信號的數(shù)據(jù)流提取出來,經(jīng)過簡單的字符串操作就可以分別找出GPS信號中的經(jīng)度、緯度以及相應的格林威治時間(該時間加上8小時即為我國標準時)等定位信息。在實際開發(fā)中,GPS接收機根據(jù)從三顆以上衛(wèi)星發(fā)來的數(shù)據(jù)計算出自身所處的位置,完成定位。
GPS定位的基本原理是根據(jù)高速運動的衛(wèi)星瞬間位置作為已知的起算數(shù)據(jù),采用空間距離后方交匯的方法,確定待測點的位置。如圖2所示,假設t時刻在地面待測點上安置GPS接收機,可以測定GPS信號到達接收機的時間△t,再加上接收機所接收到的衛(wèi)星星歷等其他數(shù)據(jù)可以確定以下四個方程式:
1.3 GPS信息格式
通常GPS模塊支持兩種格式:二進制消息格式和NMEA-0183 ASCII消息格式。前者的通信協(xié)議為 9600b/s、無校驗、8位數(shù)據(jù)位、1位停止位;后者的通信協(xié)議為4800b/s、無校驗、8位數(shù)據(jù)位、1位停止位。由于NMEA-0183 ASCII格式直觀、易于識別及應用,因此本設備采用ASCII格式。
系統(tǒng)接收到的GPS數(shù)據(jù)主要由幀頭、幀尾和幀內(nèi)數(shù)據(jù)組成。根據(jù)數(shù)據(jù)幀的不同,幀頭也不相同,主要有$GPGGA、$GPGSA、$GPGSV以及$GPRMC等。這里選用推薦的$GPRMC。各類數(shù)據(jù)幀分別包含了不同的信息,在此列舉出$GPRMC的各項含義:
$GPRMC,<1>,<2>,<3>,<4>,<5>,<6>,<7>,<8>,<9>,<10>,<11>,*hh
<1>當前位置的格林威治時間,格式為hhmmss。
<2>狀態(tài),A為有效位置,V為非有效接收警告,即當前天線視野上方的衛(wèi)星個數(shù)少于3顆。
<3>緯度,格式為ddmm.mmmm。
<4>標明南北半球,N為北半球、S為南半球。
<5>徑度,格式為dddmm.mmmm。
<6>標明東西半球,E為東半球、W為西半球。
<7>地面上的速度,范圍為000.0節(jié)~999.9節(jié)(1節(jié)=1.852km/h)。
<8>方位角,范圍為000.0度~359.9度。
<9>日期,格式為ddmmyy。
<10>地磁變化,從000.0度~180.0度。
<11>地磁變化方向,為E或W。
由于幀內(nèi)各數(shù)據(jù)段由逗號分割,因此在處理緩存數(shù)據(jù)時一般通過搜尋ASCII碼“$”來判斷是否是幀頭。在對幀頭的類別進行識別后,再通過對所經(jīng)歷逗號個數(shù)的計數(shù)判斷出當前正在處理的是哪一種定位導航參數(shù),并做出相應處理。
2 嵌入式智能公交系統(tǒng)設計
車載設備安裝于公交車上,其工作環(huán)境比較惡劣,對設備的結構也有一定的要求,本系統(tǒng)采用工作穩(wěn)定可靠、抗干擾能力強的嵌入式系統(tǒng)。嵌入式系統(tǒng)固化于存儲器中,其可靠性高、成本低、體積小、功耗低。嵌入式系統(tǒng)有著廣泛的應用領域,在車輛與交通工程中的應用是其中一個重要的方面。將嵌入式設備作為車載終端應用于智能公交系統(tǒng),使車載終端設備具有更高的智能性、穩(wěn)定性和擴展性,從而建立起全方位、實時準確、高效的智能交通系統(tǒng)。
本系統(tǒng)采用先進的衛(wèi)星定位技術與語音合成技術相結合的方式,改變了傳統(tǒng)公交車語音報站器必須有司機操控才能工作的落后方式,進站、出站自動播報站名及服務用語,準確、及時、不需要人工介入,實現(xiàn)了公交車報站器的完全智能化。本裝置主要特點為:
(1)采用GPS衛(wèi)星定位技術,自動、準確地播報站名、服務用語、廣告等。
(2)站名及有關事項可以在計算機上形成電子文件,通過串口下載到報站器中,方便快捷。
(3)與顯示屏直接連接,同步顯示報站信息、廣告等。
(4)可存儲多條線路,方便公交車臨時更換運營線路。
GPS公交自動報站系統(tǒng)包含硬件和軟件兩部分。硬件以ARM9S3c2410x處理器為核心,配置存儲器、I/O設備、通信模塊等必要的外設;軟件以嵌入式Linux操作系統(tǒng)為核心,向上提供應用編程接口API,向下屏蔽具體硬件特性的板級支持包BSP。嵌入式系統(tǒng)中,軟件和硬件緊密配合,協(xié)調(diào)工作,共同完成系統(tǒng)預定的功能。
2.1 系統(tǒng)硬件設計
嵌入式GPS公交自動報站系統(tǒng)按功能模塊可分為:GPS模塊、Flash/RAM、JTAG口/串行接口/USB口、音頻設備/揚聲器、LCD觸摸屏及核心處理器S3c2410x。系統(tǒng)硬件框圖如圖3所示。
GPS模塊采用美國Garmin公司的GPS 15模塊。GPS 15系列是Garmin公司新推出的產(chǎn)品,具備12個平行接收頻道,最多能同時解算12顆衛(wèi)星訊息,以供快速定位與導航。使用者不需初始化設定,可自動搜尋衛(wèi)星信號,進行定位功能,并輸出NMEA 0183標準資訊。所有GPS 15系列產(chǎn)品皆具有低耗電設計。使用讀寫式記憶體設計,內(nèi)部使用記憶體電池,斷電后儲存資料不流失。3.3V~40V的大范圍輸入電壓承載設計及輸出界面選擇,針對不同領域提供全方位更靈活的運用,即便是在公交車上電壓不穩(wěn)定的環(huán)境下也不會受到影響。表1為GPS模塊接口定義,與ARM處理器相應管腳連接即可。
[page]
2.2 系統(tǒng)軟件設計
目前主流的嵌入式實時操作系統(tǒng)有:Windows CE系列(含Pocket PC)、VxWorks和嵌入式Linux。相對于Windows CE、VxWorks,Linux用作嵌入式操作系統(tǒng)具有如下優(yōu)勢:用戶可以依照需要自行對Linux系統(tǒng)進行裁剪,這對于在功能、可靠性、體積、成本和功耗方面有嚴格要求的專用終端系統(tǒng)來說是一個非常重要的特點;可以用于多種硬件平臺;Linux為開源軟件,使用靈活,開發(fā)成本低。
本方案采用的Linux版本為韓國MIZI公司為S3C2410X處理器開發(fā)的開源版本板級BSP包Linux 2.4.18-rmk7-pxa1。該版本也是三星公司的S3C2410X demo板上的Linux演示版本,已根據(jù)S3C2410X處理器的配置作了片級開發(fā),但由于是開源版本,外圍驅動做的并不完整,需要加入一些驅動程序(LCD驅動、USB驅動)。同時,由于使用的硬件芯片和三星的demo板并不相同,需要在配置Linux時進行一些調(diào)整,并修改部分源代碼。最主要的工作是對存儲單元的配置以及文件系統(tǒng)的建立,并在Linux內(nèi)核的基礎上開發(fā)應用程序(MPlayer播放器、Qt圖形應用程序、GPS定位應用程序),如圖4。
QT/Embedded是一個專門為小型設備提供圖形用戶界面的應用框架和窗口系統(tǒng)。它提供了豐富的窗口小部件(Widgets),并支持窗口部件的定制,因此可以為用戶提供漂亮的圖形界面。Qt是KDE等項目使用的GUI支持庫,有許多基于Qt的X Window程序可以方便地移植到Qt/Embedded上。Qt/Embedded以原始Qt為基礎,并做了許多出色的調(diào)整以適用于嵌入式環(huán)境。在Qt中加入觸摸屏驅動的接口函數(shù),便可支持觸摸功能。
移植Qt時,在裝有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文件及相應的庫文件下載到自動報站系統(tǒng)。
在公交車未到站時,如果有乘客通過觸摸屏查詢信息,則觸發(fā)人機交互中斷,調(diào)用Qt圖形應用程序。該程序可以通過觸摸屏顯示當前時間、本公交運行路線圖、首末班車發(fā)車時間及本線路沿途各站點所經(jīng)過的其他公交車。
2.2.2 多媒體播放器
用于播放景點介紹、廣告等信息的播放器選用MPlayer播放器,它基于0.2.0版本的Libmpeg2函數(shù)庫編寫,因此支持多種流行的圖像壓縮格式,例如:MPG、DAT、BIN、VOB、ASF、WMF、AVI等。MPlayer播放器本身編譯自帶了多種類型的編碼器,不需要再安裝xvid、ffdshow、ac3、filter、ogg、vobsub等解碼器。本系統(tǒng)移植采用較新版本的MPlayer-1.0pre7try2.tar.bz2。
2.2.3 GPS定位應用程序
GPS模塊工作流程如圖5所示。任務啟動后,模塊接收GPS信息,然后解析出GPS信息,根據(jù)解析出來的經(jīng)緯度信息與數(shù)據(jù)庫中存儲的站點信息比較,計算出實際距離。如果距離到達閥值時,啟動GPS報站中斷。
2.2.4 系統(tǒng)軟件總流程
相關閱讀:
步步精講:電子巡查中GPS智能移動終端電路設計
教你DIY價格昂貴的GPS模塊,只需50元
【DIY】工科牛人自制GPS接收機