【正文】
_”文件夾內(nèi)。 Hello Pro_E 是提示信息,必須與信息文件中一致。其函數(shù)如下:ProMenubarmenuPushbuttonAdd(MyMenu, MainBtn1, Gear, Hello Pro_E, NULL, PRO_B_TRUE, cmd_id, MsgFile)。PushButton_cmd_id1)Spring1Fn為該按鈕的動(dòng)作函數(shù),即當(dāng)單擊此按鈕,便調(diào)用此函數(shù),產(chǎn)生相應(yīng)動(dòng)作。ProCmdActionAdd()函數(shù)的作用是設(shè)置菜單按鈕的動(dòng)作函數(shù)。其函數(shù)如下:ProMenubarmenuMenuAdd(UserMenuBar, SubMenu1, SubMenu1, NULL, PRO_B_TRUE, MsgFile)UserMenuBar表示這個(gè)下級(jí)菜單是掛接在此菜單項(xiàng)名下。注意,在生成的下級(jí)子菜單中必須至少包含一項(xiàng)菜單項(xiàng),否則將不顯示下級(jí)子菜單。MsgFile為菜單信息文件名,這里定為。必須與信息文件該段的標(biāo)識(shí)關(guān)鍵字相同。函數(shù)的返回值類型為ProError,調(diào)用成功返回PRO_TK_NO_ERROR(0),否則返回PRO_TK_GENERAL_ERROR(1)。user_terminate()函數(shù)在Pro/ENGINEER終止同步模式的Pro/TOOLKIT應(yīng)用程序時(shí)調(diào)用(如退出Pro/ENGINEER將終止應(yīng)用程序的運(yùn)行),該函數(shù)由用戶定義,其中可以不執(zhí)行任何動(dòng)作。user_initializ()函數(shù)是Pro/TOOLKIT應(yīng)用程序的初始化函數(shù),主要用來(lái)對(duì)同步模式的Pro/TOOLKIT應(yīng)用程序進(jìn)行初始化,任何同步模式的應(yīng)用程序要在Pro/ENGINEER系統(tǒng)中加載都必須包含該函數(shù)。最后才編寫(xiě)程序主體部分。如下圖所示49。圖48 輸出路徑設(shè)置對(duì)Visual C++,便可以編寫(xiě)程序了。在“Project Settings”中的“C/C++”選項(xiàng)頁(yè)中選擇“Generate browse info”復(fù)選框,并且在“Debug info:”下拉列表中選擇“None”,具體設(shè)置如圖47。 external symbol連接錯(cuò)誤均可忽略,并可生成在Pro/ENGINEER系統(tǒng)正常運(yùn)行的Pro/TOOLKIT應(yīng)用程序。具體設(shè)置如圖45。圖43 包含文件路徑設(shè)置在“Show Directorise for:”下拉列表中選擇“Library files”,加入“...\PROTOOLKIT\I486_NT\OBJ”一項(xiàng),設(shè)置如圖44。Pro/TOOLKIT頭文件位于protoolkit\includes文件夾中。、def模塊定義文件以及rc資源文件等。單擊Finish按鈕,進(jìn)入New Project Information窗口后,單擊OK按鈕,完成工程文件框架的建立。單擊OK按鈕。在“New”對(duì)話框中選擇“Projects”選項(xiàng)卡,選擇MFC AppWizard(dll)項(xiàng)。 編寫(xiě)菜單操作源程序編寫(xiě)完菜單信息資源文本后,還須使用Pro/TOOLKIT提供的菜單操作函數(shù)來(lái)實(shí)現(xiàn)每個(gè)菜單的功能,即編寫(xiě)菜單項(xiàng)菜單的動(dòng)作函數(shù)。圖42 “齒輪”菜單圖42所示英文菜單的資源文件如下:Design Design Gear Gear Hello Pro_E Hello! This is a Pro/TOOLKIT develop. 圖42所示中文菜單的資源文件如下:Design Design 畢業(yè)設(shè)計(jì) Gear Gear 齒輪參數(shù)化建模 Hello Pro_E 基于Pro/TOOLKIT的齒輪二次開(kāi)發(fā)程序! 在記事本編輯完以上資源后,保存為純文本格式(.txt),并且命名為Message。按第2行或第3行的語(yǔ)言取決于系統(tǒng)環(huán)境變量lang的設(shè)置。這里為中文。第2行:在菜單項(xiàng)或菜單項(xiàng)提示上顯示的英語(yǔ)文本。在信息文件中以4行為一組,其含義為:第1行:Pro/ENGINEER系統(tǒng)可以識(shí)別的關(guān)鍵字。 編寫(xiě)菜單信息資源文件信息資源文件用于提供菜單的標(biāo)簽文本(包括其他語(yǔ)言版本的標(biāo)簽)和幫助信息,如果要向Pro/ENGINEER中添加菜單,就必須使用信息資源文本,否則所添加的菜單不會(huì)在Pro/ENGINEER菜單欄中出現(xiàn)。該命令由菜單篩選按鈕和菜單單選按鈕組啟動(dòng)。即多層菜單的次級(jí)菜單;l 菜單的按鈕(Push button)下拉菜單中用來(lái)啟動(dòng)一組指令的菜單項(xiàng),如File菜單條中的Edit按鈕;l 菜單的復(fù)選按鈕(Check button)下拉菜單中用來(lái)執(zhí)行開(kāi)關(guān)動(dòng)作的菜單項(xiàng),如View菜單條中的Model Tree(模型樹(shù)) 顯示或關(guān)閉菜單項(xiàng);l 菜單的單選按鈕組(Radio group)下拉菜單的一組選項(xiàng)中只能設(shè)置其中一項(xiàng)的菜單項(xiàng);l 命令(Command)從菜單條或工具欄圖標(biāo)激活的一個(gè)執(zhí)行過(guò)程;l 命令標(biāo)識(shí)號(hào)(Command id)指向某一命令的指針。添加菜單的大致過(guò)程如下:編寫(xiě)信息資源文件(信息資源文件用于提供菜單的標(biāo)簽文本和幫助信息);使用Pro/TOOLKIT的函數(shù)編寫(xiě)源程序,給菜單按鈕設(shè)置調(diào)用函數(shù)(動(dòng)作函數(shù));注冊(cè)運(yùn)行程序。Pro/ENGINEER菜單包括菜單欄、菜單、菜單項(xiàng)(按鈕)、篩選按鈕、單選按鈕等等,如圖41示。 4 菜單與對(duì)話框的開(kāi)發(fā)設(shè)計(jì) 菜單的設(shè)計(jì)菜單是Pro/ENGINEER的主要用戶界面。 執(zhí)行“Edit/Pattern”命令復(fù)制出其他齒槽,完成齒輪的創(chuàng)建(如圖36所示): 圖36初始齒輪模型齒輪參數(shù)化設(shè)計(jì)程序的修改齒輪創(chuàng)建完成后,系統(tǒng)會(huì)產(chǎn)生一串program,執(zhí)行”Tools/Program/Edit Eesign”命令,系統(tǒng)就會(huì)自動(dòng)打開(kāi)其program文件,內(nèi)容大致如下:VERSIONREVNUM 2323LISTING FOR PART GEARINPUTEND INPUTRELATIONSD=MS*ZSDB=MS*ZS*COS(ALFA)DA=MS*(ZS+2*HA)DF=MS*ZS2*MS*(HA+C)B=K*DEND RELATIONSADDFEATURE(initial number 1)INTERNAL FEATURE ID 1DATUM PLANENO. ELEMENT NAME INFO 1 Feature Name Defined2 Constraints Defined Constraint1 Defined Constr Tye X Axis3. Flip Datum Dir Defined4 Fit Defined fit Tye Defaykt…............(1) 此時(shí)在”INPUT”和”END INPUT”之間輸入基本參數(shù)語(yǔ)句和提示語(yǔ)句:ZS NUMBER“Please enter the num_teeth of the gear:”MS NUMBER“Please enter the module number of the gear:”ALFA NUMBER“Please enter the pressure_ang:”K NUMBER“Please enter the width_coefficient of the gear:” (2)在”RELATIONS”和“END RELATIONS” 之間輸入關(guān)系語(yǔ)句:D1=DA/2D2=BD3=DFD4=DBD5=DD16=BD25=BD7=360/(4*ZS) /*漸開(kāi)線3旋轉(zhuǎn)角度D18=360/ZS /*第二齒槽旋轉(zhuǎn)角度D27=360/ZS /*陣列增量尺寸D28=ZS1 /*陣列個(gè)數(shù) 當(dāng)編輯完參數(shù)化程序后保存文件,關(guān)閉文字編輯器,Pro/Engineer信息列會(huì)出現(xiàn)提示信息:”Do you want to incorporate your changes into the model?”Menu ManagerV INPUT SEL﹀ ZS﹀ MS﹀ ALFA﹀ K Select All Unsel All Done Sell Quit Sell 圖37 INPUT SEL 菜單 此時(shí)選擇”YES”按鈕,系統(tǒng)出現(xiàn)”GET INPUT”菜單,點(diǎn)擊”ENTER”,就會(huì)出現(xiàn)如圖37所示的”INPUT SEL”菜單,選擇齒數(shù)項(xiàng)和模數(shù)項(xiàng),: 圖38派生的齒輪模型再次執(zhí)行”Edit/Regenerate”命令,Pro/Engineer會(huì)自動(dòng)執(zhí)行參數(shù)化設(shè)計(jì)程序,彈出圖37所示的菜單,用戶可選擇齒數(shù),模數(shù),壓力角和齒寬系數(shù)并輸入新的參數(shù),系統(tǒng)就會(huì)按用戶輸入的新值自動(dòng)生成新的齒輪。 執(zhí)行“Insert/Extrude/cut”命令,以漸開(kāi)線2及齒根圓曲線為邊界切出第一個(gè)齒槽(由于基圓內(nèi)沒(méi)有漸開(kāi)線,所以基圓內(nèi)的部分可以由一段圓弧代替)。圖33 生成漸開(kāi)線圖33 漸開(kāi)線方程圖34 漸開(kāi)線圖形由圖34【提交】→【完成】得到圖35生成漸開(kāi)線3(如圖35所示): 圖35齒輪基本曲線和齒廓曲線圖(5)第一個(gè)齒槽特征創(chuàng)建執(zhí)行“Edit/Feature Operations/Copy”命令,軸旋轉(zhuǎn)360、(4*ZS)角度生成漸開(kāi)線1。圖31 參數(shù)設(shè)置圖(3).選取【工具】→【關(guān)系】命令,彈出“關(guān)系”對(duì)話框。單擊“確定”按鈕。并預(yù)先設(shè)置各參數(shù)的值?;赑ro/Engineer的標(biāo)準(zhǔn)漸開(kāi)線直齒圓柱齒輪三維模型的建立(1).打開(kāi)Pro/ENGINEER軟件,新建一個(gè)零件,命名為“”,不使用缺省模板,選擇“mmns_part_solid”,進(jìn)入零件設(shè)計(jì)環(huán)境。因?yàn)榕鋵?duì)的齒輪中,小輪負(fù)擔(dān)較重,因此為使大小齒輪工作壽命大致相等,小輪齒面硬度一般要比大輪的高 。 齒輪的參數(shù)化建模直齒圓柱齒輪應(yīng)用最為廣泛,如車輛的驅(qū)動(dòng)齒輪、機(jī)床主軸箱內(nèi)的齒輪、機(jī)械表內(nèi)部齒輪等都是這些齒輪。齒輪傳動(dòng)是機(jī)械傳動(dòng)的重要裝置,具有質(zhì)量小、體積小、傳動(dòng)比大和效率高等優(yōu)點(diǎn),己廣泛地應(yīng)用于汽車、船舶、機(jī)床、礦山冶金等領(lǐng)域,它幾乎適用于一切功率和轉(zhuǎn)速范圍。按制造方法可分為鑄造齒輪、切制齒輪、軋制齒輪、燒結(jié)齒輪等。齒輪應(yīng)用廣泛,種類很多按齒廓曲線可分為漸開(kāi)線齒輪、擺線齒輪、圓弧齒輪等。齒輪的精密鍛壓技術(shù)由于其顯著優(yōu)點(diǎn);正日益受到各國(guó)研究人員的重視,得到了蓬勃發(fā)展。本開(kāi)發(fā)的總體設(shè)計(jì)流程如圖22所示,調(diào)用響應(yīng)圖如圖23所示。齒輪的類型非常多,這里將其分為兩大類:圓柱螺旋齒輪和非圓柱螺旋齒輪。設(shè)計(jì)的對(duì)象是齒輪。由于本設(shè)計(jì)任務(wù)要求運(yùn)行Pro/ENGINEER時(shí),所設(shè)計(jì)零件能自動(dòng)嵌入到Pro/ENGINEER菜單上,兼之動(dòng)態(tài)連接模式(DLL模式)又較為簡(jiǎn)單,運(yùn)行速度比較快,因此本設(shè)計(jì)開(kāi)發(fā)將采用同步模式中的動(dòng)態(tài)連接模式,即DLL模式。動(dòng)態(tài)連接模式是將用戶編寫(xiě)的C程序編譯成一個(gè)DLL文件,這樣Pro/TOOLKIT應(yīng)用程序和Pro/ENGINEER運(yùn)行在同一個(gè)進(jìn)程中,它們之間的信息是直接通過(guò)函數(shù)調(diào)用實(shí)現(xiàn)的。同時(shí),當(dāng)Pro/TOOLKIT應(yīng)用程序執(zhí)行時(shí),Pro/ENGINEER系統(tǒng)是處于停止?fàn)顟B(tài)的。但由于異步模式具有代碼復(fù)雜、執(zhí)行速度慢等缺點(diǎn),因此一般不采用異步模式。異步模式無(wú)需啟動(dòng)Pro/ENGINEER,就能夠單獨(dú)運(yùn)行Pro/TOOLKIT應(yīng)用程序的方法叫異步模式。表21 計(jì)算機(jī)配置項(xiàng)目推薦配置CPU()內(nèi)存512MB以上(建議1G)顯卡顯存32MB以上,推薦使用Geforce4以上的顯卡網(wǎng)卡必須安裝網(wǎng)卡(或使用虛擬網(wǎng)卡) 軟件開(kāi)發(fā)環(huán)境操作平臺(tái):WindowsXP/Vista/Win7;開(kāi)發(fā)平臺(tái):Pro/ENGINEER ;開(kāi)發(fā)語(yǔ)言:Visual C++。本課題是基于Pro/Engineer ,因此只要能夠安裝支持Pro/E 。 圖21開(kāi)發(fā)工具由于Pro/TOOLKIT具有函數(shù)簡(jiǎn)單,應(yīng)用方便等優(yōu)點(diǎn),本課題將使用Pro/TOO