新聞中心

        EEPW首頁 > 汽車電子 > 設計應用 > 基于GPS的嵌入式公交自動報站系統的研究

        基于GPS的嵌入式公交自動報站系統的研究

        作者:孫弋 汪亞東 李培煊 時間:2008-07-25 來源:電子技術應用 收藏

          2.1 系統硬件設計

        本文引用地址:http://www.104case.com/article/86242.htm

          自動報站系統按功能模塊可分為:模塊、Flash/RAM、JTAG口/串行接口/USB口、音頻設備/揚聲器、LCD觸摸屏及核心處理器S3c2410x。系統硬件框圖如圖3所示。

         

          核心處理器S3C2410X是一款由Samsung公司設計的低功耗、高度集成的16/32位RISC處理器,它采用272 腳FBGA 封裝,為手持設備和一般類型應用提供了低價格、低功耗、高性能小型微控制器的解決方案。S3C2410X的顯著特性是其CPU核心為一個16/32位的ARM920T RISC處理器。ARM920T實現了MMU、AMBA BUS和Harvard高速緩沖體系結構。這一結構具有獨立的16KB指令Cache和16KB數據Cache,每個都是由8字長的行(line)構成。通過提供一系列完整的系統外圍設備,S3C2410X可大大減少整個系統的成本,不需要為系統配置額外器件。工作頻率最高達到203MHz,同時具有MMU(內存管理單元),使得處理器輕松運行于Windows CE、等操作系統,可進行較為復雜的信息處理。

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

          系統外擴一個USB口,使用廉價的1GB或2GB的U盤作為海量存儲器來存放站點信息及廣告等多媒體文件。

          2.2 系統軟件設計

          目前主流的實時操作系統有:Windows CE系列(含Pocket PC)、VxWorks和。相對于Windows CE、VxWorks,用作嵌入式操作系統具有如下優勢:用戶可以依照需要自行對Linux系統進行裁剪,這對于在功能、可靠性、體積、成本和功耗方面有嚴格要求的專用終端系統來說是一個非常重要的特點;可以用于多種硬件平臺;Linux為開源軟件,使用靈活,開發成本低。

          本方案采用的Linux版本為韓國MIZI公司為S3C2410X處理器開發的開源版本板級BSP包Linux 2.4.18-rmk7-pxa1。該版本也是三星公司的S3C2410X demo板上的Linux演示版本,已根據S3C2410X處理器的配置作了片級開發,但由于是開源版本,外圍驅動做的并不完整,需要加入一些驅動程序(LCD驅動、USB驅動)。同時,由于使用的硬件芯片和三星的demo板并不相同,需要在配置Linux時進行一些調整,并修改部分源代碼。最主要的工作是對存儲單元的配置以及文件系統的建立,并在Linux內核的基礎上開發應用程序(MPlayer播放器、Qt圖形應用程序、GPS定位應用程序),如圖4。

          2.2.1 GUI設計

          QT/Embedded是一個專門為小型設備提供圖形用戶界面的應用框架和窗口系統。它提供了豐富的窗口小部件(Widgets),并支持窗口部件的定制,因此可以為用戶提供漂亮的圖形界面。Qt是KDE等項目使用的GUI支持庫,有許多基于Qt的X Window程序可以方便地移植到Qt/Embedded上。Qt/Embedded以原始Qt為基礎,并做了許多出色的調整以適用于嵌入式環境。在Qt中加入觸摸屏驅動的接口函數,便可支持觸摸功能。

          移植Qt時,在裝有Linux的PC機上安裝交叉編譯環境,編譯器版本為arm-linux-gcc-3.4.1,在/root/.bash_profile中修改編譯器搜索路徑;編譯庫文件(libjpeg-iwmmxxt.tar.bz2);編譯工具包(tslib.tar.gz、tmake-1.13.tar.gz);編譯Qtopia桌面環境(qtopia-free-source-2.1.1.tar.bz2);最后將交叉編譯后得到的Qtopia桌面環境、Qtopia.sh文件及相應的庫文件下載到自動報站系統。

          在車未到站時,如果有乘客通過觸摸屏查詢信息,則觸發人機交互中斷,調用Qt圖形應用程序。該程序可以通過觸摸屏顯示當前時間、本公交運行路線圖、首末班車發車時間及本線路沿途各站點所經過的其他公交車。

          2.2.2 多媒體播放器

          用于播放景點介紹、廣告等信息的播放器選用MPlayer播放器,它基于0.2.0版本的Libmpeg2函數庫編寫,因此支持多種流行的圖像壓縮格式,例如:MPG、DAT、BIN、VOB、ASF、WMF、AVI等。MPlayer播放器本身編譯自帶了多種類型的編碼器,不需要再安裝xvid、ffdshow、ac3、filter、ogg、vobsub等解碼器。本系統移植采用較新版本的MPlayer-1.0pre7try2.tar.bz2。
        2.2.3 GPS定位應用程序

          GPS模塊工作流程如圖5所示。任務啟動后,模塊接收GPS信息,然后解析出GPS信息,根據解析出來的經緯度信息與數據庫中存儲的站點信息比較,計算出實際距離。如果距離到達閥值時,啟動GPS報站中斷。

          2.2.4 系統軟件總流程

          系統的軟件流程如圖6所示。上電后,首先完成系統初始化,然后創建GPS 信號檢測任務,并進入此任務執行GPS信號檢測及解析,同時監測是否有GPS報站中斷產生。若有中斷產生,則啟動MPlayer播放器播報站名、景點介紹等信息;若沒有,則檢測是否有觸摸屏中斷產生。若有中斷,則進入人機交互界面;否則啟動MPlayer播放器播報廣告、公益信息等,同時檢測、解析GPS信號。

          本嵌入式公交自動報站系統采用GPS定位技術,具有體積小、播報準確的特點。系統可存儲多條線路,方便公交車臨時更換運營線路;并利用觸摸屏作為人機交互界面,方便乘客查詢相關信息;可提供廣告等增值業務。系統基本解決了當前各大城市公交系統報站出錯的問題。

        參考文獻

        [1] 管素清.公交車自動報站和地圖匹配的研究(學位論文).山東大學,2005,4.
        [2] 倪繼利.Qt及Linux操作系統窗口設計.北京:電子工業出版社,2006.
        [3] 李征航,黃勁松.GPS測量與數據處理[M].湖北:武漢大學出版社,2005.
        [4] 劉淼.嵌入式系統接口設計與Linux驅動程序開發[M].北京:北京航空航天大學出版社,2006.
        [5] 嚴盈富.觸摸屏與PLC入門[M].北京:人民郵電出版社,2006.
        [6] 張其善.智能車輛定位導航系統及其應用[M].北京:科學出版社,2002.

        linux操作系統文章專題:linux操作系統詳解(linux不再難懂)

        上一頁 1 2 下一頁

        關鍵詞: 嵌入式 GPS 公交 Linux

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 横峰县| 祥云县| 金山区| 阿勒泰市| 奉新县| 定边县| 化德县| 凌云县| 南皮县| 尉氏县| 石屏县| 合阳县| 大石桥市| 阿城市| 黑龙江省| 繁昌县| 洞头县| 华池县| 岳普湖县| 怀安县| 共和县| 蒙自县| 峡江县| 星子县| 东至县| 湟中县| 获嘉县| 金寨县| 洛南县| 准格尔旗| 鸡西市| 理塘县| 山阴县| 泸溪县| 海兴县| 万全县| 扶沟县| 蕉岭县| 通辽市| 阿拉善盟| 东平县|