28基于UG二次開發(fā)技術的麻花鉆、擴孔鉆、鉸刀設計系統(tǒng)研究
28基于UG二次開發(fā)技術的麻花鉆、擴孔鉆、鉸刀設計系統(tǒng)研究,28,基于,ug,二次開發(fā),技術,麻花,擴孔,鉸刀,設計,系統(tǒng),研究,鉆研
湘潭大學興湘學院畢業(yè)論文(設計)任務書論文(設計)題目:基于 UG 二次開發(fā)技術的麻花鉆、擴孔鉆、鉸刀設計系統(tǒng)研究 學號: 2006183828 姓名: 劉斌 專業(yè): 機械設計制造及其自動化 指導教師: 張高峰 系主任: 一、主要內容及基本要求1、檢索國內外麻花鉆、擴孔鉆、鉸刀設計制造的發(fā)展動態(tài),分析國內現(xiàn)狀; 2、提出基于 UG 二次開發(fā)技術的麻花鉆、擴孔鉆、鉸刀設計; 3、研究麻花鉆、擴孔鉆、鉸刀的各參數(shù)間的關系并建立數(shù)學模型; 4、在 UG 中利用麻花鉆、擴孔鉆、鉸刀參數(shù)表達式繪制實體模型; 5、深入掌握 UG 二次開發(fā)的各種方法,并熟練運用 UG/OPEN 開發(fā)工具,在建立麻花鉆、擴孔鉆、鉸刀的數(shù)學模型的基礎上,對各麻花鉆、擴孔鉆、鉸刀實現(xiàn)三維造型; 6、在構建麻花鉆、擴孔鉆、鉸刀模塊框架的基礎上,深入研究菜單的制作技術以確定本課題應采用的最佳菜單制作技術; 7、總結實際系統(tǒng)設計的體會和收獲; 8、完成畢業(yè)論文的文稿工作; 9、翻譯英文技術資料。 二、重點研究的問題1、研究麻花鉆、擴孔鉆、鉸刀的各參數(shù)間的關系并建立數(shù)學模型; 2、在 UG 中利用麻花鉆、擴孔鉆、鉸刀參數(shù)表達式繪制實體模型; 3、運用 UG/OPEN 開發(fā)工具,在建立麻花鉆、擴孔鉆、鉸刀的數(shù)學模型的基礎上,對各麻花鉆、擴孔鉆、鉸刀實現(xiàn)三維造型; 4、在構建麻花鉆、擴孔鉆、鉸刀模塊框架的基礎上,深入研究菜單的制作技術以確定本課題應采用的最佳菜單制作技術; 三、進度安排序號 各階段完成的內容 完成時間1 資料檢索、查詢 2010.3.1—2010.3.152 參數(shù)化系統(tǒng)的構思及研究 2010.3.16—2010.3.243 建立數(shù)學模型 2010.3.25—2010.4.104 繪制實體模型并建模 2010.4.11—2010.4.285 菜單制作 2010.4.29—2010.5.106 畢業(yè)論文的撰寫和編輯 2010.5.11—2010.5.237 翻譯英文技術資料 2010.5.24—2010.6.18 答辯準備和交畢業(yè)設計 2010.6.2—2010.6.10四、應收集的資料及主要參考文獻[1]展迪優(yōu). UGNX5.0 產(chǎn)品設計實例精解[M]. 北京:機械工業(yè)出版社,2009. [2] 《金屬切削理論與實踐》編委會. 金屬切削理論與實踐[M]. 北京:北京出版社,1985. [3]黃勇. UG 二次開發(fā)與數(shù)據(jù)庫應用基礎與典型范例[M]. 北京:電子工業(yè)出版社,2008 [4]王慶林. UG/Open API 實用編程基礎[M]. 北京:清華大學出版社,2002. [5]李珊等.基于 UG 的麻花鉆三維建模研究[D].昆明理工大學碩士學位論文,2006. [6]時林. 麻花鉆結構參數(shù)及刃磨方法的研究[D].江南大學碩士學位論文,2006 [7]羅能武. 基于知識工程的麻花鉆三維設計研究及開發(fā)[D].湖南大學碩士學位論文,2008 [8]吳振國等.應用掃掠法對標準麻花鉆進行幾何造型[J].蘭州交通大學,2008 [9]吳家洲.UG 軟件的二次開發(fā)[J].華中科技大學機械學院,2002 I目 錄摘 要Abstract 第 1章 緒 論 .............................................................31. 1課 題 的 研 究 背 景 ..................................................................31. 2課 題 的 研 究 內 容 和 解 決 方 法........................................................4第 2章 UG二 次 開 發(fā) 的 研 究 .................................................62. 1 UG軟 件 概 述 .....................................................................62. 1. 1 UG軟 件 的 功 能 介 紹 ..........................................................62. 1. 2 UG功 能 模 塊 ................................................................62.2 UG二 次 開 發(fā) 相 關 工 具 概 述 ..........................................................72.2.1 UG/Open GRIP.................................................................72.2.2 UG/Open API..................................................................82.2.3 UG/Open Menu Script..........................................................92.2.4 UG/Open UI Styler...........................................................102.2.5 User Tools工 具 .............................................................10第 3章 二 次 開 發(fā) 方 案 的 選 擇 ...............................................123. 1可 行 方 案 .......................................................................123. 2 方 案 選 擇 .......................................................................133. 3利 用 二 次 開 發(fā) 工 具 制 作 系 統(tǒng) 菜 單...................................................143.3.1 設 置 系 統(tǒng) 環(huán) 境 變 量 ............................................................143.3.2制 作 菜 單 ....................................................................15第 4章 以 麻 花 鉆 為 例 介 紹 實 體 設 計 .........................................184.1鉆 刃 曲 線 的 參 數(shù) 方 程 ..............................................................184.2刀 具 螺 旋 槽 截 面 和 螺 旋 線 的 繪 制....................................................194.3刀 具 螺 旋 體 的 生 成 ................................................................204.4刀 具 圓 錐 面 后 刀 面 的 形 成 ..........................................................20第 5章 程 序 設 計 .........................................................245.1 總 體 方 案 設 計 ....................................................................245.2 對 話 框 設 計 ......................................................................255.3程 序 設 計 ........................................................................30結 論 與 展 望 .............................................................38參 考 文 獻 ...............................................................39II致 謝 ...................................................................40附 錄 1錐 柄 麻 花 鉆 程 序 ...................................................41附 錄 2外 文 翻 譯 .........................................................48附 錄 3全 部 程 序 見 光 盤 ...................................................561基于 UG 二次開發(fā)技術的麻花鉆、擴孔鉆、鉸刀設計系統(tǒng)研究摘要:在 機 械 加 工 中 , 孔 加 工 占 機 械 加 工 的 比 例 在30%以 上 , 特 別 是 在 汽 車 與 航 空 等 行 業(yè) 中 的 應 用 極 為 廣泛 , 由 于長 期 以 來 ,麻 花 鉆 、 擴 孔 鉆 、 鉸 刀 的 設 計 大 多 是 靠 工 程 師 的 經(jīng) 驗 來 進 行, 在 設 計 過 程 中 , 難 免 會 出 現(xiàn) 重 復 性 的 工 作, 從而 降 低 了 設 計 效 率。 同 時 通 常 的 設 計 都 是 在 二 維 圖 紙 上 進 行 設 計, 不 能 得 到 可 視 化 的 麻 花 鉆 、 擴 孔 鉆 、 鉸 刀 三 維 造 型,這 就 阻 礙 了 麻 花 鉆 、 擴 孔 鉆 、 鉸 刀 的 數(shù) 控 刃 磨 加 工 及 利 用 一 些 分 析 軟 件 對 麻 花 鉆 、 擴 孔 鉆 、 鉸 刀 的 鉆 削 過程 進 行 分 析 。 在 UG中 利 用 麻 花 鉆 、 擴 孔 鉆 、 鉸 刀 參 數(shù) 表 達 式 繪 制 實 體 模 型 , 實 現(xiàn) 麻 花 鉆 、 擴 孔 鉆 、 鉸 刀 在UG的 設 計 。從 而 實 現(xiàn) 產(chǎn) 品 的 快 速 設 計。 UG/Open二 次 開 發(fā) 模 塊 是 UG軟 件 的 二 次 開 發(fā) 工 具 集 , 利 用 該 模 塊 可 對UG系 統(tǒng) 進 行 用 戶 化開 發(fā) , 可 滿 足 用 戶 進 行 各 種 二 次 開 發(fā) 的 需 求。 學 習 了 UG二 次 開 發(fā) 的 各 種 工 具 , 了 解 了 各 種 工 具 的 特 點 和 適 用 范圍 。 選 擇 UG/Open API編 程 語 言 , 結 合 使 用 UG/Open Menu Script和 UG/Open UI Styler開 發(fā) 工 具 , 實 現(xiàn) 了 基 于UG二 次 開 發(fā) 工 具 的 麻 花 鉆 、 擴 孔 鉆 、 鉸 刀 的 設 計 。關鍵詞:麻 花 鉆 、 擴 孔 鉆 、 鉸 刀 , 二 次 開 發(fā), API2Design Twist Drills, Core drills, Reamers based on the second development technology of UGAbstract: In machining process, hole machining process accounts for more than 30% proportion, especially in the application of automotive and aviation industry. As a long time, the designs of twist drills, reaming drill and reamer are mostly carried out by experienced engineers. In the design process, it would be inevitably repetitive work, and thus reduces the efficiency of design. The design usually drawn in two-dimensional drawings can not be visual for twist drills, reaming drill and reamer with three-dimensional modeling, which hindered the machining of the twist drill, reaming drill and reamer, and the process analysis by some analysis software. In order to achieve the design parameters of twist drills, reaming drill, reamer in UG, the solid model of twist drills, core drills and reamers in the UG are draw. Then we achieve rapid product design. The secondary development for UG / Open of the software module is the secondary development tool set of UG. The module can be customized on the UG system developed to meet user demand for a variety of secondary development. We learn the UG secondary development tools and understand the characteristics of a variety of tools and application. Selecting UG / Open API programming language, and combining UG / Open Menu Script and UG / Open UI Styler development tools, we achieve the design parameters of twist, reaming drill and reamer based on UG second development tools.Keywords: Twist drill, Core drills, Reamers, Secondary development, API3第 1 章 緒論1.1 課題的研究背景在機械加工中,孔加工占機械加工的比例在 30%以上,特別是在汽車與航空等行業(yè)中麻花鉆、擴孔鉆、鉸刀的應用極為廣泛。由于長期以來,他們的設計大多是靠工程師的經(jīng)驗來進行,在設計過程中,難免會出現(xiàn)重復性的工作,從而降低了設計效率。同時通常的設計都是在二維圖紙上進行設計,不能得到可視化的三維造型,這就阻礙了他們的數(shù)控刃磨加工及利用一些分析軟件對他們的鉆削過程進行分析。在 UG中利用他們的參數(shù)表達式繪制實體模型,實現(xiàn)他們在 UG的設計。從而實現(xiàn)產(chǎn)品的快速設計。因此,現(xiàn)代麻花鉆、擴孔鉆、鉸刀的設計建模技術有著廣泛的工程應用背景和研究意義 。隨著計算機技術和現(xiàn)代設計理論與方法的迅速發(fā)展,三維設計軟件尤其是 Unigraphics 在機械零件和產(chǎn)品設計中的日益普及,他們實體在三維軟件特別是在 UG中的繪制變得越來越重要。但基于 UG的設計系統(tǒng)一般都局限于二維輪廓的繪制或三維實體建模難以與 CAD 系統(tǒng)很好地集成, 給他們的 CAD/ CAM 帶來不利影響。建模技術是 CAD的核心技術,造型技術和特征造型技術是新一代繼承化 CAD系統(tǒng)應用研究的熱點理論。目前國內外對二維圖形和簡單三維實體的造型較為成熟。對復雜的三維實體的造型尚不多見,特別是麻花鉆、擴孔鉆、鉸刀這類形狀復雜的三維實體造型設計更少。這有多方面原因:一方面麻花鉆、擴孔鉆、鉸刀二維圖形設計能夠滿足傳統(tǒng)的麻花鉆加工要求;另一方面運用低級 CAD軟件對復雜的三維實體很難實現(xiàn)虛擬造型設計。隨著制造技術的迅速發(fā)展,傳統(tǒng)的二維圖形已不能滿足現(xiàn)在的設計、加工要求。因此,在三維軟件上繪制麻花鉆、擴孔鉆、鉸刀實體變得十分重要。但是,由于麻花鉆、擴孔鉆、鉸刀形狀復雜,且曲線有一定的規(guī)律,繪制槽型曲線較復雜。并且麻花鉆、擴孔鉆、鉸刀各參數(shù)間都有嚴格的函數(shù)關系,再加上隨著當代機械制造業(yè)的不斷發(fā)展,麻花鉆、擴孔鉆、鉸刀的精度要求也越來越高,麻花鉆、擴孔鉆、鉸刀實體的繪制較為麻煩。麻花鉆、擴孔鉆、鉸刀并不是一個標準件,它的各個參數(shù)隨著設計要求的不同而不同。如果每設計一個麻花鉆、擴孔鉆、鉸刀都要畫一個對應的實體部件的話,那不僅增加了設計者的勞動量,還大大降低了設計效率,阻礙了企業(yè)的生產(chǎn)和發(fā)展。參數(shù)化設計是新一代智能化、集成化 CAD系統(tǒng)的核心內容,也是當前CAD技術的研究熱點。用大型的三維軟件實現(xiàn)麻花鉆、擴孔鉆、鉸刀的造型已成為設計者的迫切需求,麻花鉆、擴孔鉆、鉸刀造型有重要的意義:(1)麻花鉆、擴孔鉆、鉸刀的設計與建模系統(tǒng)是 CAD技術與麻花鉆、擴孔鉆、鉸4刀設計相結合的產(chǎn)物,也是兩者發(fā)展的趨勢所在。(2)實現(xiàn)設計過程自動化避免了設計人員手動查閱大量的數(shù)據(jù),也避免了手工取點造型的復雜過程,該系統(tǒng)的開發(fā),可以將手算設計的工作人員從繁瑣、低效的工作中解放了出來。(3)實現(xiàn)麻花鉆、擴孔鉆、鉸刀的設計,可以將設計計算、三維造型與繪制工程圖的無縫結合,同時為麻花鉆、擴孔鉆、鉸刀的有限元分析、機構仿真和數(shù)控加工等工作奠定基礎。(4)采用建立原始麻花鉆、擴孔鉆、鉸刀結構模型并驅動其特征參數(shù),為其它復雜曲面的造型提供了有益的參考。本課題利用 UG的二次開發(fā)技術,為解決麻花鉆、擴孔鉆、鉸刀設計問題提供了可行的方法,通過直接輸入麻花鉆、擴孔鉆、鉸刀設計條件,利用計算得出的有關設計參數(shù),進行實體建模,實現(xiàn)麻花鉆、擴孔鉆、鉸刀的設計,提高麻花鉆、擴孔鉆、鉸刀設計的效率和準確性。1.2 課題的研究內容和解決方法本課題利用大型軟件 UGNX5.0來實現(xiàn)麻花鉆、擴孔鉆、鉸刀的三維造型,通過改變麻花鉆、擴孔鉆、鉸刀的一些基本參數(shù),生成其相應麻花鉆、擴孔鉆、鉸刀。要達到相應的設計要求,首先要知道如何在 UG中繪制麻花鉆、擴孔鉆、鉸刀各部分,要繪制麻花鉆、擴孔鉆、鉸刀必然要知道螺旋槽怎么形成,還應熟知螺旋線的數(shù)學模型,精確畫出螺旋線。畫出麻花鉆、擴孔鉆、鉸刀模型后,還應知道 UG二次開發(fā)的知識,靈活運用 UG系統(tǒng)提供的二次開發(fā)工具,在模型的基礎上編制相應的程序,最后完成麻花鉆、擴孔鉆、鉸刀設計模塊的開發(fā)。開發(fā)具體內容和步驟如下:(1) 研究麻花鉆、擴孔鉆、鉸刀的各參數(shù)間的關系并建立數(shù)學模型;(2) 螺旋線線數(shù)學模型的建立;(3) 深入掌握 UG二次開發(fā)的各種方法,并熟練運用 UG/OPEN 開發(fā)工具,在建立麻花鉆、擴孔鉆、鉸刀的數(shù)學模型的基礎上,對各麻花鉆、擴孔鉆、鉸刀實現(xiàn)三維造型;(4) 在構建麻花鉆、擴孔鉆、鉸刀模塊框架的基礎上,深入研究菜單的制作技術以確定本課題應采用的最佳菜單制作技術。UG 軟件是集 CAD/CAM/CAE一體化的三維軟件,是當今世界上最為先進的計算機輔助設計、制造和分析軟件,在國內使用相當廣泛。另外它所提供的二次開發(fā)語言模塊UG/Open API、UG/Open GRIP和輔助開發(fā)模塊 UG/Open Menu script與 UG/Open UI Styler及其良好的高級語言接口,使 UG的圖形功能和計算功能有機的結合起來,便于5用戶去開發(fā)各種基于自身需要的專用 CAD系統(tǒng)。使用 UG/Open API和 UG/Open GRIP中任何一個模塊都能實現(xiàn) UG的二次開發(fā),再結合輔助模塊,就能開發(fā)出 UG界面的應用模塊。因此,合理利用 UG的二次開發(fā)語言模塊和輔助模塊,就可以實現(xiàn)在 UG環(huán)境下對麻花鉆、擴孔鉆、鉸刀進行設計。6第 2 章 UG 二次開發(fā)的研究Unigraphics(簡稱 UG)是當前世界上最先進和緊密集成的、面向制造行業(yè)的CAID/CAD/CAE/CAM高端軟件。它為制造業(yè)產(chǎn)品開發(fā)的全過程提供解決方案,主要功能包括:概念設計、工程設計、性能分析和制造。此外,UG 軟件還提供了 CAD/CAE/CAM業(yè)界最先進的編程工具集,以滿足用戶二次開發(fā)的需要。本章先討論 UG軟件的主要功能,然后簡單介紹二次開發(fā)各功能模塊的特點和應用。2.1 UG 軟件概述2.1.1 UG 軟件的功能介紹UG是知識驅動自動化技術領域中的領先者。它實現(xiàn)了設計優(yōu)化技術與基于產(chǎn)品和過程的知識工程的組合,顯著地改進了如汽車、航天航空、機械、消費產(chǎn)品、醫(yī)療儀器和工具等工業(yè)的生產(chǎn)率。它為各種規(guī)模的企業(yè)遞交可測量的價值;更快地遞交產(chǎn)品到市場;使復雜產(chǎn)品的設計簡化;減少產(chǎn)品成本和增加企業(yè)的競爭實力。NX是一個交互的計算機輔助設計、計算機輔助制造和輔助工程(CAD/CAE/CAM)系統(tǒng)。CAD 功能自動化是在今天制造公司中見到的一般工程、設計和制圖能力;CAM 功能利用 NX描述完成零件的設計模型,為現(xiàn)代機床提供 NC編程;CAE 功能橫越一廣范的工程學科,提供許多的產(chǎn)品、裝配和零件的性能防真能力。NX 是一個全三維、雙精度系統(tǒng),它允許用戶精確地描述幾乎任一幾何形狀。通過組合這些形狀,用戶可以設計、分析產(chǎn)品和建立他們的工程圖。一但設計完成,制造應用允許用戶選擇描述零件的幾何體,加入制造信息,如刀具直徑并自動生成一刀具位置,源文件(CLSF) ,它可用來驅動大多數(shù) NC機床。目前 UGS公司已經(jīng)推出 NX5產(chǎn)品,本次設計中使用的是 NX5版本的軟件。NX5 的特點是:1、為了數(shù)字化產(chǎn)品開發(fā)集成的自動化;2、在所有開發(fā)學科中的新能力,包括工業(yè)設計、防真、工裝、加工和管理;3、在一個全面的產(chǎn)品生命周期管理(PLM)解決力案內的領先前沿的 CAD、CAE 和 CAM技術。2.1.2 UG 功能模塊利用 NX,可以建立、存儲、恢復和操縱設計與制造信息,典型地通過建立描述一零件的幾何體開始工作。NX 功能被劃分成共同功能的一系列“應用(Application) ”共 18個模塊,各模塊分別為:1、入口(Gateway):對所有其他交互應用的首要必備7的應用;2、建模(Modeling):包括實體、特征、自由形狀、鈑金特征建模和用戶定義特征;3、裝配(Assembilies):支持裝配建模;4、幾何公差模塊(Geometric Tolerancing Module):讓用戶捕捉公差;5、產(chǎn)品和制造信息(PMI Introduction):可用于在三維環(huán)境中對產(chǎn)品形成文檔說明;6、分析(Analysis):包括注塑模流動分析、運動應用和 ICAD;7、制圖(Drafting):可將三維模型生成二維視圖;8、高質量圖像(High Quality Image):生成逼真照片的圖像;9、知識熔接(Knowledge Fusion):允許用戶應用工程知識驅動規(guī)則和設計意圖到 NX中的幾何模型和裝配;10、制造(Manufacturing):可進行虛擬加工和自動加工編程;11、開放的用戶界面設計(Open User Interface Styler):允許用戶和第三方開發(fā)商生成 NX對話框;12、編程語言(Programming Languages):包括 GRIP和 API;13、質量控制(Quallity Control) ;14、走線(Routing):定義圍繞和通過其他 NX裝配的裝配;15、鈑金(Sheet Metal):包括鈑金設計、沖壓和多零件加工的柵格;16、電子表格(Spreadsheet):提供一在 Xess或者電子表格應用和 NX間的智能界面;17、Web Express;18、Wire Harness:可在用于描述產(chǎn)品機械裝配的同一三維空間建立電氣布線的表示。2.2 UG 二次開發(fā)相關工具概述UG軟件提供了 CAD/CAE/CAM業(yè)界最先進的編程工具集,以滿足用戶二次開發(fā)的需要,這組工具集稱之為 UG/Open,是一系列 UG開發(fā)工具的總稱,它們隨 UG一起發(fā)布,以開放性架構面向不同的軟件平臺提供靈活的開發(fā)支持。UG/Open 包括以下幾個部分:UG/Open Menu scrip開發(fā)工具,對 UG軟件操作界面進行用戶化開發(fā),無須編程即可對UG標準菜單進行添加、重組、剪裁或在 UG軟件中集成用戶自己的軟件功能;UG/Open UI Styler開發(fā)工具是一個可視化編輯器,用于創(chuàng)建類似 UG的交互界面,利用該工具,用戶可為 UG/Open應用程序開發(fā)獨立于硬件平臺的交互界面;UG/Open API開發(fā)工具提供了 UG軟件直接編程接口,支持 C、C++、Fortran 和 Java等主要高級語言;UG/Open GRIP開發(fā)工具是一個類似 API的 UG內部開發(fā)語言,利用該工具用戶可生成 NC自動化或自動建模等用戶的特殊應用。利用 UG/Open提供的應用程序和開發(fā)工具,用戶可以在其提供的平臺上開發(fā)出適合自己需要的 CAD產(chǎn)品。2.2.1 UG/Open GRIPUG/Open GRIP(Graphics Interactive Programming)是一種專用的圖形交互編程語言。這種語言與 UG系統(tǒng)集成,實現(xiàn) UG下的絕大多數(shù)的操作。GRIP 語言與一般的通8用語言一樣,有其自身的語法結構,程序結構,內部函數(shù),以及與其他通用語言程序相互調用的接口。一個 GRIP語句是由一個或幾個 GRIP命令組成,GRIP 命令是 GRIP語言的基本組成部分。GRIP 命令有三種表示格式:a)陳述格式。主要用于生成和編輯實體。b)GPA 符號格式。GPA 是全局參數(shù)存取(Global Parameter Access)的縮寫,用于訪問 UG 系統(tǒng)中各種對象的狀態(tài)和參數(shù)。c)EDA 符號格式。EDA 是實體數(shù)據(jù)存取(Entity Data Access)的縮寫,用于訪問 UG數(shù)據(jù)庫,能夠訪問各種對象的功能性數(shù)據(jù)。例如在屬性、繪圖和尺寸標注以及幾何體等領域與 UG進行交互操作時,其參數(shù)可用 EDA格式的命令取得。用 GRIP語言編寫 GRIP源程序,可以在 windows的記事本中進行,記為*.grs;或者在 GRIP高級開發(fā)環(huán)境(GRAD-Grip Advanced Development Environment)中編寫。執(zhí)行 GRIP程序必需進入 UG環(huán)境中,運行 File—Execute UG/Open—Grip。GRIP 編程語言是面向工程師的語言,具有簡單、易學、易用的特點,但是所編寫的程序長、復雜。要考慮程序的各個細節(jié)問題。因此,GRIP 語言常用于開發(fā)一些規(guī)模比較小的程序,例如,同類零件建模、計算和分析、數(shù)據(jù)訪問等程序。與 GRIP語言相比較,用 API函數(shù)編程則可實現(xiàn)功能復雜的操作。2.2.2 UG/Open API作為 UG NX5.0與外部應用程序之間的接口,UG/Open API是一系列函數(shù)的集合。通過 UG/Open API的編程,用戶幾乎能夠實現(xiàn)所有的 UG NX5.0功能。開發(fā)人員可以通過用 C++語言編程來調用這些函數(shù),從而實現(xiàn)用戶的需要。對 UG part文件及相應模型進行操作,包括建立 UG NX5.0模型、查詢模型對象、建立并遍歷裝配體,以及創(chuàng)建工程圖等。在 UG NX5.0中創(chuàng)建交互式程序界面。創(chuàng)建并管理用戶定義對象等。應用函數(shù)時應注意所有的 UG/Open API應用必須及時進行初始化和終止,以確保獲取或者釋放 UG/Open API的執(zhí)行許可權限。初始化函數(shù)是 UF_ initialize (),當開始調用 UG/Open API的函數(shù)時應先調用 UF_ initialize()來獲取執(zhí)行許可權限。一般來說,我們在變量聲明完成后,第 1個調用UG/Open API的函數(shù)就是 UF_ initialize()。終止函數(shù)是 UF_ terminate(),當不再調用 UG/Open API的函數(shù)時必須調用 UF_ terminate()來釋放執(zhí)行許可。UG/Open API程序能在兩種不同環(huán)境(依賴于程序的連接方式)下運行,即 Internal環(huán)境(也稱為“Internal開發(fā)模式” )和 External模式。其中 Internal環(huán)境下的程序只能在 UG NX5.0的界面環(huán)境(session)下運行,在運行這些程序時他們被加載到 UG NX5.0的運行空間中(UG NX5.0分配的內存) ;External 模式開發(fā)的程序能在操作系統(tǒng)(Windows NT/2000/XP及 UNIX)下運行,不在 UG NX5.0環(huán)境中或作為 UG NX5.0的子進程運行。盡管沒有圖形顯示,但 UG/Open API提供了函數(shù)用于打印機或繪圖儀輸出,也可以輸9出為 CGM文件等其他數(shù)據(jù)文件。2.2.3 UG/Open Menu ScriptUG/Open Menu Script不僅可以使用戶利用 ASCⅡ文件來編輯 UG的菜單,也可以以一種無縫集成的方式為用戶開發(fā)的應用程序創(chuàng)建菜單。Menu Script同時也提供了一個菜單欄報告工具,以幫助用戶查看定制的菜單,診斷錯誤。對于菜單的自定義大致可以分為如下三個層次。(1)自定義菜單該級別的自定義允許單個用戶或者管理員重新安排 UG的功能,去除在其產(chǎn)品開發(fā)過程中不需要的功能。這種級別的自定義不需要編程實現(xiàn)。(2)自定義 UG功能該級別的自定義允許單個用戶或者管理員取代或增加標準的 UG功能,并添加其自己定義的功能。(3)添加自定義應用該級別的自定義其目的在于使用戶或第三方開發(fā)商開發(fā)的應用程序完全集成在 UG中。該級別的自定義需要編程實現(xiàn)。UG的菜單文件是擴展名為.men 的文本文件,可以使用 Windows 的記事本進行編輯。UG/Open Menu Script提供了一套用于定義 UG菜單的腳本語言。實際上,UG 系統(tǒng)的菜單文件也是用該腳本語言編寫的。UG 為主菜單欄、快捷菜單欄提供了豐富的系統(tǒng)菜單文件,這些菜單文件默認情況下都保存在 UGⅡ_BASE_DIR/ugⅡ/menus 文件夾下。使用 UG/Open Menu Script自定義 UG菜單可以有兩種方法,分別是使用 Add-on菜單文件和復制和編輯系統(tǒng)菜單文件。使用 Add-on菜單方法是添加編輯量很小的菜單文件到菜單文件的目錄中,使用 Add-on菜單可以移出用戶不需要的菜單項;添加新的菜單和菜單項;重新組織 UG的菜單;修改菜單和菜單項的標題;為已經(jīng)存在的應用按鈕添加動態(tài)庫和菜單文件。復制和編輯系統(tǒng)菜單文件是指復制、編輯系統(tǒng)菜單文件并將其放置在特定的目錄下,覆蓋原始菜單文件。系統(tǒng)推薦使用 Add-on菜單文件方法,該方法不僅編輯起來比較方便、易于維護,而且其功能也相當強大,基本可以滿足應用開發(fā)的所有需求。使用 Add-on菜單文件的另一個優(yōu)點在于它可以被 UG很方便地自動加載。對于與具體應用模式無關的菜單文件放置在 startup文件夾下,與具體應用模式相關的菜單文件放置在相應的 application文件夾下,通過使用 MENU_FILES聲明,即可將菜單名與應用模式按鈕相關聯(lián),點擊該應用模式按鈕后即可自動加載與其相關聯(lián)的菜單文件。復制和編輯系統(tǒng)菜單文件方法不推薦使用,這主要是由于其編輯起來相當復雜,特別是對于像 ug_main.men這樣大型的菜單文件,其維護也非常麻煩。102.2.4 UG/Open UI StylerUI Styler是開發(fā) UG對話框的可視化工具,生成的對話框能與 UG集成,讓用戶更方便、更高效地與 UG進行交互操作。UG/Open UI Styler模塊提供了強大的制作 UG風格窗口的功能,其主要功能如下:(1) 提供了讓開發(fā)人員建造 UG風格對話框的可視化環(huán)境,并能生成 UG/Open UI Styler文件和 C代碼,從而使用戶在使用 UG/Open UI Styler產(chǎn)生的對話框時,不必考慮圖形用戶界面(Graphical User Interface 縮寫為 GUI )的實現(xiàn)。(2) 利用可視化環(huán)境快速生成 UG風格對話框,從而減少開發(fā)時間。(3) 通過選取和放置控件,從而能實現(xiàn)所見即所得。(4) 可以在對話框中實現(xiàn)用戶自定義位圖。(5) 提供了屬性編輯器,從而允許開發(fā)人員設置和修改控件屬性。(6) UI Styelr產(chǎn)生的對話框可以在 Menu Script中被調用,因此可以實現(xiàn)在 UG菜單項上調用 UI Styler產(chǎn)生的對話框,從而將用戶應用程序和 UG軟件完全融合。應用 UI Styler這一工具可以使開發(fā)人員方便、快速地設計出與 UG界面風格一致的對話框,避免其他復雜的編程。而且可以和用其他開發(fā)工具開發(fā)出的結果進行集成。UG/Open UI Styler工具和 UG/Open Menu Script工具一樣,都只具有某一方面的功能:UG/Open UI Styler用于對話框的開發(fā),UG/Open Menu Script 用于菜單的開發(fā)。2.2.5 User Tools 工具UG軟件為用戶提供了一個調用二次開發(fā)結果的交互式接口:User Tools。它的功能是生成彈出式對話框或工具條,其界面風格與 UG界面風格一致。通過執(zhí)行對話框或工具條,操作相應的控件就可運行菜單文件、宏文件、UG/Open GRIP程序、UG/Open API程序和其他二次開發(fā)文件。例如,執(zhí)行齒輪生成的程序集,可以用 User Tools工具產(chǎn)生對話框分別為麻花鉆,然后在相應的對話框上進行操作就生成相應種類的齒輪。通過編寫對話框定義文件(*.utd)來實現(xiàn) User Tool工具的功能。編寫文件完成以后,在 UG 中執(zhí)行 Tools—Customize—User Tools—Load.選擇所編寫的*.utd 文件即可彈出需要的對話框或工具條。*.utd 這個文件是文本文件,可用 Windows中的記事本進行編寫和編輯。一種比較簡單的實現(xiàn)方法:拷貝 UG中的模板文件 Usertoo1.utd到 UG啟動目錄下,然后編輯模板文件,實現(xiàn)所需要的功能。在以前較早版本中例如 V13,運用 User Tools工具必須編寫兩個文件:菜單定義文件(*.utm)和對話框定義文件(*.utd),然后通過執(zhí)行菜單項彈出相應的對話框或工具條?,F(xiàn)在,較高的 UG版本已經(jīng)省略產(chǎn)生菜單這一步,操作同上所述。在 UG 界面中應用 File— Execute UG/Open11菜單執(zhí)行 UG/Open API程序或 UG/Open GRIP程序,操作一次只能執(zhí)行一個程序,而且必須找到程序所在的路徑。若利用 User Tools這個工具,用戶可以將多個 GRIP或 API函數(shù)所編寫的程序集成到一個 User Tools對話框或者工具條中,一個程序對應一個控件,通過操作控件來調用程序,使用起來就非常方便。12第 3 章 二次開發(fā)方案的選擇3.1 可行方案UG軟件為用戶提供的二次開發(fā)工具不但可以獨立使用,而且可以相互調用其它工具開發(fā)的結果,這就大大擴展了工具本身所具有的功能,方便用戶進行二次開發(fā)。它們之間的關系如下附圖所示:Menu Script所開發(fā)的菜單可以與 User Tools開發(fā)的對話框相互調用;Menu Script所開發(fā)的菜單與 User Tools開發(fā)的對話框可以調用 UI Styler開發(fā)的對話框;Menu Script、User Tools和 UI Styler開發(fā)的對話框均可以調用 GRIP程序和 API程序。GRIP 程序和 API程序之間也可以相互調用。另外,使用UG二次開發(fā)工具必須要設置相應的環(huán)境變量,這樣系統(tǒng)才能找到這些開發(fā)文件,執(zhí)行相應的程序。UIStyler Dialog User ToolsAPIGRIPMenuScript圖 3-1 二次開發(fā)工具關系圖本課題的目的是以 UG為平臺,使用 UG二次開發(fā)工具,實現(xiàn)麻花鉆、擴孔鉆、鉸刀的設計。在 UG界面中就是實現(xiàn)在對話框中輸入麻花鉆、擴孔鉆、鉸刀的各個參數(shù),確定后 UG系統(tǒng)自動生成對應的實體模型。要達到設計要求,首先必須自定義一個菜單,制作相對應的對話框,使設計者能調用對應的對話框并輸入所需麻花鉆的參數(shù)。之后更重要的是編寫一定的程序,程序的作用是讀取對話框中的參數(shù)并自動生成所需的實體模型。通過對 UG系統(tǒng)中各個二次開發(fā)工具的性能和特點的分析,要實現(xiàn)設計要求有以下幾種方案:(1)在菜單和對話框的基礎上使用 GRIP語言編寫生成麻花鉆實體的程序。由二次開發(fā)工具之間的關系我們知道,UG 對話框可以調用 GRIP程序。只要能編寫出一個生成麻花鉆實體的程序,我們就可以用編制好的對話框調用該程序,生成麻花鉆實體,滿足設計要求。在 UG/Open GRIP 工具中中擁有豐富的函數(shù),可實現(xiàn)幾何體的生成、數(shù)13據(jù)的存取和分析、變換等一系列功能。因此,使用 GRIP完全能編寫出生成麻花鉆實體程序,程序編寫好后使用 User Tool工具對程序進行編譯連接,最后生成可被對話框調用的可執(zhí)行程序。將可執(zhí)行程序放在對應的文件夾里就可實現(xiàn)對話框對程序的調用,執(zhí)行程序,滿足設計要求。(2)在菜單和對話框的基礎上使用 API語言編寫生成麻花鉆實體的程序。同樣,對話框也能實現(xiàn)對 API程序的調用。只要能編寫出實現(xiàn)麻花鉆建模的 API程序,就能實現(xiàn)設計要求。API 與 GRIP一樣,也具有豐富的函數(shù)。運用該語言可以實現(xiàn)對部件保存、打開等基本操作、對表達式的操作、裝配體操作、工程圖的生成和控制等功能,可以滿足生成齒輪實體的程序的編寫。此外,API 語言借助 C++來編寫程序,借助 C++強大的編程功能,編寫 API程序比 GRIP更加靈活、更加的簡單使用,還能滿足更多的編程要求。在 C++中編寫好相應的程序后編譯程序,將生成的可執(zhí)行程序(.dll)放在對應的文件夾下,就可以實現(xiàn)對話框對程序的調用和執(zhí)行,滿足設計要求。(3)基于三維模型的程序設計。該方法采用三維模型與程序控制相結合的方式,在創(chuàng)建好三維模型的基礎上,根據(jù)部件的設計要求建立一組可以完全控制三維模型形狀和大小的設計參數(shù)。程序針對該部件的設計參數(shù)進行編程,實現(xiàn)設計參數(shù)的查詢、修改,根據(jù)新的參數(shù)值更新模型從而實現(xiàn)設計變更。其中程序的編寫是使用 API語言的表達式功能。在本課題中,采用這種方案具體方法是先新建一個部件,在建模模塊下寫好表達式,然后使用表達式繪出麻花鉆的三維實體,并確保實體模型應隨著表達式的值變化而變化。建好模型后,編寫菜單和對話框,然后在 C++上用 API語言進行編程,程序應把對話框和模型聯(lián)系起來,將對話框中輸入的值傳遞到模型的表達式中,并更新程序。這樣,當在對話框中輸入實體的設計參數(shù)后,運行程序,原來的實體部件就會按新的表達式數(shù)據(jù)重生成模型,這樣就得到了設計所需要的實體模型。將新生成的部件另存,保留原部件,這樣就可以隨時生成需要的麻花鉆、擴孔鉆、鉸刀了。UG二次開發(fā)工具的功能非常強大,要實現(xiàn)本課題目的應還有其他方案,在這里只列舉了這三個常用方案。3.2 方案選擇比較上述三個方案,有一個共同點就是都使用了菜單技術和對話框技術。這是為了在設計麻花鉆時設計者能在 UG界面下直接輸入對應的參數(shù),使該模塊更加直觀,方便設計者使用。這三個方案中,前兩個都是使用編寫程序來繪制麻花鉆實體,程序比較復雜;最后一個是建立模型后將對話框中數(shù)值傳遞到表達式,程序較簡單。麻花鉆、擴孔鉆、鉸刀是較復雜的實體部件,精度要求也比較高,要創(chuàng)建麻花鉆實體比較麻煩。前兩種方案中,都是用程序來編寫整個麻花鉆實體創(chuàng)建過程,這要涉及到的函數(shù)非常14多,程序煩瑣,出現(xiàn)錯誤時不容易修改和維護。此外,在畫麻花鉆輪廓過程中需要修剪、變換許多曲線,這在程序中很難做到。如果要使用前兩種方案,需要深入學習GRIP和 API這兩種語言,需要花費很多時間。而第三種方案是直接在 UG界面上畫實體模型,可以直接對各種特征進行編輯、修改曲線,相對于前兩種方案來說更直觀、更容易。不過要注意的是在第三種方案中,在畫麻花鉆實體過程中要注意應保證所畫出的實體模型應能隨著表達式中的值的變化而變化。不過在 UG界面下比程序中繪制麻花鉆模型要直觀、容易的多。在編寫程序方面,最后一種方案只需寫一些數(shù)值的傳遞的程序,使用的函數(shù)少,程序簡單,易于發(fā)現(xiàn)錯誤和修改調試。同時,如果能夠實現(xiàn),前兩種方案所得的麻花鉆設計模塊使用起來要比第三種方案方便。由于畢業(yè)設計時間不長,而且之前沒有接觸過有關二次開發(fā)的知識,在短時間內無法深入學習 GRIP和API的知識,前兩種方案很難實現(xiàn)。第三種方案最為簡單,也最有可能在規(guī)定時間內完成設計任務,達到設計目的。綜合比較這三種方案,最終選擇第三種方案作為本次設計方案。3.3 利用二次開發(fā)工具制作系統(tǒng)菜單3.3.1 設置系統(tǒng)環(huán)境變量雖然各種菜單的制作方法,在結構、內容和開發(fā)過程上有一定的差異,但是在整個構建過程中有其共性和相同的部分,就是菜單制作之前應先設置系統(tǒng)環(huán)境變量。設置了系統(tǒng)環(huán)境變量,UG 才能找到開發(fā)內容所在目錄。系統(tǒng)環(huán)境變量設置方法有以下兩種:方法一:打開$UG_BASE_DIR/ugii 目錄下的 ugii_env.dat文件(該文件包含Unigraphics系統(tǒng)的全部環(huán)境變量及系統(tǒng)路徑定義),找到下面兩條語句:#UG_VENDOR_DIR=${UGALLIANCE_DIR}/wendo和#UG_ SITE_DIR=${UGALLIANCE_DIR} /site。將它們前面的注釋符號“#”刪除,以使它們起作用。這兩條語句其實指明了供用戶放置二次開發(fā)文件的目錄。在 Unigraphics初始安裝時,它們不起作用,當刪除了“#”號后,UG/OPEN 才能從這些目錄下得到二次開發(fā)的功能擴展。這兩個目錄的功能和結構是完全相同的,下面都有 startup和 application兩個目錄。其中 startup存放 Unigraphics啟動時需載入的動態(tài)共享庫(以 ufsta()為入口的.dl1)及菜單腳本文件(.men);application 目錄存放具體的功能擴展程序文件(如應用模塊的功能擴展共享庫( .dl1)及對話框資源文件( .dlg))。Unigraphics 下設置的這兩個目錄是為不同等級的開發(fā)者提供的,vendor 目錄下放置 Unigraphics指定的開發(fā)商的二次產(chǎn)品,site目錄下存放其余開發(fā)者的產(chǎn)品。因此 vendor目錄下同類內容的文件要比 site目錄下的優(yōu)先載入。此外,在 ugii_env.dat文件中還有一條語句,是用來設置用戶自己15二次開發(fā)內容的目錄:#UG_USER_DIR =${HOME},同樣將其前面的“#”號刪除,并在其后使用用戶自己的目錄替換${HOME}。例如,UG_USER_DIR=E:\ugapi,在此目錄下也必須建立目錄 startup和 application,存放的內容和 site及 vendor下的startup、application 一樣,不過它的優(yōu)先級更低[13]。方法二:打開 UG安裝目錄 UGⅡ_BASE_DIR\ UGⅡ\menus 下的custom_dirs.dat(用記事本打開) ,在文件最后添加開發(fā)的文件夾的絕對路徑。在添加的文件里建立兩個子目錄:startup 和 application ,分別用來放置開發(fā)的各種文本文件(.men 文件) 、動態(tài)庫文件和對話框文件。上述兩種方法中第二種方法較簡單方便,本課題采用第二種方法。打開 UG安裝目錄 UGⅡ_BASE_DIR\ UGⅡ\menus 下的 custom_dirs.dat,在文件最后添加開發(fā)的文件夾的絕對路徑 E:\ugopen。在 E:\ugopen文件夾下建立 startup和 application兩個子目錄。3.3.2 制作菜單本課題涉及到三種刀具的設計,因此應在一個主菜單下建立三個子菜單。在E:\ugopen\startup 下建立文件 ugopen.men,代碼如下:VERSION 120 //菜單腳本文件的版本信息EDIT UG_GATEWAY_MAIN_MENUBAR //編輯 UG系統(tǒng)菜單文件BEFORE UG_HELP //定義菜單位于“幫助”菜單前CASCADE_BUTTON GEARS //主菜單按鈕名LABEL 參數(shù)化設計 //主菜單標題END_OF_BEFORE //結束 BEFORE定義MENU GEARS //定義主菜單BUTTON DESIGN_DRILL //第一個子菜單名LABEL 錐柄麻花鉆 //第一個子菜單標題ACTIONS design_drill.dlg //第一個子菜單的 IDBUTTON DESIGN_DRILL_SPUR //第二個子菜單名LABEL 直柄麻花鉆 //第二個子菜單標題16ACTIONS design_drill_spur.dlg //第二個子菜單的 IDBUTTON DESIGN_1 //第三個子菜單名LABEL 擴孔鉆 //第三個子菜單標題ACTIONS design_1.dlg //第三個子菜單的 IDBUTTON DESIGN_2 //第四個子菜單名LABEL 鉸刀 //第四個子菜單標題ACTIONS design_2.dlg //第四個子菜單的 IDEND_OF_MENU //結束菜單的定義運行結果如圖 3-2所示:圖 3-2 菜單運行效果圖在菜單的基礎上,可以制作工具欄,這樣可以在工具欄點相對應的工具來直接調用對話框。工具欄是一種快速激活相關命令的工具按鈕的集合。在 UG中,使用菜單工具可以制作工具欄。工具欄文件是以.tbr 為后綴名的文本文件,每個工具欄按鈕名稱應與菜單文件中相應按鈕的名稱相同,工具欄按鈕圖標所對應的位圖文件,應放置在相應的 application文件夾下。工具欄文件寫好后,應放在對應的 stratup文件夾中。編寫的工具欄文件如下:TITLE 參數(shù)化設計 //工具欄標題VERSION 160 //工具欄文件的版本信息DOCK NO //工具欄導入時是浮動的BUTTON DESIGN_DRILL //錐柄麻花鉆對應按鈕的名稱LABEL 錐柄麻花鉆 //工具欄按鈕的標題BITMAP design_drill.bmp //錐柄麻花鉆對應按鈕圖標17BUTTON DESIGN_DRILL_SPUR //直柄麻花鉆對應按鈕的名稱LABEL 直柄麻花鉆 //工具欄按鈕的標題BITMAP design_drill_spur.bmp //直柄麻花鉆對應按鈕圖標BUTTON DESIGN_1 //擴孔鉆對應按鈕的名稱LABEL 擴孔鉆 //工具欄按鈕的標題BITMAP design_1.bmp //擴孔鉆對應按鈕圖標BUTTON DESIGN_2 //鉸刀對應按鈕的名稱LABEL 鉸刀 //工具欄按鈕的標題BITMAP design_2.bmp //鉸刀對應按鈕圖標運行效果如圖 3-3所示:圖 3-2 工具欄效果圖18第 4 章以麻花鉆為例介紹實體設計UG環(huán)境下麻花鉆三維造型原理按逆反思維原則,若把直線主切削刃沿螺旋面旋進到鉆頭端截面處,則可得到一條新的曲線,這條曲線就是鉆刃曲線,而整個后刀面螺旋的結果就是刀具的螺旋體部分。根據(jù)內圓錐面刃磨的原理,在刀具螺旋實體上再磨削出刀具的后刀面及直線主切削刃,形成麻花鉆的切削部分。本文所采用的麻花鉆三維造型的方法是:按鉆刃曲線和其它參數(shù)繪制螺旋槽截形,螺旋生成刀具的螺旋體,根據(jù)刃磨參數(shù)生成內圓錐面,再以內圓錐面為邊界切割刀具螺旋體,形成麻花鉆的三維模型。這種建模方法可以使三維模型生成速度快、操作簡單、模型特征較少研究的標準麻花鉆的頂角2Φ=118°,外緣尖點的螺旋角 β=25°,鉆頭半徑 R=10,半鉆芯厚度 r=1.35。UG 環(huán)境下麻花鉆三維模型建立的步驟:(1)根據(jù)螺旋槽截形的各參數(shù)繪制螺旋槽截形和螺旋線;(2)以螺旋線和刀具軸線為導引線、螺旋槽截形為截面螺旋生成刀具實體;(3)以直線主切削刃為母線生成內圓錐面,再以內圓錐面為邊界切割刀具螺旋體;(4)隱藏刀具螺旋體多余的部分和內圓錐面,麻花鉆三維模型建立完成。4.1 鉆刃曲線的參數(shù)方程當麻花鉆的頂角為 2Φ 時,其主切削刃呈直線狀。把麻花鉆的鉆頭放到 o-xyz坐標系中,見圖 1所示。將直線主切削刃 AB看作點的組合。將這些點沿螺旋面旋進到鉆頭(z=0)截面,再重新連接成新的曲線 A'B',這條曲線就是鉆刃曲線。根據(jù)文獻,可知鉆刃曲線的參數(shù)方程 [5]為: 2cos()in()0/isxrubuRrby????????式中:R—鉆頭半徑;r—半鉆芯厚度; ()ptg???,p為鉆槽螺旋導程。19圖 4.1 鉆頭投影圖 [5]4.2 刀具螺旋槽截面和螺旋線的繪制按照 UG表達式 EXP的語法規(guī)則寫出鉆刃曲線的表達式,并輸入到 UG軟件的“Expressi
收藏