<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 汽車電子 > 設計應用 > 基于XPE的嵌入式車載系統(tǒng)研究與實現(xiàn)

          基于XPE的嵌入式車載系統(tǒng)研究與實現(xiàn)

          作者: 時間:2009-03-12 來源:網(wǎng)絡 收藏

          0引言

          本文引用地址:http://www.ex-cimer.com/article/197907.htm

          作為智能交通的主要組成部分,導航定位己成為最近的研究熱點[1]。隨著全球定位系統(tǒng)(GPS)從軍用轉為民用后,GPS技術應用于移動目標的監(jiān)控有著其它無法比擬的優(yōu)勢,所以采用GPS技術對各種車輛實施監(jiān)控、調度管理成為一個新的研究熱點。

          GPRS可以實現(xiàn)數(shù)據(jù)的實時交換,而且按照數(shù)據(jù)流量計費,特別適合應用在車輛衛(wèi)星定位系統(tǒng)這種頻繁的小流量數(shù)據(jù)傳輸?shù)膱龊?。因此,本系統(tǒng)采用GPRS作為電腦與服務器的通信方式。

          由于地圖匹配采用了復雜的算法,道路網(wǎng)絡的拓撲結構須采用數(shù)據(jù)庫方式,整個定位系統(tǒng)須采用高級語言編程實現(xiàn)?;谶@些特點該定位裝置采用單板工控電腦作為硬件平臺,操作系統(tǒng)采用Windows XP Embedded with SP2 。相對于Linux, Windows CE等其他操作系統(tǒng),選擇XP的好處是,用戶方的現(xiàn)有程序不必重新編程,而研制方的編程人員對基于Windows的編程己經(jīng)比較熟悉,不必學習新的操作系統(tǒng)下如何編程。

          隨著網(wǎng)絡技術的發(fā)展和人們對車輛定位的需求,急需利用Internet實現(xiàn)對指定的車輛查詢定位,使用戶可以直接通過訪問車輛導航定位公司的網(wǎng)站即可以文本和圖像的形式顯示給用戶。Web GIS是在Internet環(huán)境下運行的GIS,就是利用互聯(lián)網(wǎng)技術和WWW技術來完善和擴展傳統(tǒng)的GIS功能的一門新技術。因此,如何利用Web GIS技術結合GPS技術實現(xiàn)在Internet環(huán)境下車輛定位查詢是一個很值得探討的問題并具有現(xiàn)實意義。

          1系統(tǒng)的總體架構

          1.1系統(tǒng)的組成

          在車輛定位中該應用系統(tǒng)主要包括如下4部分:車載GPS移動終端, GPRS通信網(wǎng)絡、車輛服務信息中心和用戶,如圖1所示。

          圖 1系統(tǒng)的組成圖

          1. 2工作原理

          其中車載GPS移動終端可以為服務中心提供移動目標的最新定位數(shù)據(jù)、車輛運行速度和方向等信息,并將該信息通過無線通信網(wǎng)絡GPRS傳到車輛服務信息中心,車輛服務信息中心通過無線通信網(wǎng)絡GPRS與車載GPS移動單元通信,通過Internet與客戶通話。當客戶端提交車輛定位請求后,車輛服務信息中心接收該請求并通過無線通信網(wǎng)絡GPRS向車載移動單元發(fā)出定位指令,然后將該車輛的最新信息傳回車輛服務信息中心,服務信息中心接收新的車輛信息并在地圖上繪制,然后以文本和圖片組成的網(wǎng)頁傳回客戶端。

          2 車載電腦終端硬件平臺構建

          該車載電腦終端硬件平臺采用AAEON公司的GENE-8310開發(fā)板作為平臺,該開發(fā)板實際就是一個的電腦處理平臺。板載 Intel® Celeron® M 600MHz處理器,具有強勁的處理能力。具有良好的顯示支持,豐富的接口。對于客戶在低功耗控制下的優(yōu)秀處理能力等更高需求方面都是最好的選擇。特別是因為它基于Intel平臺,在普通電腦上開發(fā)的軟件可以不用修改就可以在該平臺運行。簡化了編程工作量。在該開發(fā)板的基礎上擴充GPS和GPRS模塊,構成車載電腦終端的硬件系統(tǒng)。

          3 車載操作系統(tǒng)的開發(fā)及構建[2]

          圖 2 嵌入式XP操作系統(tǒng)開發(fā)過程

          該車載電腦終端軟件平臺以Windows XP Embedded with SP2作為操作系統(tǒng)。Windows XP Embedded是桌面 Windows XP操作系統(tǒng)的組件化版本,它能夠快速開發(fā)出最為可靠的全功能連接設備。Windows XP Embedded采用與Windows XP Professional相同的二進制代碼,從而使得嵌入式開發(fā)人員能夠只選擇那些小覆蓋范圍嵌入式設備所需的豐富定制化特性。 該系統(tǒng)中我們選用了512M的CF卡作為車載操作系統(tǒng)和應用軟件的載體,操作系統(tǒng)控制在100M以內(nèi)。

          具體的嵌入式XP操作系統(tǒng)的開發(fā),大致可分為幾個步驟,如圖2所示。鑒于篇幅,在此就不作詳細介紹了。

          4 GPS數(shù)據(jù)接收及優(yōu)化處理

          GPS接收模塊采用飛鷹公司的TFAG30,車載GPS移動單元傳回的定位信息為 NMEA0813標準格式的數(shù)據(jù),其中$GPGGA(字頭標識符),hhmmss. ss(時間,時、分、秒),bbbb, bbbb(緯度,度度分分,分分分分),N(北緯,s指南緯),IIII ,IIII(經(jīng)度,度度度分分,分分分分),E(東經(jīng),w西經(jīng)),q (1表示定位模式GPS , 2表示DGPS),nn(衛(wèi)星數(shù)),P(水平位置定位精度因子),h, h(海平面的天線高),m.,g.g(橢球面上的天線高),m,xxx(為DGPS有效數(shù)據(jù)期),aaaa (DGPS基準站的編號),ss(校驗和), CR>回車LF>換行

          由于接收到的衛(wèi)星數(shù)據(jù)存在星歷誤差,電離層誤差,對流層誤差以及隨機噪聲等,為了提高定位的精度,需要對衛(wèi)星定位數(shù)據(jù)作差分算法的處理[4]。

          為了消除隨機噪聲和動態(tài)噪聲對定位結果的影響,在數(shù)據(jù)處理之前先要對定位數(shù)據(jù)進行濾波平滑。下面給出所采用的卡爾曼濾波方法的說明。

          (1)、動態(tài)方程

          式中,PRC為校正后的偽距;PRm為測量到的偽距;a為偽距的加權系數(shù);△r為未經(jīng)加權的距離校正值;CPR為基準站測量到的偽距校正值;CPw為基準站測量到的偽距率校正值;ti為測量偽距的時間;t0為校正時間的參考時間;k為其他誤差。

          經(jīng)過差分處理之后,數(shù)據(jù)定位精度可以保證在10m之內(nèi),滿足實際應用需求。

          5 GPRS無線鏈路的建立

          GPRS無線通信模塊采用西門子公司的MC35I ,GPRS無線通信鏈路的建立包括GPRS的附著和PDP上下文的激活兩個過程。具體過程描述如下:(1) 車載系統(tǒng)發(fā)送AT指令給GPRS無線通信模塊要求激活IP協(xié)議,指令中包含想要連接的APN接入點名稱,QOS等參數(shù)。(2)移動終端發(fā)送LCP數(shù)據(jù)幀與網(wǎng)絡進行設置和參數(shù)協(xié)商。參數(shù)協(xié)商結束后通過PAP協(xié)議確認用戶身份,并且保存用戶ID和密碼。(3)移動終端發(fā)送IPCP數(shù)據(jù)幀,請求動態(tài)分配IP地址,并SGSN發(fā)送激活PDP上下文請求。(4) SGSN請求DNS服務器對APN進行解析,得到APN對應的GGSN的IP地址。SGSN發(fā)送PDP上下文請求給被選定的GGSN , GGSN對用戶進行認證,通過后為用戶分配動態(tài)IP地址,然后向SGSN返回PDP上下文建立成功信息。(5) SGSN向移動終端發(fā)送激活PDP消息,并通過IPCP配置回應給移動終端動態(tài)分配的IP地址。

          6 WebGIS系統(tǒng)的設計與架構

          該WebGIS系統(tǒng)采用Microsoft Visual Studio. NET 2003+SQL Server 2000+MapX 構建。該系統(tǒng)的數(shù)據(jù)主要包括空間數(shù)據(jù)和屬性數(shù)據(jù)兩種,空間數(shù)據(jù)包括如下圖層:行政區(qū)劃、居民地、水系、公路網(wǎng)、政府、企業(yè)、賓館,并將上述圖層在Map X數(shù)據(jù)集配置文件Geoset Manager中配置,保存為rpdh. gst文件;屬性數(shù)據(jù)存儲在SQL Server 2000中,包括用戶管理表(用戶ID、用戶名稱、密碼、公司名稱)、車輛信息表(車輛ID、屬于用戶、車載SIM-ID、車輛備注信息)和接收信息表(車載SIM-ID ,經(jīng)度、緯度、速度、方向、時間等)。

          WebGIS系統(tǒng)架構主要由兩部分組成。包括客戶端和服務器端,客戶端只需用戶安裝有IE瀏覽器即可,其中客戶端的ZoomView組件實現(xiàn)視圖改變的腳本組成。服務器端主要包括網(wǎng)絡服務器和GIS WEB服務器兩部分組成,其中網(wǎng)絡服務器需要安裝微軟的Asp.Net,負責與客戶端的會話,GIS WEB服務器提供GIS的功能。

          網(wǎng)絡服務器和GIS WEB服務器兩者之間采用.NET Remoting技術實現(xiàn)遠程調用,由ActiveXMessenger組件實現(xiàn)網(wǎng)絡服務器與GIS WEB服務器之間的消息傳遞功能,ActiveXIntermediator為遠程處理對象,也是基于.NET Remoting技術的核心,其中ActiveXlntermediator運行在GIS WEB服務器上,在網(wǎng)絡服務器上運行它的代理對象。GIS WEB服務器在遠程調用中起到服務器的作用,提供ActiveX控件的功能;網(wǎng)絡服務器在遠程調用中起到客戶端的作用。其中GIS WEB服務WebGIS的實現(xiàn)采用.Net編程環(huán)境新添加的Remoting[5]技術,主要包括ActiveXBroker Group ,ActiveXBroker, ActiveXServer, ActiveX組件。其中ActiveXServer是ActiveX對象的容器,一個ActiveXServer包含一個ActiveX對象,ActiveX實現(xiàn)相應的ActiveX控件的功能,ActiveXBroker是實現(xiàn)服務器服務啟動時初始化一定數(shù)量的ActiveXServer對象,使每個ActiveXServer對象在獨立的線程內(nèi)運行,其中每個ActiveXServer對象需要運行在單線程單元中。

          7、系統(tǒng)功能及特點

          該系統(tǒng)設計完成后,主要具有以下功能:(1)車輛定位功能。(2)軌跡回放功能。(3)報警功能。(4)電子地圖的放大、縮小、漫游、查詢等功能。

          該系統(tǒng)相比于同類產(chǎn)品具有如下優(yōu)點(1)用戶操作方便,用戶只需能上Internet網(wǎng),然后點擊自己要查詢的車輛,該車輛就以網(wǎng)頁的方式傳到客戶端,并且可以實時掌握自己擁有車輛所在的位置。( 2)平臺獨立性,無論服務器/客戶機是何種機器,無論Web GIS服務器端使用何種GIS軟件,由于使用通用的Web瀏覽器,用戶就可以透明的訪問Web GIS數(shù)據(jù)。(3)使用.NET編程技術和通用wintel平臺,該技術具有面向對象,易于重用,為系統(tǒng)的實現(xiàn)和升級帶來了方便,便于系統(tǒng)擴展及二次開發(fā)。

          8 結束語

          應用WebGIS技術到車輛定位中來滿足了客戶通過Internet來查詢車輛的需求,為在Internet環(huán)境下實現(xiàn)車輛導航、調度奠定了基礎。該車載嵌入式平臺基于通用的wintel體系結構,便于車載系統(tǒng)的功能擴展及升級。具有一定的應用前景。

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


          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();