下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、基于SolidWorks二次開發(fā)的機械零件參數(shù)化建模研究(圖文)論文導(dǎo)讀:SolidWorks是基于Windows平臺的CAD/CAM/CAE/PDM桌面集成系統(tǒng),以參數(shù)化和特征建模的技術(shù),為設(shè)計人員提供了良好的設(shè)計環(huán)境。SolidWorks為用戶提供的API二次開發(fā)接口,由數(shù)以百計的功能函數(shù)構(gòu),這些API函數(shù)使得程序員可以通過程序直接訪問SolidWorks。而由基于COM技術(shù)的VisualC+編程語言開發(fā)的DLL(DynamicLinkLibrary,動態(tài)鏈接庫)文件,可以直接嵌入到SolidWorks內(nèi)部,當(dāng)成功加載后,應(yīng)用程序的菜單就直接出現(xiàn)在SolidWorks主菜單上,與Solid
2、Works自帶的插件一樣,而且還可以單獨測試,進(jìn)行操作時極大地提高了設(shè)計效率,所以是首選的開發(fā)方法。以一個柱塞實體為例,介紹采用VisualC+6.0編程語言對SolidWorks2008進(jìn)行二次開發(fā)、參數(shù)化建模的應(yīng)用。 關(guān)鍵詞:SolidWorks,VisualC+,參數(shù)化建模,二次開發(fā)0 前言 SolidWorks是基于Windows平臺的CAD/CAM/CAE/PDM桌面集成系統(tǒng),以參數(shù)化和特征建模的技術(shù),為設(shè)計人員提供了良好的設(shè)計環(huán)境。在SolidWorks系統(tǒng)中,模型的尺寸、相互關(guān)系和幾何輪廓可以隨時修改,零部件之間和零部件與圖紙之間的更新完全同步,能自動進(jìn)行動態(tài)約束檢查,具有強勁的
3、復(fù)雜曲面造型功能,現(xiàn)已成為微機平臺上主流三維設(shè)計軟件之一。 盡管SolidWorks的功能已非常強大,但由于仍然采用的是手工交互形式建模,不能完全滿足專業(yè)機械CAD系統(tǒng)的需要。免費論文參考網(wǎng)?;诖艘?,如果能通過對SolidWorks進(jìn)行二次開發(fā),針對特定機械結(jié)構(gòu)實現(xiàn)參數(shù)化建模,那么對于三維建模在我國企業(yè)中的推廣將是非常有利的。為了方便用戶進(jìn)行二次開發(fā),SolidWorks軟件提供了開發(fā)工具API(Application Program Interface,應(yīng)用程序接口),用戶可以使用支持API的高級語言如Visual C+、VisualBasic、Delphi等對SolidWorks進(jìn)行二次
4、開發(fā)1,創(chuàng)建出用戶定制的、特有的SolidWorks功能模塊。, 1.SolidWorks的二次開發(fā)技術(shù)和參數(shù)化建模 1.1 SolidWorks的二次開發(fā) SolidWorks為用戶提供的API二次開發(fā)接口,由數(shù)以百計的功能函數(shù)構(gòu),這些API函數(shù)使得程序員可以通過程序直接訪問SolidWorks。所有的函數(shù)都是有關(guān)對象的方法或?qū)傩?,通過對這些對象屬性的設(shè)置和方法的調(diào)用,用戶可以在自己開發(fā)的程序中對SolidWorks進(jìn)行各種操作控制,從而完成零件草圖的繪制和三維模型的建立。 SolidWorks的API接口分為兩種:一種是基于OLE(Object Linking and Embedding,
5、對象的嵌入與鏈接)Automation的IDispath技術(shù);另一種是基于Windows基礎(chǔ)的COM(Compenent Object Model,組件對象模型)技術(shù)?;贠LE Automation的IDispath技術(shù)是一種快速開發(fā)手段,通常作為Visual Basic、Delphi編程語言的接口。而由基于COM技術(shù)的VisualC+編程語言開發(fā)的DLL(Dynamic LinkLibrary,動態(tài)鏈接庫)文件,可以直接嵌入到SolidWorks內(nèi)部,當(dāng)成功加載后,應(yīng)用程序的菜單就直接出現(xiàn)在SolidWorks主菜單上,與SolidWorks自帶的插件一樣,而且還可以單獨測試,進(jìn)行操作時極
6、大地提高了設(shè)計效率,所以是首選的開發(fā)方法。 1.2零部件的參數(shù)化建模 三維建模時應(yīng)對零件進(jìn)行分析,選擇合理的建模方法。參數(shù)化設(shè)計是指通過改動圖形的某一部分或某幾部分的尺寸,自動完成對圖形中相關(guān)部分的修改,即當(dāng)賦予不同的參數(shù)值時,就可自動生成滿足設(shè)計要求的零部件模型,從而實現(xiàn)同類機械產(chǎn)品快速修改與設(shè)計。對于參數(shù)化模型而言,主要有兩個內(nèi)容:幾何關(guān)系和拓?fù)潢P(guān)系。幾何關(guān)系是指具有幾何意義的點、線、面,有確定的位置和大??;拓?fù)潢P(guān)系反映了形體的特性和關(guān)系,如幾何元素之間的鄰接關(guān)系2。免費論文參考網(wǎng)。對于企業(yè)中標(biāo)準(zhǔn)化、通用化和系列化的產(chǎn)品,設(shè)計時所采用的數(shù)學(xué)模型及產(chǎn)品結(jié)構(gòu)都可以將數(shù)據(jù)作為參數(shù)變量,從而實現(xiàn)在
7、SolidWorks環(huán)境下零部件的三維參數(shù)化建模。這種參數(shù)化設(shè)計技術(shù)具有強大的變量驅(qū)動和模型再生功能,可以有效地提高設(shè)計人員的工作效率。 2.用Visual C+ 6.0對SolidWorks進(jìn)行二次開發(fā)的方法 2.1 DLL的創(chuàng)建 基于COM技術(shù)的VisualC+編程語言所開發(fā)的DLL文件,可以通過三種方式創(chuàng)建:一種是使用SWizard.swx工程向?qū)?,第二種是使用ATL Object Wizard向?qū)В谌N是使用用戶自定義向?qū)?。第二種向?qū)?chuàng)建DLL文件,相對來說簡單實用,開發(fā)時間短。在Visual C+中用該向?qū)?chuàng)建DLL工程,加入自己應(yīng)用程序的代碼,編譯鏈接后生成*.dll文件,也就是
8、插件。 2.2DLL的加載 將動態(tài)鏈接庫文件*.dll加載到SolidWorks中,有兩種常用的方法:一種是先運行SolidWorks軟件,然后點擊SolidWorks菜單欄中的【文件】/【打開】菜單命令,在彈出的過濾器中選擇Add-Ins(*.dll),最后選擇所需的DLL文件加載,確定即可;另一種是先將DLL在注冊表中注冊成為SolidWorks系統(tǒng)的插件,然后運行SolidWorks,點擊【工具】/【插件】菜單命令,在彈出的插件對話框中選擇要加載的插件即可。此操作對于一個動態(tài)庫文件只需做一次,以后啟動SolidWorks軟件無需再進(jìn)行加載操作。 3. 對SolidWorks進(jìn)行二次開發(fā)的
9、實例 以一個柱塞實體為例,介紹采用Visual C+ 6.0編程語言對SolidWorks 2008進(jìn)行二次開發(fā)、參數(shù)化建模的應(yīng)用。 (1)啟動Vsiua1 C+,單擊【文件】/【新建】,選擇【工程】選項卡,選擇【ATL COM AppWizard】,輸入工程的位置和名稱,如PUMP,單擊【確定】。 (2)在【Server Type】中選擇【DynamicLink Library(DLL)】選項和【Support MFC】選項,單擊【完成】,系統(tǒng)會給出“新建工程信息”,核對無誤后單擊【確定】。 (3)在Visua1 C+的【Class View】標(biāo)簽中,用鼠標(biāo)右鍵單擊頂部的類圖標(biāo)(PUMP c
10、lasses),在下拉列表中選擇【New ATL Object】。在彈出的對話框中的【Category】列表中,選擇【Solidworks】;在【Object】窗口中,選擇【SwAddIn】圖標(biāo),單擊【下一步】,在【ATL Object Wizard】屬性對話框的【Names】標(biāo)簽中,輸入想在【Short Name】中使用的ATL對象類名,如ppump。其他標(biāo)簽選用默認(rèn)的設(shè)置,點擊【確定】按鈕。 (4)在【Class View】標(biāo)簽中,右擊Ippump接口,選擇【Add Method】,在彈出的【添加方法至界面】對話框的【N方法名】文本框中輸入函數(shù)名,單擊【確定】按鈕。 (5)在【Resour
11、ces View】標(biāo)簽中,雙擊【String Table】,雙擊表中的空白行,在表中添加三個String資源,分別是:ITEM、METHOD和HINT,如圖1所示。然后對ppump.cpp文件的AddMenus()函數(shù)進(jìn)行編輯,在零件菜單下添加代碼。 圖1 添加“String”資源 (6)在【Resources View】標(biāo)簽中,用右鍵的快捷菜單【Insert Dialog】增加一個對話框,用來輸入柱塞體的各項參數(shù),界面如圖2所示。 圖2 柱塞體參數(shù)化建模對話框 (7)雙擊對話框,建立對話框類PistonParameter,并建立七個與Edit對應(yīng)的變量m_SR、m_DR、m_IR、m_OR、
12、m_SL、m_IL、m_SBL,均是雙精度值,初值在“PistonParameter.cpp”中設(shè)定。同時在ppump.cpp文件中添加包含對話框頭文件的語句#include “PistonParameter.h”,建立相應(yīng)的響應(yīng)函數(shù)。 (8)在ppump.cpp文件中對Cppump:CreatePiston函數(shù)進(jìn)行編輯,添加的部分代碼如下: AFX_MANAGE_STATE(AfxGetStaticModuleState() HRESULT retval; /得到當(dāng)前活動文檔 CComPtrpModel; m_iSldWorks-get_IActiveDoc2(&pModel);/創(chuàng)建Mod
13、elDoc2接口指針 retval=pModel-InsertSketch();插入一個草圖 /定義對話框中涉及的七個參數(shù)變量 double SphereRadius;/定義球頭半徑 double SphereToBottoLength;/定義球頭中心到柱塞底面的距離 double PistonOutRadius;/定義柱塞體外徑 pModel-ICreateCenterLine(-0.01,0,0,-0.08,0,0);/創(chuàng)建柱塞體中心軸線 pModel-ICreateCenterLine(0,0.012,0,0,-0.012,0);/創(chuàng)建球頭中心軸線 /定義繪制柱塞草圖的一些關(guān)鍵點 dou
14、bleA3,B3,C3,D3,As3,Bs3,Cs3;/定義關(guān)鍵點的類型 A0=SphereToBottomLength;/給A點賦值 A1=PistonInnerRadius; A2=0; /繪制柱塞體的草圖 pModel-ICreateLine2(A0,A1,A2,B0,B1,B2,&pLine1);/繪制柱塞體底面線 pModel-ICreateLine2(B0,B1,B2,C0,C1,C2,&pLine2);/繪制柱塞體外徑直體部分線 pModel-ICreateArc2(0,0,0,As0,As1,As2,Bs0,Bs1,Bs2,-1,&pCircle);/繪制球頭圓弧 pSelMg
15、r-put_EnableContourSelection(true);/選擇草圖輪廓 pModel-ShowNamedView2(L*上下二等角軸側(cè), 8); pModel-ViewZoomtofit2();/柱塞草圖在屏幕上以上下二等軸側(cè)顯示 /利用特征函數(shù),生成旋轉(zhuǎn)實體 CComPtrpFtManager; pModel-get_FeatureManager(&pFtManager);/獲取FeatureManager的接口指針 CComPtrpFeature; pFtManager-FeatureRevolve(6.28318530718,false,0,swRevolveTypeOne
16、Direction,0,false,false,true,&pFeature);/調(diào)用旋轉(zhuǎn)特征函數(shù)生成旋轉(zhuǎn)特征,即得到柱塞實體 最后選擇菜單欄上的【編譯】/【全部重建】,對所編制的柱塞體參數(shù)化建模程序進(jìn)行編譯。編譯通過后,運行SolidWorks2008軟件,在主菜單上將顯示出新加載的插件“PUMP”及子菜單“柱塞體”,如圖3所示。 圖3 加載的插件 單擊“柱塞體”子菜單,會彈出如圖2所示的“柱塞體參數(shù)化建模對話框”,在對話框中輸入相應(yīng)的數(shù)據(jù),就會在屏幕上自動生成一個柱塞實體,如圖4所示。改變對話框中的數(shù)據(jù)大小,就會得到不同的柱塞實體,這就是參數(shù)化變量驅(qū)動的結(jié)果。 圖4 柱塞體參數(shù)化建模結(jié)果 4.結(jié)論 本文研究了對三維繪圖軟件SolidWorks進(jìn)行二次開發(fā),實現(xiàn)機械零件參數(shù)化建模的過程。設(shè)計實例表明,采用Visual C+語言建立的動態(tài)鏈接庫文件可以很好地實現(xiàn)與SolidWorks的無縫集成,能滿足用戶二次開發(fā)CAD系統(tǒng)的需要。免費論文參考網(wǎng)。在實際應(yīng)用中,通過以上
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度大貨車司機職業(yè)安全培訓(xùn)合同樣本2篇
- 2024柚子果實分揀、包裝與倉儲物流合同3篇
- 2025年廠房電氣設(shè)備安裝與綠色建筑認(rèn)證服務(wù)合同3篇
- 2024簡化版反擔(dān)保金融抵押協(xié)議指導(dǎo)本版B版
- 《性分化異?!氛n件
- 2025年度促銷員突發(fā)事件應(yīng)對合同3篇
- 敦煌學(xué)探秘知到智慧樹章節(jié)測試課后答案2024年秋西安電子科技大學(xué)
- 藝術(shù)館文化協(xié)理員招聘協(xié)議
- 環(huán)保項目工程師勞動合同書
- 藥品倉庫租賃合同:藥品存儲
- 人教部編版八年級數(shù)學(xué)上冊期末考試卷及答案一
- 校服服務(wù)方案投標(biāo)方案
- 養(yǎng)老機構(gòu)安全管理培訓(xùn)課件
- (附答案)2024公需課《百縣千鎮(zhèn)萬村高質(zhì)量發(fā)展工程與城鄉(xiāng)區(qū)域協(xié)調(diào)發(fā)展》試題廣東公需科
- T-CAME 59-2023 醫(yī)院消毒供應(yīng)中心建設(shè)與運行管理標(biāo)準(zhǔn)
- 4s店財務(wù)工作總結(jié)
- 2024外研版初中英語單詞表匯總(七-九年級)中考復(fù)習(xí)必背
- 《海上風(fēng)電場工程巖土試驗規(guī)程》(NB/T 10107-2018)
- 高中新校區(qū)辦學(xué)規(guī)劃方案
- T-ACEF 115-2023 高鹽有機廢水處理應(yīng)用技術(shù)指南
- 腎積水護(hù)理查房
評論
0/150
提交評論