宋保維, 葉 徑, 曹永輝
?
基于電子表單的圓柱形殼體結構參數化設計
宋保維, 葉 徑, 曹永輝
(西北工業大學 航海學院, 陜西 西安, 710072)
針對水下航行器研制中存在的設計周期冗長現象, 提出了一種結構設計的新思路, 以自主式水下航行器(AUV)圓柱段殼體結構優化設計為例, 利用電子表單使UG的建模功能與MATLAB科學運算功能得到有效的結合, 完成了對殼體結構的優化設計及模型更新, 重點說明了如何利用電子表單在MATLAB與UG之間進行數據通信, 實現了參數化結構的優化設計。研究結果表明, 該方法能極大地縮短結構設計周期, 減少由于零件尺寸變化帶給工程師設計上的工作量, 也使得產品的結構設計系列化成為可能。
自主式水下航行器(AUV); 優化設計;電子表單;圓柱殼體; UG; MATLAB
目前, 我國水下航行器的研制基本都采用CAD技術進行產品設計, 但絕大部分是將CAD作為一種繪圖工具, 而不是設計工具。由于水下航行器結構復雜, 傳統設計方法使得設計人員花費大量的時間在圖紙更新等重復工作上; 而參數化設計方法將模型中的定量信息變參化, 參數化模型中建立的各種幾何約束與工程約束, 能更好地體現設計人員的設計意圖。由于可以利用參數驅動約束, 參數化設計能大大提高模型的生成和修改速度, 在產品系列設計、相似設計方面具有較大的應用價值。
本文以在海洋探測中應用廣泛的自主式水下航行器(automanned underwater vehicle, AUV)圓柱段殼體結構設計為研究對象, 結合使用UG與MATLAB, 提出一種機械結構參數化設計新思路。限于篇幅, 僅列舉一簡單實例, 重點說明如何利用電子表單在MATLAB與UG之間進行數據通信, 實現參數化結構的優化設計。
UG是集CAD/CAE/CAM為一體的軟件, 具有強大的參數化設計功能, 在設計和制造領域得到了廣泛的應用。
環肋加強和薄壁殼體是水下航行器的主要結構形式, 本文以矩型肋骨為例, 其他類型肋骨可以參照本研究方法進行。
一般AUV殼體由頭部、中段和尾部3段組成, 圓柱段外形參數包括殼體最大直徑和中段平行段長度。矩形肋骨參數如圖1所示。

圖1 矩型肋骨結構參數圖
為了建模方便, 初步確定AUV圓柱段殼體結構參數:=534.4 mm,=4 150 mm,1=5.3 mm,2=130 mm,3=5 mm,4=20 mm。
在計算機輔助設計系統中, 不同型號的產品往往只是尺寸不同而結構相同, 映射到幾何模型中, 就是幾何信息不同而拓撲信息相同[1]。參數化設計方法就是通過存儲設計的整個過程中相同的拓撲關系, 從而設計出一族而不是單一的產品模型。對于參數化模型, 通過改變相應的幾何參數值即可更新幾何實體。
本文對AUV圓柱段殼體設計所需要設定的參數主要有殼體厚度、肋骨個數、尺寸以及肋骨間距等。3D建模的關鍵在于建模過程中要保持模型的參數化, 以達到參數化驅動模型的目的。
本例中首先運用圓柱實體特征與抽殼功能建立圓柱段空殼, 再利用UG的2D草圖功能繪制出矩型旋轉特征, 然后在建模環境中繞軸旋轉得到矩型環肋, 并運用實例特征的矩形陣列功能讓肋骨布滿空殼內, 最后用布爾運算求和把殼體與肋骨連成一個整體, 如圖2所示。

圖2 AUV圓柱殼體3D透視圖
UG的電子表單提供了Excel、Xess與UG間的智能接口。電子表單通過UG變量鏈接至模型, 使用電子表單可以抽取部件數據、修改部件參數, 并能驅動所鏈接的3D模型, 避免了由于設計變化而不得不修改大量模型參數所帶來的不便。
在UG的入口環境、部件族功能和表達式編輯器中, 都涉及到電子表單的使用功能[2]。本文利用其中功能最強大的建模電子表單, 抽取參數化模型的部件數據, 并導入MATLAB中進行優化, 將優化結果導入UG參數化模型, 實現AUV圓柱段殼體結構的更新。具體流程圖如圖3所示。

圖3 參數化結構優化設計流程圖
模型更新實現步驟如下。
首先打開第1步所建立的圓柱段3D模型, 進入建模應用。通過[Tools]—[Spreadsheet]子菜單打開電子表格, 然后導入MATLAB優化結果, 在電子表格菜單欄選擇[Tools]—[Update NX Part], 優化數據將被送回UG模型, 實現模型更新。
MATLAB是集科學計算、數據可視化和程序設計為一體的工程應用軟件, 廣泛用于計算機輔助分析、設計與仿真等。
最優化算法就是研究如何從多個方案中科學合理地提取最佳方案的一門科學。將MATLAB運用于最優化方法, 可使得機械優化設計更趨于科學性。同時MATLAB不用編寫復雜的運算程序和各種難于掌握的優化算法, 而且通俗易學, 從而使優化問題更通俗化。
MATLAB的最優化技術主要包括2個方面內容[3]: 1) 建立數學模型, 即用數學方法來描述最優化問題。模型中的數學關系式反映了最優化問題所要達到的目標和各種約束條件。2) 數學求解。數學模型建好以后, 選擇合理的優化方法進行求解。
1) 設計變量。設計變量即要優化的結構參數, 取矩型肋骨相關參數1,2,3,4。
2) 目標函數。目標函數是以設計變量表示設計所要追求的某種性能指標的解析表達式, 用來評價設計方案優劣的標準。本例以殼體質量最輕為目標。
中段內1根肋骨的體積

優化數學模型
min()=2p11+(2)
式中:為中段殼體半徑;為中段內單個肋骨的體積;為肋骨總數。
3) 約束條件。即對設計變量的取值加以某些限制的條件。對于AUV殼體結構設計, 主要有以下2類約束。
a) 參數約束。主要包括殼體厚度、肋骨間距以及肋骨尺寸。

b) 強度及穩定性約束。根據水下航行器殼體結構分析, 其強度及穩定性主要滿足以下條件。
跨度中點處殼板的橫向平均應力

肋骨處殼板的縱向應力

殼板穩定性
P≥(6)
總體穩定性

肋骨穩定性

其中各參數詳見文獻[4]。
為了簡化計算, 用水平集來判斷失穩形式, 這樣就可簡化約束條件[5]。

式中:為肋骨間距;為殼板外徑;為材料的屈服極限;為彈性模量;為殼板厚度。

本文主要利用MATLAB優化工具箱中內置fmincon函數實現約束優化問題求解。應用函數模塊fmincon不僅能很好地解決單目標多變量約束非線性優化問題, 且能大大提高設計準確度和可靠性[6]。Fmincon函數主要采用序列二次規劃法(SQP法)來求解非線性約束優化問題[7]。SQP法基于K-T(Kuhn-Tucker)方程解, 可有效解決非線性約束優化問題, 該方程是有約束最優化問題求解的必要條件[8], 是非線性規劃算法的基礎。
MATLAB中SQP法的實現主要分3步, 1) 拉格朗日函數Hessian矩陣的更新; 2) 二次規劃問題求解; 3) 1D收索和目標函數的計算。
編制的優化程序主要代碼如下。
a) 目標函數文件objfunctnew.m
function f = objfunctnew(x)
t=x(1); l=x(2); b=x(3); h=x(4);
r=534.4; ll=4100;
q= ceil (ll/l);
f=2*pi*r*t*ll+b*h*pi*(2*r-2*t-h)*q;
b) 約束函數文件nlconnew
本優化模型約束條件比較復雜, 限于篇幅, 只給出約束文件結構形式。程序中各參數詳見參考文獻[4]。
function [c,ceq]= nlconnew (x)
…… %初始化
y=sqrt (l/(2*r)*(s/e)/(t/(2*r))^(3/2))
%y代表水平集
if y<0.8
c(1)=K20*Pj*r/t-0.85*s;
c(2)=sleq-s;
elseif y>1.1
c(1)=Pj-Pcr;
c(2)=Pj-Pcr;
else
c(1)=1.3*Pj-Pcrg;
c(2)=1.3*Pj-Pcrg;
end %非等式約束
ceq=[] %等式約束
c) 執行文件mytry.m
x0=[5.3;130;5;20]
lb=[0,0,0,0];
ub=[]; %優化初值
options=optimset('display','iter','largescale','off');
[x,fval]=fmincon(@objfunctnew,x0,[],[],[],[],lb,ub,@nlconnew,options) %調用函數
為了驗證本文所提出的結構設計新方法的有效性, 現將圓柱形殼體結構的常規設計結果與本優化設計結果進行比較。
設AUV的最大工作深度300 m, 采用矩型加肋薄壁結構, 殼體材料選擇S/Steel-PH15-5, 常態下其楊氏模量205.56 GPa, 泊松比0.3, 屈服強度860.9 MPa, 密度7 816.93 kg/m3, 安全因數1.2。
圓柱段殼體結構基本參數如下:=534.4 mm,=4 150 mm, 在同深度、同材料、同肋骨型式條件下, 采用文獻[4]所提供的常規設計方法和本參數化結構優化設計方法所得結果比較見表1,其中,表示中段殼體重量。
表1 常規與優化設計結果對比
Table 1 Comparison of conventional design and optimi- zation result

從表1可以看出, 采用本參數化結構優化設計方法, 可使中段殼體重量減輕43.1%。
使用MATLAB函數“XLSWRITE()”, 將優化結果輸入電子表格中, 并指定電子表格第1列為變量表達式, 第2列為變量名。此處變量表達式必須與UG參數化模型中的變量表達式一致。將電子表單導入UG, 可以看到圓柱殼體結構的參數化模型更新了, 如圖4所示。

圖4 更新后的AUV圓柱殼體3D透視圖
本文特色在于利用電子表單實現了MATLAB優化結果與UG參數化模型的鏈接, 且模型選取比較簡單, 使之用于復雜結構模型的優勢更為明顯。作為本文的擴展, 還可以利用電子表單實現UG參數化模型與其他優化輸出結果的鏈接。此方法既無需復雜的編程技術, 又無需根據優化結果手動修改模型, 可縮短結構設計周期, 減少工作量, 使產品結構設計系列化成為可能。
[1] 李福海, 劉毅. 二次開發UG實現飛機操縱系統零件參數化設計與虛擬裝配自動化[J]. 機械科學與技術, 2003, 22(11): 242-244.
Li Fu-hai, Liu Yi. The Parametric Design and the Automatization of the Virtual Assembly Based on the Secondary Development of UG[J]. Mechanical Science and Technology, 2003, 22(11): 242-244.
[2] 李小力, 余世浩. 電子表單在UG軟件中的應用[J]. 機械設計與制造, 2008, 4(4):62-63.
Li Xiao-li, Yu Shi-hao. Application of Spreadsheet in UG[J]. Machinery Design & Manufacture, 2008, 4(4): 62-63.
[3] Magrab E B. MATLAB原理與工程應用[M].北京: 電子工業出版社, 2002.
[4] 張宇文. 魚雷總體設計原理與方法[M]. 西安: 西北工業大學出版社, 1998.
[5] 宋保維. 水下航行器現代設計理論與方法——可靠性與優化設計[M]. 西安: 西北工業大學出版社, 2004.
[6] 王春香, 馮慧忠. MATLAB軟件在機械優化設計中的應用[J]. 機械設計, 2004, 21(7): 52-54.
[7] 蘇金明, 張蓮花, 劉波, 等. MATLAB工具箱應用[M].北京: 電子工業出版社, 2004.
[8] 劉惟信. 機械最優化設計[M]. 2版. 北京: 清華大學出版社, 2000.
Parametric Design of Cylinder Shell Based on Spreadsheet
SONG Bao-wei, YE Jing, CAO Yong-hui
(College of Marine Engineering, Northwestern Polytechnical University, Xi′an 710072, China)
To shorten design period of autonomous underwater vehicle (AUV), this paper presents a new approach by taking optimization design of an AUV cylinder shell construction as an example. The UG′s modeling ability and the MATLAB′s scientific computing function are combined effectively by virtue of the spreadsheet, and the 3D model of cylinder shell is updated according to the optimization result. This paper highlights the way of data transmission between MATLAB and UG via spreadsheet. This study shows that the present method can greatly shorten the structure design period, reduce the engineers' workload, and make it possible to serialize the product structure design.
autonomous underwater vehicle (AUV); optimization design; spreadsheet; cylinder shell; UG; MATLAB
TJ630.3
A
1673-1948(2011)01-0006-04
2010-06-22;
2010-09-08.
宋保維(1963-), 男, 教授, 博導, 研究方向為水下航行器流體力學、水下特種減阻技術, 可靠性以及機電一體化技術.
(責任編輯: 陳 曦)