基于FPGA的慣性導航系統設計
慣性導航系統
慣性導航系統(INS,Inertial Navigation System)也稱作慣性參考系統,是一種不依賴于外部信息、也不向外部輻射能量(如無線電導航那樣)的自主式導航系統。其工作環境不僅包括空中、地面,還可以在水下。慣性導航的基本工作原理是以牛頓力學定律為基礎,通過測量載體在慣性參考系的加速度,將它對時間進行積分,且把它變換到導航坐標系中,就能夠得到在導航坐標系中的速度、偏航角和位置等信息。
慣性導航系統屬于推算導航方式,即從一已知點的位置根據連續測得的運動體航向角和速度推算出其下一點的位置,因而可連續測出運動體的當前位置。慣性導航系統中的陀螺儀用來形成一個導航坐標系,使加速度計的測量軸穩定在該坐標系中,并給出航向和姿態角;加速度計用來測量運動體的加速度,經過對時間的一次積分得到速度,速度再經過對時間的一次積分即可得到位移。
現代比較常見的幾種導航技術,包括天文導航、慣性導航、衛星導航、無線電導航等等,其中,只有慣性導航是自主的,既不向外界輻射東西,也不用看天空中的恒星或接收外部的信號,它的隱蔽性是最好的。
慣性導航,并不像大家所認為的那樣“不靠譜”,像國家的很多戰略、戰術武器,再如洲際飛行的民航飛機等,都必須依賴慣性導航系統或者慣導系統和其他類型的導航系統的組合。它的造價也比較昂貴,像一臺導航級(即1小時誤差1海里)的慣導系統,至少要幾十萬,而這種精度的導航系統已足夠配備在波音747這樣的飛機上了?,F在,隨著mems(微電子機械系統)慣性器件技術的進步,商業級、消費品級的慣性導航才逐漸走進尋常百姓家 。
優點
慣性導航系統有如下優點:
1、由于它是不依賴于任何外部信息,也不向外部輻射能量的自主式系統,故隱蔽性好,也不受外界電磁干擾的影響;
2、可全天候、全時間地工作于空中、地球表面乃至水下;
3、能提供位置、速度、航向和姿態角數據,所產生的導航信息連續性好而且噪聲低;
4、數據更新率高、短期精度和穩定性好。
缺點
其缺點是:
1、由于導航信息經過積分而產生,定位誤差隨時間而增大,長期精度差;
2、每次使用之前需要較長的初始對準時間;
3、設備的價格較昂貴;
4、不能給出時間信息。
但慣導有固定的漂移率,這樣會造成物體運動的誤差,因此射程遠的武器通常會采用指令、GPS等對慣導進行定時修正,以獲取持續準確的位置參數。慣導系統目前已經發展出撓性慣導、光纖慣導、激光慣導、微固態慣性儀表等多種方式。陀螺儀由傳統的繞線陀螺發展到靜電陀螺、激光陀螺、光纖陀螺、微機械陀螺等。激光陀螺測量動態范圍寬,線性度好,性能穩定,具有良好的溫度穩定性和重復性,在高精度的應用領域中一直占據著主導位置。由于科技進步,成本較低的光纖陀螺(FOG)和微機械陀螺(MEMS)精度越來越高,是未來陀螺技術發展的方向。
基于FPGA的慣性導航系統設計
可編程門陣列FPGA 比專用集成電路ASIC 縮短了開發周期“3,基于FPGA開發的慣導處理系統可以對不同廠家的GPS裝置進行數據通信與處理。當前慣性導航系統的實現方案有兩類:一類是以單片機或ARM 處理器來進行慣導數據的采集,然后結合DSP來進行數據的處理;另一類方法是采用FPGA作為系統的外圍設備擴展部分,用DSP來進行導算。這兩種方法結構復雜,并且難于維護。隨著FPGA技術的發展,現在完全可以采用單獨的一片FPGA來實現系統的功能的。
該系統的硬件部分采用FPGA 為核心進行設計,利用3只正交排列的加速度計和3 只正交排列的陀螺儀構成慣導單元作為系統的輸人信號53,FPGA 模塊結構圖如圖1所示。
?。?)電源模塊:本系統采用單6 V電源供電。通過電源變換芯片產生系統需要的5 V.3.3 V和1.2 V電源。由于地是參考0電位,所有電壓都是由參考地得出的,地的標準要一致,故各種地應短接在一起。如果把模擬地和因此,電源模數字地大面積直接相連,會導致互相千擾。塊中的模擬地和數字地通過0 2電阻相連,或小數字部分和模擬部分的相互干擾的。
?。?)存儲模塊:硬件電路中增加了- -塊SDram 用于運行系統的實時程序。SDram 與FPGA 的接口部分在al-tera的SOPCBuilder軟件中進行設計,由于本文采用的SDRAM 在SOPCBuilder 中可以找到SDram 控制器的IP,故該部分只需指定相應的IP 就可以。在PCB 布線時要注意時鐘線要包地,地要盡量完整,數據線與控制線長度差距不要太大。
?。?)時鐘模塊:時鐘的產生由有源晶振產生50 MHZ的時鐘信號經過單輸入4輸出的時鐘緩沖器來產生不同的時鐘,時鐘信號已經在系統板上連接到FPGA 的全局時鐘引腳。FPGA完成多種時鐘信號的產生。只需要通過修改Quartus2 下時鐘模塊即可完成FPGA 時鐘頻率的選擇,以滿足系統的使用。
?。?)JTAG 仿真調試接口:JTAG引腳定義:TCK 為測試時鐘輸入;TDI 為測試數據輸人,數據通過TDI輸人TAG 口;TDO為測試數據輸出,數據通過TDO從JTAG口輸出; TMS 為測試模式選擇,TMS用來設置JTAG 口處于某種特定的測試模式。進行電路設計時,需要將TDI和TDO信號通過一個1k2的電阻拉高,同時將TCK信號采用1k2的電阻拉低。
?。?)串口部分:提供1~4 個串口可供用戶自由配制。串口模塊可供系統的擴展使用,根據不同的需求可以選接GPS組成組合導航系統。
?。?)配置模塊:FPGA配骨芯片采用大容量在線可編程芯片,EPCS16(容量為16 Mb),可方便靈活地完成編程操作。
?。?)數據采集模塊:采集模塊主要負責采集3只加速度計,3陀螺的信號。陀螺儀和加速度計采取3軸正交放置,其中加速度計選取的是PWM脈沖輸出的,陀螺儀采用的是SPI輸出。這樣就免去了A/D轉換的電路,簡化了系統的結構。
?。?) PCB板模塊:采用altiumdesigner6.0進行開發設計5。本方案設計采用8層電路板進行設計。為了減少層間干擾,必須合理設置板層結構。信號層和電源層交錯布置,本電路板的設置方式為頂層信號,GND層,信號1層,3.3 V.1.2 V混合層,DGND層。信號2層,DGND層,底層信號層。
2、慣性器件的參數的獲取
采用quartus2作為系統的軟件開發環境。對于加速度的獲取,利用altera提供的計數器核來獲取加速度的信號。計數器模塊的結構如圖2所示。
將PWM脈沖信號接到LPM 計數器模塊的時鐘使能端。同時將PWM信號輸入至異步清零端。將計數器的輸出信號作為PIO接口的輸入信號,在NIOS2 開發環境下編程獲得計數器的值。然后再根據加速度計手冊中給出的相關公式就可以計算得出具體加速度的數值。獲取計數器的數值的C程序如下:
陀螺信號的輸出是SPI格式,系統采用一個SPI 主機帶3 個從機的方式連接陀螺儀和FPGA模塊,其中SPI 主機與從機的連接方式如圖3 所示的。
本系統采用NIOS2 自帶的SPI接口的C程序來得到陀螺儀的輸出信號。與系統通信的C 函數如下:
其中,base是系統確定的從機地址,slave 是從機選擇信號,write_length 是寫數據長度,write_data 寫數據地址,readlength讀數據長度,read_data 讀數據地址,flags標志位。該函數主要負責系統從加速度計和陀螺儀中讀取數據信號。讀出的數值按照陀螺儀手冊上給出的值進行轉換就可以得到陀螺信號的實際值。
3、實驗驗證
表1為MIMU在幾種靜止姿態時,X.Y.Z軸加速度計實際測試數據與理論數據的比較以及數值誤差。
其誤差產生原因主要是由于加速度計存在一定的安裝誤差,所以與理論方向存在一定偏差,而且加速度計輸出信號受到系統電路噪聲等干擾,再加上受加速度計輸出精度的限制,從而造成該MIMU的系統誤差。若使系統更合理,就要求進一步優化電路,避免或減少電路噪聲等F擾,并要優化系統信號處理算法,測試經驗值,對誤差進行補償。
4、結束語
基于FPGA微小型慣性測量系統具有靈活性高、設計周期短、風險低的特點,無論在軍事還是在民用領域都有著廣闊的應用前景。本文根據慣性導航系統的要求,研究了自行設計的基于FPGA的慣性測量組合的數據采集與處理,完成了系統的硬件、軟件設計聯調,并對部分結果進行了誤差分析,結果表明系統設計合理可靠。
非常好我支持^.^
(227) 99.1%
不好我反對
(2) 0.90000000000001%
相關閱讀:
- [電子說] fpga的開發流程有哪些步驟?fpga和嵌入式系統的區別在哪里? 2023-10-24
- [電子說] 如何創建FPGA控制的機器人手臂? 2023-10-24
- [電子說] 如何創建FPGA控制的機器人手臂 2023-10-24
- [電子說] 用VHDL語言創建一個8位算術邏輯單元(ALU) 2023-10-24
- [電子說] 您的存儲器堆疊了嗎?—賽靈思推出16GB HBM FPGA 2023-10-24
- [電子說] 淺析FPGA設計的安全性 2023-10-24
- [PCB設計] PCB板第一次上電會發生什么事情? 2023-10-24
- [電子說] 基于FPGA技術HIFI音頻播放器方案 2023-10-23
( 發表人:陳翠 )