基于S3C2440的車載GPS/GPRS跟蹤監(jiān)控系統(tǒng)研究與實現(xiàn)
2.1 S3C2440介紹
S3C2440是三星推出的一款基于ARM920TDMI-S內核的16/32位RISC嵌入微處理器,它是專為手持設備與一般的消費電子而設計的,能滿足小型嵌入式系統(tǒng)中低成本低功耗高性能小體積的要求,頻率穩(wěn)定運行在405 MHz,最高可達533 MHz。S3C2440集成了豐富的片上資源,在開發(fā)過程中可有效減少外圍的設備部件,以降低系統(tǒng)的成本。
2.2 存儲系統(tǒng)
本系統(tǒng)使用的SDRAM是由韓國現(xiàn)代公司的HY57V561620芯片,作為數(shù)據(jù)存儲空間。該芯片具有32 MB的存儲空間和16 b數(shù)據(jù)寬度,適合需要大容量和高帶寬的嵌入式系統(tǒng)使用,芯片采用3.3 V的外部電源。整個存儲空間被分為4個Bank,每個Bank的容量為4M×16 b。
使用的NAND FLASH是三星公司推出的K9F1208芯片,作為程序存儲空間。芯片工作電壓為3.3 V,該芯片的存儲容量為64 MB,整個存儲空間被分為4096個Block,每個Block又被分成32個Page,而每個Page的容量為528B(512 B+16B),其中16B空間是作為I/O緩沖器使用的。
考慮到系統(tǒng)需要存儲大量的地圖信息,而NANDFLASH只有64 MB,其中絕大部分的空間已被Linux操作系統(tǒng)的啟動代碼及操作系統(tǒng)的鏡像和系統(tǒng)根文件系統(tǒng)占用。因此,在設計系統(tǒng)時加入了SD卡接口電路。S3C2440集成了SDI接口,該接口支持各種容量的SD卡,并可工作在DMA模式和中斷模式。
2.3 人機接口模塊
LCD液晶屏由于具有體積小、重量輕、低電壓、低功耗等特點,非常適合本系統(tǒng)的要求。LCD屏顯示圖像,不但需要LCD驅動器,還需要有相應的LCD控制器。LCD控制器則有專門的外部電路來實現(xiàn)。
S3C2440芯片集成了LCD控制器,可以支持各種單色,偽彩,真彩液晶屏,TFT彩屏,還提供1通道的LCD專用DMA。本系統(tǒng)中所外接的LCD是NEC 3.5寸觸摸式、彩色液晶屏,型號為NL2432HC22-23B。
2.4 GPS模塊
GPS系統(tǒng)采用高軌測距體制,以觀測站至GPS衛(wèi)星之間的距離作為基本觀測量。通過對4顆或4顆以上的GPS衛(wèi)星同時進行偽距或相位的測量即可推算出接收機的三維位置。根據(jù)所接收到的經緯度信息,與電子地圖數(shù)據(jù)進行比較,可在地圖上顯示出車輛當前的位置和行駛方向。
GPS模塊是GPS15L/H。接口特性如下:RS 232輸出,可輸入RS 232或者具有RS 232極性的TTL電平??蛇x的波特率為:300 b/s,600 b/s,1 200 b/s,2 400 b/s,4 800 b/s,9 600 b/s,19 200 b/s。
串口輸出協(xié)議:輸出NEMA0183格式的ASCII碼語句,輸出:GPALM,GPGGA,GPGLL,GPGSA,GPGSV,GPRMC,GPVTG(NMEA標準語句);PGRM B,PGRME,PGRMF,PGRMM,PGRMT,PGRMV(GARMIN定義的語句)。還可將串口設置為輸出包括GPS載波相位數(shù)據(jù)的二進制數(shù)據(jù)。輸入:初始位置、時間、秒脈沖狀態(tài)、差分模式、NMEA輸出間隔等設置信息。在缺省的狀態(tài)下,GPS模塊輸出數(shù)據(jù)的波特率為4 800 b/s,輸出信息包括:GPRMC,GPGGA,GPGSA,GPGSV,PGRME等,每秒鐘定時輸出。
2.5 GPRS模塊
考慮到監(jiān)控車輛是移動的,因此車載終端和監(jiān)控中心之間的數(shù)據(jù)傳輸必須采用無線的方式。本系統(tǒng)采用西門子公司的GPRS模塊SIM300,該模塊適合工作在環(huán)境變化大,周圍環(huán)境較惡劣的場所。本模塊具有標準AT命令接口,可以提供GSM語音、短消息和GPRS上網等業(yè)務。根據(jù)系統(tǒng)的功能要求,本系統(tǒng)只要實現(xiàn)S3C2440與模塊之間的通信,并將GPS的經緯信息發(fā)給服務中心,并進行服務中心與客戶終端之間的話音信息傳送。
3 應用程序的設計
3.1 導航程序的設計思路
開發(fā)終端導航應用軟件至少做以下幾個方面的工作:
(1)導航電子地圖一般都是分層的數(shù)字矢量地圖,具有一定的分層結構,比如道路層、興趣點層、文本層等。它提供最低層的地理位置經緯度信息,還有對經緯度信息以及每個數(shù)據(jù)字段進行詮釋的相關文檔。
(2)平面、球面坐標的轉換程序,導航電子地圖的原始數(shù)據(jù)都是經緯度的坐標信息,需要將這些經緯度的坐標信息轉換為平面坐標的形式才能制作出電子地圖。在開發(fā)過程中,實現(xiàn)某種功能還需要平面坐標和球面坐標的來回轉換。
(3)圖形用戶界面。本系統(tǒng)選用QT/Embeded來作為圖形用戶接口界面。QT Designer是一個跨平臺的符合C++規(guī)范的圖形用戶界面程序開發(fā)工具。QT本身是一個類庫,它遵循C++規(guī)范,同時對C++作了一些擴充。它主要用于Linux系統(tǒng),是構造KDE桌面環(huán)境的基礎。
3.2 導航程序的開發(fā)
導航電子地圖數(shù)據(jù)實際上是分層的矢量地圖形式,首先需要使用QT的圖形顯示函數(shù)將矢量地圖分層畫出,分為道路層、道路名層、交叉結點層、興趣點層等,然后在此基礎上開發(fā)出相應的功能。整幅地圖可用一個對象來表示,每個矢量地圖層可看作是大對象內的一個小對象,它們之間是包含關系。以后的操作是根據(jù)不同的功能對不同的矢量層對象進行操作。
3.3 服務中心的程序設計
服務中心的軟件,主要負責對車輛的位置進行監(jiān)控,并對運營車輛進行調控。設計本系統(tǒng)時,為節(jié)省開發(fā)時間,使用了第三方的地圖軟件,在開發(fā)時主要做的就是在PC機端接上GPRS模塊,用于接收終端發(fā)送過來的位置信息,把接收到的信息進行解析,并把取得的數(shù)據(jù)提供給地圖軟件。
評論