舒鳳玲 仲梁維
摘要摘要:利用高級語言VB.net為開發(fā)工具,對Solid Works進行二次開發(fā),實現(xiàn)刀具選擇庫的刀具選擇、刀具模型圖預(yù)覽以及刀具的參數(shù)化設(shè)計問題。結(jié)合實例詳細闡述了具體的實現(xiàn)方法和開發(fā)技術(shù),并給出了關(guān)鍵代碼和相關(guān)結(jié)果展示,從而完成了刀具快速而準確的選擇,提高了刀具的選取效率,節(jié)省了設(shè)計時間和開發(fā)成本等。
關(guān)鍵詞關(guān)鍵詞:VB.net;Solid Works;二次開發(fā);刀具選擇庫
DOIDOI:10.11907/rjdk.171009
中圖分類號:TP319
文獻標識碼:A文章編號文章編號:16727800(2017)005008003
0引言
Solid Works是基于Windows操作系統(tǒng)的三維設(shè)計軟件,是一種通用的智能型的CAD /CAM軟件,其特征造型與參數(shù)化功能非常強大??梢酝瓿蓮?fù)雜的產(chǎn)品設(shè)計、高性能的大型裝配的設(shè)計修改。它集設(shè)計、分析、加工和數(shù)據(jù)管理于一體,還具有較好的開發(fā)性接口和功能擴充性[1]。
VB.net是在Windows 的環(huán)境下運行,支持可視化編程的、面向?qū)ο蟮?、采用事件?qū)動方式的結(jié)構(gòu)化程序設(shè)計語言。它源自于BASIC編程語言,其開發(fā)的應(yīng)用程序的運行采用事件驅(qū)動原理在VB.net代碼窗口輸入代碼時,對VB.net中對象的屬性、方法、內(nèi)置的函數(shù)和已定義的自定義函數(shù)等,能自動給出拼寫提示,這樣可大大減少編程人員的記憶量,程序員可以輕松的使用VB.net提供的組件快速建立一個應(yīng)用程序[2]。
參數(shù)化設(shè)計本質(zhì)是一種基于約束的產(chǎn)品描述方法,包括圖形的幾何約束和拓撲關(guān)系約束,其中幾何約束為各種尺寸值,稱為可變參數(shù),幾何元素間的各種拓撲關(guān)系信息,稱為不變參數(shù)。在參數(shù)化設(shè)計系統(tǒng)中,可實現(xiàn)圖形在可變參數(shù)的作用下,自動維護所有的不變參數(shù),完成產(chǎn)品設(shè)計模型的快速構(gòu)建。開發(fā)并利用刀具選擇設(shè)計系統(tǒng),能隨時根據(jù)用戶的不同需求進行新產(chǎn)品的設(shè)計更新,可縮短設(shè)計周期,降低成本。
1刀具選擇庫實現(xiàn)方法
本實例利用VB.net支持可視化編程、面向?qū)ο?、采用事件?qū)動方式的特點,并結(jié)合Solid Works軟件,主要使用VB.net軟件進行對話框設(shè)計和驅(qū)動代碼編寫以及運用Solid Works軟件繪制各類刀具的模型圖,實現(xiàn)刀具的快速選擇、刀具模型圖預(yù)覽和刀具的參數(shù)化設(shè)計等功能。
為了方便用戶進行二次開發(fā),Solid Work提供了幾百個API函數(shù),這些API函數(shù)是Solid Works的OLE或COM接口,用戶可以使用VBVBAVCDelphi等高級語言對Solid Works進行二次開發(fā),建立適合用戶需要的、專用的Solid Works功能模塊[3]。同時,由于Solid Works API及其有關(guān)文檔都包括在Solid Works軟件中,任何用戶都可以對其進行二次開發(fā)。
2刀具選擇庫設(shè)計過程
在本實驗中,首先需要根據(jù)用戶需求確定刀具庫的主要功能模塊,明確每個模塊中的刀具種類以及需要進行參數(shù)化設(shè)計的刀具,然后利用Solid Works進行三維建模。所有刀具模型完成之后,在VB.net中創(chuàng)建窗體,并在窗體中添加標簽控件、文本框控件和按鈕控件等,同時在屬性窗口中完成各控件相關(guān)屬性值的設(shè)置。主要設(shè)計流程如圖1所示。
2.1刀具選擇庫界面設(shè)置
刀具選擇庫界面提供了車削刀具、銑削刀具、孔削刀具、拉削刀具、螺紋刀具等刀具的預(yù)覽、刀具種類選擇、模型打開、工程圖打開和模型保存等功能。刀具選擇庫的主要界面內(nèi)容如圖2所示。
2.2Solid Works中的API程序
用Solid Works設(shè)計的每一實體模型均有對應(yīng)的主要設(shè)計步驟及尺寸參數(shù)列表,通過修改此列表即可根據(jù)用戶需求對設(shè)計內(nèi)容進行全面修改,而該列表的修改可通過運行Solid Works中的API程序來實現(xiàn),即通過對API程序的二次開發(fā)可實現(xiàn)零件的參數(shù)化設(shè)計。應(yīng)用程序中對API進行操作, 其結(jié)果就等效于在Solid Works軟件接口中進行相應(yīng)的操作, 而且對API對象的操作,甚至可以完成一些在Solid Works軟件中用交互方式無法實現(xiàn)的操作, 利用API 對象可以實現(xiàn)Solid Works軟件中二次開發(fā)的大部分功能要求。將需要參數(shù)化的尺寸在Solid Works中進行修改,并將此修改過程利用宏命令進行相關(guān)部分的錄制,然后在VB.net相關(guān)控件中編寫代碼,實現(xiàn)與其相關(guān)的功能。利用VB.net開發(fā)Solid Works實現(xiàn)的刀具選擇庫技術(shù),亦可應(yīng)用于其它產(chǎn)品的管理和設(shè)計系統(tǒng)中。由于各模塊相對獨立,信息相對集中,各應(yīng)用程序間又能相互調(diào)用、相互協(xié)作,因此,能最大限度地實現(xiàn)數(shù)據(jù)共享,同時為后續(xù)設(shè)計提供必要的信息條件,提高了設(shè)計效率,也增大了實用價值。
刀具選擇庫功能的實現(xiàn)借助VB.net語言和Solid Works軟件的結(jié)合,由于涉及許多Solid Works API底層命令的調(diào)用,因而利用宏命令進行相關(guān)部分的錄制,在VB.net相關(guān)語法規(guī)則的約束下進行源代碼的改寫,用這種錄制宏的方法可以迅速得到Solid Works的操作命令,這比檢索全英文的API文檔方便且快捷,從而有效提高了編程效率[4]。
2.3刀具選擇功能模塊
本例中的刀具選擇庫主要分為車削刀具、銑削刀具、孔削刀具、拉削刀具、螺紋刀具等5個功能模塊,在每一種模塊下又添加了若干種典型的刀具作為選擇和設(shè)計的對象。
本模塊以焊接式車刀為例,主要實現(xiàn)了刀具的選擇功能。如圖3所示,根據(jù)用戶的不同需求,可以在“選擇刀具種類”的對話框中準確地選擇刀具類型。
2.5刀具參數(shù)化設(shè)計模塊
本模塊主要對刀具進行參數(shù)設(shè)置,參數(shù)一般包括主動參數(shù)和從動參數(shù),主動參數(shù)主要在可視化界面(見圖4)中直接輸入,從動參數(shù)通過在VB.net中定義的關(guān)系直接驅(qū)動生成,從而生成三維模型?;赩B.net和Solid Works進行的參數(shù)化設(shè)計,是提高設(shè)計效率的重要方法之一,特別是對于標準化和模塊化的許多定型產(chǎn)品,通過改變圖形的某一部分或某幾部分的主動參數(shù),就可以實現(xiàn)整個圖形相關(guān)尺寸的完全更新。
參數(shù)化設(shè)計的優(yōu)點在于減少了設(shè)計人員需要輸入的參數(shù),通過后臺程序的運算得出想要的參數(shù),從而進一步完成模型的相關(guān)尺寸變化。在刀具的參數(shù)化設(shè)計中,以刀頭角度為45°的焊接式彎頭外圓車刀進行展示,參數(shù)選擇后進行模型的打開,如圖5所示。
通過上述代碼,不僅能夠?qū)崿F(xiàn)主動參數(shù)(直頭外圓車刀的刀頭)呈現(xiàn)45°的變化,也會將從動參數(shù)(直頭外圓車刀的刀柄)變換為45°,從而達到了刀頭與刀柄的完全配合。
3結(jié)語
本次設(shè)計是以Solid Works2012為開發(fā)平臺,以VB8.0為開發(fā)工具。本實例中的“刀具選擇庫”是在了解Solid Works二次開發(fā)的基礎(chǔ)上,通過對VB.net的代碼編寫以及VB.net與Solid Works之間的連接和驅(qū)動進行一系列的設(shè)計和研究分析[5]。為了設(shè)計和開發(fā)出滿足一定使用性和功能性的“刀具選擇庫”,本實例主要實現(xiàn)了刀具的快速選擇、參數(shù)化設(shè)計、刀具預(yù)覽和工程圖導(dǎo)出等功能。經(jīng)過調(diào)試與運行,達到了預(yù)期的實驗?zāi)繕?,其最大的意義是簡化了刀具設(shè)計的繁雜過程,節(jié)約了大量的設(shè)計時間。快速而準確地選擇和設(shè)計刀具,大大節(jié)約了刀具設(shè)計企業(yè)的人力、物力和時間成本;并且其友好的交互面板設(shè)計和界面化操作降低了對刀具設(shè)計專業(yè)知識的要求,這種刀具選擇庫的實現(xiàn)方法便于企業(yè)對刀具的管理和設(shè)計,提高了企業(yè)的核心競爭力。本實例中以刀具為研究和設(shè)計對象,闡述了基于Solid Works二次開發(fā)的一種設(shè)計思路,此研究方法和相關(guān)技術(shù)也可應(yīng)用于其它產(chǎn)品的設(shè)計和研究。
參考文獻參考文獻:
[1]江洪,李仲興,刑啟恩. Solid Works2003二次開發(fā)基礎(chǔ)與實例教程[M].北京:電子工業(yè)出版社,2003.
[2]陳小平,黃洪超.Visual Basic程序設(shè)計實驗指導(dǎo)及考試指南[M].北京:高等教育出版社,2013.
[3]江洪,魏崢,王濤威.Solid Works二次開發(fā)實例解析[M].北京:機械工業(yè)出版社,2004.
[4]焦青.基于Solid Works的參數(shù)化設(shè)計方法[J].裝備制造技術(shù),2011(8):116117.
[5]田文清,賀小華.基于VB技術(shù)的Solid Works二次開發(fā)與應(yīng)用[J].計算機工程與科學(xué),2009(7):6567.
責任編輯(責任編輯:孫娟)