徐鵬,趙秀艷,張開興,王麗,劉賢喜*
1.山東農(nóng)業(yè)大學機械與電子工程學院,山東泰安271018
2.山東農(nóng)業(yè)大學信息科學與工程學院,山東泰安271018
基于Pro/Toolkit的膜片彈簧離合器參數(shù)化系統(tǒng)的設計
徐鵬1,趙秀艷2,張開興1,王麗1,劉賢喜1*
1.山東農(nóng)業(yè)大學機械與電子工程學院,山東泰安271018
2.山東農(nóng)業(yè)大學信息科學與工程學院,山東泰安271018
傳統(tǒng)的機械產(chǎn)品開發(fā)過程,從設計到最終成型需要反復修改,使產(chǎn)品開發(fā)的周期長,成本高。而建立一個參數(shù)化系統(tǒng),利用人機交互的方式對產(chǎn)品尺寸進行參數(shù)化處理,可以大大提高設計的效率,縮短設計周期。本文主要講述了利用Pro/Toolkit的二次開發(fā)功能,利用VC作為開發(fā)工具,建立一個以膜片彈簧離合器各零件為主的參數(shù)化系統(tǒng)的具體實現(xiàn)過程。
Pro/Toolkit;二次開發(fā);參數(shù)化設計;離合器
Pro/Engineer是由美國PTC公司開發(fā)的三維CAD/CAM系統(tǒng),它具有基于特征、參數(shù)化、全相關等特點,被廣泛的應用于造型設計、模具設計、加工處理、機構(gòu)分析、有限元分析以及相關數(shù)據(jù)庫管理系統(tǒng)等多個領域。
Pro/E為用戶提供了多種形式的二次開發(fā)工具,常用的有:族表(Family Table)、用戶自定義特征(UDF)、Pro/Program、J-Link和Pro/Toolkit等。其中Pro/Toolkit是基于C語言的功能強大的開發(fā)工具,用戶通過編譯C程序代碼擴充Pro/E的系統(tǒng)功能,從而滿足用戶的特殊要求。[1~2]
本文主要以膜片彈簧離合器為例,利用Pro/Toolkit的二次開發(fā)功能,使用VC語言編寫代碼,用戶通過參數(shù)化界面輸入尺寸參數(shù),實現(xiàn)對膜片彈簧離合器各零部件的快速設計,從而縮短設計周期,提高設計質(zhì)量。下文中敘述實現(xiàn)過程主要以離合器中的壓盤為例,其他零件參數(shù)化過程與壓盤相似。膜片彈簧離合器模型如圖1所示。
基于Pro/Toolkit的參數(shù)化設計有兩種方法,其一是應用特征描述法,利用Pro/Toolkit提供的底層函數(shù)完成特征建模,并且建立人機對話框,從而實現(xiàn)模型的參數(shù)化設計,但這一方法過程繁瑣,且不易生成結(jié)構(gòu)復雜的三維模型;另外一種是采用模型與程序控制相結(jié)合的方法,首先完成三維模型的創(chuàng)建,然后利用Pro/E的關系和參數(shù)功能建立設計參數(shù),由Pro/Toolkit應用程序檢索出這些設計參數(shù),并提供參數(shù)的編輯功能和根據(jù)新參數(shù)實現(xiàn)三維模型再生的功能,這種方法編程相對簡單,且可以生成復雜的三維模型。本文使用方法二實現(xiàn)三維模型的參數(shù)化設計,流程如圖2所示[3]
圖1 膜片彈簧離合器模型爆炸圖Fig.1 The explosive view of diaphragm spring clutch model
圖2 參數(shù)化設計流程圖Fig.2 The flow chart of parametric design
3.1零件模板的建立
建立具有尺寸驅(qū)動的膜片彈簧離合器各零件的三維模板是實現(xiàn)本系統(tǒng)程序設計的基礎。Pro/E采用的是基于特征的方式來實現(xiàn)對三維模型的構(gòu)建,建立參數(shù)化零件模板的基本過程是:首先創(chuàng)建三維模型;然后利用Pro/E工具欄中的參數(shù)功能,輸入?yún)?shù)名稱并賦予初值;最后用工具欄中關系按鈕的功能,添加合理的參數(shù)驅(qū)動關系,將驅(qū)動參數(shù)與非驅(qū)動參數(shù)關聯(lián)起來,如此便實現(xiàn)了參數(shù)化零件模板的創(chuàng)立。以膜片彈簧離合器的壓盤為例,實現(xiàn)添加尺寸驅(qū)動的操作如圖3所示。
圖3 膜片彈簧離合器壓盤參數(shù)關聯(lián)操作過程圖Fig.3 The parameter correlation operation process of pressure plate
3.2菜單設計
本文采用的菜單設計采用輔助菜單(.aux文件)的方式,即在Pro/E原本的菜單基礎上添加菜單按鈕。添加菜單的大體過程是:1.編寫窗口信息文件;2.使用Pro/Toolkit中的函數(shù)編寫程序;3.給菜單按鈕設置動作函數(shù);4.注冊運行應用程序。
窗口信息文件是一種ASII碼文件,必須以純文本的形式保存,用來定義菜單項,菜單項提示等信息。由若干個<提示信息組>組成,每個信息提示組由<提示信息的關鍵字>、<提示信息的內(nèi)容>和兩行<空格>組成。[4]
本文中所提及的膜片彈簧離合器的參數(shù)化是聯(lián)合收割機底盤參數(shù)化系統(tǒng)的一部分,所以下拉菜單的編寫如下:
extern"C"int user_initialize()
{
ProError status;
ProFileName message_file;
uiCmdCmdId cmd_id1;
ProStringToWstring(message_file,"Message.txt");
status=ProMenubarMenuAdd("Parametric","Parametric","Utilities",PRO_B_TRUE,message_file);//一級菜單
status=ProMenubarmenuMenuAdd("Parametric","Transmission","Transmission",NULL,PRO_B_TRUE,message_file);
//二級菜單
status=ProMenubarmenuMenuAdd("Transmission","liheqi","liheqi",NULL,PRO_B_TRUE,message_file);
//三級菜單
status=
ProCmdActionAdd("Part1Design",(uiCmdCmdActFn)Part1Design,uiCmdPrioDefault,AccessDefault,PRO_B_TRUE,
PRO_B_TRUE,&cmd_id1);//四級菜單
return status;
}
extern"C"void user_terminate()
{
AFX_MANAGE_STATE(AfxGetStaticModuleState());
}
完成上述步驟后,編寫注冊文件protk.dat,啟動Pro/E,在工具欄中的輔助應用程序選項中注冊該protk.dat文件,啟動應用程序。完成啟動后菜單界面如圖4所示
圖4 菜單按鈕界面Fig.4 Menu button interface
圖5 膜片彈簧離合器壓盤參數(shù)化界面Fig.5 The parametric interface of pressure plate
3.3可視化界面設計
利用Pro/Toolkit提供的對話框技術,可以設計出風格與Pro/E本身具有的對話框類似的人機交互界面。界面的設計主要涉及兩個方面:一是按界面的布局編寫資源文件;二是針對對話框的功能編寫相應的控制程序。資源文件是用來定義和描述對話框外觀和屬性的文件,其主要內(nèi)容包括對話框各組成部分元件的屬性定義和布局形式;控制程序用來在Pro/E環(huán)境中裝入對話框資源、顯示對話框、設置動作和退出對話框等。本文中用到的資源文件和控制程序均在VC程序中編寫完成。
創(chuàng)建對話框的基本步驟為:1.調(diào)用ProUIDialog()函數(shù)讀取對話框資源文件,以便將對話框調(diào)入內(nèi)存;2.調(diào)用對話框各元件動作設置函數(shù),設置指定元件的動作函數(shù);3.調(diào)用ProUIDialogActivate函數(shù)顯示和激活對話框,接受用戶輸入;4.調(diào)用ProUIDialogDestroy函數(shù)關閉對話框,釋放對話框所占的內(nèi)存[5~7]。
以膜片彈簧離合器壓盤為例,創(chuàng)建的參數(shù)化設計界面的效果圖(圖5)。
3.4界面文本框參數(shù)與模型參數(shù)關聯(lián)
調(diào)用Pro/Toolkit中提供的C程序函數(shù)庫中的的函數(shù)語句,將文本框元件中輸入的參數(shù)與模型各尺寸驅(qū)動的參數(shù)關聯(lián)起來,實現(xiàn)模型的獲取、顯示及參數(shù)化再生等功能。實現(xiàn)過程如下:
int i;
ProMdl part;
ProModelitem feature;
ProParameter p1;//定義參數(shù)
ProParamvalue v1;//定義參數(shù)
ProMdlRetrieve(L"E:\test\ProeTest\Debug\模型.prt",PRO_MDL_PART,&part);//模型地址
ProMdlIdGet(part,&i);//獲得模型句柄
此汽車各輪制動力和已達標,因其是前輪左輪制動力偏小,跑偏趨勢是向右,后輪是右輪制動力偏小,跑偏趨勢是向左,這樣,前后輪跑偏趨勢互相抵消了。本人認為,如上述超標車,因其制動力小的輪的制動力數(shù)據(jù)已超過軸重的30%,而制動力差為非同測車輪,應按合格車對待。
ProMdlDisplay(part);
ProModelitemInit(part,i,PRO_PART,&feature);
ProParameterInit(&feature,L"L1",&p1);//將模型尺寸與參數(shù)關聯(lián)
v1.type=PRO_PARAM_DOUBLE;//定義參數(shù)類型
UpdateData();
v1.value.d_val=文本框1;
ProParameterValueSet(&p1,&v1);//文本框輸入值與參數(shù)關聯(lián)
ProSolidRegenerate((ProSolid)part,PRO_B_TRUE);//模型實現(xiàn)再生
}
3.5參數(shù)化設計演示
程序設計完成后,在Pro/E的輔助應用程序中選擇相應的注冊文件點擊啟動程序,就可以加載運行。以上文中提到的壓盤為例,模型參數(shù)化的演示效果如圖6:
圖6 參數(shù)化設計演示效果Fig.6 The parametric design presentation of pressure plate
本文主要介紹了以膜片彈簧離合器為例,利用Pro/Toolkit實現(xiàn)參數(shù)化設計的過程。通過輸入?yún)?shù)的改變,可以實現(xiàn)不同尺寸的離合器各零部件的快速設計。通過實踐證明,此方法實用并且有效,對包括膜片彈簧離合器在內(nèi)的收割機底盤零部件參數(shù)化系統(tǒng)的建立具有重要意義??梢酝茝V到其他機械零件和產(chǎn)品的三維參數(shù)化系統(tǒng)設計中去。
[1]林清安.Pro/Engineer2001零件設計高級篇[M].上篇.北京:清華大學出版社,2003
[2]李世國.Pro/Toolkit程序設計[M].北京:機械工業(yè)出版社,2003
[3]鐘山,李繼榮.基于Pro/Toolkit二次開發(fā)的齒輪參數(shù)化CAD系統(tǒng)[J].梧州學院學報,2007,17(3):31-35
[4]沈萌紅,關金生.基于Pro/E的三維參數(shù)化零件庫的開發(fā)[J].現(xiàn)代設計與制造,2003,32(7):115-118
[5]孟祥旭,徐延寧.參數(shù)化設計研究[J].計算機輔助設計與圖形學學報,2002,4(11):1086-1090
[6]魯泳,廖永和.零件庫應用等級模型的研究與實現(xiàn)[J].中國制造業(yè)信息化,2006,35(1):48-52
[7]韓國才,張鋰.基于Pro/E的機械零件特征模型庫參數(shù)化設計[J].制造業(yè)自動化,2001,30(1):14-15
The Design of Diaphragm Spring Clutch Parametric System Based on Pro/Toolkit
XU Peng1,ZHAO Xiu-yan2,ZHANG Kai-xing1,WANG Li1,LIU Xian-xi1*
1.College of Mechanical and Electronic Engineering,Shandong Agricultural University,Tai'an271018,China
2.College of Information Science and Engineering,Shandong Agricultural University,Tai'an271018,China
The traditional mechanical product development process,from design to finalize requires repeated modifications, makes a long product development cycle and a high cost.Establish a parameterized system,use the interactive way to product dimensions parameterization processing,can greatly improve the design efficiency,shorten the design cycle.This article is mainly about use the secondary development function of Pro/Toolkit,and use VC as a development tool,to establish a parametric system about the parts of diaphragm spring clutch.
Pro/Toolkit;secondary development;parametric design;clutch
TP311.5
A
1000-2324(2014)04-0541-04
2013-02-11
2013-02-22
“十二五”國家科技支撐重大項目“農(nóng)機專業(yè)底盤數(shù)字化設計與復雜件精益制造”的子課題“農(nóng)機專業(yè)底盤數(shù)字化設計技術研究與示范”(2011BAD20B01)
徐鵬(1987-),男,碩士研究生,專業(yè)方向為現(xiàn)代設計方法與應用.E-mail:409573465@qq.com
*通訊作者:Author for correspondence.E-mail:13515486668@139.com