韓素蘭,劉 勛
(華北水利水電大學(xué),河南 鄭州 450045)
基于SolidWorks的帶式輸送機(jī)中間架參數(shù)化設(shè)計(jì)系統(tǒng)開發(fā)
韓素蘭,劉 勛
(華北水利水電大學(xué),河南 鄭州 450045)
針對(duì)DTII(K)型帶式輸送機(jī)機(jī)架部分不同形式、種類的中間架,以Visual Basic 6.0為開發(fā)平臺(tái),對(duì)SolidWorks軟件進(jìn)行二次開發(fā)。在分析不同形式、種類中間架的基礎(chǔ)上,運(yùn)用尺寸驅(qū)動(dòng)的設(shè)計(jì)方法,實(shí)現(xiàn)中間架的參數(shù)化設(shè)計(jì);運(yùn)用SolidWorks提供的API函數(shù),通過遍歷特征的設(shè)計(jì)方法,完成中間架的自動(dòng)裝配。該系統(tǒng)顯著提高了設(shè)計(jì)效率,降低了設(shè)計(jì)人員的勞動(dòng)強(qiáng)度。
中間架;SolidWorks;Visual Basic;參數(shù)化設(shè)計(jì);自動(dòng)裝配
帶式輸送機(jī)是一種摩擦驅(qū)動(dòng)以連續(xù)方式輸送物料的機(jī)械,生產(chǎn)效率高、工作平穩(wěn)、結(jié)構(gòu)簡單,廣泛應(yīng)用于冶金、港口、礦山等行業(yè)。DTII(K)型帶式輸送機(jī)是通用型系列產(chǎn)品,中間架作為帶式輸送機(jī)機(jī)架部分的主要部件,按部件系列進(jìn)行設(shè)計(jì),越來越成為帶式輸送機(jī)設(shè)計(jì)的一個(gè)重要部分。根據(jù)不同的地形和輸送距離,中間架有直型、凸弧型、凹弧型三種形式,種類有標(biāo)準(zhǔn)尺寸和非標(biāo)準(zhǔn)尺寸兩種[1]。目前,常用的設(shè)計(jì)方法是在CAD平臺(tái)上進(jìn)行人工設(shè)計(jì),不僅設(shè)計(jì)工作量大、設(shè)計(jì)周期長,而且過程不直觀。
隨著三維模型技術(shù)和計(jì)算機(jī)技術(shù)的發(fā)展,在產(chǎn)品的設(shè)計(jì)過程中,三維模型表達(dá)逐步取代二維圖形表達(dá),參數(shù)化設(shè)計(jì)也逐漸取代人工設(shè)計(jì)。因此,為彌補(bǔ)二維設(shè)計(jì)不足,滿足現(xiàn)代化設(shè)計(jì)需求,基于Solid-Works軟件,開發(fā)一套中間架參數(shù)化設(shè)計(jì)系統(tǒng),實(shí)現(xiàn)設(shè)計(jì)參數(shù)化及裝配自動(dòng)化,提高設(shè)計(jì)效率,減輕設(shè)計(jì)人員的勞動(dòng)強(qiáng)度。
中間架是機(jī)架的主要部件,主要用來支撐滾筒及承受輸送帶張力。它主要由槽鋼組成,頂面和底面設(shè)計(jì)有托輥底座安裝孔,側(cè)面設(shè)計(jì)有支腿安裝孔和聯(lián)板安裝孔,結(jié)構(gòu)如圖1所示。
圖1 中間架模型結(jié)構(gòu)
中間架雖然結(jié)構(gòu)簡單,但設(shè)計(jì)參數(shù)繁多,主要參數(shù)有帶寬B、槽鋼中心線距離A、寬度A1、支腿安裝孔到頂面的距離h1、支腿安裝孔圓心距h2、上下托輥安裝孔距離Q1、Q2及托輥間距離Q0等。根據(jù)中間架的結(jié)構(gòu),將參數(shù)劃分成輪廓參數(shù)、托輥安裝孔參數(shù)以及支腿安裝孔參數(shù)等三大類。在設(shè)計(jì)時(shí),根據(jù)載貨密度、輸送距離以及工作環(huán)境的不同,選用不用的槽鋼型號(hào),并設(shè)計(jì)不同數(shù)量和間隔的托輥安裝孔及不同類型的支腿安裝孔,這就需要分別對(duì)輪廓參數(shù)、托輥安裝孔參數(shù)以及支腿安裝孔參數(shù)進(jìn)行重新設(shè)計(jì)。
2.1 功能設(shè)計(jì)
本設(shè)計(jì)系統(tǒng)針對(duì)帶式輸送機(jī)中間架,利用Solid-Works良好的開放性,運(yùn)用VB高級(jí)開發(fā)語言對(duì)SolidWorks進(jìn)行二次開發(fā),并將其作為插件與Solid-Works無縫銜接[2]。根據(jù)中間架的形式和種類,通過可視化交互界面確定帶寬,輸入相關(guān)參數(shù)并從數(shù)據(jù)庫中調(diào)用既定參數(shù)后,直接生成相應(yīng)的中間架模型,實(shí)現(xiàn)參數(shù)化設(shè)計(jì)[1]。中間架設(shè)計(jì)完成后,根據(jù)用戶需求,打開裝配對(duì)話框并進(jìn)入裝配體界面,在數(shù)據(jù)庫中調(diào)用相關(guān)的裝配信息,載入裝配零部件及輔助零部件后,自動(dòng)完成中間架的裝配。
2.2 結(jié)構(gòu)設(shè)計(jì)
根據(jù)設(shè)計(jì)系統(tǒng)的功能,劃分為4個(gè)模塊,系統(tǒng)交互界面模塊、參數(shù)化設(shè)計(jì)模塊、自動(dòng)裝配模塊以及數(shù)據(jù)管理模塊[3]。
交互界面模塊為設(shè)計(jì)系統(tǒng)入口,通過該模塊選擇既定參數(shù)、輸入相關(guān)參數(shù);參數(shù)化設(shè)計(jì)模塊是系統(tǒng)主模塊,根據(jù)獲取的參數(shù)信息,生成滿足需求的中間架模型;自動(dòng)裝配模塊主要根據(jù)設(shè)計(jì)中間架的形式、種類,自動(dòng)裝配托輥、支腿等零件;數(shù)據(jù)管理模塊主要用來存儲(chǔ)中間架零件參數(shù)及裝配信息,可單獨(dú)查看、修改。
3.1 設(shè)計(jì)方法
該系統(tǒng)采用尺寸驅(qū)動(dòng)法,在分析不同形式、種類中間架的基礎(chǔ)上,繪制相應(yīng)的模板,通過系統(tǒng)交互界面獲取參數(shù),賦值給尺寸變量并驅(qū)動(dòng)模型重建,實(shí)現(xiàn)整體的參數(shù)化設(shè)計(jì);對(duì)于部分特征參數(shù),如支腿數(shù)量、類型等,采用編程法,利用SolidWorks自帶的宏錄制工具,獲取并修改操作碼后,直接放入程序中,從而完成整個(gè)設(shè)計(jì)。
3.2 設(shè)計(jì)流程
針對(duì)SolidWorks二次開發(fā),首先在程序中創(chuàng)建SldWorks對(duì)象并與SolidWorks連接,然后通過程序調(diào)用SolidWorks提供的API函數(shù),按照預(yù)定設(shè)計(jì)打開文檔,最后更新模型,關(guān)閉創(chuàng)建的SldWorks及其他對(duì)象,結(jié)束整個(gè)設(shè)計(jì)[4],設(shè)計(jì)流程如圖2所示。
圖2 設(shè)計(jì)流程圖
利用尺寸驅(qū)動(dòng)法進(jìn)行參數(shù)化設(shè)計(jì),與系列零件設(shè)計(jì)的方法相同,通過修改模型相應(yīng)特征參數(shù),驅(qū)動(dòng)模型特征重建,從而生成與模板模型結(jié)構(gòu)相同而尺寸不同的模型。在設(shè)計(jì)中,采用數(shù)據(jù)庫存儲(chǔ)中間架的設(shè)計(jì)參數(shù),通過程序打開模板模型,從數(shù)據(jù)庫中讀取相應(yīng)的設(shè)計(jì)參數(shù),然后遍歷所有特征參數(shù),并逐一進(jìn)行修改;重建模型,完成參數(shù)化設(shè)計(jì)。
4.1 建立參數(shù)數(shù)據(jù)庫
中間架設(shè)計(jì)參數(shù)繁多,主要包括帶寬B、寬度A1及兩槽鋼孔中心線距離A、上、下托輥安裝孔間距Q1、Q2以及材料型號(hào)等[5]。實(shí)際應(yīng)用中,不同帶寬系列的中間架,對(duì)應(yīng)不同系列的設(shè)計(jì)參數(shù)。為方便程序調(diào)用參數(shù),運(yùn)用Access建立參數(shù)數(shù)據(jù)庫。
4.2 建立零件模型
中間架有直型、凸型、凹型三種類型,種類有標(biāo)準(zhǔn)型和非標(biāo)準(zhǔn)型兩種。非標(biāo)準(zhǔn)型中間架與標(biāo)準(zhǔn)型中間架相比,結(jié)構(gòu)相似,主要尺寸相同,設(shè)計(jì)時(shí)可共用模型。分析直型、凸型、凹型三種類型的結(jié)構(gòu),確定各個(gè)特征及其相對(duì)關(guān)系,選取某一帶寬的設(shè)計(jì)參數(shù),在SolidWorks中建立相應(yīng)的三維模型,并將其保存為模型。以帶寬B為1 000 mm為例,直型中間架模板模型如圖3所示。
圖3 直型中間架模板模型
4.3 程序設(shè)計(jì)及關(guān)鍵技術(shù)
(1)Sldworks對(duì)象是SolidWorks API中最高級(jí)對(duì)象,它提供了SolidWorks API中所有對(duì)象的直接或間接接口,通過它可控制SolidWorks的基本操作[5]。在程序設(shè)計(jì)之前,首先利用CreatObject方法來獲得Sldworks對(duì)象,打開文件并激活。以直型中間架設(shè)計(jì)程序?yàn)槔浯a如下
SetswApp=CreateObject(“Sldworks.Application”)
Set Part=swApp.OpenDoc4(strFileName,1,0,"",longstatus)
Set Part=swApp.ActivateDoc(“直型中間架”)
(2)為方便從數(shù)據(jù)庫中調(diào)用設(shè)計(jì)參數(shù),利用ODBC提供的API函數(shù),在VB的支持下與Access相連。在程序中,主要通過ADO控件實(shí)現(xiàn)程序和數(shù)據(jù)庫的鏈接,主要程序代碼如下:
cn.open"Driver={MicrosoftAccess Driver(*.mdb)};DBQ="&App.Path&"中間架.mdb"
rs.Open" 設(shè)計(jì)參數(shù)",cn,adOpenKeyset,adLock-Optimistic
(3)采用尺寸驅(qū)動(dòng)的設(shè)計(jì)方法,在獲取參數(shù)后,利用Parameter對(duì)象鏈接模板中的尺寸變量,通過SystemValues屬性為其重新賦值。以上托輥安裝孔為例,主要代碼如下:
Part.Parameter("D1@陣列(線性)1"&strFile-Name).SystemValue=n1
Part.Parameter("D3@陣列(線性)1"&strFile-Name).SystemValue=ln1/1000
(4)為提高程序的運(yùn)行效率,利用SwAddin對(duì)象創(chuàng)建插件并嵌入SolidWorks.通過SwAddin對(duì)象的ConnectToSW方法加載插件,并利用AddMenu、AddMenuItem2方法建立下拉式菜單,如圖4所示。主要代碼如下:
iSwApp.SetAddinCallbackInfo(0,Me,addinID)
Dim Title As String="中間架設(shè)計(jì)"
cmdIndex0=cmdGroup.AddCommandItem2("參數(shù)化設(shè)計(jì)",-1,"中間架設(shè)計(jì)","中間架設(shè)計(jì)",0,"PD","",mainItemID1,menuToolbarOption)
圖4 菜單加載效果圖
5.1 自動(dòng)裝配設(shè)計(jì)方法
針對(duì)自動(dòng)裝配,目前有以下3種常用的方法:(1)將頻繁用于配合的零部件保存成一個(gè)普通命名的配合參考,在裝配時(shí)可自動(dòng)配合到多個(gè)實(shí)體中;(2)利用API函數(shù)操作零部件的平移、旋轉(zhuǎn)及定位,完成自動(dòng)裝配;(3)利用API函數(shù)遍歷零部件所有的點(diǎn)、線、面,選擇參與配合的裝配特征并修改其特征屬性,通過添加配合關(guān)系實(shí)現(xiàn)自動(dòng)裝配[7]。該方法與前兩種方法相比,適用范圍廣,靈活性強(qiáng),本系統(tǒng)使用該方法進(jìn)行中間架的自動(dòng)裝配。
5.2 自動(dòng)裝配流程
中間架的自動(dòng)裝配,首先通過Sldworks對(duì)象創(chuàng)建裝配體文檔,利用ActiveDoc方法激活該文檔。運(yùn)用OpenDoc6函數(shù)打開插入的零件并存入內(nèi)存,通過AddComponent函數(shù)將其添加到裝配體中,最后利用AddMate4函數(shù)添加配合,完成自動(dòng)裝配流程[8]。
5.3 程序設(shè)計(jì)及關(guān)鍵技術(shù)
(1)SolidWorks裝配體是通過參考鏈接表達(dá)裝配關(guān)系,首先將裝配零部件載入內(nèi)存。程序設(shè)計(jì)時(shí),運(yùn)用OpenDoc6函數(shù)加載零部件信息,利用AddComponent函數(shù)將其加載到裝配文檔中。主要代碼如下:
Set Part=swApp.OpenDoc6("App.Path+""+"直型中間架.SLDPRT",1,0,"",longstatus,longwarnings)
boolstatus=swModel.AddComponent("App.Path+""+"直型中間架.SLDPRT",0,0,0)
(2)選定配合零件以及裝配特征。通過Select-ByID函數(shù)選擇裝配的零部件,順序?yàn)橹虚g架→支腿→托輥→聯(lián)板;運(yùn)用SelectFaceProperties函數(shù)遍歷所有面并命名,利用SelectComponentFaceByName函數(shù)根據(jù)命名選定配合面[8]。主要代碼如下:
boolstatus=swModel.SelectByID("中間架"+"@"+AssemblyName,"COMPONENT",0,0,0)
Call SelectComponentFaceByName("中間架"+"@"+AssemblyName,"surface11")
(3)SolidWorks中定義了20多種裝配關(guān)系,如何正確為零件添加裝配關(guān)系是設(shè)計(jì)的關(guān)鍵。在選定需添加配合的特征后,運(yùn)用AddMate4函數(shù)依據(jù)預(yù)定設(shè)計(jì)添加配合關(guān)系。以中間架和支腿裝配為例,主要代碼如下:
Dim myMate As Object
Set myMate=Part.AddMate4(1,1,F(xiàn)alse,1,0,0, 0.001, 0.001, 1.5, 0.5, 0.5, False, False,longstatus)
為使系統(tǒng)便于操作,滿足人性化需要,利用Visual Basic 6.0提供的圖形對(duì)象建立人機(jī)交互界面,包括參數(shù)化設(shè)計(jì)界面和自動(dòng)裝配界面,如圖5所示。參數(shù)化設(shè)計(jì)界面不僅可以方便的選擇、輸入?yún)?shù),還能直觀的查看參數(shù);通過自動(dòng)裝配界面可以打開裝配文檔,根據(jù)用戶設(shè)計(jì),選擇需要裝配零件的數(shù)量和類型。以B=1 000 mm的標(biāo)準(zhǔn)直型中間架為例,參數(shù)化生成中間架模型并安裝相應(yīng)的支腿,如圖6所示。
圖5 參數(shù)化設(shè)計(jì)界面
圖6 B=1 000mm應(yīng)用實(shí)例
基于SolidWorks的帶式輸送機(jī)中間架參數(shù)化設(shè)計(jì)系統(tǒng),不僅實(shí)現(xiàn)了帶式輸送機(jī)中間架的三維參數(shù)化設(shè)計(jì),還可以根據(jù)用戶的需要實(shí)現(xiàn)相關(guān)零件的自動(dòng)裝配。在實(shí)際應(yīng)用中,根據(jù)輸入的相關(guān)參數(shù),直接生成三維模型,準(zhǔn)確的反映出模型特征屬性,避免了大量的重復(fù)性建模工作,大大提高了設(shè)計(jì)效率。通過裝配可以反映出模型的干涉,提高了設(shè)計(jì)可靠性,降低了設(shè)計(jì)成本,這對(duì)帶式輸送設(shè)計(jì)技術(shù)的發(fā)展具有重大意義,成為未來發(fā)展的主要趨勢(shì)。
[1]韓素蘭,郭術(shù)義,趙俊龍,等.基于AutoLISP的帶式輸送機(jī)中間架生產(chǎn)圖圖庫的開發(fā)技術(shù)研究[J].華北水利水電大學(xué)學(xué)報(bào)(自然科學(xué)版),2015,36(5):89-92.
[2]邰金華,上官同英,孔垂雨.基于SolidWorks的帶式輸送機(jī)標(biāo)準(zhǔn)件庫二次開發(fā)[J].煤礦機(jī)械,2012,33(2):211-213.
[3]陳 毅.基于SolidWorks二次開發(fā)的齒輪參數(shù)化系統(tǒng)設(shè)計(jì)[J].機(jī)械制造與自動(dòng)化,2009,38(1):26-28.
[4]王宗彥,曲昀卿.SolidWorks機(jī)械產(chǎn)品高級(jí)開發(fā)技術(shù)[M].北京:北京理工大學(xué)出版社,2012.
[5]張世化,韋 鐵.DTII(K)型帶式輸送機(jī)設(shè)計(jì)選型手冊(cè)(下冊(cè))[M].焦作:焦作市科瑞森機(jī)械制造有限公司,2013:48-56.
[6]陳超群,胡其登.Solidworks高級(jí)裝配教程[M].北京:機(jī)械工業(yè)出版社,2014.
[7]田 源,王 欣,許 濱,等.基于SolidWorks二次開發(fā)的自動(dòng)裝配技術(shù)研究與應(yīng)用[J].機(jī)械科學(xué)與技術(shù),2012,31(5):703-707.
[8]易炳剛,汪 雪.基于VB的SolidWorks自動(dòng)裝配技術(shù)研究[J].機(jī)械工程與自動(dòng)化,2013(1):94-96.
Parametric System Design of Belt Conveyor Middle Frame Based on SolidWorks
HAN Su-lan,LIU Xun
(North China University of Water Resources and Electric Power,Zhengzhou 450045,China)
For different forms and types of middle frame of the DTII(K)type belt conveyor,using Visual Basic 6.0 as development platform to secondary development the SolidWorks software.On the basis of analyzing the different type and variety of middle frame,use parameters driven design method to realize the parametric design of the middle frame.Using the API function provided by SolidWorks,through traversal features for parts to accomplish the automatic assembly of the middle frame.This system significantly improves the design efficiency and reduces the labor intensity of designer.
middle frame;SolidWorks;Visual Basic;parametric design;automatic assembly
TP319
A
1672-545X(2017)09-0200-04
2017-06-10
“帶式輸送機(jī)機(jī)架三維設(shè)計(jì)系統(tǒng)開發(fā)與應(yīng)用”橫向項(xiàng)目
韓素蘭(1965-),女,河南輝縣人,副教授,碩士,主要從事工程圖學(xué)與CAD/CAM方面的教學(xué)及研究。