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