本站小編為你精心準備了飛機氣動力工程的程序化實施參考范文,愿這些范文能點燃您思維的火花,激發您的寫作靈感。歡迎深入閱讀并收藏。
1實現工程估算程序化處理的方案流程
計劃方案如圖1。圖1工程估算程序化處理方案的流程示意圖方案流程說明:第一步,建立整體方案的標準化庫,由于整個案實現的子程序和涉及的飛機氣動力參數很多,為了便于設計人員相互協作并且使程序調用參數方便,在方案實施開始階段要統一規定數據存儲方式、各全局變量符號的定義、功能函數的命名方式等。第二步,開始對所有的曲線圖表數字化,每條曲線存儲為二維數組,同一圖表的曲線統一存儲在一個結構變量名下,最后根據命名規則存儲為數據文件。第三步,編寫查圖所需參數的子函數,調用圖表數據文件并根據曲線形態編寫插值函數,然后存儲為標準的M文件;然后根據飛機氣動特性分類,根據參考公式和適用范圍,編寫每部分的子函數。第四步,對主程序的主要部分分別定義,做到計算狀態、參數輸入、計算方式的定義都通俗易懂,然后對程序各部分調試,驗證程序運行無誤并且沒有沖突。第五步,對結果輸出格式進行描述,調用曲線繪圖等功能。第六步,后期處理工作,主要是編寫可視化界面,方便結果的輸入和輸出,對飛機的氣動特性有更直觀的描述。
2實現過程
2.1圖表曲線的數據化處理由于工程估算需要查閱大量圖表,因此首先解決的是聯合get-data、Excel、Matlab軟件的功能實現圖表曲線的數據化過程:利用getdata軟件主要利用它的自動取點功能,Excel可以將取到的數據點進行單調排序,利用Matlab讀取數據并存儲統一格式。以飛機機翼零升阻力估算時的升力面修正因子的經驗曲線為例,它是馬赫數和機翼最大厚度線后掠角的函數,數據化建模的過程如下:
2.1.1把圖像保存為.BMP位圖文件,然后導入getdata軟件,利用getdata軟件定義好縱橫坐標,利用它的自動取點功能把每條曲線轉化成二維數組。得到的二維數組一定保證X坐標為單調函數(可以借助EXCEL的升序排列功能)。
2.1.2在Matlab中建立圖表數據的結構變量,例如:curve(M1,M2,M3,M4),假設M1,M2,M3,M4分別表示M1=0.25,M2=0.6,M3=0.8,M4=0.9的四條曲線,通過把取點得到的四個二維數組分別賦值給curve.M1,curve.M2,curve.M3,curve.M4。
2.1.3利用Matlab的SAVE功能將結構變量存儲為數據文件,例如:savecurveXXX.matcurve(具體運用時可根據圖表編號來命名,方便查找)以便以后的程序直接調用取值。
2.2建立曲線取值的子函數建立圖表數據庫后,還要從數據庫中準確查找所對應的參數,才能達到精確取值的目的,根據2.1節建立的數據文件,如果給出最大厚度線后掠角Λt/c,max和馬赫數M,這就需要從curveXXX.mat文件中檢索出所對應的RLS值。由于原始圖表里面只有四條曲線,相對應只有四個二維數組,如果要查找任意馬赫數下的RLS,那么唯一的辦法就是插值,插值的具體方法可以用兩點線性插值,三點線性插值或者非線性插值,選用什么方法根據曲線形態來決定。如果這些都寫到主程序,那么會造成不易修改而且容易出錯,為避免程序臃腫,可以使用Matlab的特色功能,建立一個曲線取值的功能函數。這個功能函數(M文件)可以供任何子函數調用。
2.3創建分塊函數根據飛機氣動力工程估算主要內容,可以根據飛機的氣動特性分類建立分塊函數,如升力特性、阻力特性、俯仰力矩特性等;也可以根據飛機部件來定義,例如機翼氣動特性、機身氣動特性、尾身組合體氣動特性等。分塊函數是互不干擾,可以互相調用彼此結果。以升力特性計算為例,其創建過程為:
2.3.1定義函數function[Cy0,Cymax,Cay,α0,…]=ShengLiTeXing(bA,l,S,…),其中括號里面Cy0,Cymax,Cay,α0表示函數返回值,也就是要計算的氣動導數方面輸出,可根據需要進行添加;小括號里面bA,l,S表示變量名,也就是需要輸入的飛機總體參數。
2.3.2編寫各氣動導數的計算過程,例如需要查圖1的曲線數值,那么可以直接調用子函數RLS=curve(M,Λt/c,max)讀取數據。
2.3.3將計算的各參數結果統一存在規定格式的文件中,方便其它函數調用數據。
2.4主程序運行示意圖前面建立很多各部分子函數和分塊函數,其主要目的是簡化主程序行數,方便輸入,方便讀寫,復雜部分均寫成了函數,讓沒有使用過Matlab的設計人員也能夠嫻熟調用函數并進行計算,以圖2為例,主程序僅包含四個部分內容:
2.4.1標號1部分的主要功能是進行計算空間的內存清理和所有計算方法的來源(參考資料),這部分不需要改動,僅供分析計算結果時參考;
2.4.2標號2部分是計算狀態輸入和說明,包含飛行馬赫數、飛行高度、大氣運動粘性系數等,和所要計算的飛機飛行狀態密切相關;
2.4.3標號3部分主要是飛機主要幾何參數輸入,例如機翼形狀參數,機身外形參數以及尾翼外形參數等,此處要求參數盡可能簡化,中間參數不需要輸入,具體輸入參數需求根據計算內容而定。3.4.4標號4部分為主要的計算內容,根據需要計算的氣動導數來調用相關函數,也可以在此對所需要的氣動導數進行輸出。例如,需要查看全機的Cαy,那么僅需要輸入Cαy即可在Matlab主程序的運行狀態欄即可看到Cαy的輸出結果。
3界面可視化
根據前三節實現了氣動力工程估算的自動處理的整個過程,并且程序也能夠被不熟悉Matlab的人員操作使用,但存在參數輸入不方便,容易對總體參數的輸入產生錯誤,并且輸出結果不便查找(需要對照符號表查找計算的導數符號)數值,輸出不直觀等問題。因而,需要對整個方案進行后期的可視化封裝,這不僅使界面明了清晰,并且還可以對計算結果進行特定處理,更加直觀體現飛機的氣動特性。
3.1參數輸入功能:建立參數輸入對話界面,通過中文文字說明,參數輸入過程將不再需要和符號一一對應,這不僅減小了人為的輸入錯誤,也提高了效率。
3.2計算與數據輸出:參數輸入完成以后,即可點擊開始計算,默認狀態下時將把可能計算的所有氣動導數完全計算,實際編寫程序時可加入對特定的導數進行計算。計算完成后可以將計算結果按已設定好的數據格式進行輸出。
4結束語
飛機氣動力工程估算是飛機氣動布局設計的一項重要工作,它的發展關系飛機氣動布局設計的時間和成本。文章通過Matlab軟件,提供了一種飛機氣動力工程估算程序化自動處理方法,對存在的主要技術問題提供了解決的辦法。這種工程估算程序化自動處理方法在XXX飛機氣動力工程估算的過程中實現部分應用,體現出了高效、快捷的特點,并且計算結果的重復性精度很高。不足之處是功能還不是很強大。參考國內外同行在這方面的經驗,基于文章基礎,可以在后續工作將逐步加入結果分析、參數優化設計等功能,為設計人員提供一個較為完善的計算處理軟件。
作者:陳春鵬楊康智王莉萍單位:中航通飛研究院