作者:Francisco Alarcón Romero - FADA-CATEC “使用NI PXI,我們能夠在實時狀態下以低延時完成復雜的無人機模型仿真,并完美地模擬了航空設備界面。” - Francisco Alarcón Romero, FADA-CATEC 挑戰: 在目標硬件上搭建一個系統,在實時控制仿真環境中,來驗證無人飛機(UAV)的制導、導航和控制(GNC)算法。 解決方案: 在開發的早期階段,開發一個硬件在環(HIL)測試環境來測試無人機GNC解決方案。 HIL測試環境是軟件仿真和飛機實驗的一個中間步驟,對于無人機GNC軟件的開發過程非常關鍵。通過HIL環境,工程師可以在一個可控的仿真環境中對無人機軟件進行測試。同時,它也能加速設計,縮短開發周期。 通過HIL環境,工程師可以發覺軟件仿真(主要是同步和定時)中沒有出現的問題,從而避免現場試驗的故障,并增加無人機團隊的安全性。 我們開發了一個通用的HIL平臺來設計驗證控制和導航算法。這個HIL測試環境完全集成在一個基于模型的設計開發周期中(見圖1)。 圖1 : HWIL測試環境示意圖 基于模型的開發 首先我們設計編改了無人機平臺,將其用于仿真,并將控制器和算法部署至硬件中。 我們根據基于模型的設計理念來完成這個任務。對于系統設計和仿真來說這是一個可靠方便的方法。使用代碼自動生成工具可以使我們減少設計時間,輕松完成對于測試架構的重復利用,以及快速系統原型,從而形成一個連續的確認和驗證過程。 構架的目的包括:在不同的硬件平臺上不用任何改變即可對模型重復利用;對設計測試套件模型進行重復使用以驗證目標系統;將透明模型完全集成到目標硬件中,并創建一個系統的,快速的流程,將自動生成的代碼集成到目標硬件,從而使得控制工程師無需軟件工程師的參與,即可以快速測試模型(見圖2)。對于這個項目,我們使用Simulink®公司的MathWorks軟件(我們還使用了Esterel Technologies公司的SCADE套件)開發了模型任務,并使用MathWorks和Real-Time Workshop®公司的軟件實現自動編碼。我們需要兩次不同的編改:在無人機中進行測試及執行的算法是由ANSI C代碼編寫的,仿真無人機動態行為的數學模型將通過LabVIEW仿真接口工具包轉換至NI LabVIEW軟件動態庫中。 圖2: 基于模型的開發流程 在最終的系統中,我們使用多個LabVIEW I/O模塊來仿真一些無人機航空電子和邏輯傳感器以及激勵器接口。 LabVIEW Real-Time PXI PXI 是一個基于PC的平臺,可用于測試,測量和控制,能夠在不同的接口和總線中提供高帶寬和超低的執行延時。在這個案例中,PXI需要在一個復雜的無人機模型中運行,該模型會在實時中以動態庫的形式被執行。 在系統中使用PXI模塊能讓我們使用無人機上完全一樣的接口進行HIL仿真。所以,我們會以現場實驗完全相同的配置驗證GNC算法處理單元。這對于一些使用純仿真不足以捕捉所有硬件相關問題(例如信號噪音,錯誤和同步問題)的系統來說是十分重要的。 GPS仿真器 通過Spirent GSS8000 GPS仿真器,我們能夠仿真并生成用戶選擇的GNSS星座衛星所發出的相同的射頻信號。這些信號會以飛行實驗相同的方式傳送到無人機上真實的GPS傳感器,并能仿真慣性傳感器(加速度計和回轉儀)。我們可以指定不同的情況,降級信號,指定天線模式及模擬IMU傳感器錯誤。 板載處理單元 我們在實時操作系統(QNX或VxWorks)中運行一個PC/104單元,操作系統中包含了算法和控制策略,用于測試自動代碼生成工具和集成架構創建的代碼的完成。我們在現場實驗的真實無人機中也使用了相同的單元。 可視化 我們可以使用Simulink External Mode軟件對無人機進行調試。通過這個軟件,我們可以監測用戶需要實時知曉的信號值。此外我們可以改變嵌入式處理單元中所執行算法的參數。在操作中所使用的界面,與控制工程師在仿真設計算法時所使用的界面完全一樣。由此,整個測試環境完全透明,而且能以同現場測試一樣的方式進行HIL測試,從而大幅減少開發時間。 結果 對比飛行遙測和使用同樣的GNC算法的HIL仿真,可以表明HIL的精準性和與真實測試結果的相似性。 我們在一架改裝過的無線電控制的直升飛機上集成了幾個傳感器(加速度計,回轉儀,磁力計,GPS和一個高度計)和一個處理單元(見圖3),將其轉變成一架無人機,進行飛行測試。 圖3:實驗中使用的基于CB5000 RC直升機改裝而成的無人機 無人機在沒有過沖或任何一個永久誤差的情況下,達到了水平面要求的參考值(見圖4和圖5)。HIL仿真和真實的飛行測試結果極其一致。 圖4:北方位置對比結果 圖5: 西方位置對比結果 結論 HIL環境非常適用于測試包含真實硬件的整個系統。使用NI PXI,我們在實時狀態下以低延時仿真了一個復雜的無人機模型,并完美模擬了航空設備界面。 這個環境能檢測出軟件仿真中無法顯示的錯誤,從而避免現場實驗意外的發生。因為控制工程師在設計,開發和驗證過程中也會使用相同的可視化和調試工具,由此可以快速重復循環,減少開發時間。 |