近年來,, 隨著城市公交" title="公交">公交事業(yè)的迅速發(fā)展, 國內(nèi)公交車報站的方式已經(jīng)有了很大改善,, 由傳統(tǒng)的售票員喊話報站逐漸變?yōu)轳{駛員使用報站器手動報站,。
雖然手動報站器使用比較方便, 但是因為駕駛員需要在保證安全駕駛的前提下進(jìn)行報站,, 所以經(jīng)常出現(xiàn)報站不及時,, 甚至錯報、漏報的現(xiàn)象,, 而且讓駕駛員在駕駛過程中進(jìn)行報站也存在安全隱患,。采用自動報站的方式可以大大減輕駕駛員的工作量, 促進(jìn)公交系統(tǒng)" title="系統(tǒng)">系統(tǒng)的現(xiàn)代化進(jìn)程,。要實現(xiàn)自動報站,, 需要實時測出公交車的位置, 以確定公交車是否已經(jīng)到達(dá)站點,。利用GPS" title="GPS">GPS 可以確定公交車的地理位置,, 只需把當(dāng)前位置同公交站點的位置數(shù)據(jù)( 經(jīng)、緯度) 相比較,, 就可以知道公交車是否到達(dá)站點,, 使得報站系統(tǒng)具有一定的智能" title="智能">智能性。這種基于GPS 的智能報站系統(tǒng)能夠杜絕駕駛員駕駛過程中因兼顧報站器而帶來的隱患,。特別適合因汽車行業(yè)高速發(fā)展而導(dǎo)致交通問題日益嚴(yán)峻的我國國情,, 還可以在重點線路上加入對城市景點風(fēng)貌的相關(guān)介紹。該系統(tǒng)在GPS 導(dǎo)航領(lǐng)域和商業(yè)領(lǐng)域都有著非常大的潛力,, 具有廣闊的發(fā)展前景,。
1 系統(tǒng)方案
基于GPS 的公交車智能報站系統(tǒng)是移動通訊技術(shù)和GPS 技術(shù)的結(jié)合, 整個系統(tǒng)由S3C24l0 ARM9( 進(jìn)階精簡指令集機(jī)器) 開發(fā)板、SIM548C GPS/ GPRS模塊,、語音播報模塊,、AT89S52 單片機(jī)以及OCMJ5X10B 的LED( 發(fā)光二極管) 背光寬溫黃綠屏等器件組成。GSM/ GPS 模塊由GPS 分模塊與GSM( 全球移動通訊系統(tǒng)) 分模塊組成,。GPS 模塊負(fù)責(zé)GPS 數(shù)據(jù)接收,。公交車在行進(jìn)過程中, GPS 模塊的實測信息同已存儲的位置信息進(jìn)行比較即可進(jìn)行自動報站,, 無需人為干預(yù),, 還可實現(xiàn)在固定位置播放某些特定信息, 如乘車提示,、廣告信息等,。GSM 模塊用于公交車與調(diào)度室之間的數(shù)據(jù)通訊, 實現(xiàn)公交車的聯(lián)合調(diào)度,, 實現(xiàn)調(diào)度中心對公交車的調(diào)度功能,。
語音播報模塊負(fù)責(zé)語音播放, 提供進(jìn)出站以及提示信息等語音的播放,。單片機(jī)模塊控制按鍵掃描以及LCD 顯示,。
1. 1 硬件設(shè)計
系統(tǒng)硬件部分主要由S3C2410 ARM9 開發(fā)板、GPS/ GSM 模塊,、功放模塊,、顯示模塊、語音播放模塊及相應(yīng)的外圍電路組成,。GPRS 模塊和GPS 模塊均通過RS232( 串口) 與ARM 處理器相連,, 而LCD( 液晶顯示器) 模塊則由單片機(jī)控制通過串口與ARM 通訊, 語音播放模塊通過IIS ( Inter IC Sound) ,、SPI( 串行外設(shè)接口) 與ARM 通訊,。硬件連接方式如圖1 所示。
圖1 系統(tǒng)硬件結(jié)構(gòu)
GSM/ GPS 模塊采用SIMCOM 公司的GPS/ GSM 模塊,, 該模塊是一款四頻GSM/ GPRS( 通用分組無線服務(wù)技術(shù)) 無線模塊,, 同時支持SiRF Star III AGPS 技術(shù),。
GSM/ GPRS 與AGPS 技術(shù)的整合使得該模塊可以滿足GPS跟蹤,、導(dǎo)航、車輛船舶等設(shè)備和資產(chǎn)的監(jiān)控管理以及其他GPS 的應(yīng)用,。鍵盤掃描和屏幕顯示由單片機(jī)做數(shù)據(jù)處理,。鍵盤顯示板主要實現(xiàn)鍵盤掃描、液晶屏幕的顯示并與ARM處理器模塊進(jìn)行通訊,。硬件系統(tǒng)整體框圖如圖2所示,。
圖2 系統(tǒng)組成
1. 2 軟件總體設(shè)計
系統(tǒng)的主要功能由ARM 控制, 采用C 語言進(jìn)行編程, 采用多線程處理相關(guān)功能模塊,。執(zhí)行相關(guān)過程如下: 系統(tǒng)初始化完成后,, 依據(jù)GPS 定位信息和系統(tǒng)存儲的線路信息計算位置、報站和讀取相關(guān)信息,, 并由ARM 控制車內(nèi)的顯示模塊進(jìn)行顯示,、語音播放以及向數(shù)據(jù)中心進(jìn)行數(shù)據(jù)傳送。
2 設(shè)計" title="設(shè)計">設(shè)計實現(xiàn)
2. 1 系統(tǒng)初始化
在系統(tǒng)運行之前,, 必須用軟件程序?qū)Ω鞑糠诌M(jìn)行初始化,。初始化包括以下幾個部分:
ARM 以及系統(tǒng)初始化;顯示按鍵模塊初始化,;外部器件,、接口初始化: 主要是GPS、GPRS和語音芯片等設(shè)備的初始化,;軟件系統(tǒng)的初始化: 設(shè)置全局變量,、指針和數(shù)組、數(shù)據(jù)結(jié)構(gòu)以及公交信息初始化,。
系統(tǒng)軟件部分主要是在主程序中檢測GPS 信息,, 確定公交車當(dāng)前的地理位置, 然后決定是否播放語音信息,。同時還需要實現(xiàn)按鍵所要求的功能,, 如切換到手動播報等。本系統(tǒng)的軟件部分開發(fā)工作是基于Linux 開發(fā)環(huán)境實現(xiàn)的,。根據(jù)系統(tǒng)要完成的功能和各個模塊的運行情況,, 主程序部分采用了多線程以及消息隊列的方式, 可以及時接收GPS 數(shù)據(jù),。
因為只使用GPRMC 幀的數(shù)據(jù),, 串行通訊的數(shù)據(jù)量不大, 通訊及數(shù)據(jù)處理過程比較快,, 系統(tǒng)能夠及時播放報站及其他語音信息,。公交車途經(jīng)的各站點的經(jīng)緯度數(shù)據(jù)需要預(yù)先測量好, 并存放到系統(tǒng)的數(shù)據(jù)區(qū),, 作為對比參考使用,。GPRS 的信息通過串行口傳遞, 采用查詢法,, 按鍵也使用查詢方式進(jìn)行接收,, 以確定按下的是哪個功能鍵。軟件采用C 語言編寫,, 調(diào)試成功后燒錄到Flash 中,, 實現(xiàn)脫機(jī)運行,。
2. 2 GPS 模塊
由于該GPS 模塊設(shè)置信息掉電丟失, 在每次系統(tǒng)啟動時均要對該GPS 模塊進(jìn)行初始化,。將模塊設(shè)置成每秒鐘輸出一次GPS 信息,。
系統(tǒng)啟動后, 模塊接收GPS 信息,, 然后解析出GPS 信息,, 根據(jù)解析出來的經(jīng)緯度信息與數(shù)據(jù)區(qū)中存儲的站點信息比較, 計算出實際距離,。如果距離到達(dá)閥值時,, 啟動GPS 報站中斷。
該GPS 模塊接收模塊遵循NMEA. 0183 協(xié)議,, 可以輸出多種格式的數(shù)據(jù)幀,, 均以“MYM”開頭。輸出數(shù)據(jù)采用的是ASCII 碼字符,, 內(nèi)容包含了緯度,、經(jīng)度、速度,、日期,、航向及衛(wèi)星狀況等信息。幀格式達(dá)10 余種,, 該系統(tǒng)所使用的僅限于$ GPRMC 定位數(shù)據(jù)幀格式,。
系統(tǒng)啟動后, 通過串口對GPS 模塊進(jìn)行設(shè)置,,由于系統(tǒng)對實時性要求不高,, 將GPS 設(shè)置為每秒鐘輸出一次RMC 數(shù)據(jù)。提取GPRMC 語句的思路是設(shè)置一個數(shù)據(jù)緩沖區(qū),, 把接收到的GPS 數(shù)據(jù)都放入這個緩沖區(qū),, 當(dāng)緩沖區(qū)滿了的時候就在緩沖區(qū)中查找是否接受到GPRMC 定位語句, 如果沒有接收到則重新接收GPS 數(shù)據(jù),。如果找到了GPRMC 定位語句則還要判斷該語句在緩沖區(qū)中的位置離緩沖區(qū)的最大字節(jié)數(shù)是否大于62個字節(jié)( 因為本程序中需要的GPRMC 定位語句所包含的字節(jié)數(shù)為62) , 然后通過多程序提取相關(guān)經(jīng)緯度,、時間和速度等信息并通過數(shù)據(jù)處理線程進(jìn)行相關(guān)處理。系統(tǒng)工作流程如圖3 所示,。
圖3 系統(tǒng)工作流程
2. 3 GPRS 無線通訊模塊
由于GSM 模塊內(nèi)嵌TCP/ IP 協(xié)議,, 可以直接調(diào)用AT 命令與服務(wù)器通過TCP、UDP 通訊,。無線通訊分為上行數(shù)據(jù)轉(zhuǎn)換模塊和通訊模塊2 個模塊,。
上行數(shù)據(jù)轉(zhuǎn)換模塊的主要功能是把接收到的GPS 數(shù)據(jù)或是相關(guān)的狀態(tài)信息轉(zhuǎn)換成約定好的數(shù)據(jù)格式以便同主信息中心的通訊,。該模塊會判斷需要轉(zhuǎn)換的數(shù)據(jù)是GPS 數(shù)據(jù)信息還是相關(guān)狀態(tài)信息或是二者都有,, 然后選擇相應(yīng)的轉(zhuǎn)換程序,。由上面的介紹可以知道接收到的GPS 數(shù)據(jù)都是順序存放在數(shù)據(jù)緩沖區(qū)當(dāng)中的, 需要什么數(shù)據(jù)就到緩沖區(qū)中相應(yīng)的位置提取就可以了,。數(shù)據(jù)都是以字符形式存放的,, 所以實際要用的時候必須先轉(zhuǎn)換成整形數(shù)據(jù)。
下行數(shù)據(jù)轉(zhuǎn)換模塊的功能與上行數(shù)據(jù)轉(zhuǎn)化模塊的功能相反,, 它將主信息中心發(fā)送的命令進(jìn)行識別后發(fā)送給車載" title="車載">車載終端,, 并通知用戶界面模塊顯示。
通訊模塊的主要任務(wù)是完成車載終端與監(jiān)控中心的通訊,, 它既可以通過GPRS 網(wǎng)絡(luò)實現(xiàn)與主信息中心的無線通訊,。如果車載終端與上位機(jī)的距離隔的很遠(yuǎn)可以直接通過GPRS 網(wǎng)絡(luò)與監(jiān)控中心進(jìn)行連接, 而且通過SIM548C 模塊連接GPRS 網(wǎng)絡(luò)與監(jiān)控中心連接也非常方便,, 只需向GPRS 模塊發(fā)送幾條AT 命令就可以了,, 但是監(jiān)控中心必須有因特網(wǎng)的固定IP。啟動車載終端的同時SIM548C 模塊也會被啟動,, 這是模塊會自動連接上GPRS 網(wǎng)絡(luò)進(jìn)入命令模式,。撥號成功以后就連接上了GPRS 網(wǎng)絡(luò)了, 然后對與SIM548C 模塊連接的串口進(jìn)行讀寫操作就可以實現(xiàn)與監(jiān)控中心的無線通訊,。
在測試中發(fā)現(xiàn),, 由于無線信號存在差異, 在某些網(wǎng)絡(luò)信號較差的地方容易與主信息中心失去網(wǎng)絡(luò)連接,。為解決這一問題,, 在系統(tǒng)中采用多線程監(jiān)視網(wǎng)絡(luò)連接狀態(tài), 一旦失去網(wǎng)絡(luò)連接,, 立即與主信息中心重新連接,。
2. 4 語音播放模塊
語音播放采用飛利浦SPI 接口音頻芯片, 驅(qū)動為Linux 下的聲卡設(shè)備,。通過S3C2410 SPI 控制音頻芯片,, 通過IIS 傳送音頻數(shù)據(jù), 最終將音頻芯片驅(qū)動成系統(tǒng)下的標(biāo)準(zhǔn)聲卡設(shè)備,。
在語音報站時,, 需要為公交車上的喇叭提供語音信號, 功放電路采用MAXIM 功放模塊,, 該功放模塊采用單端輸入的方式,, 輸入的負(fù)端直接接地。
該功放模塊為單聲道/ 立體聲,、D 類音頻功率放大器,, 能向8 立體聲負(fù)載提供高達(dá)2 × 21W 功率,或向單聲道4 負(fù)載提供高達(dá)1 ×42 W 功率,, 效率高達(dá)87%,。該功放模塊兼具D 類放大器的效率和AB 類放大器的性能,, 無需大體積散熱器, 降低了功耗,。該功放模塊采用+ 10~ + 18 V 單電源供電,, 可驅(qū)動BTL 配置的負(fù)載。
用于播放報站,、廣告和信息等語音的播放器選用基于開源的播放器,, 在源代碼的基礎(chǔ)上進(jìn)行修改,形成適合播放短小音頻的播放線程,, 為系統(tǒng)體統(tǒng)音頻播放功能,。
2. 5 顯示按鍵模塊
鍵盤掃描和屏幕顯示由51 單片機(jī)做數(shù)據(jù)處理。
鍵盤顯示板主要實現(xiàn)鍵盤掃描,、液晶屏幕的顯示并與ARM 處理器模塊進(jìn)行通訊,。
顯示按鍵模塊通過串口與數(shù)據(jù)處理模塊通訊,將掃描到按鍵發(fā)送給數(shù)據(jù)處理模塊進(jìn)行處理,, 同時接受數(shù)據(jù)處理模塊的顯示數(shù)據(jù)命令,, 在相應(yīng)的液晶屏幕位置顯示數(shù)據(jù), 從而實現(xiàn)車載報站系統(tǒng)的人機(jī)交互功能,, 實現(xiàn)公交車的調(diào)度管理功能,。
基于GPS 和GPRS 的公交自動報站系統(tǒng), 具定位功能,, GPRS 無線通訊功能,, 能實現(xiàn)自動報站、調(diào)度,、信息收發(fā)和中心通訊,, 具有USB 接口等優(yōu)點。
大大降低了公交員工的勞動強度,, 提高了公交管理的科學(xué)性,。
3 結(jié)束語
公交車載GPS 智能報站系統(tǒng)采用GPS 定位技術(shù)、無線通訊技術(shù),, 具有體積小,、播報準(zhǔn)確等特點。
能實現(xiàn)自動報站,、調(diào)度,、信息收發(fā)和中心通訊等功能。通過USB 接口可使系統(tǒng)存儲多條線路,, 方便公交車臨時更換運營線路,; 利用按鍵和廣播等作為人機(jī)交互界面, 方便乘客接收相關(guān)信息,; 可提供廣告等增值業(yè)務(wù),。系統(tǒng)為建立完整的智能公交調(diào)度管理系統(tǒng)提供了關(guān)鍵的公交車載系統(tǒng),。