《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 其他 > 業(yè)界動(dòng)態(tài) > 基于嵌入式設(shè)備的個(gè)人GIS助理系統(tǒng)

基于嵌入式設(shè)備的個(gè)人GIS助理系統(tǒng)

2008-07-31
作者:馬 璐,, 鮑遠(yuǎn)律,, 滿 亢

??? 摘 要:提出一種基于嵌入式設(shè)備的個(gè)人GIS助理系統(tǒng)的設(shè)計(jì)方案,并分別對(duì)嵌入式便攜終端和監(jiān)控平臺(tái)" title="監(jiān)控平臺(tái)">監(jiān)控平臺(tái)的實(shí)現(xiàn)過(guò)程進(jìn)行了闡述,。該系統(tǒng)經(jīng)過(guò)實(shí)際測(cè)驗(yàn),,達(dá)到了預(yù)期的設(shè)計(jì)效果,。
???關(guān)鍵詞: GIS;Linux,;ARM,;嵌入式系統(tǒng)

?

??? 近年來(lái),地理信息系統(tǒng)GIS技術(shù)已經(jīng)廣泛地應(yīng)用于汽車導(dǎo)航,、野外測(cè)繪,、物流運(yùn)輸及軍事指揮等眾多領(lǐng)域,但用于個(gè)人的GIS導(dǎo)航助理系統(tǒng)還不多見,。針對(duì)這一現(xiàn)狀,,本文提出一種基于嵌入式設(shè)備的個(gè)人GIS助理系統(tǒng)的設(shè)計(jì)方案。利用本系統(tǒng),,可以實(shí)現(xiàn)個(gè)人的定位,、導(dǎo)航、監(jiān)控,、報(bào)警等多種功能,。
1 系統(tǒng)體系結(jié)構(gòu)及工作原理
  個(gè)人GIS助理系統(tǒng)由便攜式終端和監(jiān)控平臺(tái)兩個(gè)部分組成,,其體系結(jié)構(gòu)如圖1所示。

?


  系統(tǒng)的工作原理:便攜式終端由個(gè)人攜帶,,可以為用戶實(shí)現(xiàn)定位,、導(dǎo)航以及遇險(xiǎn)報(bào)警等功能,當(dāng)用戶開啟報(bào)警按鈕時(shí),,用戶所在位置的GPS數(shù)據(jù)信息通過(guò)GPRS網(wǎng)絡(luò)發(fā)送到監(jiān)控平臺(tái),,并在數(shù)字矢量地圖中顯示出用戶的位置,便于用戶得到及時(shí)救助,。
2 便攜式終端的設(shè)計(jì)與實(shí)現(xiàn)
2.1 終端的硬件結(jié)構(gòu)

  便攜式終端直接與用戶交互,,完成數(shù)字地圖" title="數(shù)字地圖">數(shù)字地圖顯示及定位、導(dǎo)航及報(bào)警信號(hào)的發(fā)送任務(wù),,硬件結(jié)構(gòu)由如下幾個(gè)部分組成:ARM處理器,、顯示模塊、GPS模塊,、GPRS模塊,、存儲(chǔ)模塊和報(bào)警模塊等,如圖2所示,。

?


2.1.1 ARM處理器
  ARM處理器是整個(gè)便攜式終端的核心,,需要處理大量的數(shù)據(jù)及運(yùn)算。為適應(yīng)系統(tǒng)的整體性能,,選用三星公司的S3C2410處理器,。S3C2410基于ARM 920T內(nèi)核,頻率為203MHz,,具有MMU虛擬內(nèi)存管理單元,,搭配第三方公司生產(chǎn)的接口板,可擴(kuò)充串口,、網(wǎng)卡,、USB接口、LCD接口,、JTAG接口等,,方便系統(tǒng)的調(diào)試和運(yùn)行。
2.1.2? GPS模塊
  GPS數(shù)據(jù)接收模塊采用ROCKWELL公司的JUPITER接收器,,它具有12個(gè)并行通道和高靈敏度RF部分,,可快速捕捉衛(wèi)星信號(hào),在開闊空間,,冷啟動(dòng)約1分鐘,,定位精度小于15m,并提供自動(dòng)存儲(chǔ)功能,,可以在掉電時(shí)將當(dāng)時(shí)信息固化在芯片內(nèi)部,。
2.1.3? GPRS模塊
  通用分組無(wú)線業(yè)務(wù)GPRS(General Packet Radio Service)是在 GSM基礎(chǔ)上發(fā)展起來(lái)的一種分組交換的高效數(shù)據(jù)傳輸方式,。相對(duì)于低傳輸速率" title="傳輸速率">傳輸速率的GSM(916Kb/s),GPRS具有最高可達(dá)17 112Kb/s的傳輸速率,。GPRS具有“永遠(yuǎn)在線”的優(yōu)點(diǎn),,按照數(shù)據(jù)流量計(jì)費(fèi),計(jì)費(fèi)方式更符合用戶需要,。此外,,GPRS支持TCP/IP協(xié)議,用戶可以直接訪問(wèn) Internet站點(diǎn),。它還可以提供一系列交互式業(yè)務(wù):點(diǎn)對(duì)點(diǎn)面向連接的數(shù)據(jù)業(yè)務(wù),、點(diǎn)對(duì)點(diǎn)無(wú)連接型網(wǎng)絡(luò)業(yè)務(wù)、單點(diǎn)對(duì)多點(diǎn)業(yè)務(wù)等[1],。
  本設(shè)計(jì)采用西門子公司的MC39終端,,它支持GPRS/GSM兩種網(wǎng)絡(luò)方式,硬件接口采用標(biāo)準(zhǔn)的RS232串口,,通過(guò)它向GPRS模塊發(fā)送AT命令,,可以對(duì)GPRS模塊進(jìn)行初始設(shè)置和實(shí)現(xiàn)網(wǎng)絡(luò)連接,、數(shù)據(jù)傳送等功能,。
2.2? 終端的軟件設(shè)計(jì)
  便攜式終端的軟件設(shè)計(jì)主要分為嵌入式操作系統(tǒng)的移植、Microwindows和PPP撥號(hào)程序的移植,、嵌入式GIS程序以及報(bào)警和通信模塊設(shè)計(jì),。
2.2.1? 嵌入式操作系統(tǒng)和Microwindows的移植
  眾所周知,Linux系統(tǒng)是一款免費(fèi),、開源的操作系統(tǒng),,具有極強(qiáng)的穩(wěn)定性和可移植性,用戶可以根據(jù)自己的需要隨意更改源代碼,,使其適應(yīng)不同的應(yīng)用,。
  Linux移植到嵌入式平臺(tái)一般分為下面幾個(gè)步驟:下載源碼、建立交叉編譯環(huán)境,,配置編譯內(nèi)核,,制作文件系統(tǒng),下載,、調(diào)試內(nèi)核,。
  Microwindows起源于NanoGUI項(xiàng)目,是由Gregory Haerr組織的一個(gè)開放源代碼項(xiàng)目,,也是嵌入式系統(tǒng)" title="嵌入式系統(tǒng)">嵌入式系統(tǒng)中廣為使用的一種圖形用戶接口(GUI),。它采用了類似GAL層和IAL層的設(shè)計(jì)思想,使用分層結(jié)構(gòu)設(shè)計(jì)方法,,可移植性非常好,。另外,,它還提供了多種應(yīng)用程序接口(API)??紤]到開發(fā)成本和移植的相對(duì)簡(jiǎn)單性,,本設(shè)計(jì)采用Microwindows作為便攜式終端的GUI。
  Microwindows是一個(gè)可配置的軟件包,,可以針對(duì)嵌入式系統(tǒng)的不同需求進(jìn)行配置,、裁剪、正確的配置是成功移植Microwindows的關(guān)鍵,。配置內(nèi)容包括基本發(fā)行包的設(shè)置,,各種字體的選擇和各種圖像處理包的安裝等。配置完成后,,就可以進(jìn)行下一步的編譯工作了,。
  如果編譯成功,在mwsrc/bin目錄下會(huì)產(chǎn)生Nano-X的服務(wù)器程序nano-X,、Nano-X窗口管理器程序nanowm和一些演示程序,;在mwsrc/lib目錄下會(huì)產(chǎn)生libmwin.a、libnano-X.a等Microwindows/Nano-X API函數(shù)庫(kù),,用戶可以利用這些函數(shù)庫(kù)來(lái)開發(fā)自己的應(yīng)用,。
2.2.2 PPP撥號(hào)程序的移植及建立GPRS無(wú)線通信鏈路
  PPP(Point to Point Protocol)是專門為解決Modem撥號(hào)上網(wǎng)的問(wèn)題而設(shè)計(jì)的。PPP 在連接過(guò)程中所處的主要狀態(tài)有死亡,、建立,、認(rèn)證、網(wǎng)絡(luò)和終止[2],。當(dāng)鏈路" title="鏈路">鏈路是死亡時(shí)沒(méi)有物理層連接,,成功建立物理連接后鏈路變成建立,這時(shí)LCP 選項(xiàng)商議開始,,如果成功則進(jìn)入認(rèn)證,。如果在LCP 階段要求了認(rèn)證, 此時(shí)就可以檢查PEER的標(biāo)志,,然后進(jìn)入網(wǎng)絡(luò)階段,,采用相應(yīng)的NCP協(xié)議配置網(wǎng)絡(luò)層。在完成數(shù)據(jù)傳輸后,,鏈路進(jìn)入終止階段,,并返回死亡。PPP鏈路建立簡(jiǎn)要流程如圖3所示,。

?


  PPP撥號(hào)程序移植成功后,,就可以利用腳本程序撥號(hào)上網(wǎng)了,下面是它的一個(gè)簡(jiǎn)單示例[3]
  /dev/ttyS0????????????     //指定設(shè)備端口號(hào)為ttyS0即串口0
  115200????????????????     //設(shè)置設(shè)備波特率
  connect "/usr/sbin/chat"?
????           ?     //向無(wú)線模塊發(fā)送命令并提供登陸信息
  /usr/sbin/pppd??????? ???   //調(diào)用pppd撥號(hào)程序
  AT+CGDCONT=1,"IP","cmnet"
????  ?????????????????????   //設(shè)置APN:cmnet
  ATD*99***1#????? ?????   //撥號(hào)*99***1#
2.2.3? 嵌入式GIS繪圖引擎的設(shè)計(jì)
  地圖顯示是GIS系統(tǒng)最基本的一個(gè)功能,實(shí)現(xiàn)的關(guān)鍵是了解GUI提供的接口,從地圖文件中取得圖層相關(guān)數(shù)據(jù),然后用圖形工具顯示出來(lái),。在本設(shè)計(jì)中,,利用Microwindows提供的Nano-X API實(shí)現(xiàn)。
  Nano-X使用Xlib類型的窗口,,繪圖時(shí)使用窗口的標(biāo)識(shí)值,,它采用客戶/服務(wù)器模式,客戶端向服務(wù)器端發(fā)送繪圖請(qǐng)求,,服務(wù)器端調(diào)用圖形庫(kù)對(duì)應(yīng)函數(shù)實(shí)現(xiàn)最終的繪制命令,。服務(wù)器端為各種類型的繪圖元素分配資源,以后所有的繪圖操作都在服務(wù)器端完成,。所以在運(yùn)行客戶應(yīng)用程序前必須先啟動(dòng)服務(wù)器進(jìn)程N(yùn)ano-X,。Nano-X的服務(wù)模式如圖4所示。

?


  下面是繪圖程序的框架,,API的入口點(diǎn)是標(biāo)準(zhǔn)C語(yǔ)言函數(shù)Main( ):
  Main(…) ???????????????????????????????? //程序入口
  {
  GrOpen();???????         ????????? //與服務(wù)器端建立連接
  gid=GrNewGC();?????????           //創(chuàng)建圖形上下文
  wid=GrNewWindowEx(…); ??????       ? //創(chuàng)建窗口
??? GrSelectEvents(); ???????????      ? //選擇要處理的事件
  GrMapWindow(wid);????????????????????????? //顯示窗口
  GrMainLoop(NxEventHandler);??????????????? //捕獲事件
  }
2.2.4? 報(bào)警及數(shù)據(jù)通信模塊的設(shè)計(jì)
  報(bào)警及數(shù)據(jù)通信程序采用TCP套接字的客戶/服務(wù)器模式實(shí)現(xiàn),,客戶和服務(wù)器分別對(duì)應(yīng)便攜終端和監(jiān)控中心,其基本流程如下:運(yùn)行客戶端程序,,讀取GPS數(shù)據(jù)信息并存儲(chǔ)于本地緩存器,,通過(guò)GPRS無(wú)線鏈路與具有獨(dú)立公網(wǎng)IP的監(jiān)控中心建立SOCKET連接,實(shí)現(xiàn)數(shù)據(jù)的無(wú)線傳輸,。
3 監(jiān)控平臺(tái)設(shè)計(jì)
  作為個(gè)人GIS助理系統(tǒng)的重要組成部分,,監(jiān)控平臺(tái)應(yīng)能夠?qū)崟r(shí)接收便攜式終端用戶所發(fā)送的位置信息,完成接收?qǐng)?bào)警,、發(fā)送指令等功能,。在硬件方面需要有一臺(tái)具有公網(wǎng)獨(dú)立IP的X86體系結(jié)構(gòu)的計(jì)算機(jī),,運(yùn)行Windows操作系統(tǒng),,在軟件結(jié)構(gòu)上主要分為GPS數(shù)據(jù)接收及解析、GIS功能模塊,、位置信息顯示以及報(bào)警系統(tǒng)四大模塊,,如圖5所示。

?


  工作原理如下:GPS數(shù)據(jù)通過(guò)無(wú)線鏈路傳送到監(jiān)控中心后,,首先經(jīng)過(guò)數(shù)據(jù)解析程序解析成人們?nèi)菀桌斫獾臅r(shí)間,、經(jīng)緯度、速度等信息,,同時(shí)調(diào)用GIS模塊,,繪制數(shù)字地圖,并將解析后的位置信息顯示在地圖上,。如果此時(shí)用戶發(fā)生意外并發(fā)出報(bào)警信號(hào),,監(jiān)控人員就可以及時(shí)準(zhǔn)確地掌握事故發(fā)生位置,快速提供幫助,。
  監(jiān)控平臺(tái)的軟件采用Delphi編寫,,所采用的數(shù)字地圖由中科大GPS實(shí)驗(yàn)室具有獨(dú)立知識(shí)產(chǎn)權(quán)的數(shù)字地圖生產(chǎn)平臺(tái)制作,。圖6是監(jiān)控平臺(tái)軟件的截面圖。

?


  本文介紹的個(gè)人GIS助理系統(tǒng)在中科大校園的測(cè)試中取得了良好的效果,,它利用GPRS網(wǎng)絡(luò)作為網(wǎng)絡(luò)傳輸途徑,,充分發(fā)揮通用分組無(wú)線業(yè)務(wù)傳輸速率高、系統(tǒng)延時(shí)小的特點(diǎn),,但該系統(tǒng)也受到了移動(dòng)通信信號(hào)強(qiáng)弱的限制,,在實(shí)際測(cè)試中,如果遇到信號(hào)盲區(qū),,數(shù)據(jù)傳輸就會(huì)延誤,,使得監(jiān)控平臺(tái)端的數(shù)字地圖上信息顯示發(fā)生滯后。
  另外,,便攜式終端采用了ARM嵌入式系統(tǒng),,它具有強(qiáng)大的運(yùn)算能力以及良好的可移植性,用戶可方便地加入自己的應(yīng)用以及后續(xù)開發(fā)工作,,為系統(tǒng)功能的進(jìn)一步完善提供了途徑,。


參考文獻(xiàn)
[1]?歷容衛(wèi).GPRS技術(shù)與嵌入式系統(tǒng)應(yīng)用[J].江蘇技術(shù)師范學(xué)院學(xué)報(bào),2003,,9(4).
[2]?羅亮,,彭容修.GPRS在嵌入式手持終端上的實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù),2004,,(4).
[3]?TANZILLI S. PPP over GPRS link [EB/OL]. http://www.acmesystems.it/?id=13,,2007-02.

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,,并不代表本網(wǎng)站贊同其觀點(diǎn),。轉(zhuǎn)載的所有的文章、圖片,、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有,。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無(wú)法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容,、版權(quán)和其它問(wèn)題,,請(qǐng)及時(shí)通過(guò)電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,,避免給雙方造成不必要的經(jīng)濟(jì)損失,。聯(lián)系電話:010-82306118;郵箱:[email protected],。