版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、安徽建筑工業(yè)學(xué)院 畢 業(yè) 設(shè) 計(jì) (論 文) 專 業(yè) 機(jī)械設(shè)計(jì)與制造及其自動(dòng)化 班 級(jí) 06機(jī)械(2)班 學(xué)生姓名 學(xué) 號(hào) 課 題 基于ug二次開發(fā)的齒輪設(shè)計(jì)系統(tǒng)研究 指導(dǎo)教師 2010 年 6 月 10 日摘要隨著計(jì)算機(jī)技術(shù)的飛速發(fā)展,cad已經(jīng)廣泛應(yīng)用于零件設(shè)計(jì)和制造中,但一般的cad軟件都具有廣而博的通用性,難以滿足各類具體產(chǎn)品設(shè)計(jì)的需要,所以以通用cad軟件為基礎(chǔ),根據(jù)本單位的實(shí)際,進(jìn)行不同程度的二次開發(fā)成為產(chǎn)品現(xiàn)代設(shè)計(jì)的重要內(nèi)容。齒輪作為各種機(jī)械傳動(dòng)設(shè)備中的重要裝置,具有傳動(dòng)平穩(wěn),承載能力強(qiáng)等優(yōu)點(diǎn),有著非常廣泛的應(yīng)用前景。但其結(jié)構(gòu)復(fù)雜,設(shè)計(jì)計(jì)算困難,為了提高設(shè)計(jì)效率,增加競(jìng)爭(zhēng)優(yōu)勢(shì),實(shí)
2、現(xiàn)齒輪的三維參數(shù)化精確建模顯得尤為重要。本設(shè)計(jì)的主要研究?jī)?nèi)容包括以下兩部分:首先,深入掌握ug二次開發(fā)方法,選用ug/open api、ug/open grip 、ug/open menuscript和ug/open uistyler作為ug的二次開發(fā)工具,實(shí)現(xiàn)直齒圓柱齒的三維參數(shù)化造型。其次,利用 ug/openapi、vc+技術(shù)、數(shù)據(jù)庫(kù)技術(shù)開發(fā)設(shè)計(jì)了齒輪信息數(shù)據(jù)庫(kù),使工作者方便的查詢齒輪的參數(shù),提高設(shè)計(jì)效率的目的。關(guān)鍵詞:齒輪 ug 二次開發(fā) vc+ 參數(shù)化abstractwith the rapid development of computer, cad has widely used
3、 in part design and manufacturing, but because of the commonality of cad software, it is difficult to meet the specific needs of variable product design, so on the basis of cad software, according to the actual situation to carry out secondary development has become an important work of modern desig
4、n. as an important engineering mechanical transmission apparatus, gears have a very wide application potential because of its advantage, such as high stability and bearing loads. however,the structure of gears are very sophisticated,and design difficulties, to improve the design efficiency and incre
5、ase the competitive capacity, it is very important to realize the 3-d parametric modeling of gears.this paper mainly described the following two parts. first, this project makes use of ug secondary development languages offered by modules of ug/open api,ug/open grip ,ug/open menuscript and ug/open u
6、istyler, and then realizes 3-d parametric modeling of cylindrical spur gear. second, to use of ug/openapi, vc+ technology and database technology developed a gear information database system, this system can convenient inquiry the parameter of gears. it also improves design efficiency.key word: gear
7、 ug secondary development vc+ parameterization目錄第1章 緒論11.1 研究背景11.2 研究目的及意義11.3 國(guó)內(nèi)外研究現(xiàn)狀21.4 論文主要研究?jī)?nèi)容3第2章 ug二次開發(fā)技術(shù)研究42.1 ug及二次開發(fā)的相關(guān)模塊42.1.1 ug軟件的特點(diǎn)42.1.2 ug二次開發(fā)的相關(guān)模塊52.2 ug/open api接口技術(shù)62.2.1 ug/open api的基礎(chǔ)知識(shí)62.2.2 ug/open api的應(yīng)用范圍72.2.3 ug/ipen api運(yùn)行的環(huán)境82.2.4 ug/open api應(yīng)用程序的初始化和終止82.3 ug/open grip編
8、程技術(shù)92.4 ug/open menuscript菜單技術(shù)102.5 ug/open uistyler對(duì)話框技術(shù)122.6本章小結(jié)15第3章 齒輪的參數(shù)化建模研究163.1 參數(shù)化設(shè)計(jì)概述163.1.1 參數(shù)化設(shè)計(jì)定義163.1.2 ug參數(shù)化設(shè)計(jì)方法173.2 漸開線的形成及其特性173.2.1 漸開線的形成的原理173.2.2 漸開線特性183.2.3 漸開線數(shù)學(xué)模型183.3 grip編程生成漸開線直齒輪193.4 齒輪參數(shù)化系統(tǒng)設(shè)計(jì)203.4.1 創(chuàng)建vc+項(xiàng)目203.4.2 編寫回調(diào)函數(shù)213.5 本章小結(jié)22第4章 齒輪數(shù)據(jù)庫(kù)系統(tǒng)開發(fā)234.1 數(shù)據(jù)庫(kù)基礎(chǔ)知識(shí)234.2 odbc
9、數(shù)據(jù)庫(kù)技術(shù)234.3 系統(tǒng)數(shù)據(jù)庫(kù)的建立244.4 在vc中建立可供ug/open api調(diào)用的dll254.4.1 建立應(yīng)用程序框架254.4.2 編寫相應(yīng)的接口函數(shù)274.5 本章小結(jié)27第5章 程序運(yùn)行和實(shí)現(xiàn)結(jié)果285.1 程序編譯、鏈接285.1.1 數(shù)據(jù)庫(kù)相關(guān)程序285.1.2 齒輪參數(shù)化設(shè)計(jì)相關(guān)程序285.2 ug運(yùn)行結(jié)果展示295.3本章小結(jié)30第6章 總結(jié)與展望31致謝32參考文獻(xiàn)33附錄一34附錄二40代碼段一40代碼段二42代碼段三44代碼段四45附錄三47代碼段一47代碼段二48代碼段三48附錄四 科技文獻(xiàn)翻譯53附錄五 畢業(yè)設(shè)計(jì)任務(wù)書65圖表目錄表2-1 常用的頭文件名稱
10、及其描述7圖2-1 grade(grip高級(jí)開發(fā)環(huán)境)的界面9圖2-2 自定義環(huán)境變量對(duì)話框11圖2-3 自定義菜單界面12圖2-4 對(duì)話框?qū)傩远x界面13圖2-5 直齒輪參數(shù)化設(shè)計(jì)對(duì)話框13圖2-6 用戶界面樣式編輯器14圖2-7 對(duì)話框回叫界面14圖2-8 對(duì)話框回叫函數(shù)15圖3-1 漸開線的形成18圖3-2 漸開線的形成19圖3-3 安裝ug項(xiàng)目文檔20圖3-4 ug/open api wizard21圖3-5 屏蔽函數(shù)21圖3-6 步驟(3)操作內(nèi)容22圖4-1 設(shè)計(jì)器選擇界面24圖4-2 表shujuku設(shè)計(jì)25圖4-3 表的數(shù)據(jù)庫(kù)25圖4-4 數(shù)據(jù)庫(kù)注冊(cè)25圖4-5 對(duì)話框設(shè)計(jì)26
11、圖4-6 定義成員變量26圖4-7 定義菜單的消息相應(yīng)函數(shù)27圖5-1 數(shù)據(jù)讀入界面29圖5-2 數(shù)據(jù)庫(kù)1號(hào)齒輪生成圖29圖5-3 數(shù)據(jù)庫(kù)7號(hào)齒輪生成圖30第1章 緒論1.1 研究背景20世紀(jì)70年代以來(lái),一個(gè)以計(jì)算機(jī)輔助設(shè)計(jì)技術(shù)為代表的新的技術(shù)改革浪潮席卷了全世界,它不僅促進(jìn)了計(jì)算機(jī)本身性能的提高和更新?lián)Q代,而且?guī)缀跤绊懙饺考夹g(shù)領(lǐng)域,沖擊著傳統(tǒng)的工作模式。cad技術(shù)經(jīng)歷了曲面造型技術(shù)、實(shí)體造型技術(shù)和參數(shù)化技術(shù)三代飛躍式發(fā)展已經(jīng)、并將進(jìn)一步給人類帶來(lái)巨大的影響和利益。漸開線齒輪作為各種機(jī)械傳動(dòng)設(shè)備中的重要裝置,具有傳動(dòng)比大、效率高、結(jié)構(gòu)緊湊、工作可靠、壽命長(zhǎng)等優(yōu)點(diǎn),廣泛應(yīng)用于機(jī)械、船舶、航空
12、、電力領(lǐng)域。隨著大批優(yōu)秀的三維cad軟件紛紛涌現(xiàn),一般機(jī)械零件的三維設(shè)計(jì)對(duì)普通工程師來(lái)說(shuō)已經(jīng)不再是困難的工作。但是對(duì)于漸開線齒輪,由于其齒廓的復(fù)雜性,一般設(shè)計(jì)者在cad中很難精確造型,繼而影響到后續(xù)的齒輪有限元分析、運(yùn)動(dòng)仿真和數(shù)控加工的操作。cad參數(shù)化設(shè)計(jì)的理念正是解決這一問題的有效途徑。計(jì)算機(jī)輔助設(shè)計(jì)的廣泛應(yīng)用以及計(jì)算機(jī)硬件和軟件技術(shù)水平的迅速提高,為參數(shù)化設(shè)計(jì)提供了一個(gè)良好的基礎(chǔ)。參數(shù)化實(shí)體造型技術(shù)大大提高了模型的生成和修改的速度,在產(chǎn)品的系列設(shè)計(jì)、相似設(shè)計(jì)及專用cad系統(tǒng)開發(fā)方面都具有較大的應(yīng)用價(jià)值。1.2 研究目的及意義目前,流行的cad/cam軟件眾多,軟件功能上也各有千秋,pro
13、/engineer、ug、catia、i-deas等,都是比較通用的大型軟件系統(tǒng)。但任何通用的cad軟件,由于其具有廣而博的通用性,使它在具體應(yīng)用時(shí)不能直接處理特定的產(chǎn)品,難以滿足形形色色具體產(chǎn)品設(shè)計(jì)的需要。為了使其在特定的企業(yè)和特定產(chǎn)品設(shè)計(jì)中最大限度的發(fā)揮其潛力和創(chuàng)造效益,就有必要以通用cad軟件為基礎(chǔ),根據(jù)本單位的實(shí)際,進(jìn)行同程度的二次開發(fā),以提高生產(chǎn)效率,真正發(fā)揮cad軟件的功能。這也是眾多使用通用cad軟件的企業(yè)一項(xiàng)非常迫切和重要的工作。本設(shè)計(jì)利用ug二次開發(fā)技術(shù)、vc+技術(shù)、數(shù)據(jù)庫(kù)技術(shù)對(duì)漸開線齒輪進(jìn)行了參數(shù)化設(shè)計(jì),并且開發(fā)設(shè)計(jì)了齒輪信息數(shù)據(jù)庫(kù),既保證了造型的精確性,又可以使工作者方便
14、的查詢齒輪的參數(shù),達(dá)到提高設(shè)計(jì)效率的目的。1.3 國(guó)內(nèi)外研究現(xiàn)狀cad概念是50年代末由麻省理工學(xué)院首次明確提出的,60年代研制成功試驗(yàn)cad系統(tǒng)、70年代cad開始實(shí)用化,從二維的電路設(shè)計(jì)發(fā)展到三維的飛機(jī)、造船、汽車等設(shè)計(jì)。80年代,由于解決了三維幾何造型、仿真等問題,應(yīng)用范圍不斷擴(kuò)大,大中型系統(tǒng)向微型化發(fā)展,出現(xiàn)了應(yīng)用極廣的微機(jī)cad系統(tǒng)和性能優(yōu)良的工作站cad系統(tǒng)。90年代后隨著cad技術(shù)的發(fā)展,其系統(tǒng)性能提高,價(jià)格降低,cad開始在設(shè)計(jì)領(lǐng)域全面普及,成為必不可少的設(shè)計(jì)工具。隨著優(yōu)化設(shè)計(jì)和cad技術(shù)在國(guó)內(nèi)外的飛快發(fā)展,在新產(chǎn)品設(shè)計(jì)方面普遍進(jìn)行參數(shù)優(yōu)化。這樣它們?cè)谧粉櫴袌?chǎng)、縮短技術(shù)準(zhǔn)備周期
15、,保證產(chǎn)品性能方面占了很大優(yōu)勢(shì)。目前,市場(chǎng)上有很多關(guān)于齒輪傳動(dòng)的設(shè)計(jì)系統(tǒng),但是都或多或少地存在著不完善的地方。例如,有的軟件只具有幾何參數(shù)設(shè)計(jì)功能,后來(lái)即使實(shí)現(xiàn)了齒輪造型的功能,模型卻非常粗糙,甚至是使用圓弧等簡(jiǎn)單曲線代替漸開線對(duì)齒廓曲線進(jìn)行造型,不能很好的表達(dá)漸開線齒廓的幾何特性;還有一些軟件沒有充分地注重設(shè)計(jì)者的主觀能動(dòng)性。表現(xiàn)在:一些經(jīng)驗(yàn)參數(shù)的選取直接采用了系統(tǒng)默認(rèn)值,當(dāng)輸入的唯一初始值時(shí),只能設(shè)計(jì)出唯一的一個(gè)結(jié)果;少數(shù)單位也開發(fā)了較為完整的齒輪設(shè)計(jì)軟件,雖然比較適于生產(chǎn)實(shí)際的需要,價(jià)格卻很高。因此在生產(chǎn)實(shí)際中,很多設(shè)計(jì)人員為了在特定的要求下進(jìn)行齒輪的設(shè)計(jì)和造型,仍然使用手動(dòng)設(shè)計(jì)這一古老
16、的方法,這種方法工作量大、效率很低、容易出錯(cuò)。關(guān)于齒輪類零件參數(shù)化三維計(jì)算機(jī)輔助設(shè)計(jì),國(guó)內(nèi)外不少學(xué)者進(jìn)行了研究,李新華分析了edge軟件在齒輪設(shè)計(jì)中存在的不足,以vba作為開發(fā)工具,根據(jù)特征參數(shù)化造型思想,開發(fā)出了基于特征的參數(shù)化齒輪系統(tǒng)生成模塊,提高了繪圖效率。王穗選用大型軟件i-deas作為開發(fā)平臺(tái),通過(guò)選擇齒輪系各零部件有關(guān)的基本結(jié)構(gòu)形式參數(shù)和主要的結(jié)構(gòu)尺寸參數(shù)建立起各零部件及子系統(tǒng)的簡(jiǎn)化模型庫(kù)。朱鳳芹在pro/e環(huán)境下實(shí)現(xiàn)了直齒圓柱齒輪的參數(shù)化設(shè)計(jì),只要改變相關(guān)參數(shù)就可以得到不同參數(shù)的齒輪,達(dá)到縮短齒輪設(shè)計(jì)周期、減少重復(fù)工作的目的。1.4 論文主要研究?jī)?nèi)容本設(shè)計(jì)利用大型軟件ug的二次開
17、發(fā)技術(shù)來(lái)實(shí)現(xiàn)圓柱直齒輪的三維參數(shù)化造型,可通過(guò)改變齒輪的一些基本參數(shù),生成相應(yīng)的齒輪,達(dá)到設(shè)計(jì)要求,并且利用ug/open api、ug/open grip、uistyler和menuscript進(jìn)行菜單和界面設(shè)計(jì),使用戶有一個(gè)良好直觀的操作環(huán)境,建立以產(chǎn)品信息為中心的齒輪數(shù)據(jù)庫(kù)人機(jī)交互界面,并且利用vc+技術(shù)開發(fā)了齒輪數(shù)據(jù)庫(kù)程序應(yīng)用框架,方便查詢齒輪的參數(shù),具體章節(jié)安排如下:第一章緒論。主要闡述了本設(shè)計(jì)的背景、研究目的和意義等,概括了國(guó)內(nèi)外三維cad技術(shù)、參數(shù)化設(shè)計(jì)技術(shù),并對(duì)論文的研究?jī)?nèi)容做了概述。第二章ug二次開發(fā)的方法研究。深入研究ug二次開發(fā)方法,獲取ug二次開發(fā)的完整實(shí)施進(jìn)程。包括:
18、基于vc+6.0開發(fā)平臺(tái)的ug nx應(yīng)用程序接口、主菜單menuscript及工具菜單user tools用戶定制、對(duì)話框uistyler可視化設(shè)計(jì)應(yīng)用、實(shí)現(xiàn)多種用戶界面接口、ug/open api程序三維造型應(yīng)用研究等。第三章齒輪的參數(shù)化建模研究。介紹了ug參數(shù)化設(shè)計(jì)的方法,利用grip語(yǔ)言對(duì)直齒輪進(jìn)行編程,通過(guò)vc實(shí)現(xiàn)ug系統(tǒng)菜單、用戶對(duì)話框和grip齒輪程序的接口設(shè)計(jì),完成齒輪參數(shù)化建模設(shè)計(jì)。第四章齒輪數(shù)據(jù)庫(kù)管理系統(tǒng)開發(fā)。介紹了數(shù)據(jù)庫(kù)的基礎(chǔ)知識(shí)和ug環(huán)境下obdc數(shù)據(jù)庫(kù)訪問接口,利用vc+技術(shù)開發(fā)了齒輪數(shù)據(jù)庫(kù)程序應(yīng)用框架,方便查詢齒輪的參數(shù),達(dá)到提高設(shè)計(jì)效率、有效管理數(shù)據(jù)的目的。第五章系
19、統(tǒng)運(yùn)行。經(jīng)過(guò)前面各章節(jié)的操作后按序?qū)語(yǔ)言進(jìn)行編譯,連接,最終實(shí)現(xiàn)設(shè)計(jì)目的。第六章總結(jié)與展望。對(duì)論文的主要研究工作及取得的成果進(jìn)行了總結(jié),分析了不太完善尚待進(jìn)一步研究的問題。第2章 ug二次開發(fā)技術(shù)研究ug是一個(gè)優(yōu)秀的機(jī)械cad/cae/cam一體化高端軟件,它基于完全的三維實(shí)體復(fù)合造型、特征建模、裝配建模技術(shù),能設(shè)計(jì)出任意復(fù)雜的產(chǎn)品模型,再加上技術(shù)上處于領(lǐng)先地位的cam模塊、內(nèi)嵌的cae模塊,使cad、cae和cam有機(jī)集成,可以使產(chǎn)品的設(shè)計(jì)、分析和制造一次性完成。此外,ug軟件還提供了cad/cae/cam業(yè)界最先進(jìn)的編程工具集,以滿足用戶二次開發(fā)的需要。本章首先討論了ug軟件的模塊、特點(diǎn)
20、及二次開發(fā)工具,然后對(duì)基于 ug/open menuscript開發(fā)工具詳細(xì)介紹了系統(tǒng)菜單開發(fā)方法。2.1 ug及二次開發(fā)的相關(guān)模塊2.1.1 ug軟件的特點(diǎn)unigraphics(簡(jiǎn)稱ug)是全球主流的mcad系統(tǒng),是一個(gè)集計(jì)算機(jī)輔助設(shè)計(jì)、輔助制造、輔助工程和產(chǎn)品數(shù)據(jù)管理(cad/cam/cae/pdm)于一體的機(jī)械工程輔助系統(tǒng)。該軟件具有以下特點(diǎn):(1) 具有良好的用戶界面,絕大多數(shù)功能操作都可通過(guò)鼠標(biāo)完成;在每一步操作中,系統(tǒng)都有相應(yīng)的提示信息,有利于用戶正確完成操作;ug還具有自動(dòng)推理功能。(2) 具有統(tǒng)一、高效的數(shù)據(jù)庫(kù)管理,真正實(shí)現(xiàn)了caid、cad、cae和cam等功能模型之間無(wú)數(shù)
21、據(jù)交換的自由切換,并可實(shí)施并行工程。(3) 引進(jìn)了復(fù)合建模技術(shù),將實(shí)體建模、曲面建模、顯示幾何建模及參數(shù)化建模等多種建模技術(shù)集成為一體,建模功能更加強(qiáng)大、完善和直觀。(4) 以parasolid為實(shí)體建模核心,實(shí)體造型功能處于領(lǐng)先地位,這也是許多其他著名cad/cae/cam軟件實(shí)體造型的基礎(chǔ)。(5) 曲面設(shè)計(jì)以非均勻有理b樣條理論作為基礎(chǔ),復(fù)雜曲面造型功能強(qiáng)大,且可用多種方法生成,尤其適合于汽車外形和汽輪機(jī)葉片等復(fù)雜曲面的造型。(6) 具有很強(qiáng)大的出圖功能,根據(jù)三維實(shí)體模型可方便地直接生成二維工程制圖,可以按照iso標(biāo)準(zhǔn)和國(guó)標(biāo)生成各種剖視圖、標(biāo)準(zhǔn)尺寸、形位公差和漢字說(shuō)明等。提供界面良好的應(yīng)用
22、開發(fā)工具,如ug/open grip、ug/open api。目前支持grip、c、c+、java語(yǔ)言的二次開發(fā),用戶通過(guò)高級(jí)語(yǔ)言接口,使ug的圖形功能與高級(jí)語(yǔ)言的計(jì)算功能緊密結(jié)合起來(lái),有利于開發(fā)專用cad系統(tǒng)。2.1.2 ug二次開發(fā)的相關(guān)模塊ug應(yīng)用開發(fā)(又稱ug二次開發(fā))是指在ug軟件平臺(tái)上,結(jié)合具體的應(yīng)用需求,總結(jié)行業(yè)的設(shè)計(jì)知識(shí)和經(jīng)驗(yàn),開發(fā)面向行業(yè)和設(shè)計(jì)流程的cad系統(tǒng)。ug軟件中的應(yīng)用開發(fā)模塊提供了較為完善的應(yīng)用開發(fā)工具集,利用該工具集可對(duì)ug系統(tǒng)進(jìn)行用戶化裁剪和開發(fā),用以滿足實(shí)際的應(yīng)用需求。ug/open是一系列ug開發(fā)工具的總稱,是ug軟件為用戶和第三方開發(fā)人員提供的最主要的開發(fā)
23、工具,它主要由ug/open api、ug/open grip、ug/open menuscript、ug/open uistyler、ug/open grip nc、ug/open c+六個(gè)部分組成。(1) ug/open api(又稱user function)是一個(gè)允許程序訪問并改變ug對(duì)象模型的程序集。ug/open api封裝了近2000個(gè)ug操作的函數(shù),可以方便地對(duì)ug的圖形終端、文件管理系統(tǒng)和數(shù)據(jù)庫(kù)進(jìn)行操作,絕大多數(shù)的ug操作都可以用ug/open api函數(shù)實(shí)現(xiàn)。ug/open api是最常用的ug應(yīng)用開發(fā)工具。(2) 在ug/open api工具發(fā)布之前,ug的應(yīng)用開發(fā)工具是
24、ug/open grip(graphics interactive programming)。grip是一種專用的交互編程語(yǔ)言,它與ug系統(tǒng)集成,可以實(shí)現(xiàn)ug環(huán)境中的大部分應(yīng)用操作。grip語(yǔ)言與一般的通用語(yǔ)言一樣,有其自身的語(yǔ)法結(jié)構(gòu)、程序結(jié)構(gòu)、內(nèi)部函數(shù)以及與其他通用語(yǔ)言程序相互調(diào)用的接口。雖然grip的功能遠(yuǎn)不如ug/open api強(qiáng)大,但由于其某些獨(dú)特的優(yōu)點(diǎn),仍然有大量用戶在使用。(3) ug/open menuscript是創(chuàng)建用戶化菜單的工具。menuscript支持ug主菜單和快速?gòu)棾鍪讲藛蔚脑O(shè)計(jì)和修改,通過(guò)它可以改變ug菜單的布局,添加新的菜單項(xiàng)以執(zhí)行用戶應(yīng)用開發(fā)程序、user
25、tools文件和操作系統(tǒng)命令等?;诓藛沃谱骷夹g(shù)的menuscript,可以調(diào)用usertools,menuscript所開發(fā)的菜單與usertools開發(fā)的對(duì)話框可以調(diào)用uistyler開發(fā)的對(duì)話框。(4) ug/open uistyler是開發(fā)ug對(duì)話框的可視化工具,其生成的對(duì)話框與ug集成,用戶可以方便、高效地與ug進(jìn)行交互操作。該工具避免了復(fù)雜的圖形用戶接口gui編程,直接將對(duì)話框中的基本控件進(jìn)行組合與布局,可以創(chuàng)建滿足不同功能需求的ug風(fēng)格對(duì)話框。(5) ug/open grip nc允許用戶不通過(guò)交互式的對(duì)話框設(shè)置,而是通過(guò)編程的方式創(chuàng)建ug加工工具的路徑。用戶可以使用grip n
26、c statements、global parameter access symbols(gpas)以及entity data access symbols(edas)來(lái)創(chuàng)建grip nc程序。(6) ug/open c+允許用戶使用c+類來(lái)操作ug的對(duì)象,實(shí)現(xiàn)ug的功能。ug/open c+是ug面向?qū)ο蟮某绦蚓幊探涌?。使用類層次中的方法,用戶可以?chuàng)建、讀取和修改ug的內(nèi)部對(duì)象以及操作ug系統(tǒng)本身。用戶可以通過(guò)繼承ug的基礎(chǔ)類來(lái)定義新的類來(lái)擴(kuò)展類的層次結(jié)構(gòu)。由于ug/open c+使用標(biāo)準(zhǔn)的c+,所以使用模塊編寫的代碼更加簡(jiǎn)潔,可讀性更強(qiáng)。本設(shè)計(jì)中,選擇了ug/open api、ug/ope
27、n grip 、ug/open menuscript和ug/open uistyler作為ug二次開發(fā)的工具。以下幾節(jié)將分別介紹這四種開發(fā)工具。2.2 ug/open api接口技術(shù)2.2.1 ug/open api的基礎(chǔ)知識(shí)簡(jiǎn)單說(shuō)來(lái),ug/open api是ug與外部應(yīng)用程序之間的接口,它是ug提供的一系列函數(shù)和過(guò)程的集合。它支持c/c+語(yǔ)言,可以充分發(fā)揮c語(yǔ)言編譯、運(yùn)行效率高,功能強(qiáng)大的特點(diǎn)。并且,這些api函數(shù)可以集成到c+程序中,并利用強(qiáng)大的microsoft visual c+集成環(huán)境進(jìn)行編譯。通過(guò)c/c+語(yǔ)言編程調(diào)用這些函數(shù)和過(guò)程可以實(shí)現(xiàn)如下功能:(1) 對(duì)ug文件及相應(yīng)模型進(jìn)行操
28、作,包括ug模型的構(gòu)建、編輯,裝配體的建立、遍歷,以及工程的創(chuàng)建等。(2) 在ug主界面中創(chuàng)建交互式程序界面。(3) 創(chuàng)建并管理用戶定義對(duì)象等。ug/open api中的這些函數(shù)和過(guò)程定義在ugopen目錄下的頭文件中。表2-1列舉了一些常用的ug/open api頭文件名稱及簡(jiǎn)單描述。表2-1 常用的頭文件名稱及其描述頭文件名稱頭文件描述uf.hug/open api的公共類型和函數(shù)定義uf_assem.h與裝配有關(guān)的函數(shù)和結(jié)構(gòu)定義uf_attr.h與部件和對(duì)象屬性有關(guān)的函數(shù)和結(jié)構(gòu)定義uf_defs.h ug/open接口所需要數(shù)據(jù)類型和宏的定義uf_disp.h與顯示有關(guān)的函數(shù)和結(jié)構(gòu)定義u
29、f_exit.h與用戶出口有關(guān)的函數(shù)和結(jié)構(gòu)定義uf_mb.h與menuscript中對(duì)象屬性操作有關(guān)的函數(shù)和結(jié)構(gòu)定義uf_modl.h與模型創(chuàng)建、查詢有關(guān)的函數(shù)和結(jié)構(gòu)定義uf_modl_features.h與特征建模有關(guān)的函數(shù)和結(jié)構(gòu)定義uf_modl_general.h普通建模有關(guān)的函數(shù)和結(jié)構(gòu)定義uf_object.h與ug對(duì)象及屬性操作有關(guān)的函數(shù)和結(jié)構(gòu)定義uf_object_types.h ug對(duì)象的類型定義uf_part.h與部件文件操作有關(guān)的函數(shù)和結(jié)構(gòu)定義uf_styler.h與uistyler有關(guān)的函數(shù)和結(jié)構(gòu)定義uf_ui.h與用戶界面功能有關(guān)的函數(shù)和結(jié)構(gòu)定義uf_view.h與視圖有
30、關(guān)的函數(shù)和結(jié)構(gòu)定義uf_wave.h與wave功能有關(guān)的函數(shù)和結(jié)構(gòu)定義2.2.2 ug/open api的應(yīng)用范圍ug/ipen api的主要應(yīng)用有以下幾個(gè)方面:(1) 用戶化制定cad環(huán)境。用戶化制定cad環(huán)境,主要包括:提供用戶化cad規(guī)范;提供用戶標(biāo)準(zhǔn)化件庫(kù);定制用戶化cad界面等。(2) 開發(fā)在ug軟件平臺(tái)上的用戶專用軟件。開發(fā)在ug軟件平臺(tái)上的用戶專用軟件主要是指ug軟件沒有提供的及功能不能滿足用戶要求的一些用戶專用軟件,例如capp軟件、dfa軟件、dfm軟件、cad/cae接口軟件等。(3) 開發(fā)ug軟件與其他cad軟件的接口。目前,商品化的cad軟件很多,如catia、pro/
31、e、solidworks、autocad等。使用這些軟件所建的3d模型或2d圖紙都使用各自的數(shù)據(jù)結(jié)構(gòu),有時(shí)需要把它們的數(shù)據(jù)進(jìn)行相互交換。這時(shí),有必要開發(fā)它們之間的接口。2.2.3 ug/ipen api運(yùn)行的環(huán)境ug/ipen api程序能在兩種不同的環(huán)境(依賴于程序的連接方式)下運(yùn)行: internal環(huán)境internal環(huán)境(也叫開發(fā)模式)下的程序只能在ug的界面環(huán)境(session)下運(yùn)行。internal開發(fā)模式下的程序只能在ug的界面環(huán)境下運(yùn)行。在運(yùn)行這些程序時(shí),它們以*.dll的方式被加載到ug的運(yùn)行空間中。該模式有下列特點(diǎn):(1) 執(zhí)行代碼小,連接快。(2) internal的程
32、序一旦被加載到內(nèi)存中,只能通過(guò)ug/open api的卸載功能才能從ug的運(yùn)行環(huán)境中卸載它。(3) 運(yùn)行結(jié)構(gòu)在ug界面的圖形窗口中可見。(4) 入口函數(shù)是ufusr()或ufsta()。 external環(huán)境external開發(fā)模式可以以*.exe的方式在操作系統(tǒng)(windows nt/2000/xp及unix)下直接運(yùn)行,而不在ug環(huán)境中作為ug的子進(jìn)程運(yùn)行。通常,external模式用于那些不需要圖形界面的后臺(tái)運(yùn)行應(yīng)用程序,如打印機(jī)或繪圖儀輸出。在調(diào)用訪問ug格式數(shù)據(jù)的函數(shù)前必須要打開ug的部件(part)文件。絕大部分的ug/open api函數(shù)或子過(guò)程可以在這兩種模式下使用。只有極少數(shù)
33、的函數(shù)(主要是用戶界面函數(shù))只能在internal模式中使用。2.2.4 ug/open api應(yīng)用程序的初始化和終止所有的ug/open api程序必須正確的初始化和終止以保證獲取和釋放ug/open api的執(zhí)行許可權(quán)限。ug/open api提供了兩個(gè)函數(shù)來(lái)做這項(xiàng)工作:uf_initialize()和uf_terminate()。在應(yīng)用程序中,聲明變量之后第一個(gè)調(diào)用的ug/open api函數(shù)必須是uf_initialize(),用以獲取執(zhí)行許可權(quán)限。最后一個(gè)調(diào)用的函數(shù)必須是uf_terminate()用以釋放執(zhí)行許可權(quán)限。2.3 ug/open grip編程技術(shù) grip(graphi
34、cs interactive programming)是一種專用的圖形交互編程語(yǔ)言,開發(fā)者可以用grip編程的方法自動(dòng)實(shí)現(xiàn)在ug下進(jìn)行的絕大部分操作。如圖2-1是grip高級(jí)開發(fā)環(huán)境的界面。grip命令很像英語(yǔ)單詞,語(yǔ)法與basic和fortran相似,有某些情況下對(duì)于一些高級(jí)操作,用grip編程的方法比用ug交互的方法更有效,在ug交互環(huán)境下可以實(shí)現(xiàn)的功能用grip幾乎全都可以實(shí)現(xiàn)。ug提供了一個(gè)名叫ug/open grip的grip語(yǔ)言編輯器,用這個(gè)工具可以編輯、修改、編譯、連接程序。 圖2-1 grade(grip高級(jí)開發(fā)環(huán)境)的界面grip語(yǔ)言與一般的通用語(yǔ)言一樣,有其自身的語(yǔ)法結(jié)構(gòu),
35、程序結(jié)構(gòu),內(nèi)部函數(shù),以及與其他通用語(yǔ)言程序相互調(diào)用的接口。一個(gè)grip語(yǔ)句是由一個(gè)或幾個(gè)grip命令組成,grip命令是grip語(yǔ)言的基本組成部分。grip命令有三種表示格式:(1) 陳述格式。主要用于生成和編輯實(shí)體。(2) gpa符號(hào)格式。gpa是全局參數(shù)存取(global parameter access)的縮寫,用于訪問ug系統(tǒng)中各種對(duì)象的狀態(tài)和參數(shù)。(3) eda符號(hào)格式。eda是實(shí)體數(shù)據(jù)存取(entity data access)的縮寫,用于訪問ug數(shù)據(jù)庫(kù),能夠訪問各種對(duì)象的功能性數(shù)據(jù)。例如在屬性、繪圖和尺寸標(biāo)注以及幾何體等領(lǐng)域與ug進(jìn)行交互操作時(shí),其參數(shù)可用eda格式的命令取得。g
36、rip編程語(yǔ)言是面向工程師的語(yǔ)言,具有簡(jiǎn)單、易學(xué)、易用的特點(diǎn),但是所編寫的程序長(zhǎng)、復(fù)雜,要考慮程序的各個(gè)細(xì)節(jié)問題。因此,grip語(yǔ)言常用于開發(fā)一些規(guī)模比較小的程序。2.4 ug/open menuscript菜單技術(shù)ug/open menuscript是ug的輔助模塊,主要用于制作用戶菜單。它不僅可以使用戶利用ascii文件來(lái)編輯ug的菜單,也可以以一種無(wú)縫集成的方式為用戶開發(fā)的應(yīng)用程序創(chuàng)建菜單。menuscript同時(shí)也提供了一個(gè)菜單欄報(bào)告工具,以幫助用戶查看定制的菜單,診斷錯(cuò)誤。對(duì)于菜單的自定義可以分為如下三個(gè)層次:(1) 自定義菜單:該級(jí)別的自定義允許單個(gè)用戶或管理員重新安排ug的功能,
37、去除在其產(chǎn)品開發(fā)過(guò)程中不需要的功能。(2) 自定義ug功能:該級(jí)別的自定義允許單個(gè)用戶取代或增加標(biāo)準(zhǔn)的ug功能,并添加其自己定義的功能。(3) 添加自定義應(yīng)用:該級(jí)別的自定義其目的在于使用戶或第三方開發(fā)商開發(fā)的應(yīng)用程序完全集成在ug中。該級(jí)別的自定義需要編程實(shí)現(xiàn)。ug的菜單文件是以*.men為擴(kuò)展名的文本文件,可以使用windows的記事本進(jìn)行編輯。ug/open menuscript提供了一套用于定義ug菜單的腳本語(yǔ)言,開發(fā)者可以使用該腳本語(yǔ)言定義和修改菜單及菜單響應(yīng)的行為。但是要使用用戶定義的菜單及其調(diào)用的程序被ug識(shí)別,則必須進(jìn)行ug環(huán)境變量的設(shè)置。以下就本設(shè)計(jì)菜單定制步驟敘述如下:(1
38、) 在自定義目錄e:zhichilun下創(chuàng)建startup、application、grip三個(gè)文件夾。其中自定義的菜單文件在startup文件夾中,對(duì)話框文件在application文件夾中,齒輪參數(shù)化設(shè)計(jì)的grip程序在grip文件夾中。(2) 在“我的電腦”上單擊鼠標(biāo)右鍵,在彈出的快捷菜單中選擇【屬性】命令,在彈出的對(duì)話框中切換到“高級(jí)”選項(xiàng)卡,在該選項(xiàng)卡里單擊【環(huán)境變量】按鈕,新建用戶環(huán)境變量,其中變量名為ugii_user_dir,變量值為自定義目錄。如圖2-2和圖2-3所示。圖2-2 自定義環(huán)境變量對(duì)話框(3) 在剛創(chuàng)建的startup文件夾中,新建txt文檔,重命名為caidan
39、.men。用記事本打開進(jìn)行編輯,內(nèi)容如下:version 120 版本edit ug_gateway_main_menubar 編輯ug剛啟動(dòng)時(shí)的菜單after ug_application 菜單位于首選項(xiàng)之后cascade_button chilun 菜單包含子菜單label 齒輪參數(shù)化設(shè)計(jì)系統(tǒng) 菜單顯示標(biāo)識(shí)end_of_after 關(guān)鍵字結(jié)束menu chilunbutton zhichilun 子菜單label 直齒圓柱齒輪設(shè)計(jì) 子菜單顯示標(biāo)識(shí)actions zhichilun1.dlg 子菜單id號(hào)button xiechilun 子菜單label 斜齒圓柱齒輪設(shè)計(jì) 子菜單顯示標(biāo)識(shí)ac
40、tions xiechilun.dlg 子菜單id號(hào)button zuichilun 子菜單label 直齒錐齒輪設(shè)計(jì) 子菜單顯示標(biāo)識(shí)actions zuichilun.dlg 子菜單id號(hào)end_of_menu 進(jìn)行完上述編輯后保存。注意上述內(nèi)容后面所跟漢字是解釋的,編輯時(shí)不用編入?,F(xiàn)在啟動(dòng)ug,就能看到如圖2-3所示界面。圖2-3 自定義菜單界面2.5 ug/open uistyler對(duì)話框技術(shù)ug/open uistyler模塊為用戶提供了強(qiáng)大的可視化制作ug風(fēng)格對(duì)話框的功能。不僅可以所見即所得的方式生成對(duì)話框,系統(tǒng)還可以自動(dòng)為對(duì)話框生成響應(yīng)的c語(yǔ)言模板文件,使得開發(fā)對(duì)話框的應(yīng)用變得簡(jiǎn)單
41、、快捷。ug/open uistyler主要功能如下:(1) 提供了讓開發(fā)人員建造ug風(fēng)格對(duì)話框的可視化環(huán)境,并能生成ug/open uistyler文件和c代碼,從而使用戶在使用uistyler產(chǎn)生的對(duì)話框時(shí),不必考慮圖形界面(graphical user interface縮寫為dui)的實(shí)現(xiàn)。(2) 利用可視化環(huán)境快速生成ug風(fēng)格對(duì)話框,從而減少開發(fā)時(shí)間。(3) 通過(guò)選取和放置控件,從而能實(shí)現(xiàn)所見即所得。(4) 可以在對(duì)話框中實(shí)現(xiàn)用戶自定義位圖。(5) 提供了屬性編輯器,從而允許開發(fā)人員設(shè)置和修改控件屬性。(6) uistyler產(chǎn)生的對(duì)話框可以在menuscript中被調(diào)用,因此可以實(shí)
42、現(xiàn)在ug菜單上調(diào)用uistyler產(chǎn)生的對(duì)話框,從而將用戶應(yīng)用程序和ug完全融合。uistyler可視化界面由基本對(duì)話框、對(duì)象瀏覽器、屬性編輯器、控件欄和控件編輯工具五部分組成?;緦?duì)話框顯示最終的設(shè)計(jì)結(jié)果;對(duì)象瀏覽器顯示基本對(duì)話框中已設(shè)置的控件信息;屬性編輯器用于編輯指定控件的屬性;控件編輯工具提供了編輯控件的常用工具,包括控件上移、下移、復(fù)制、粘貼和刪除等操作;控件欄列出多種控件供開發(fā)者選用。以下就本設(shè)計(jì)可視化對(duì)話框制作步驟敘述如下:(1) 在ug5.0界面選擇,菜單,開始,所有應(yīng)用模塊,用戶界面樣式編輯器,進(jìn)入uistyler可視化界面。對(duì)話框的標(biāo)題定義為“直齒圓柱齒輪設(shè)計(jì)”,狀態(tài)欄定義
43、提示為“直齒圓柱齒輪設(shè)計(jì)”,對(duì)話框的前綴定義為zhichilun。對(duì)話框的基本屬性定義如圖2-4所示。圖2-4 對(duì)話框?qū)傩远x界面(2) 進(jìn)入對(duì)話框設(shè)計(jì)界面,通過(guò)在適當(dāng)位置放置相應(yīng)的控件,直齒輪設(shè)計(jì)對(duì)話框包括五個(gè)實(shí)型輸入框、三個(gè)整型輸入框和一個(gè)按鈕框,在資源編輯器,屬性,按鈕樣式選項(xiàng)選擇“確定和取消”,每添加一個(gè)框就能在“用戶界面樣式編輯器”中看到。注意“對(duì)象標(biāo)識(shí)符”項(xiàng)中的標(biāo)識(shí),這些標(biāo)識(shí)會(huì)在后面生成的模板c程序中顯示,是相對(duì)應(yīng)的。本設(shè)計(jì)中并沒采用系統(tǒng)默認(rèn)標(biāo)識(shí),而是自定義成自己的。參數(shù)化設(shè)計(jì)自定義的對(duì)話框如圖2-5和圖2-6所示。 圖2-5 直齒輪參數(shù)化設(shè)計(jì)對(duì)話框圖2-6 用戶界面樣式編輯器(3
44、) 設(shè)置回調(diào)函數(shù)。ug風(fēng)格的對(duì)話框有六種基本回調(diào)函數(shù),根據(jù)對(duì)話框?qū)傩远x不同,有效回調(diào)函數(shù)各不相同,直齒輪參數(shù)化設(shè)計(jì)對(duì)話框定義了四個(gè)回調(diào)函數(shù),cancel按鈕回調(diào)函數(shù)為cancel_zhichilun,構(gòu)造回調(diào)函數(shù)為construction_zhichilun,析構(gòu)回調(diào)函數(shù)為destruction_zhichilun,ok按鈕回調(diào)函數(shù)為ok_zhichilun。如圖2-7和圖2-8所示。圖2-7 對(duì)話框回叫界面(4) 將對(duì)話框另存為到前面所建的application文件夾中,注意要選擇c語(yǔ)言,文件名為zhichilun1則ug/open uistyler會(huì)在存放的目錄下自動(dòng)生成zhichilu
45、n1.dlg、zhichilun1.h、zhichilun1_template.c文件。在這三個(gè)文件夾中zhichilun1.dlg為資源文件,定義對(duì)話框樣式及控件事件的響應(yīng)函數(shù)名稱。zhichilun1.h是對(duì)話框的頭文件,用于聲明控件標(biāo)識(shí)和控件事件響應(yīng)函數(shù)的原型。 zhichilun1_template.c模板文件給用戶提供一個(gè)具有對(duì)話框應(yīng)用的ug/open程序框架,該框架程序通過(guò)調(diào)用ug/open api函數(shù)和訪問zhichilun1.dlg資源文件,實(shí)現(xiàn)最初的對(duì)話框界面功能。如果要使響應(yīng)函數(shù)實(shí)現(xiàn)具體的功能。則需要在程序標(biāo)明的位置添加用戶代碼。自此,本設(shè)計(jì)中的菜單和可視化窗口設(shè)計(jì)完成,但
46、是如何實(shí)現(xiàn)其功能還有很長(zhǎng)的路要走,我們將在下一章完成。圖2-8 對(duì)話框回叫函數(shù)2.6本章小結(jié)本章首先闡述ug軟件的特點(diǎn)以及ug/open api、ug/open grip、ug/open、menuscript、ug/open uistyler、ug/open grip nc、ug/open c+六種ug二次開發(fā)工具,隨后詳細(xì)介紹ug/open api、ug/open menuscript以及ug/open uistyler這三種開發(fā)工具的主要功能和使用方法,并選擇了其中最常用的ug/open api、ug/open grip、ug/open menuscript以及ug/open uistyl
47、er作為本次課題的開發(fā)工具。第3章 齒輪的參數(shù)化建模研究3.1 參數(shù)化設(shè)計(jì)概述參數(shù)化設(shè)計(jì)是近幾年才發(fā)展起來(lái)的先進(jìn)造型技術(shù),可以大大提高設(shè)計(jì)效率,并有助于減輕設(shè)計(jì)人員的工作強(qiáng)度。參數(shù)化設(shè)計(jì)是機(jī)械零件設(shè)計(jì)的一個(gè)重要部分,參數(shù)化設(shè)計(jì)的零部件對(duì)于系列化產(chǎn)品尤其重要。廣義上講,參數(shù)設(shè)計(jì)過(guò)程是指從功能分析到創(chuàng)建參數(shù)化模型的整個(gè)過(guò)程。首先根據(jù)零部件的功能,以及零部件與其他零件之間的關(guān)系,確定零部件是否可能進(jìn)行參數(shù)化設(shè)計(jì)。有些零部件是專用零件,有的甚至是單件生產(chǎn),像這樣的零部件不必進(jìn)行參數(shù)化設(shè)計(jì)。如果零部件需要量大,并且需要系列化生產(chǎn),這樣的零件應(yīng)該考慮進(jìn)行參數(shù)化設(shè)計(jì)。所有參數(shù)化設(shè)計(jì)具有重要意義。3.1.1
48、參數(shù)化設(shè)計(jì)定義從產(chǎn)品設(shè)計(jì)到制造的整個(gè)過(guò)程中,尤其在產(chǎn)品設(shè)計(jì)的初步階段,產(chǎn)品的幾何形狀和尺寸不可避免地要反復(fù)修改、協(xié)調(diào)和優(yōu)化。如果利用cad軟件進(jìn)行非參數(shù)化建模,那么哪怕要改變圖形的一個(gè)尺寸和結(jié)構(gòu),也要修改原模型,甚至要重新建模。那么能否利用數(shù)值驅(qū)動(dòng)零部件的特征尺寸,在進(jìn)行產(chǎn)品系列設(shè)計(jì)時(shí),只需要添加多組數(shù)據(jù)即可,若要進(jìn)行重新設(shè)計(jì),只需要修改部分?jǐn)?shù)據(jù)即可呢?其實(shí),這就是參數(shù)化設(shè)計(jì)的思想,現(xiàn)今流行的三維cad造型系統(tǒng)大多提供了參數(shù)化設(shè)計(jì)的功能。參數(shù)化設(shè)計(jì)可以大大提高產(chǎn)品設(shè)計(jì)的效率,同時(shí)可以有效保證產(chǎn)品模型的安全可靠性。尤其對(duì)于形狀比較定型的零部件,用一組參數(shù)約束該幾何圖形的一組尺寸序列,參數(shù)與設(shè)計(jì)對(duì)
49、象的控制尺寸對(duì)應(yīng)顯示。當(dāng)賦予不同的參數(shù)序列時(shí),就可驅(qū)動(dòng)原有幾何模型達(dá)到新的目標(biāo)幾何圖形,從而可以完成高效建模和模型修改。參數(shù)化概念的引入代表了設(shè)計(jì)思想上的一次變革,即從避免改動(dòng)設(shè)計(jì)到鼓勵(lì)使用參數(shù)化修改設(shè)計(jì)。特別是產(chǎn)品參數(shù)化設(shè)計(jì)的引入,使得設(shè)計(jì)人員不需考慮細(xì)節(jié)就能保證零件之間的相互關(guān)聯(lián)性和依賴性,為產(chǎn)品的設(shè)計(jì)和制造的整個(gè)生命周期提供了支持。3.1.2 ug參數(shù)化設(shè)計(jì)方法基于參數(shù)化技術(shù)的ug二次開發(fā)的思路大致分為兩種:一種是利用ug提供的參數(shù)化功能模塊實(shí)現(xiàn)模型的設(shè)計(jì)變量驅(qū)動(dòng),即在模型構(gòu)建過(guò)程中用變量來(lái)控制模型的幾何尺寸和約束關(guān)系。另一種是用程序?qū)崿F(xiàn)參數(shù)化設(shè)計(jì),即利用ug提供的系統(tǒng)開發(fā)環(huán)境應(yīng)用程序接
50、口,用編程的方法實(shí)現(xiàn)參數(shù)設(shè)計(jì)。前者主要是利用ug的全參數(shù)化功能,利用設(shè)計(jì)變量控制模型的形狀和大小,即用戶通過(guò)直接修改變量表中的數(shù)值實(shí)現(xiàn)對(duì)模型的編輯。但此方法對(duì)用戶的要求較高,需要用戶掌握ug的實(shí)體造型、裝配以及對(duì)變量表的編輯等使用技巧。后者是完全的程序驅(qū)動(dòng),一系列形狀相似的模型可以通過(guò)一個(gè)專用程序來(lái)生成,模型的各種參數(shù)存儲(chǔ)于數(shù)據(jù)庫(kù),實(shí)際操作時(shí)用戶只需在數(shù)據(jù)庫(kù)界面中選擇所需的零件型號(hào)。該方法編程量大,對(duì)開發(fā)人員的要求較高,需要掌握扎實(shí)的編程基礎(chǔ)。根據(jù)上面所述的兩種思路,常用的利用ug二次開發(fā)進(jìn)行參數(shù)化設(shè)計(jì)的方法分為兩類,第一類就是利用ug提供的參數(shù)化功能模塊進(jìn)行二次開發(fā),主要有以下方法:電子表格
51、 (spreadsheet)法、關(guān)系表達(dá)式 (expression)法、用戶自定義特征 (udf)法和知識(shí)熔接 (knowledgefusion)法等。另一類就是編程方法,利用ug提供的系統(tǒng)開發(fā)環(huán)境應(yīng)用程序二次開發(fā)接口、高級(jí)語(yǔ)言和數(shù)據(jù)庫(kù)等相關(guān)技術(shù),來(lái)定義產(chǎn)品的參數(shù)化模型,并支持對(duì)參數(shù)化模型的建立、管理和使用,它是一種高級(jí)的參數(shù)化設(shè)計(jì)方法。3.2 漸開線的形成及其特性3.2.1 漸開線的形成的原理當(dāng)有一條直線(常稱發(fā)生線)在一個(gè)半徑為rb的固定圓的圓周上作純滾動(dòng)時(shí),如圖3-1所示,直線上任意點(diǎn)a的運(yùn)動(dòng)軌跡線aa。就是形成的漸開線。圖中半徑為rb的固定圓3直齒輪、斜齒輪及直齒錐齒輪的數(shù)學(xué)模型的建立
52、與參數(shù)化建模稱為漸開線的基圓。由圖可知,當(dāng)發(fā)生線在基圓上做純滾動(dòng)時(shí),發(fā)生線上的一些任意點(diǎn)如b、c都會(huì)展出漸開線。盡管這些漸開線的位置不同,但漸開線的形狀相同,如圖3-1所示。漸開線齒輪的輪齒齒形就是由兩條對(duì)稱的漸開線所形成。圖3-1 漸開線的形成3.2.2 漸開線特性(1) 漸開線自基圓開始,基圓外面才有漸開線,基圓以內(nèi)無(wú)漸開線。(2) 漸開線上任意點(diǎn)的法線必切于基圓,切于基圓的直線必為漸開線上一點(diǎn)的法線。(3) 發(fā)生線與基圓的切點(diǎn)是漸開線在點(diǎn)a的曲率中心,線段是漸開線在點(diǎn)a的曲率半徑,漸開線上越接近基圓的點(diǎn),其曲率半徑越小。(4) 同一基圓上任意兩條漸開線之間各處的公法線長(zhǎng)相等。(5) 漸開
53、線的形狀取決于基圓的大小。在相同展開角處,基圓半徑越大,其漸開線的曲率半徑越大,當(dāng)基圓半徑為無(wú)窮大時(shí),其漸開線變成直線。故齒條的齒廓曲線就是變?yōu)橹本€的漸開線。(6) 漸開線上任意點(diǎn)的法線長(zhǎng)度(也是曲率半徑)等于發(fā)生線在基圓上滾過(guò)的弧長(zhǎng)。3.2.3 漸開線數(shù)學(xué)模型以上討論的漸開線的一些性質(zhì),但在漸開線齒輪三維參數(shù)化造型的過(guò)程中,還要進(jìn)一步知道輪齒漸開線齒形的各點(diǎn)坐標(biāo)值。如圖3-2所示,當(dāng)直線bk沿半徑為rb圓周作純滾動(dòng),直線之上任意一點(diǎn)k的軌跡ak展開漸開線。直線bk稱為漸開線的發(fā)生線。圖3-2 漸開線的形成用ug grip語(yǔ)言實(shí)現(xiàn)漸開線方程詳見附錄一。3.3 grip編程生成漸開線直齒輪gri
54、p作為一種專用的圖形交互編程語(yǔ)言,可以自動(dòng)完成絕大部分操作,包括點(diǎn)線繪制、特征操作、實(shí)體建模、工程制圖等,grip程序需要經(jīng)過(guò)編譯、鏈接后,生成可執(zhí)行程序才能運(yùn)行,建立grip程序有四個(gè)主要步驟:(1) 編寫grip源程序代碼。用grip語(yǔ)言編寫gpip源程序,可以用windows的記事本編寫,并存為*.grs的格式,grip程序除必須有主程序外,還可能包含若干子程序,子程序可以單獨(dú)進(jìn)行編寫和編譯,然后與主程序鏈接。(2) )編譯grip源程序。進(jìn)入 nx open grip環(huán)境,在grip編譯環(huán)境grade中選擇compile功能,輸入文件名*.grs進(jìn)行編譯,若編譯成功,則生成一個(gè)新文件*
55、.gri,即可進(jìn)入鏈接。(3) 鏈接。在grip編譯環(huán)境grade中選擇link功能,輸入文件名*.grs進(jìn)行鏈接,若鏈接成功,將自動(dòng)生成格式為.腳的執(zhí)行文件。(4) 執(zhí)行。運(yùn)行前面編譯鏈接的程序,必須先進(jìn)入ug,在ug環(huán)境下選擇文件,執(zhí)行,nx open來(lái)運(yùn)行。采用編程方法需要掌握grip這種編程命令,而且需要有一定的編程基礎(chǔ),所以公開的文獻(xiàn)中大多數(shù)是采用表達(dá)式方法來(lái)實(shí)現(xiàn)的,但是使用表達(dá)式生成的過(guò)程中,用到了修剪等建模操作,所以整個(gè)設(shè)計(jì)并沒有實(shí)現(xiàn)齒輪的完全參數(shù)化設(shè)計(jì)。綜合比較,本設(shè)計(jì)將采用grip編程,來(lái)實(shí)現(xiàn)齒輪的完全參數(shù)化設(shè)計(jì)。具體程序源代碼見附錄一。在本設(shè)計(jì)自定義目錄e:zhichilu
56、n下新建文件夾grip,在文件夾grip中新建txt文檔,重命名為zhichilun.grs,編輯附錄1中源代碼后保存。在grip編譯環(huán)境中編譯,鏈接。這時(shí)可以在文件夾grip中看到zhichilun.gri和zhichilun.grx兩個(gè)文檔。其中zhichilun.grx是可執(zhí)行文件,它從可視化界面讀取參數(shù)后就能生成齒輪。至于如何將它和前面建立菜單、可視化界面鏈接起來(lái),將在下一節(jié)中實(shí)現(xiàn)。3.4 齒輪參數(shù)化系統(tǒng)設(shè)計(jì)3.4.1 創(chuàng)建vc+項(xiàng)目(1) 我們首先要檢查vc安裝目錄c:program filesmicrosoft visual studiocommonmsdev98template下是否有ugopen_v19.awx和ugopen_v19.hlp這兩個(gè)文件,若有則進(jìn)入步驟(2),沒有則可在網(wǎng)上下
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024-2025學(xué)年高中語(yǔ)文上學(xué)期第5周 荊軻刺秦王教學(xué)設(shè)計(jì)
- 2023一年級(jí)語(yǔ)文上冊(cè) 第四單元 4 四季配套教案 新人教版
- 2024年企業(yè)員工培訓(xùn)住宿全面承包合同
- 2024年專業(yè)版:客戶商業(yè)數(shù)據(jù)保密協(xié)議
- 2024年尾礦砂石料處理與資源化利用合同
- 2024宿舍健身設(shè)施使用與管理合同
- 2024年企業(yè)間關(guān)于維生素C產(chǎn)品買賣合同
- 2024外教錄用合同的風(fēng)險(xiǎn)管理與防范
- 2024年平房交易指導(dǎo)合同
- 2024學(xué)校轉(zhuǎn)讓后學(xué)生學(xué)籍轉(zhuǎn)移合同
- 42-1公共秩序與治安管理
- 高中英語(yǔ)《新題型-讀后續(xù)寫》公開課優(yōu)秀課件(經(jīng)典、完美、值得收藏)
- 大學(xué)語(yǔ)文莊子·秋水(課堂)課件
- 河北省滄州市各縣區(qū)鄉(xiāng)鎮(zhèn)行政村村莊村名居民村民委員會(huì)明細(xì)
- 農(nóng)貿(mào)市場(chǎng)設(shè)計(jì)要點(diǎn)
- 統(tǒng)計(jì)期末氣象預(yù)報(bào)-2014a
- 電動(dòng)汽車結(jié)構(gòu)與檢修測(cè)試題附答案完整版
- 掛面車間操作規(guī)程
- 銑削深攪水泥土攪拌墻技術(shù)規(guī)程-中國(guó)土木工程學(xué)會(huì)
- 員工日常檢查記錄表
- 畫法幾何 華中科大-新3-2
評(píng)論
0/150
提交評(píng)論