国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于FPGA的GPS+GSM雙重車載定位系統(tǒng)設(shè)計

2011-06-30 01:09:38趙鵬倫,沈昱明
現(xiàn)代電子技術(shù) 2011年9期

趙鵬倫,沈昱明

摘 要:為了克服一般車載導(dǎo)航系統(tǒng)定位不連貫的缺陷,利用Nios Ⅱ軟核處理器配置靈活、擴展性強等特點,結(jié)合GPS和GSM模塊,設(shè)計出了一種基于SoPC技術(shù)的雙重定位系統(tǒng)。該設(shè)計利用SoPC Builder開發(fā)工具將Nios Ⅱ處理器、存儲器和接口等組件及μC/OS-Ⅱ操作系統(tǒng)快速地嵌入到FPGA中,用單個芯片完成了人機交互模塊、控制模塊和通信模塊等功能,較一般的GPS導(dǎo)航設(shè)備更能實現(xiàn)較高精度的實時連續(xù)系統(tǒng)定位,且該設(shè)計在不改變硬件的基礎(chǔ)上可方便升級、擴展更多功能。

關(guān)鍵詞:FPGA; GPS; Nios Ⅱ; μC/OS-Ⅱ

中圖分類號:TN92-34

文獻標識碼:A

文章編號:1004-373X(2011)09-0193-04

Design of FPGA-based GPS+GSM Dual-positioning System for Vehicles

ZHAO Peng-lun,SHEN Yu-ming

(University of Shanghai for Science and Technology,Shanghai 200093,China)

Abstract: In order to overcome the flaw of incoherent localization of common vehicle-mounted guided systems,the characteristics of Nios Ⅱ soft nuclear processor nimble in disposition and strong in expansibility are utilized to design a SoPC-based dual-positioning system with GPS and GSM modules. The μC/OS-Ⅱ operating system and Nios Ⅱ processor,memory and interface assembly are embedded quickly into FPGA by means of SoPC Builder development kit. The functions of man-machine interaction module,control module and connection module are implemented by the aid of individual chip. The general GPS navigation aid can realize the high-accurate real-time continual localization. This design is easy to upgrade and expand hardware′s foundation without changing the hardware.

Keywords: FPGA; GPS; Nios Ⅱ; μC/OS-Ⅱ

0 引 言

目前在車輛GPS導(dǎo)航系統(tǒng)中,主要是直接利用無差分、無SA誤差的GPS定位數(shù)據(jù)來實現(xiàn)車輛在地圖上的定位??紤]到定位信號存在一定的誤差,5%概率下誤差會超過15 m,同時城市中建筑物、橋梁以及樹木等還對GPS信號形成遮擋,甚至?xí)?dǎo)致信號失效,從而進一步影響定位精度。而車在行進過程中進行導(dǎo)航時,尤其是在路口以及立交橋等特殊地點的導(dǎo)航時,系統(tǒng)往往需要更為精確的定位。為此,本設(shè)計充分利用了FPGA強大的邏輯控制功能和Nios Ⅱ處理器的多可配置標準外設(shè)接口功能,結(jié)合GPS和GSM功能模塊,設(shè)計了一款雙重定位系統(tǒng)。通常情況下用GPS進行定位,在特殊情況下可以開通GSM網(wǎng)絡(luò)定位功能實現(xiàn)雙定位,再通過GSM網(wǎng)絡(luò)將定位信息、時間和終端特殊信息傳送到監(jiān)控中心,或者接收監(jiān)控中心傳來的信息,完成定位和監(jiān)控等功能。

1 Nios Ⅱ軟核嵌入式處理器

Nios Ⅱ處理器是Altera公司的第二代用戶可配置的通用32位RISC軟核微處理器,是Altera公司特有的基于通用FPGA架構(gòu)的軟CPU內(nèi)核。Nios Ⅱ系列支持使用專用指令。專用指令是用戶增加的硬件模塊,它增加了算術(shù)邏輯單元(ALU)。用戶能為系統(tǒng)中使用的每個Nios Ⅱ處理器創(chuàng)建多達256個專用指令,這使得設(shè)計者能夠細致地調(diào)整系統(tǒng)硬件以滿足性能目標。專用指令邏輯和本身Nios Ⅱ指令相同,能夠從多達兩個源寄存器取值,可選擇將結(jié)果寫回目標寄存器。同時,Nios Ⅱ系列支持60多個外設(shè)選項,開發(fā)者能夠選擇合適的外設(shè),獲得最合適的處理器、外設(shè)和接口組合,而不必支付根本不使用的硅片功能。在FPGA中使用軟核處理器比硬核的優(yōu)勢在于,硬核實現(xiàn)沒有靈活性,通常無法使用最新的技術(shù)。隨著系統(tǒng)日益先進,基于標準處理器的方案會被淘汰,而基于Nios Ⅱ處理器的方案是基于HDL源碼構(gòu)建的,能夠修改以滿足新的系統(tǒng)需求,避免了被淘汰的命運。將處理器實現(xiàn)為HDL的IP核,開發(fā)者能夠完全定制CPU和外設(shè),獲得恰好滿足需求的處理器。

2 系統(tǒng)的硬件設(shè)計與實現(xiàn)

定位終端系統(tǒng)的硬件由一塊FPGA芯片和GPS模塊,GSM模塊,外部存儲SDRAM,F(xiàn)LASH,SRAM,LCD及控制模塊等組成,其結(jié)構(gòu)框圖如圖所示。FPGA芯片主要實現(xiàn)Nios Ⅱ軟核處理器、片上存儲器和各種接口驅(qū)動等功能,其包括Nios Ⅱ系統(tǒng)和外設(shè)兩部分。Nios Ⅱ系統(tǒng)包括Nios Ⅱ處理器、存儲器、定時器、串行接口、并行接口和連接各個組件的Avalon交換結(jié)構(gòu)總線。其中GPS_UART和GSM_UART分別實現(xiàn)與GPS和GSM模塊的串行通信,LCD控制器實現(xiàn)與人機交互模塊的連接。

圖1 車載導(dǎo)航系統(tǒng)的硬件系統(tǒng)結(jié)構(gòu)圖

2.1 GPS和GSM模塊

對于GPS模塊,采用Zarlink公司的GP2015,它的主要任務(wù)是對接收到的GPS信號進行外差式下變頻,內(nèi)部包括一個片內(nèi)頻率合成器、三級混頻器、自動增益控制電路及量化器。在其內(nèi)部使用鎖相環(huán)頻率合成器合成本地參考信號,然后和接收信號進行混頻。在該系統(tǒng)設(shè)計中,射頻前端GP2015需要兩個外部時鐘,一個是10 MHz的基準頻率,另一個是其內(nèi)部A/D的采樣時鐘,頻率為5.714 MHz;在GPS接收機的設(shè)計中,射頻前端與基帶處理模塊的時鐘相位保持一致或相位誤差比較小時,有助于提高接收機的定位精度??紤]到這一點,在本設(shè)計中FPGA和射頻前端共用一個時鐘源,給FPGA提供一個40 MHz的基準頻率,F(xiàn)PGA經(jīng)過內(nèi)部的鎖相環(huán)提供10 MHz和5.714 MHz的時鐘信號給射頻前端,保證了前端和基帶處理時鐘的同源。在GP2015內(nèi)部還集成了一個兩位A/D轉(zhuǎn)換器,模擬中頻輸入為4.309 MHz,輸出兩位的數(shù)字中頻信號,頻率為1.405 MHz。GSM模塊采用Siemens公司的TC35,該型號的GSM模塊工作在EGSM 900 MHz和GSM 1 800 MHz頻率波段,提供話音和數(shù)據(jù)傳輸?shù)臒o線連接,使用40引腳的零插力連接器作為控制數(shù)據(jù)、話音信號和電源線的應(yīng)用接口。其串口通信波特率在300 b/s~115 Kb/s之間可選,也可以在1 200 b/s~115 Kb/s之間的8種波特率間自動適配。

2.2 創(chuàng)建Quartus Ⅱ工程

創(chuàng)建項目工程名為GPS,芯片選型為EP2C20F484C7,并創(chuàng)建一個原理圖文件GPS.bdf。

2.3 啟動SoPC Builder并配置硬件系統(tǒng)

將生成的Nios Ⅱ標準型CPU應(yīng)用到系統(tǒng)中,debug level位設(shè)為1,系統(tǒng)復(fù)位映射到FLASH中,地址為0X0;異常映射到SRAM中,地址為0X20.然后添加自己定制的LCD控制模塊LCD_interface.v到Nios Ⅱ系統(tǒng)中。選擇RS 232串口作為系統(tǒng)與GPS接收模塊的接口,在系統(tǒng)構(gòu)架中添加UART組件,命名為GPS_UART,波特率設(shè)為9 600 b/s.并選擇DMA數(shù)據(jù)傳輸控制項。在組件中選擇Avalon Componenst/others/Interval Timer,在彈出的對話框中配置Initial Period項為1 ms,數(shù)據(jù)位寬為32。SDRAM作為存儲介質(zhì)保存數(shù)據(jù),data width設(shè)為16,address width中row為12,column為8。添加SRAM模塊用來存儲程序,memory sizes為4 MB,添加CFI-Flash模塊,用來存儲圖像及系統(tǒng)配置信息,在SoPC Builder左側(cè)的組件欄中選擇Avalon Components/Flash Memory,雙擊組件,選擇address width為22,data width為8;還需要添加EPCS Controller,具體方法是:選擇SoPC Builder左側(cè)組件欄中的Avalon Components/Memory/EPCS Serial Flash Controller,單擊Finish,完成組件添加。

添加Flash Controller模塊,用來控制FLASH工作。由于FLASH的數(shù)據(jù)總線是三態(tài)的,所以Nios Ⅱ CPU在與FLASH進行連接時需要添加Avalon總線三態(tài)橋控制模塊Tri_state_bridge,用來連接FLASH模塊;添加自己定制的GPS控制模塊。最后添加系統(tǒng)ID模塊。配置完成后選擇System Generation標簽,單擊Generate按鈕,啟動系統(tǒng)生成。

2.4 創(chuàng)建Quartus Ⅱ頂層模塊并集成Nios Ⅱ硬件系統(tǒng)

在GPS.bdf中添加生成的Nios Ⅱ系統(tǒng),配置外圍接口電路,生成完整的硬件系統(tǒng)構(gòu)架。如圖2所示。

選擇Start Analysis & Synthesis開始分析和綜合,完成后進行引腳分配,檢查無誤后執(zhí)行Start Assembler,對輸入設(shè)計進行匯編;將匯編好的編程配置文件GPS.sof通過JTAG方式下載到定位終端目標板上,即可完成硬件的所有綜合設(shè)計。

3 利用Nios Ⅱ IDE進行系統(tǒng)軟件設(shè)計

3.1 軟件總體構(gòu)成

定位系統(tǒng)軟件主要完成定位信息的采集和定位終端與監(jiān)控中心之間的數(shù)據(jù)通信,主要由主程序、顯示程序、GPS信息處理程序和GSM信息處理程序組成。主程序完成系統(tǒng)的初始化、自檢、人機交互操作和定位信息的處理等功能。

圖2 硬件系統(tǒng)構(gòu)架

3.2 GSM網(wǎng)絡(luò)定位及通信

目前,中國移動和中國聯(lián)通的移動通信網(wǎng)絡(luò)既是語音通信網(wǎng)絡(luò),又是一個能提供豐富數(shù)據(jù)業(yè)務(wù)的網(wǎng)絡(luò),只要當?shù)鼐W(wǎng)絡(luò)開通了位置服務(wù)功能,選用支持STK的SIM卡,即可通過STK命令得到位置信息。GSM網(wǎng)絡(luò)通信主要以短消息的方式進行,包括短消息的接收和發(fā)送。在短消息的收發(fā)程序設(shè)計中運用AT命令來實現(xiàn),其包括定位和監(jiān)控信息的編碼和解碼、通信模式設(shè)定和聯(lián)機測試、短消息的收發(fā)、收發(fā)數(shù)據(jù)的關(guān)鍵命令字的模式匹配。

3.3 GPS信號定位

在進行信號穩(wěn)定跟蹤以前,首先需要實現(xiàn)信號的捕獲來確定信號是否存在。通用接收機對載波信號的捕獲通常采用一維的串行相關(guān)搜索。在本文所描述的高動態(tài)情況下,載波多普勒頻偏最大為±14 kHz,若選擇頻率搜索步進為500 Hz,需要57次才能完成整個28 kHz帶寬的搜索,顯然非常耗費時間。而利用傅里葉變換將信號從時域變換到頻域后,通過把原來的時域串行搜索變?yōu)轭l域并行搜索,進行1次并行搜索就能等同于傳統(tǒng)方式下的57次串行搜索,大大節(jié)約了搜索時間。GPS定位流程如圖3所示。

3.4 GPS信號追蹤

完成信號捕獲后,需要對信號進行精確穩(wěn)定的跟蹤,保證后續(xù)導(dǎo)航電文的正確解調(diào)。載波跟蹤環(huán)由預(yù)檢測積分器、環(huán)路鑒別器和濾波器組成,圖4為GPS信號載波L1的跟蹤環(huán)路框圖。

3.5 Kalman濾波算法

目前,比較難處理的是GPS信號隨機誤差系統(tǒng)中的多路徑效應(yīng)。多路徑效應(yīng)誤差是人們關(guān)注最多的誤差,嚴重影響GPS測量精度。嚴重時還將引起信號失鎖。信號在到達接收機之前可能經(jīng)過多路反射、干涉,導(dǎo)致信號相位和光程產(chǎn)生很大變化。該類誤差較難處理,不能通過差分處理補償。針對上述現(xiàn)象本文提出一種在多路徑條件下的Kalman濾波算法,Kalman濾波器是一種線性最小方差濾波器,它不但考慮了信號與測量值的基本統(tǒng)計特性(一、二階統(tǒng)計特性),而且,由于采用了狀態(tài)空間的概念,用狀態(tài)方程描述系統(tǒng),信號作為狀態(tài),所以,它既能估計平穩(wěn)的標量信號隨機過程,又能估計非平穩(wěn)的矢量隨機過程。它能夠從一系列的不完全包含噪聲的測量中,估計動態(tài)系統(tǒng)的狀態(tài)。所以被廣泛用于自動導(dǎo)航和定位系統(tǒng)中。本設(shè)計利用Kalman Filter以及回歸直線的平滑化,有效改善了多路徑環(huán)境下的GPS測位結(jié)果的連續(xù)性和直線性,用在GPS/GSM導(dǎo)航系統(tǒng)中,使系統(tǒng)做到定位精準、連續(xù)、無盲區(qū)。圖5是Kalman濾波器的運算框圖。

圖3 GPS定位流程

圖4 GPS信號載波L1的跟蹤環(huán)路框圖

圖5 Kalman濾波器的運算框圖

3.6 系統(tǒng)整合實現(xiàn)

啟動Nios Ⅱ IDE工作環(huán)境,創(chuàng)建工程。

選擇主菜單File/New/Project,選擇Altera Nios Ⅱ/C/C++ Application,設(shè)置工程名為GPS,在SoPC Builder System選項中選擇System.ptf文件,該文件包含由SoPC Builder創(chuàng)建的Nios Ⅱ系統(tǒng)硬件信息,選擇Blank Project模板,將C軟件代碼導(dǎo)入工程中。實時操作系統(tǒng)μC/OS-Ⅱ是一個完整的、可移植、固化和裁剪的占先式實時多任務(wù)內(nèi)核。μC/OS-Ⅱ提供以下系統(tǒng)服務(wù):任務(wù)管理、事件標志、消息傳遞、內(nèi)存管理、信號量、時間管理。在應(yīng)用程序中,可以方便地利用這些調(diào)用實現(xiàn)復(fù)雜實時系統(tǒng)控制功能。在Nios Ⅱ IDE環(huán)境下,選擇Tools/Flash Programmer,在彈出的對話框中選定下載一個文件到FLASH存儲器中,單擊右側(cè)Browse按鈕,選擇已經(jīng)保存好的電子地圖文件(raw格式)。指定存儲器(Memory)為cfi_flash,偏移地址(Offset)為0X1000,單擊Program Flash下載。

僅有GPS導(dǎo)航的狀態(tài)下與在GPS+GSM共同導(dǎo)航的狀態(tài)下系統(tǒng)實現(xiàn)的最終效果對比如圖6,圖7所示。

圖6 僅有GPS導(dǎo)航的狀態(tài)下系統(tǒng)實現(xiàn)的最終效果對比

4 結(jié) 語

本設(shè)計在以FPGA為核心,利用Nios Ⅱ軟核的集成度高、配置靈活、擴展性強的特點,構(gòu)建了GPS+GSM的

雙重定位系統(tǒng),解決了傳統(tǒng)車載定位系統(tǒng)的不足,做到定位可靠,無盲區(qū)的效果。 μC/OS-Ⅱ?qū)崟r操作系統(tǒng)的嵌入,使系統(tǒng)的整體控制能力增強,為后期添加復(fù)雜的智能導(dǎo)航算法及擴展成為移動多媒體平臺奠定了基礎(chǔ)。

圖7 GPS+GSM共同導(dǎo)航狀態(tài)下系統(tǒng)實現(xiàn)的最終效果對比

參考文獻

[1]曲立艷,鄧志杰,徐登科,等.基于GSM GPS短消息的車載移動終端的設(shè)計與實現(xiàn)[J].微計算機信息,2006,22(1):267-269.

[2]李蘭英.Nios Ⅱ嵌入式軟核SoPC設(shè)計原理及應(yīng)用[M].北京:北京航空航天大學(xué)出版社,2006.

[3]范斐斐.GPS中頻信號處理及其FPGA實現(xiàn)[D].上海:上海交通大學(xué),2007.

[4]王彥.基于FPGA的工程設(shè)計與應(yīng)用[M].西安:西安電子科技大學(xué)出版社,2007.

[5]何秀鳳,楊光.擴展區(qū)間Kalman濾波器及其在GPS/INS組合導(dǎo)航中的應(yīng)用[J].測繪學(xué)報,2004,33(1):47-52.

[6]孟繁智.高動態(tài)GPS衛(wèi)星信號模擬源的關(guān)鍵技術(shù)研究[D].長沙:國防科學(xué)技術(shù)大學(xué),2004.

注:本文中所涉及到的圖表、注解、公式等內(nèi)容請以PDF格式閱讀原文

乳山市| 灵石县| 淮滨县| 乐山市| 滦南县| 武清区| 许昌县| 新巴尔虎左旗| 仁寿县| 库伦旗| 重庆市| 萝北县| 康保县| 无极县| 潢川县| 芦溪县| 高台县| 虞城县| 庄浪县| 丹巴县| 泽普县| 广灵县| 棋牌| 迁安市| 安多县| 吉木乃县| 闸北区| 聂拉木县| 宁都县| 黄大仙区| 天全县| 二连浩特市| 大港区| 舟曲县| 上杭县| 柯坪县| 光山县| 中西区| 仲巴县| 聂荣县| 南召县|