新聞中心

        EEPW首頁 > EDA/PCB > 設計應用 > 基于FPGA的Kalman濾波器實現研究

        基于FPGA的Kalman濾波器實現研究

        作者: 時間:2012-04-25 來源:網絡 收藏

        摘要:卡爾曼()濾波計算精度和速度是工程應用中是否成功的決定性條件,為進一步提高濾波算法在更復雜的環境下使用的性能,并能夠同時滿足實時性和精度的要求,采用現場可編程邏輯陣列()技術,設計了Kaiman濾波算法在上的實現方案,選擇了一種可以同時滿足精度和實時性的方案進行實現,對算法中的矩陣相乘、狀態機的應用以及資源分時復用等關鍵技術進行了設計。通過與Matlab及DSP的計算結果相對比,驗證了在內實現的優勢。
        關鍵詞:FPGA;Kalman;IP核;實時性

        Kalman濾波理論在20世紀60年代一經提出,便得到了軍事、控制、通信等領域的極廣泛的應用。它可以實現隨機干擾下的線性動態系統的最優估計,目前Kalman的實現方式主要有兩種,一是在PC機上實現,可以同時滿足計算精度和實時性的要求,但是PC機體積大,質量重,成本高;二是通過DSP等芯片來實現,用這種方式實現的Kalman濾波器雖然體積小,質量輕,但是因其指令順序執行的CPU架構,在系統復雜時無法滿足系統的實時性要求。隨著控制系統的復雜性的提高,系統的階次變大,如組合導航系統的濾波,其濾波的階次一般都要18階,如果對系統進一步細化建模或增加其復雜性,其濾波階次可以達到幾十階。因此,Kalman濾波器在工程應用中的實現遇到了系統體積、重量、成本和系統精度、速度等性能不能兼顧的問題。隨著現代電子技術的發展,FPGA具有系統結構和邏輯單元靈活、集成度高以及適用范圍寬等特點,可以很好地解決這個難題。因為FPGA采用的是硬件并行算法,能很好的解決速度和實時性的問題,并且其具有靈活的可配置特性和優良的抗干擾能力,使得FPGA構成的數字信號處理系統非常易于修改、測試及硬件升級。隨著FPGA技術的不斷成熟,其內嵌資源不斷豐富,硬核乘法器和塊RAM的數目不斷增長,使得FPGA實現復雜的數字信號處理算法變得更為簡單和快速。因此,本文對FPGA技術和Kalman濾波算法進行結合研究,探索Kalman濾波算法在FPGA中的實現方式并進行性能驗證,以對基于FPGA的Kalman濾波算法的工程實現提供參考。

        1 Kalman濾波算法理論
        Kalman濾波是在時域內以信號的一、二階統計特性已知為前提、以均方誤差極小為判據,能自動跟蹤信號統計性質的非平穩變化,具有遞歸性質的一種算法。它處理的對象是隨機系統,并能正確估計出有用信號。設離散系統差分方程如下:
        a.JPG
        則Kalman濾波方程組如下:
        狀態一步預測方程:
        b.JPG
        從式(1)~(6)可知,若利用傳統的處理器實現Kalman濾波算法,由于其指令執行的順序性,至少需要分為5步來實現,其中每一步還都需要進行至少1次的加法和乘法等運算,每次運算都要順序執行,其執行速度和效率很低;如果利用FPGA來進行Kalman濾波,根據其各步的邏輯關系,可以分為3步來實現,即第一步計算狀態一步預測值i.jpg和一步預測均方誤差Pk+1/k,第二步計算濾波增益Kk+1,第三步計算狀態最優估值j.jpg和估計均方誤差Pk+1/k+1。由此可知,利用FPGA技術可以實現Kalman濾波的并行計算,壓縮計算時間,提高解算速度。因此,對FPGA的Kalman濾波進行研究開發,可實現基于FPGA的快速Kalman濾波解算,滿足在對實時性要求更高的環境中使用。


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 宜宾县| 武强县| 潜山县| 南召县| 曲周县| 达拉特旗| 华宁县| 彭山县| 西华县| 冷水江市| 烟台市| 萝北县| 桐庐县| 平定县| 昌宁县| 文登市| 兴和县| 南宁市| 桓仁| 广宁县| 门源| 商都县| 内江市| 延安市| 龙南县| 龙里县| 定州市| 南汇区| 咸丰县| 当雄县| 定结县| 马公市| 祥云县| 盐源县| 扶风县| 防城港市| 宜丰县| 杭锦旗| 彩票| 牟定县| 尤溪县|