郭亞軍
(中國電子科技集團公司第38研究所,合肥 230031)
結合計算機技術進行大量數據的運算來完成結構設計,已成為現代雷達系統設計的一個重要趨勢。MATLAB/GUI是一個功能強大的圖形設計界面,可根據用戶需要設計出方便直觀的智能型交互界面,用戶可依據界面后臺的程序完成各種計算操作,這種結構計算分析方式使用方便,目前在許多領域都得到了廣泛應用[1,2]。本文以某民用雷達結構設計中力矩的計算為例說明GUI在設計中的靈活應用。
M風為風載荷形成的靜態阻力矩和附加動態風力矩之和[3]:
其中:A為天線的投影面積(m2);L為天線的特征尺寸(m);ω為天線角速度(rad/s);ρ為空氣密度(kg/m3);k為陣風因子,此處取k=1.42;V為風速(m/s);Fx為風阻力(N);Cmy為風力矩系數,Cx為風力系數。
其中,J為轉動慣量。
在Matlab軟件中,GUI的編程與S函數文件編程相比,除了要編寫內核代碼外,還需要設計前臺交互界面。它把實現程序功能的代碼與硬件事件關聯在一起來完成特定的計算功能[4]。
一般圖形設計有以下兩種方式:通過低級句柄圖形對象的函數設置界面的各個交互組件的屬性;用戶只要通過簡單硬件的操作就可以設計出自己的界面,如圖1所示。
圖1 GUI設計界面
GUI界面設計包括界面設計和程序實現兩個步驟[5,6],具體如下:明確計算任務,了解結構設計中公式的含義,繪出界面草圖;按草圖制作靜態界面;編寫界面后臺的功能程序;調試界面與程序間的變量或句柄傳遞。
以向量的形式向可編輯文本框輸入“風載系數、風力系數、轉動慣量等”,并根據其變量的特性定義其單位。在文本框的下端設計出“風阻力計算、風載、慣性力矩等”計算按鈕,實現各文本框參數之間的傳遞及最終運算[7]。圖2為計算界面。圖3為摩擦力矩后臺計算代碼。
圖2 力矩計算界面
圖3 摩擦力矩計算部分代碼
以某雷達風載計算為例,依據以上設計的GUI軟件界面,部分參數計算的結果如表1所示。從表1中的計算可以看出,利用GUI設計的軟件計算這樣大量數據的表格耗時較短,大大減少了方案設計中數據的計算,計算準確,操作方便,易于修改。
表1 力矩計算結果
某雷達GUI計算界面在結構方案中的應用不僅為科研工作者提供了友好的接口界面,而且還減少了繁重數據計算中的誤差。界面文本框間通過力矩計算數學模型構成了一個相互聯系的整體,實現了人機界面的計算通道,使在方案實施中得到了令人滿意的效果。
[1]應雨龍,李麗利,王志濤,等.基于MATLAB/GUI的船舶發電系統仿真軟件設計的研究[J].燃氣輪機技術,2012,25(2):37-42.
[2]黃曉民,王俊亭,高芝,等.基于MATLAB/GUI的機械原理CAI課件制作和應用[J].現代農業科學,2008,15(11):179-181.
[3]房景仕,程輝明.大角度折疊機構的系統設計[J].雷達科學與技術,2010,8(5):480-485.
[4]葛述卿.Simulink和GUI結合實現機械系統仿真及動畫[J].機械研究及應用,2006,19(1):104-106.
[5]曾新紅.電機機械特性仿真分析系統開發[J].實驗室研究與探索,2012,31(10):201-203.
[6]張志涌.精通MATLAB 6.5版教程[M].北京:航天航空大學出版社,2003.
[7]孫建忠,尚亞男.基于MATLAB GUI的永磁同步發電機仿真平臺[J].電機技術,2011(2):42-49.