石欣雨,文國軍,吳 川,白江浩
SHI Xin-yu1,WEN Guo-jun1,WU Chuan2,BAI Jiang-hao1
(1.中國地質(zhì)大學(xué)(武漢)機(jī)械與電子信息學(xué)院,武漢 430074;2.中國地質(zhì)大學(xué)(武漢)工程學(xué)院,武漢 430074)
動(dòng)力頭主軸是非開挖鉆機(jī)的核心部件,同時(shí)也是其工作時(shí)主要的受力件[1]。隨著工況的日益復(fù)雜化,影響其性能的設(shè)計(jì)參數(shù)越來越多,限制約束條件愈來愈苛刻和復(fù)雜,同時(shí)性能要求卻越來越高。而傳統(tǒng)的三維設(shè)計(jì)方法中,設(shè)計(jì)人員僅僅依靠原有的經(jīng)驗(yàn)和專業(yè)知識(shí)來調(diào)整結(jié)構(gòu)設(shè)計(jì)參數(shù),在三維軟件中進(jìn)行手動(dòng)繪圖的做法,不僅設(shè)計(jì)周期大大增加,而且很難對(duì)眾多的設(shè)計(jì)參數(shù)進(jìn)行正確的選擇,導(dǎo)致設(shè)計(jì)精度降低[2]。由此設(shè)計(jì)出來的動(dòng)力頭主軸,往往不易達(dá)到設(shè)計(jì)要求;或者雖然滿足了設(shè)計(jì)要求,但在結(jié)構(gòu)形式、材料使用等方面存在著不合理性和不經(jīng)濟(jì)性,且結(jié)構(gòu)的綜合性能不能達(dá)到理想狀態(tài)。因此,在滿足安全要求的前提下,提高設(shè)計(jì)精度、最大限度地降低成本、縮短設(shè)計(jì)周期具有重要的意義。
綜合上述考慮,提出了非開挖鉆機(jī)動(dòng)力頭主軸三維自動(dòng)優(yōu)化設(shè)計(jì),闡述了該設(shè)計(jì)方法的思路及實(shí)現(xiàn)過程,并對(duì)該設(shè)計(jì)方法進(jìn)行了實(shí)例驗(yàn)證,確定了該設(shè)計(jì)方法的可行性。
該設(shè)計(jì)方法是以VB 軟件優(yōu)良的人機(jī)界面為平臺(tái),將MATLAB軟件的優(yōu)化設(shè)計(jì)功能與SolidWorks軟件的三維設(shè)計(jì)功能集成于一體,根據(jù)設(shè)計(jì)要求輸入相應(yīng)的參數(shù),即可實(shí)現(xiàn)動(dòng)力頭主軸三維設(shè)計(jì)的最優(yōu)化和自動(dòng)化[3,4]。其運(yùn)行流程圖如圖1所示,其中虛線框中的流程在后臺(tái)運(yùn)行。
圖1 非開挖鉆機(jī)動(dòng)力頭主軸三維自動(dòng)優(yōu)化設(shè)計(jì)運(yùn)行流程圖
建立優(yōu)化模型的目的是要使非開挖鉆機(jī)動(dòng)力頭主軸在滿足設(shè)計(jì)要求的條件(足剛度要求、強(qiáng)度要求以及邊界限制的條件)下質(zhì)量最小,這樣就提高了動(dòng)力頭主軸的設(shè)計(jì)精度,節(jié)約了材料,降低了設(shè)計(jì)成本。
非開挖鉆機(jī)動(dòng)力頭主軸一般為兩支承空心階梯軸。鉆機(jī)工作時(shí)鉆架與水平方向有一定的傾角,且其最大受力狀態(tài)為水平方向的回拖力(或進(jìn)給力)F,同時(shí)還受到液壓馬達(dá)提供的最大扭矩T[5]。為便于使用材料力學(xué)公式進(jìn)行結(jié)構(gòu)分析,可將其簡(jiǎn)化成以當(dāng)量直徑D表示的等截面軸,以沿鉆架方向?yàn)閄方向,垂直鉆架方向?yàn)閅方向建立坐標(biāo)系,其受力變形與截面簡(jiǎn)化圖如圖2所示。
圖2 動(dòng)力頭主軸變形情況及主軸截面簡(jiǎn)圖
由圖2建立動(dòng)力頭主軸的力學(xué)方程,并按上述優(yōu)化設(shè)計(jì)要求將這些方程用函數(shù)表達(dá)式規(guī)格化,則動(dòng)力頭主軸優(yōu)化設(shè)計(jì)的數(shù)學(xué)模型可表示為:
式中d為主軸內(nèi)徑、D為主軸外徑,L為主軸軸長(zhǎng),a為主軸外伸端長(zhǎng)度,ρ為主軸的材料密度、[y]為主軸許用撓度,J為主軸慣性力矩,[θ]為主軸許用轉(zhuǎn)角,Jp為主軸圓截面的極慣性矩,[τ]為主軸許用切應(yīng)力,T為主軸扭矩,Wn為主軸抗扭截面模量,Dmin為主軸最小外徑,Dmax為主軸最大外徑,Lmin為主軸最小軸長(zhǎng),Lmax為最大軸長(zhǎng)。
根據(jù)建立的主軸優(yōu)化模型,可知?jiǎng)恿︻^主軸優(yōu)化設(shè)計(jì)問題屬于單目標(biāo)多變量非線性約束優(yōu)化問題。目前,對(duì)于非線性約束優(yōu)化問題的解法很多,但這些算法僅能解決一類特殊的非線性規(guī)劃問題,通用性不強(qiáng)。而MATLAB優(yōu)化工具箱可采用序列二次規(guī)劃法(Sequential Quadratic Programming SQP)求解約束優(yōu)化問題,具有很高的效率,它是將原問題化為一系列的二次規(guī)劃子問題進(jìn)行求解,通過使用擬牛頓法更新程序?qū)uhn-Tucker方程累積二階信息,以保證超線性的收斂,調(diào)用fmincon函數(shù)求解約束優(yōu)化問題[4~6]。因此,采用MATLAB優(yōu)化工具箱中的fmincon優(yōu)化模塊進(jìn)行動(dòng)力頭主軸優(yōu)化設(shè)計(jì),其部分設(shè)計(jì)程序如下:
由于動(dòng)力頭主軸的三維結(jié)構(gòu)和幾何形狀比較復(fù)雜,因此將動(dòng)力頭主軸的三維設(shè)計(jì)采用分步宏錄制的方法來生成動(dòng)力頭主軸的三維設(shè)計(jì)代碼。分步宏錄制方法是根據(jù)動(dòng)力頭主軸的結(jié)構(gòu)和幾何形狀,將動(dòng)力頭主軸宏錄制過程劃分成幾個(gè)部分(以變換草圖基準(zhǔn)面為劃分標(biāo)準(zhǔn))來進(jìn)行[4]。所錄制的宏代碼中就包含了一些符合要求的SolidWorks的API函數(shù),只需對(duì)其進(jìn)行復(fù)制,將相關(guān)的設(shè)計(jì)參數(shù)都用當(dāng)量直徑D及軸長(zhǎng)L進(jìn)行表達(dá),即:
式中:Di為主軸第i段階梯的軸徑,Li為主軸第i段階梯的軸長(zhǎng),δi為主軸第i段階梯當(dāng)量直徑系數(shù),λi為主軸第i段階梯軸長(zhǎng)系數(shù),其中δi、λi由主軸各階梯零件裝配關(guān)系確定。
然后將代碼在VB軟件中進(jìn)行編輯、修改,從而達(dá)到準(zhǔn)確的自動(dòng)生成動(dòng)力頭主軸的三維圖。
人機(jī)界面不但是用戶輸入數(shù)據(jù)、瀏覽數(shù)據(jù)等信息的途徑,也是啟動(dòng)MATLAB進(jìn)行數(shù)據(jù)傳輸、運(yùn)算及調(diào)用SolidWorks進(jìn)行自動(dòng)繪圖的平臺(tái)。根據(jù)上述所確定的動(dòng)力頭主軸設(shè)計(jì)參數(shù),定義人機(jī)界面,并在人機(jī)界面的功能控件中添加相應(yīng)的代碼。
設(shè)計(jì)好人機(jī)交互界面后,還需要建立VB與MATLAB及SolidWorks間的連接,實(shí)現(xiàn)以VB為主控程序及編程語言將優(yōu)化設(shè)計(jì)與自動(dòng)繪圖集成于一體。建立軟件連接的具體過程為:
1)建立VB與MATLAB之間的連接進(jìn)行優(yōu)化設(shè)計(jì)參數(shù)的傳輸及運(yùn)算;
2)建立VB與SolidWorks之間的連接實(shí)現(xiàn)VB調(diào)用SolidWorks自動(dòng)繪制動(dòng)力頭主軸的三維圖。
2.5.1 建立VB與MATLAB的連接
在VB創(chuàng)建的具有參數(shù)輸入功能的人機(jī)交互界面中,建立VB與MATLAB的自動(dòng)連接,便可實(shí)現(xiàn)在VB編寫的應(yīng)用程序中調(diào)用MATLAB編寫的優(yōu)化設(shè)計(jì)程序。具體實(shí)現(xiàn)方法是在VB的變量聲明時(shí)定義:Dim MATLAB As Object;隨后在Form_Load部分用Set語句建立VB和MATLAB的連接:
隨后使用Execute方法,便可實(shí)現(xiàn)MATLAB對(duì)VB輸入數(shù)據(jù)正確的接收[5~8]。MATLAB接受VB輸入數(shù)據(jù)并進(jìn)行計(jì)算后,調(diào)用MATLAB中的內(nèi)置函數(shù)csvwrite將計(jì)算結(jié)果保存為文本文件,隨后利用VB中的Open語句打開文件,用Input#語句讀取數(shù)據(jù),通過這種方式便實(shí)現(xiàn)了VB與MATLAB的數(shù)據(jù)傳輸。
2.5.2 建立VB與SolidWorks的連接
通過建立VB與MATLAB間的連接,實(shí)現(xiàn)了優(yōu)化設(shè)計(jì)參數(shù)的傳輸及運(yùn)算。接下來需建立VB與MATLAB的連接,實(shí)現(xiàn)VB調(diào)用SolidWorks,利用優(yōu)化后的設(shè)計(jì)參數(shù)自動(dòng)繪制動(dòng)力頭的主軸三維圖。建立VB與SolidWorks的連接,具體實(shí)現(xiàn)方法是在VB中創(chuàng)建一個(gè)SolidWorks應(yīng)用對(duì)象,格式為:
然后在上訴代碼后添加動(dòng)力頭主軸三維自動(dòng)化繪圖的程序,這樣,就可以在VB中調(diào)用SolidWorks進(jìn)行動(dòng)力頭主軸三維繪圖[9,10]。
ZT-18型非開挖鉆機(jī)是某公司生產(chǎn)量較大的機(jī)型之一,經(jīng)過多年的改進(jìn)優(yōu)化,該機(jī)型的工作性能得到了很大的提高。因此,以該型號(hào)非開挖鉆機(jī)的動(dòng)力頭主軸為驗(yàn)證實(shí)例具有很好的代表性。
在設(shè)計(jì)界面中輸入相應(yīng)的優(yōu)化參數(shù)后單擊【數(shù)據(jù)輸出】,MATLAB軟件在接收輸入?yún)?shù)后便在后臺(tái)進(jìn)行優(yōu)化運(yùn)算,隨后在設(shè)計(jì)界面輸出優(yōu)化后的主軸直徑(當(dāng)量直徑)D(mm)和優(yōu)化后的主軸質(zhì)量(最小質(zhì)量)m(kg),運(yùn)算后的輸出結(jié)果如圖3所示。
圖3 輸出優(yōu)化后的軸直徑及主軸質(zhì)量
由圖3可知優(yōu)化后的主軸直徑、主軸長(zhǎng)及主軸質(zhì)量,對(duì)主軸現(xiàn)有設(shè)計(jì)結(jié)果(數(shù)據(jù)來自某公司)與優(yōu)化設(shè)計(jì)后的結(jié)果進(jìn)行對(duì)比如表1所示。
表1 優(yōu)化結(jié)果比較
單擊【生成三維圖】,則系統(tǒng)根據(jù)優(yōu)化后的主軸直徑(當(dāng)量直徑)D(mm)及主軸軸長(zhǎng)L(mm)調(diào)用SolidWorks自動(dòng)生成優(yōu)化后的主軸三維圖如圖4所示。
圖4 自動(dòng)繪制的主軸三維圖
由表1及圖4可知,由該設(shè)計(jì)方法進(jìn)行動(dòng)力頭主軸三維設(shè)計(jì),不但可以自動(dòng)生成動(dòng)力頭主軸的三維模型,而且所生成的動(dòng)力頭主軸的當(dāng)量直徑、軸長(zhǎng)、質(zhì)量比現(xiàn)有結(jié)果分別減小了2.5%、0.9%、12.5%。因此,該實(shí)例驗(yàn)證了該設(shè)計(jì)方法對(duì)動(dòng)力頭主軸進(jìn)行三維設(shè)計(jì)的高效性和精確性。
闡述了非開挖鉆機(jī)動(dòng)力頭主軸三維自動(dòng)優(yōu)化設(shè)計(jì)的思路及過程,并對(duì)該設(shè)計(jì)方法功能的實(shí)現(xiàn)過程進(jìn)行了詳細(xì)的說明,指明了該使用該設(shè)計(jì)方法進(jìn)行非開挖鉆機(jī)動(dòng)力頭主軸三維設(shè)計(jì)有兩大優(yōu)勢(shì):高效性和精確性。
通過實(shí)例對(duì)非開挖鉆機(jī)動(dòng)力頭主軸三維自動(dòng)優(yōu)化設(shè)計(jì)的兩大優(yōu)勢(shì)進(jìn)行了驗(yàn)證,在設(shè)計(jì)界面輸入相關(guān)設(shè)計(jì)參數(shù)后,單擊界面上相應(yīng)的按鈕,便可完成動(dòng)力頭主軸的優(yōu)化設(shè)計(jì)和三維建模。
通過實(shí)例驗(yàn)證,非開挖鉆機(jī)動(dòng)力頭主軸三維自動(dòng)優(yōu)化設(shè)計(jì)實(shí)現(xiàn)了預(yù)期的兩大目標(biāo),是一種非常有效的非開挖鉆機(jī)動(dòng)力頭主軸三維設(shè)計(jì)方法。
[1]沙永柏,孫友宏,于萍,薛軍.JFK-150型非開挖導(dǎo)向鉆機(jī)給進(jìn)機(jī)構(gòu)的設(shè)計(jì)[J].機(jī)械設(shè)計(jì)與制造,2006(1):111-112.
[2]王建正,李建宏,郭希斌.三維CAD在重型機(jī)械中的應(yīng)用[J].機(jī)械設(shè)計(jì)與制造,2004(2):48-49.
[3]陳皓亮,李華,姚進(jìn).基于特征造型的軸類零件設(shè)計(jì)系統(tǒng)[J].機(jī)械設(shè)計(jì)與制造,2012(2):189-191.
[4]王鴻鈞.典型機(jī)械零件參數(shù)化設(shè)計(jì)系統(tǒng)的研究與開發(fā)[J].制造業(yè)自動(dòng)化,2009(7):36-38.
[5]席平原.應(yīng)用MATLAB工具箱實(shí)現(xiàn)機(jī)械優(yōu)化設(shè)計(jì)[J].機(jī)械設(shè)計(jì)與研究,2003,19(3):40-42.
[6]Optimization Toolbox User’s Guide.The Math Works Inc,2005.
[7]李健,靳龍,伍麗峰.開口空心齒輪軸的優(yōu)化設(shè)計(jì)[J].機(jī)械設(shè)計(jì)與制造,2006(1):32-33.
[8]隗燕琳,陳進(jìn)明.基于VB與Matlab的混合編程方法.計(jì)算機(jī)與數(shù)字工程[J].2013(8):1388-1389.
[9]索超,李玉翔,林樹忠.基于VB語言對(duì)SolidWorks參數(shù)化設(shè)計(jì)的二次開發(fā)[J].制造業(yè)自動(dòng)化,2013(8):137-139.
[10]朱躍峰,朱敬超.基于SolidWorks的機(jī)械產(chǎn)品參數(shù)化設(shè)計(jì)研究[J].機(jī)械設(shè)計(jì)與制造,2008(6):50-51.