




已閱讀5頁,還剩34頁未讀, 繼續免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
武漢工業學院 畢 業 論 文 畢 業設計 題目 : 帶輪的參數化設計 姓 名 學 號 院 (系) 機械工程系 專 業 指導教師 2007 年 6 月武漢工業學院畢業設計 I 摘 要 本論文研究的主要目的是為了有效利用 CAD 技術,實現零件的參數化設計,從而提高生產效率。介紹了利用 Pro/E 的二次開發工具包 Pro/Toolkit 和 VC+相結合對Pro/E 進行二次開發,采用動態連接庫方式實現三者之間的信息傳遞,從而完成帶輪的設計計算、應用模塊之間的調用以及設計圖樣的生成顯示。設計過程中探討了設計資料程序化處理、帶輪設計計算、模型驅動、三維參數化建模等技術問題。在完成系統開發和注冊后,只要輸入帶輪設計的驅動參數,系統就會自動完成帶輪的設計以及帶輪零件實體圖形的生成。這種方法的整個設計界面友好,且便于操作,設計的零件能夠很好的滿足設計精度和強度要求。 關鍵詞 : Pro/E;二次開發;參數化;帶輪 武漢工業學院畢業設計 II Abstract In this study, the main purpose is to the effective use of CAD technology, the parts of parametric design, thereby enhancing production efficiency. Introduced to the use of Pro/E of the Second Development Kit Pro/Toolkit and VC + + combination of Pro/E for the second development, dynamic link library achieved between the transmission of information, thus completing the pulley design, application module between the call and the production design drawings show. The design process of design information processing procedures, pulley design, model-driven, 3D parametric modeling, and other technical issues. The completion of systems development and registration, as long as the importation of the driving pulley design parameters, system will automatically complete the design and pulley pulley parts of the entities generated graphics. This method of the entire design interface is friendly and easy to operate. designed components can be designed to meet very good accuracy and strength requirement. Keywords: Pro/E; Secondary Development; Parametric; Pulley 武漢工業學院畢業設計 III 目 錄 摘 要 - I 英文摘要 - 錯誤 !未定義書簽。 第一章 緒 論 - 1 1.1 選題的意義 - 1 1.2 CAD 技術概述 - 2 1.2.1 CAD 技術的概念 - 2 1.2.2 CAD 技術在機械工業中的應用 - 2 1.2.3 CAD 技術的發展現狀及發展趨勢 - 3 1.3 本論文主要工作 - 4 第二章 系統開發環境分析 - 5 2.1 Visual C+基礎知識 - 5 2.1.1 Visual C+簡介 - 5 2.1.2 MFC 簡介 - 5 2.1.3 VC+動態鏈接庫 - 5 2.2 面向對象的基礎知識 - 6 2.2.1 面向對象方法簡介 - 6 2.2.2 面向對象方法中基本概念 - 6 2.2.3 面向對象的軟件開發技術 - 7 2.3 Pro/ENGINEER 基礎知識 - 8 2.3.1 Pro/ENGINEER 簡介 - 8 2.3.2 Pro/TOOLKIT 基礎知識 - 9 2.3.3 參數化設計技術 - 10 第三章 帶輪結構的確定 - 12 3.1 帶輪簡介 - 12 3.2 確定帶輪的基本結構尺寸 - 12 3.2.1 帶輪的基本參數及其意義 - 12 3.2.2 帶輪設計的驅動尺寸確定及其輸入 - 12 3.2.3 確定帶輪的結構尺寸 - 13 第四章 參數化設計的方法和步驟 - 16 4.1 Pro/TOOKIT 的安裝 - 16 武漢工業學院畢業設計 IV 4.2 VC.net 環境設置 - 16 4.2.1 創建 DLL 工程 - 16 4.2.2 設置包含頭文件 - 16 4.2.3 設置庫文件環境 - 17 4.2.4 設置庫文件路徑 - 17 4.3 Pro/TOOLKIT 應用程序設計(編寫源文件) - 17 4.3.1 編寫資源文件 - 17 4.3.2 編寫程序源文件主框架 - 18 4.4 創建并調用參數輸入對話框 - 19 4.4.1 創建對話框過程 - 19 4.4.2 編輯用戶界面應用程序 - 20 4.4.3 添加一個數據接口文件 - 20 4.5 應用程序注冊與運行 - 21 4.5.1 注冊文件的編寫 - 21 4.5.2 應用程序的注冊 - 21 4.5.3 應用程序的運行 - 22 結 論 - 25 謝 辭 - 26 參考文獻 - 27 附表 1: V 帶輪的基準直徑系列及其對應外徑 - 28 附表 2: 帶輪鍵槽尺寸的確定 - 29 附錄 3: GUIINTERFACE.CPP 程序 - 30 附錄 4: PARAMDLG.CPP 程序 - 30 附錄 5: MODELVIEW.CPP 程序 - 31 武漢工業學院畢業設計 1 第一章 緒 論 1.1 選題的意義 當今任何一個國家,若要在綜合國力上取得優勢地位,就必須在科學技術上取得優勢。 90年代以來,隨著以計算機技術為支柱的信息技術的發展,世界經濟格局發生了巨大的變化,逐步形成了一個統一的一體化市場,經濟循環加大、加快,市場競爭日趨激烈。同時,工業產品由傳統的機械產品向機電一體化產品、信息電子產品方向發展,技術含量大為增高。這種趨勢促使企業在著手進行新產品開發時把面向產品的創新性、外觀造型、人機工程等 設計理念提高到了一個新的高度,從而也迫切要求對產品設計的研究能有進一步的突破,以提高企業形象、產品設計水平和市場競爭力。正因如此,對于工業設計領域的研究逐漸受到了國內外學者的關注。特別是近幾年來,隨著計算機軟硬件技術的日新月異,計算機圖形學、計算機輔助設計、多媒體等技術的發展,日益激烈的市場競爭要求現代化企業必須低成本高效率的開發新產品。同時,新產品的更新換代周期不斷縮短,這樣產品的設計過程在產品的整個生命周期中占據了越來越重要的地位。企業對產品的設計要求程序化,可視化。正應如此, CAD(計算機輔助設計 ), CAM(計算機輔助制造 )、 CAE(計算機輔助工程 )等技術得到迅速普及和發展。 美國評出的最具影響的十大技術中 ,CAD/CAM/CAE技術榜上有名,在為數眾多的 CAD軟件界,由美國 PTC公司的軟件產品 Pro/ENGINEER是世界上最成功的參數化設計軟件之一 1。其軟件的總體設計思想體現了 MDA(Mechanical Design Autom- ation)軟件的新發展,在機械設計自動化 (MDA)方面 ,Pro/ENGINEER通過一種獨特的、參數化的以及面向零件的 3D實體模型設計制作技術 ,徹底改變了傳統的設 計理念,為工程設計提供了一條革命性的途徑。 在機械設計過程中 ,將大量復雜而繁瑣的設計計算、圖表查詢等任務交給計算機去完成是機械 CAD系統要完成的主要工作之一。過去 ,這種 CAD系統的開發采用面向過程的建模方法 ,這種建模過程是一種順序的線性過程,這種模型強調開發中的每一過程的完整性和獨立性 ,后一過程必須在前一過程之后才能進行,這顯然不符合人們認識世界是一個漸進往復的過程這一客觀規律。在帶輪的傳統設計中,原有的幾何模型是設計者利用固定的尺寸值得到的,零件的結構形狀不能靈活的改變 ,一旦零件尺寸發生變化 ,必須重新繪制 其對應的幾何模型。為了能夠更直觀、更全面地反映設計意圖,可借助參數化設計軟件 Pro/ENGINEER建立相應的帶輪三維實體模型庫,用 Pro/ENGINEER自帶的二次開發工具包 Pro/TOOLKIT在三維模型的基礎上進行參數傳遞 ,關系修改 ,零件裝配、干涉檢查等高級的計算機武漢工業學院畢業設計 2 輔助設計及制造工作 2。 在這種背景下,本論文將以帶輪設計為契機 ,開展帶輪的參數化設計的學位論文研究。在 VC+6.0的集成開發環境下,對帶輪進行參數化設計,通過利用 Pro/ENGINEER自帶的開發工具 Pro/TOOLKIT對 Pro/ENGINEER進行二次開發,并在 Pro/ENGINEER環境下進行帶輪結構的三維參數化設計,將零件的實體模型展現在用戶的面前。該系統的開發將大大的方便用戶進行帶輪的結構設計,不僅可以提高設計效率和質量,縮短產品的開發周期,而且對產品的有限元分析及后續加工具有一定的實用價值和參考意義,同時也符合現代技術的發展要求。 1.2 CAD 技術概述 1.2.1 CAD 技術的概念 計算機輔助設計 (Computer Aided Design簡稱 CAD)是指工程技術人員以計算機為工具進行設計活動的全過程 :包括資料檢索、方 案構思、分析計算、工程繪圖和編制技術文件等 ,是隨著計算機、外圍設備及軟件的發展而形成的一門綜合性很高的新技術。廣義的 CAD包括設計和分析兩個方面。設計是指構造零件的幾何形狀、選擇零件的材料 ,以及為保證整個設計的統一性而對零件提出的功能要求等。分析是指運用數學造型技術 ,如有限元分析法、優化設計方法等 ,從理論上對產品的性能進行模擬、分析和測試 ,以保證產品設計的可靠性。 CAD技術本身是一項綜合性的、技術復雜的系統工程,涉及許多學科領域,如計算機科學和工程、計算數學、幾何造型、計算機圖形顯示、數據結構和數據庫、仿 真、數控、機器人和人工智能學科和技術以及與產品設計和制造有關的專業知識等。 CAD技術可以承擔產品設計中的零件設計、裝配設計、模具設計、機構設計與分析、有限元分析、數控加工與仿真等環節的關鍵工作 3,與傳統的設計內容和方式相比產生了根本性的變革。 如今 ,CAD技術己廣泛應用于航空航天、電子、機械、建筑、輕紡、化工、交通、影視、教育等各個領域,并取得了明顯的經濟效益和社會效益。 1.2.2 CAD 技術在機械工業中的應用 CAD技術在機械工業中的應用已經越來越廣泛,其主要應用有以下幾方面 6: 1.二維、三維 繪圖這是最普遍最廣泛的一種應用,用來代替傳統的手工繪圖; 2.圖形及符號庫將復雜圖形分解成許多簡單圖形及符號 ,先存入庫中 ,需要時調出 ,經編輯修改后插入到另一圖形中去 ,從而使圖形設計工作更加方便; 武漢工業學院畢業設計 3 3.參數化設計標準化或系列化的零部件具有相似結構,但尺寸需經常改變,采用參數化設計的方法建立圖形程序庫,調出后賦以一組新的尺寸參數就能生成一個新的圖形; 4.三維造型采用實體造型設計零部件結構,經消隱及著色等處理后顯示物體的真實形狀,還可作裝配及運動仿真,以便觀察有無干涉等; 5.工程分析常見的有有限元分析、優化設 計、運動學及動力學分析等。此外針對某個具體設計對象還有它們自己的工程分析問題,如注塑模設計中要進行塑流分析、冷卻分析、變形分析等; 6.設計文檔或生成報表許多技術屬性需要制成文檔說明或輸出報表,有些設計參數需要用直方圖、餅圖或曲線圖等來表達。 1.2.3 CAD 技術的發展現狀及發展趨勢 CAD概念是 50年代末由麻省理工學院首次明確提出的, 60年代研制成功試驗CAD系統、 70年代, CAD開始實用化,從二維的電路設計發展到三維的飛機、造船、汽車等設計。 80年代,由于解決了三維幾何造型、仿真等問題,應用范圍不斷擴大,大中型系統向微型化發展,出現了應用極廣的微機 CAD系統和性能優良的工作站 CAD系統。 90年代后隨著 CAD技術的發展,其系統性能提高、價格降低, CAD開始在設計領域全面普及,成為必不可少的設計工具。 CAD之所以在短短的 30年內發展如此迅速,是因為它是人類在 20世紀取得的重大科技成就之一,它幾乎推動了一切領域的設計革命,徹底改變了傳統的手工設計繪圖方式,極大的提高了產品開發的速度和精度,使得科技人員的智慧和能力得到了延伸。應用 CAD技術來進行產品設計,能使設計、生產、維修工作快速而高效地進行,所帶來的經濟效 益是十分明顯的。 CAD技術的發展與應用水平已成為和衡量一個國家的科學技術現代化和工業現代化的重要標志。 近幾年來,隨著計算機技術的飛速發展, CAD 技術己經由發達國家向發展中國家擴展,而且發展的勢頭非常迅猛。因為當今世界工業產品的市場競爭,歸根結底是設計手段和設計水平的競爭,發展中國家的工業產品要在世界市場占有一席之地,就必須采用 CAD)技術。 我國 CAD技術研究和開發起步相對較晚,自 80年代開始, CAD技術應用工作才逐步得到了開展。國家逐步認識到開展 CAD應用工程的必要性和可靠性,并在全國各個行業大力推廣 CAD技術,同時展開 CAD技術的開發和研制工作,如清華大學和華中理工大學共同開發的高華 CAD,中科院軟件工程研制中心的 PICAD4等。 CAD技術隨著不段研究、開發和廣泛使用,工業生產也對 CAD技術提出了越來越高的新要求。 CAD技術將朝著集成化、智能化和標準化的方向發展。 武漢工業學院畢業設計 4 1.3 本論文主要工作 采用 Pro/ENGINEER 提供的二次開發工具 Pro/TOOLKIT 用編程方法,實現帶輪參數化設計。開發時,需建立實例帶輪模型庫。在輸入驅動參數后,通過程序的調用,系統從庫中尋找該參數驅動下的帶輪模型,以實現不 同基準直徑、基準寬度、輪槽數、配合軸直徑等參數的帶輪設計,從而提高設計的效率和質量。 用 Pro/TOOLKIT可以開發出具有 Pro/ENGINEER風格的對話框 ,能向用戶提供人機交互界面 ,進行簡單的人機交互。但是目前這種方法還不太完善 ,功能有限 ,而且對話框資源編寫起來繁瑣 ,一個簡單的對話框資源就會用去很多的時間 ,對于稍 微 復雜的對話框更是無能為力。 MFC 具有強大的編制對話框能力 ,編制簡單 ,但 Pro/TOOLKIT 并不提供對 MFC 的支持 ,所以 在 Pro/TOOLKIT 中并不能直接應用MFC 對話框。本文通過動態連接 庫開發了 Pro/TOOLKIT 與 MFC 的接口 ,利用 MFC強大的功能實現對話框的開發 ,在 Pro/ENGINEER 環境中生成 MFC 對話框 ,方便、自然、快捷地進行人機交互 。 因此本文主要解決好以下幾方面工作: 1.結構設計 :通過優化方案數據,確定最佳帶輪設計的驅動尺寸,然后利用驅動尺寸,根據設計手冊相關公式及數據確定帶輪的基本結構尺寸; 2. 結構設計 :在 Pro/Engineer WILDFIRE環境下,建立帶輪模型庫,并給模型零件設置編碼參數; 3.編寫 VC和 Pro/E接口程序 :以 VC+6.0集成開發環境下編 寫調用 Pro/E的接口程序,調用 Pro/E二次開發包 Pro/TOOLKIT來實現系統的參數傳遞和修改; 4.利用 Pro/ENGINEER WILDFIRE三維參數化設計平臺上利用 Pro/TOOLKIT開發工具添加用戶菜單,調用模型庫,實現帶輪模型的參數化顯示、修改和分析。 武漢工業學院畢業設計 5 第二章 系統開發環境分析 本文以 Pro/ ENGINEER 2.0為開發平臺,利用其二次開發工具包 Pro/TOOLKIT,以 VC+6.0 為編程語言,以動態鏈接庫的方式對帶輪進行了參數化設計。在這個過程中我們利用的設計軟件是 Pro/ ENGINEER 2.0 和 VC+6.0,二次開發的工具是 Pro/TOOLKIT 工具包,通信方式是動態鏈接庫的方式,程序設計的方法的面向對象方法。所以在設計進行之前,我們必須對這些方法和環境進行必要的了解。 2.1 Visual C+基礎知識 2.1.1 Visual C+簡介 Visual C+是 Microsoft 公司推出的基于 C/C+的集成開發工具,自誕生以來它一直是 Windows 環境下最主要的應用開發系統之一。它不僅是 C+語言的集成開發環境,而且與 Win32 緊密相連 5,所以,利用 Visual C+開發系統可以完成各種各樣的應用程序開發,實現從底層軟件直到上層直接面向用戶的軟件,而且 Visual C+強大的調試功能也為大型復雜軟件的開發提供了有效的排錯手段。 2.1.2 MFC 簡介 MFC 是用來編寫 Windows 應用程序的 C+類庫,該類庫集以層次結構組織起來,其中封裝了大部分 Windows API 函數和 Windows 控件,它所包含的功能設計到整個 Windows 操作系統。 MFC 不僅為用戶提供了 Windows 圖形環境下應用程序的框架,而且還提供了創建應用程序的組件 6。使用 MFC 類庫和 Visual C+提供的高度可視的應用程序開發工具,可使應用程序開發變得更簡單,開發周期極大地縮短,提高代碼的可靠性和可重用性。 MFC 封裝了一個程序操作的每一個方面。在 MFC 程序中,程序員很少需要直接調用 Windows API 函數,而是通過定義 MFC 類的對象并通過調用對象的成員函數來實現相應的功能。 2.1.3 VC+動態鏈接庫 ( 1) COM 標準及庫文件 為了實現按組件化程序設計思想把復雜的應用程序設計成一些小的、功能單一的組件模塊,并且它們可以運行在不同的機器上等要求,微軟提出了 COM( Component Object Model)標準。 COM 組件技術的核心思想是將軟件實現與接武漢工業學院畢業設計 6 口的分離,減少與系統其其他部分的耦合程度 7。接口部分提供所定義功能的使用方法,所有能夠獲得接口信息的應用程序都能通過接口使用組件提供的功能。COM 的主要實現方式之一就是庫文件,有兩種庫文件形式:靜態鏈接庫和動態鏈接庫。靜態鏈接庫將目標代碼嵌入到應用程序中,應用程序可獨立運行,而動態鏈接庫還必須給應用程序提供動態鏈接庫文件。 ( 2) 動態鏈接庫 動態鏈接庫是一個可執行模塊,其包含的函數可以有 Windows 應用程序調用以執行一些功能。動態鏈接庫 還包含了其所提供函數的目標代碼。程序在運行中連接動態鏈接庫中的函數時,簡單地記錄了函數的位置信息,這就可以讓程序在執行時很快找到執行代碼。只在執行時才做到真正的連接。提供函數在動態鏈接庫中位置的信息存放在一個獨立的后綴為 .lib 的文件中。 2.2 面向對象的基礎知識 2.2.1面向對象方法簡介 首先將數據及對數據的操作方法放在一起,作為一個相互依存、不可分割的整體 -對象。對同類型對象抽象出其共性,形成類。類中的大多數數據只能用本類的方法進行處理。類通過一個簡單的外部接口與外界發生關系,對象與對象之間通 過消息進行通信。這就是面向對象的方法。 2.2.2 面向對象方法中基本概念 面向對象的核心是數據(結構)抽象及操作行為的抽象,封裝機制使二者集為一體,形成類或對象 8。繼承是面向對象的另一個抽象手段,反映“一般 特殊“關系抽象,通過子類對父類的繼承,可使子類享有父類的數據及操作行為,子類也可定義新的數據或新的操作或覆蓋原有操作,這種性質叫做多態性。 1. 對象 面向對象方法中的 對象是系統中用來描述客觀事物的一個實體,它是構成系統的一個基本單位。 屬性是用來描述對象靜態特征的數據項,行為是用來描述動態特征的操作序列 。 2. 類 面向對象方法中的類是指具有相同屬性和服務的一組對象的集合。它為屬于該類的全部對象提供抽象描述,其內部包括屬性和行為兩個主要部分。類與對象的關系猶如模具與鑄件之間的關系,一個屬于某類的對象稱為該類的一個事例。 3. 封裝 武漢工業學院畢業設計 7 封裝是面向對象方法中的一個重要原則,就是把對象的屬性和服務結合成意義個獨立的系統單位,并盡可能隱藏對象的內部細節。這一種有兩個含義:第一個含義是把對象的全部屬性和服務結合在一起,形成一個不可分割的獨立單位;第二個含義也稱為“信息隱藏”,即盡可能隱藏對性的內部細節,對外形成一個邊界(或者說一 道屏障),只保留有限的對外接口使之與外部發生聯系。 4. 繼承 特殊類的對象擁有其一般類的全部屬性和服務,稱為特殊類對一般類的繼承。繼承是面向對象技術能夠提高軟件開發效率的重要原因之一。它可以將開發好的類作為構件放到構件庫中,在開發新系統時便可以直接使用或繼承使用。 5. 多態性 對象的多態性是指在一般類中定義的屬性或服務被特殊類繼承之后,可以具有不同的數據類型或表現出不同的行為。這使得同一個屬性或服務在一般類及其各個特殊類中具有不同的語義。 2.2.3 面向對象的軟件開發技術 面向對象從根本上改變了傳統的軟件設計思想 ,面向對象的開發是一種系統分解基于對象概念的軟件設計方法。目前,面向對象技術趨向于成為一種集分析( OOA)、設計( OOD)、編程( OOP)于一體的系統化技術 9。 使用面向對象的方法,可以使產品設計在較高的層次上進行,在實際設計過程中,經常有大量的反復使用的結構,這些結構在拓撲形狀基本上已經確定,而只是在具體的尺寸上有所變化,因此,面向對象的概念是極為有利的。結合本文,我們也不難發現,帶輪的設計正好符合這一特點,所以,我們選擇面向對象的設計方法是非常合適的。 面向對象程序設計是一種試圖模仿人們建立現實世界 模型的程序設計方法,它的著眼點是數據而不是功能。它的設計思路是從確定表征客觀實體的對象開始,建立對象之間的層次結構,確定反映對象狀態的屬性及施加于這些屬性之上的操作,對象之間通過消息互相作用和聯系,從而形成軟件結構。這種方式符合人們對客觀世界的認識過程。按此方法開發軟件可克服傳統 CAD 的一些缺陷。 面向對象方法采用對象建模觀點,其主要思想 10如下 : (1)客觀世界是由許許多多的對象所組成的,每種對象都有其自身的狀態和改變其狀態的運動規律;(2)面向對象利用“抽象數據類型”對客觀世界進行擬合,在對象 (模塊 )中,用數據來描述現實世界中對象的狀態,用處理過程 (操作 )來描述其狀態的改變規律,相似的對象抽象為類,類由數據和操作組成,對象由類來生成并自動擁有類所定義的特性; (3)對象之間相互通訊的唯一方式是消息傳遞。換句話說,系統武漢工業學院畢業設計 8 內各要素(對象 )之間的聯系是通過消息通訊方式進行的,這不僅真實地模擬了現實世界,而且使得軟件系統呈柔性,是真正的藕合系統。 面向對象方法以識別“對象”和“對象的功能”為出發點,通過把問題域作為一系列相互作用的實體進行建模,把整個開發階段的每個過程看作是互相交迭的不斷深化的過程,從而使得問題空 間和求解空間保持一致。相比較而言,“對 象”要穩定得多,即使個別對象發生變化,對全局造成的影響也小得多,因此,用面向對象的方法開發出的軟件,系統易于擴充和維護。 2.3 Pro/ENGINEER 基礎知識 2.3.1 Pro/ENGINEER 簡介 Pro/Engineer 系統是美國 PTC 公司的三維 CAD/CAM 系統,它提出了真正的全相關性 (任何地方的修改都會 自動反映到所有相關地方 )、單一的數據庫 (整個 Pro/Engineer 系統建立在統一的數據庫上,具有完整而統一的模型,提供了所謂雙向關聯性的功能,符合現代產品中 “并行工程”概念 11,為產品的同開發提供了可能 )、基于特征的參數化造型 (Pro/Engineer 使對象特征成為產品幾何模型的構造要素 )等概念,已成為當今世界機械領域的新標準。 另外, Pro/ENGINEER 目前有 80多個專用模板,涉及工業設計、機械設計、功能仿真、加工制造等方面,為用戶提供全套解決方案。同時, Pro/ENGINEER系統用戶界面簡潔,概念清晰,符合工程人員的設計思想與習慣。整個系統建立在統一的數據庫上,具有完整而統一的模型。又 Pro/ENGINEER 建立在工作站上,系統獨立于硬件,便于移 植。更重要的是它還具有開放的體系結構和優秀的二次開發工具,并且參數化設計是其最重要的特征。這里將主要介紹 Pro/ENGINEER的主要特征 12。 1.3D實體模型 (Solid model) 3D實體模型除了可以將用戶的設計思想以最真實的模型在計算機上表現之外,借助于系統參數 (System parameters),用戶還可以隨時計算出產品的體積、面積、重心、慣性大小等,以了解產品的真實性,并補足傳統的面結構、線結構的不足。用戶在產品設計過程中,可以隨時掌握以上情況,設計物理參數,并減少許多人為計算時間。 2.單一數據庫 (Singled atabase) Pro/ENGINEER可隨時修改由 3D實體模型產生 2D工程圖,而且自動標注工程圖尺寸。不論在 3D還是 2D圖形上作尺寸修改,其相關的 2D圖形或者 3D實體模型均自動修改,同時組合、制造等相關設計也會自動修改,這樣可確保數據的正確性,武漢工業學院畢業設計 9 并避免反復修正的耗時性。由于采用單一數據庫,提供了所謂雙向關聯性的功能,這種功能也正符合了現代產業中所謂的同步工程 (Concurrent engineering). 3.以特征作為設計的單位 (Feature-based design) Pro/ENGINEER以最自然的思考方式從事設計工作,如孔 (Hole),開槽 (Slot)、倒圓角 (Round)等均被視為零件設計的基本特征,可隨時對特征做合理、不違反JL何的順序調整 (Reorder)、插入 (Insert),刪除 (Delete)、重新定義 (Redefine)等修正動作。 4.參數化設計 (Parametric design) 參數化設計技術將在后面 2.3.3中作詳細介紹,在這里將就不做具體講解了。正因為 Pro/Engineer有了以上優秀的特征,該軟件越來越 廣泛地用于機械、汽車、航天、電 子和工程機械等行業,是當今世界上應用最廣泛的三維 CAD軟件之一。 2.3.2 Pro/TOOLKIT 基礎知識 ( 1) Pro/Toolkit 簡介 Pro/Toolkit是 PTC公司為 Pro/Engineer軟件提供的開發工具包,即應用程序 接口 (API)。其主要目的是讓用戶或第三方通過 C程序代碼擴充 Pro/Engineer 系統的功能,開發基于 Pro/Engineer系統的應用程序模塊,從而滿足用戶的特殊要求。它提供了大量的 C語言庫函數,能夠使外部應用程序 (客戶應用程序 )安全有效地訪問 Pro/Enginee的數據庫和應用程序 13。通過和第三方能夠Pro/Engineer系統中添加所需要的功能。不僅如此,還可以利用 Pro/Toolkit提供的 UI對話框、菜單以及 VC的可視化界面技術,設計出方便實用的人機界面,從而大大提高系統的使用效率。 Pro/Toolkit工具包提供了開發 Pro/Engineer所需的函數庫文件和頭文件,使用戶編寫的應用程序能夠完全地控制和訪問 Pro/Engineer,并可以實現應用程序模塊與 Pro/Engineer系統的無縫集成。 Pro /Toolkit應用程序有兩種工作模式,分別 是同步模式和異步模式。同步模式又有兩種形式,即動態連接庫模式 (DLL模式 )和多進程模式,分述如下 :動態連接模式是將 Pro/Toolkit應用程序集成到 Pro/Engineer中的標準方法。用戶編譯 C應用程序,與 Pro/Toolkit庫連接,這種方法又稱為 DLL模式。 DLL模式具有代碼簡單、執行速度快等優點,所以本文選擇該模式作為 Pro /Toolkit開發發應用程序工作模式。 ( 2) Pro/Toolkit的開發 Pro/Toolkit應用程序開發采用目前最先進的面向對象技術的程序開發方法。它能直接利用 VC+6.0的應用程序設計向導和類向導進行程序的設計、創建和調武漢工業學院畢業設計 10 試。 Pro/Toolkit典型程序開發包括源程序 (Pro/Toolkit C程序源程序、菜單資源文件、窗口信息資源文件、對話框資源文件等 )的編寫、源程序的編譯和連接,參數化模板庫的建立、注冊文件及程序的注冊和運行。 Pro/Toolkit典型開發結構如圖 1所示。 。 圖 1: Pro/Toolkit典型開發結構圖 2.3.3 參數化設計技術 1. 參數化設計的概念 參數化設計 (也叫尺寸驅動, Dimension Driven)是目前 CAD 應用技術中最重要的 技術之一,作為產品建模的一個重要手段,在系列化產品設計中得到較好的應用。它是以約束來表達產品模型的形狀特征,以一組參數來控制設計結果,從而能通過變換設計參數來實現產品模型的更改或相似產品模型的創建 14。Pro/Engineer 的參數化是指將表示零件或組件的形狀和拓撲關系由賦予它們的特征值來控制,這些特征值可能與其它特征值相關聯。在齒輪、軸等旋轉體結構比較簡單的產品方面基于 Pro/Engineer 的參數化得到了很好的應用和推廣 。 2. 參數化設計的實現過程 基于 Pro/Toolkit 三維參數化設計的開發方法有 兩種:一是應用特征描述法,利用 Pro/Toolkit 提供的底層函數完成特征建模,并建立人機對話框,實現三維參數化設計,此方法程序設計繁瑣,對于形狀復雜的產品來說,用程序來生成三維模型非常困難。二是采用三維模型與程序控制相結合的方式,基本過程為在Pro/Engineer 環境下利用交互方式生成三維模型 ,然后在已創建的零件三維模型的基礎上,根據零件的設計要求建立一組可以完全控制三維模型形狀和大小的設計參數。 武漢工業學院畢業設計 11 文中采用結合二者的優勢來實現參數化零件設計的二次開發,即采用三維參數化模型與程序控制相結合,實現將零件 模型用 Pro/Engineer 交互方式創建其三維基本模型,建立相應的設計參數和約束關系,并保存到零部件基本數據庫作為基準零部件模型;然后由 Pro/Toolkit 程序檢索基準零部件模型的設計參數供用戶編輯修改,最后按照新的設計參數更新,設計出新的零部件模型,實現快速設計。采用這種方式,可以方便地實現產品的系列化 和變形設計,其實現過程如圖 2所示。 圖 2:基于三維模型的參數化設計實現過程 基于 Pro/Toolkit 二次開發的參數化程序設計的基本原理是:采用三維模型與程序控制相結合的方式,根據零件或組件的 設計要求,建立一組能控制三維模型形狀和拓撲關系的設計參數,參數化程序通過對零件或組件的設計參數編程,來實現設計參數的檢索、修改以及三維模型的再生。有關參數化設計二次開發流程 15請參見圖 3。 圖 3:參數化設計二次開發流程圖 武漢工業學院畢業設計 12 第三章 帶輪結構的確定 3.1 帶輪簡介 帶輪作為機械傳動系統中一種常見的傳動件, 具有結構簡單、傳動平穩、造價低廉以及緩沖吸振等優點,因而 被廣泛的應用于各種工農業生產中。 帶輪的設計應滿足的要求有:質量小; 結構工藝性好;無過大的鑄造內應力;質量分布均勻,轉速高時要經過動平衡;輪槽工作要精細加工(表面粗糙度一般應為 3.2),以減少帶的磨損;各槽的尺寸和角度應保持一定的精度,以使載荷分布較為均勻 16。帶輪的輪槽槽型有 Y、 Z( SPZ)、 A( SPA)、 B( SPB)、 C( SPC)、 D和 E幾種。這主要決定于帶輪的基準寬度。帶輪的結構形式主要有以下幾種 (見圖4):( a)實心式;( b)腹板式;( c)孔板式; (d)橢圓輪輻式。當帶輪的基準直徑 dd 2.5d(d為配合軸的直徑 )時,可采用實心式;當 dd 300mm時,可 采用腹板式(當 D1-d1 100mm時,可采用孔板式);當 dd 300mm時,可采用輪輻式。 圖 4:帶輪的結構形式 3.2 確定帶輪的基本結構尺寸 3.2.1 帶輪的基本參數及其意義 (1)輪槽節寬 bd V 帶輪的輪槽與配用 V 帶節寬相等處的槽寬 bd (2)基準直徑 dd V帶輪在輪槽節寬 bd處的直徑稱為基準直徑 dd。 3.2.2 帶輪設計的驅動尺寸確定及其輸入 ( 1) 確定帶輪設計的驅動尺寸 武漢工業學院畢業設計 13 在實際生產中,帶輪的設計是根據帶輪的工作條件和工作場合來進行合適設計的。也就是說在給定工作條件的情況下,自行 確定帶輪的相關參數。而帶輪的工作條件的信息主要有以下幾個:電動機的型號、額定功率、轉速、傳動比以及工作運轉時間。我們根據以上參數可以由設計經驗和計算公式可以得到傳動帶的帶型(帶輪的槽型)、主從動帶輪的基準直徑 dd、帶輪配合軸的直徑 d 以及帶的根數(帶輪的輪槽數 z)。在知道以上參數的情況下,我們再進行的帶輪的結構設計。又由于在進行帶輪參數化設計過程中,為了保證我們程序設計的簡單和方便并能夠識別,我們將帶輪的槽型用帶輪的基準寬度來表示具有同樣的效果。因為帶輪我每一個槽型都對應于一個固定的基準寬度 bd。 結合以上的 分析,我們將帶輪的基準寬度 bd、基準直徑 dd、輪槽數 z和配合軸的直徑 d作為帶輪設計的驅動參數。 ( 2)參數的輸入 參數化設計的運行前需要在人機交互界面上輸入一定參數,才可以得到其他結構尺寸和三維實體結構圖,這個過程我們可以稱之為參數驅動 17。對于輸入的參數我們稱之為驅動參數。程序的運行就是將這些參數作為自變量經過一系列運算得到其他的結構尺寸。結合帶輪的設計過程,我們前面已經確定其驅動尺寸有四個。這四個尺寸就是我們在人機交互界面上需要輸入的參數。四個參數的數型及位數必須滿足一定的要求才可能使設計存在意義, 也就是說也只有符合條件的參數才會被系統所識別,具體參數條件參見表 1。 表 1:基本輸入參數 3.2.3 確定帶輪的結構尺寸 帶輪的結構尺寸主要包括兩部分:帶輪的輪槽尺寸、帶輪的基本外形尺寸和鍵槽的配合尺寸。 我們將由前面確定的四個基本驅動參數來確定帶輪的所有外形尺寸。 ( 1) 確定帶輪的輪槽尺寸 我們要確定的輪槽結構尺寸及其意義見圖 5。輪槽尺寸主要有 基準寬度 bd、基準 線上槽深 ha、 基準線 下 槽深 hf、 槽間距 e、 槽邊距 f、 輪緣厚 、 輪槽角 等。它們都可以根據表 2 由基準寬度來確定 18。 參數名稱 輪槽數 基準寬度 基準直徑 配合軸直徑 參數符號 z bd dd d 參數類型 整型 實型 整型 整型 參數位數 1 2 3 3 武漢工業學院畢業設計 14 圖 5:輪槽結構圖 表 2: 基準帶寬制 V 帶輪輪槽尺寸 mm (GB/T 13575.1-92) ( 2) 確定帶輪的外型尺寸 實心式帶輪的結構圖如圖 6 所示,由圖我們可以知道要確定的實心式帶輪外形尺寸主要有:帶輪的外徑直徑 da、基準直徑 dd、帶輪輪緣寬 B、輪轂孔直徑 d、輪毅長 L 和端面直徑 d1。其中基準直徑 dd和輪轂孔直徑 d 作為驅動參數是已知的,那么確定其它參數的計算公式如下:B=(z-1)e+2f; d1=(1.8 2.0)d; L=( 1.5 2.0) d; da=dd + 2ha; 項 目 符 號 槽 型 Y Z,SPZ A,SPA B,SPB C,SPC D E 基準寬度 bd 5.3 8.5 11 14 19 27 32 基準線上槽深 hamin 1.6 2 2.75 3.5 4.8 8.1 9.6 基準線下槽深 hfmin 4.7 7 9 8.7 11 10.8 14 14.3 19 19.9 23.4 槽間距 e 80.3 120.3 150.3 190.4 25.50.5 370.6 44.50.7 槽邊距 fmin 6 7 9 11.5 16 23 28 最小輪緣厚 min 5 5.5 6 7.5 10 12 15 帶輪寬 B B=(z-1)e+2f; z 輪槽數 外徑 da da=dd+2ha 輪槽角 32 相應的 基準直 徑 dd 60 34 80 118 190 315 36 60 475 600 38 80 118 190 315 475 600 偏差 1 0.5 武漢工業學院畢業設計 15 圖 6:實心帶輪結構圖 其中,又為了使我們的計算更加方便快捷,帶輪的外徑可以由附表 1根據基準直徑的值和槽型對應查得;輪緣寬 B和輪轂長 L也可以根據 GB10412-89 查得。例如:若帶輪的槽型為 Z、基準直徑為 80mm、輪槽數為 3,則可查得其外徑 da=84mm、輪緣寬為 B=40mm 和輪轂長為 L=40mm。那么帶輪的所有參數都可以根據驅動參數進行相關計算查表得到了。 ( 3) 確定帶輪的鍵槽尺寸 帶輪的鍵 槽尺寸主要是根據輪轂孔尺寸來查閱國家標準來確定 19。其結構及相關參數確定見附表 2。 ( 4)小結 根據以上分析,我們可以發現根據前面所選擇的的四個驅動參數可以得到帶輪的所有結構尺寸,因此選擇他們作為驅動參數是滿足設計要求的。這四個驅動尺寸為:帶輪的輪槽數 z、帶輪的基準寬度、帶輪的基準直徑 dd和帶輪配合軸的直徑 d。 武漢工業學院畢業設計 16 第四章 參數化設計的方法和步驟 4.1 Pro/TOOKIT 的安裝 Pro/TOOKIT 工具包是隨 Pro/ENGINEER Wildfire 安裝盤一起提供的,所以不需要專門購買。 當用 Pro/SETUP 安裝 Pro/ENGINEER Wildfire 時,其中有一個可選項“ API Tookits”。它包括 Pro/TOOKIT、 Pro/Web.lib 和 Pro/J。 link。選擇“ Pro/TOOKIT”選項,在 Pro/ENGINEER 安裝目錄下自動創建子目錄Pro/TOOKIT。 Pro/TOOKIT 包含了全部頭文件、庫文件、應用程序示例等。當中有四個子目錄: i486_nt、 include、 protk_appls 和 protk.doc。頭文件位于 include 目錄。庫文件位于 i486_nt 目錄 20。這兩種類型文件是用 VC+開發 Pro/ENGINEER 應用程序必不可少的支持文件。 4.2 VC.net 環境設置 VC的集成開發環境采用工程( PROJECT)來管理所有 C+源程序、頭文件、庫文件和各種資源,程序的設計、編譯、連接和調試均十分方便。 VC作為 Pro/TOOLKIT開發應用程序工具時需要進行相應的環境設置 。 4.2.1 創建 DLL 工程 啟動 VC+,點擊菜單欄中的“文件”按鈕,在下拉菜單中選擇“新建”。這時會彈出“新建”對話框,點擊“工程”選項,選擇 MFC AppWizard(dll)方式。 指定工程名稱及存放路徑。 然后點擊下面的“確定”按鈕,后面的接受缺省設置。那么我們就 利用 VC 向導新建一個共享 MFC 的常規動態鏈接庫框架工程。該框架提供建立 DLL 應用程序所需的必要文件支持,這是一個空的框架,不能實現任何功能,主要是為了滿足 Windows 操作系統要求。 4.2.2 設置包含頭文件 在 VC+中菜單欄中的“工具”里點擊“選擇”按鈕。在彈出的“選擇”對話框里點擊“目錄”,選擇“ Win32”平臺,“顯示目錄為”中選擇“ include file”,“路徑”選擇“ C: PROGRAM FILESPROEWILDFIREPROTOOLKITINCLUDES” 。然后點擊“確定”按鈕。 武漢工業學院畢業設計 17 4.2.3設置庫文件環境 在 VC+中菜單欄中的“工程”中選擇“設置”,彈出“ Project Settings”對話框中左邊的 ” Settings For” 中選擇“ Win32 Unicode Release” ,在右邊按鈕中選擇” Link”在“分類”中選擇“ Input” ,在“對象 /庫模塊”中輸入:protk_dll.lib prodev_dll.lib mpr.lib wsock32.lib,設置 Ignore libraries: msvcrt.lib 然后點擊“確定”按鈕。 4.2.4設置庫文件路徑 在 VC+中菜單欄中的“工具”里點擊“選擇”按鈕。在彈出的“選擇”對話框里點擊“目錄”,選擇“ Win32”平臺,“顯示目錄為”選擇“ Library files” , “路徑”選擇 C: PROGRAM FILESPROWILDFIRREPROTOOLKIT1486 NTOBJ” 。然后點擊“確定”按鈕。 通過在這個 DLL 工程界面中 選擇 FileView,我們可以看到打開 VC 應用程序向導自動生成的程序文件。 VC 應用程序設計向導在 FileView 中自動加入了ReadMe、 StdAfx.cpp 和以工程文件名為前綴的 cpp 源文件、 def 模塊定義文件以及 rc 資源文件等。 那么,經過以上的操作我們就完成了 Pro/TOOLKIT 二次開發環境下的 VC的環境設置, 也就使其符合創建 Pro/TOOLKIT 應用程序的基本條件。 4.3 Pro/TOOLKIT 應用程序設計 -編寫源文件 使用 VC向導生成 MFC DLL工程并完成環境設置之后,必須 添加必要的函數代碼、增加新的 CPP源程序以及新的資源, 才可以 構成一個完整的 Pro/TOOLKIT應用程序體系 ,這些文件就組成了 源文件,也就是與 工程文件名同名的 CPP文件。源文件包括資源文件和程序源文件 21。 4.3.1 編寫資源文件 程序中用到的菜單信息資源文件應保存在 PTC 目錄下的 textusascii 中 。 因此我們 在 text 下添加 usascii 子文件夾,同時創建 usermsg.txt 文件, 它是通過記事本編寫的文件格式文件。 4 行為一組,每組對應一個菜單項。這個文件就是帶輪參數化設計的菜單資源文件, 內容如下: USER Menu0 參數化設計 武漢工業學院畢業設計 18 # # USER Menu1 帶輪設計 # # USER Menu1 help 參數化設計幫助 # # USER Menu2 help 帶輪設計幫助 # # 2 5 4.3.2 編寫程序源文件主框架 Pro/TOOLKIT應用程序源文件整體上包含 3部分:頭文件部分、用戶初始化函數和終止函數。初始函數 user_initialize()和終止函數 user_terminate()是每個同步模式所必須添加的。程序源文件可以將菜單文件載入,實現菜單載入、菜單注冊和動作定義等任務。 在本文中,該源文件全部內 容及其分析見附錄 1中的ModelView.cpp程序。 ( 1)添加頭文件 頭文件包含部分是指應用程序所使用對象函數的原型部分,每個應用程序都必須包含的頭文件是“ Pro/TOOLKIT.h”,因為它定義了 因為它定義了值 wchar_t,其類型為寬字符串。 使用一個特定的 Pro/TOOLKIT對象函數時應包括有其函數原形的頭文件( .h)文件。否則在編譯該文件時,會出現編譯器不能對函數參數類型進行檢查的錯誤。 ( 2) 編寫 user.initialize()函數 初始化函數主要是用來設置需要添加的菜單,以及其它的一些初 始值設置,這個函數相當于 C+類的構造函數或 C語言中的 main()函數。 user.initialize()函數在編寫時必須注意到其至少應包含一個 Pro/TOOLKIT 的 API 調用 22。否則就會導致 Pro/TOOLKIT 應用程序失敗,且返回 PRO_TK_GENERAL_ERROR。典型的定義格式為: extern“ C” int user_initialize(int argc,char *argv,char*version,char*build, 武漢工業學院畢業設計 19 wchar_t errbuf) ProError status; /用戶添加的接口程序部分 return status; ( 3) 編寫 user_terminate()函數 user_terminate()作用是結束應用程序的執行(退出 Pro/ENGINEER 將終止應用程序的運行)。該函數由用戶定義,其中可以不執行任何動作。 如下結構: user_terminate() ( 4) 添加菜單和菜單響應函數。 菜單響應函數中需要使用三個函數 23( ProMenubarMenuAdd、 ProCmdAcTi- onAdd、 ProMenubarmenuPushbuttonAdd),這三個函數定義了菜單內容和菜單動作等。 為 Clytaper 加載菜單文件 ,在 Help 菜單后 ProMenubarMenuAdd (Menu0, USER Menu0,Help, PRO_B_TRUE, mf); 在 Gear 菜單組中定義新的按鈕按鈕及其響應函數 Taper() ProCmdActionAdd(uiCmdCmdActFn) GetModel,uiCmdPrioDefault,UserAccessTe-stMenu, PRO_B_TRUE, PRO_B_TRUE, &cmd_id); 在該 Pro/TOOLKITS 應用程序中 ,最為關鍵的函數就是菜單響應函數Taper,在該函數中載入 MFC 對話框資源 ,獲得用戶的輸入信息 ,創建 旋轉 特征 , 生成 三 維實體 效果圖 。 ( 5) 創建帶輪實體模型庫 要使程序在運行后能夠很好地調出三維實體圖,必須建立圖形庫,并存在xiazhengwei/text 目錄下。建立三維圖的方法主要就是在 Pro/E 界面下,利用旋轉特征產生。 4.4 創建并調用參數輸入對話框 4.4.1創建對話框過程 24 ( 1)打開前面創建的 DLL 工程 ( 2)在應用程序界面 的主菜單中,選擇“插入”菜單中“資源”選項,彈出“插武漢工業學院畢業設計 20 入資源”對話框。 ( 3)在“資源類型”區域中選中“ Dialog”選項,然后單擊”新建“命令按鈕,彈出” Dialog”對話框。 ( 4)在對話框中單擊鼠標右鍵,從彈出的菜單的對話框中選擇“屬性”選項,得到“ Dialog Properties”對話框。在” General”選項卡中,按要求改變對話框的ID 和標題名稱。 ( 5)同上步操作類似,改變“ Styles”選項。然后使用“控件調色板”來設計對話框。最后得到如圖 7 所示的對話框圖。 圖 7:對話框創建效果圖 4.4.2編輯 用戶界面 應用程序 利用 MFC AppWizard (dll) ,工程類型選用 MFC 的常規 DLL (Regular DLL using shared MFC DLL) ,生成一個 DLL 工程 ,加入對話框資源 ,通過 MFC ClassWizard 生成從 CDialog 繼承出來的 CParamDlg 類,它負責處理用戶界面上的數據輸入,同時通過 MFC ClassWizard 在這個類中添加成員變量,并編寫相應的消息處理函數和代碼,具體代碼見附錄中的 paramDlg.cpp 文件。 4.4.3添加一個數據接口文件 為 了得到界面上輸入的參數,在工程中需要添加一個數據接口文件interface.cpp,定義 聲明導出變量和導出函數 。該接口文件內容如下: #ifndef GUIINTERFACE_H #define GUIINTERFACE_H _declspec(dllexport) float m_basicDiameter,m_axisDiameter,m_basicWidth; _declspec(dllexport) int m_teethNum; 武漢工業學院畢業設計 21 extern C _declspec(dllexport) BOOL LoadDialog(); extern C _declspec(dllexport) float GetBasicDiameter(); extern C _declspec(dllexport) float GetBasicWidth(); extern C _declspec(dllexport) float GetaxisDiameter(); extern C _declspec(dllexport) int GetTeethNum(); #endif 并對該項目下的工程文 件進行 編譯 ,生成 股 gui. Dll。其編譯實現代碼見附錄中的 paramDlg.cpp 文件。 4.5 應用程序注冊與運行 要使 Pro/TOOLKIT應用程序加載到 Pro/ENGINEER 環境中,并在其中運行,首先要制作一個名為 protk.dat 的注冊文件。通過這個文件向 Pro/ENGINEER 提供 Pro/TOOLKIT 應用程序的有關信息,也就是告訴 Pro/ENGINEER 此應用程序的可執行文件在哪里;菜單資源文件和對話框資源文件在哪里;以及此程序所依據的 Pro/TOOLKIT的版本信息。 4.5.1 注冊文件的編寫 注冊文件是一個文本文件,每一行都有一個預先定義的關鍵詞。該文件的內容如下: NAME beltwheel EXEC_FILE F:xiazheweidllclytaper.dll TEXT_DIR F:xiazheweitext STARTUP dll REVISION 2007.1 ALLOW_STOP TRUE END 4.5.2 應用程序的注冊 編寫好上面的注冊文件后,就可以利用此注冊文件進行 Pro/TOOLKIT應用程序的注冊,共有兩種注冊方式:自動注冊 和人工注冊。 ( 1) 自動注冊 自動注冊是指將文件放到 Pro/ENGINEER 的啟動目錄下,在運行Pro/ENGINEER 時, Pro/ENGINEER 自動啟動注冊文件里所有的 Pro/TOOLKIT應武漢工業學院畢業設計 22 用程序。 ( 2) 人工注冊 采用這種方式時,注冊文件不在啟動目錄下啟動應用程序。本文將采用人工注冊方式對應用程序進行程序注冊。下面將介紹人工注冊的具體步驟: ( a) 在 Pro/ENGINEER 環境下,單擊“工具”主菜單下的“ 輔助應用程序”子菜單,彈出如圖示 8所示對話框。 ( b) 單擊如圖所示對話框中的“注冊”按鈕,彈出如圖 9 所示的“登記 輔助應用程序”對話框,選擇所建立的 protk.dat 文件。 ( c) 在“登記輔助應用程序”對話框中,單擊“打開”按鈕,彈出對話框,單擊“啟動”按鈕,應用程序開始運行。 這時就可以看到 Pro/ENGINEER的菜單項中多了一個“帶輪設計 ” 按鈕。 圖 8:應用程序注冊圖 圖 9:“登記輔助應用程序”對話框 4.5.3 應用程序的運行 注冊完畢后, 我們就可以看到 Pro/ENGINEER 的菜單項中多了一個“帶輪設計 ” 按鈕(如圖 10)。點擊該按鈕,我們就可以進入程序 的運行,出現一個帶輪設計參數輸入的對話框。在該對話框輸入相關的設計驅動參數點擊“確定”按鈕,就會自動生成在該參數下的帶輪三維實體模型圖。假使輸入輪槽數 3、基準直徑80、軸孔直徑 36、基準寬度 8.5等參數(如圖 11),確定運行就可以產生編碼為385080036帶輪的實體圖( 如圖 12所示)。再次調用帶輪設計對話框,輸入輪槽數4、基準直徑 180、軸孔直徑 45、基準寬度 14等參數(如圖 13),運行后就可以產生編碼為 414180045帶輪的實體圖(如圖 14)。通過以上調試,我們發現該程序可以平穩快速的正常運行。 武漢工業學院畢業設計 23 圖 10:注冊后運行菜單 圖 11: 385080036 參數輸入對話框圖 圖 12: :編碼 385080036 實體圖 圖 13: 414180045 參數輸入對話框 圖 14:編碼 414180045 實體圖 武漢工業學院畢業設計 24 在得到帶輪實體圖后,可以繼續利用 PRO/E 強大的圖形變換功能,將三維實體圖轉換成二維平面投影圖,從而形成生產車間工程用圖。同時,也可以將此圖轉入AutoCAD 中進行繪制修改等。編碼 385080036 的帶輪轉化為二維圖的效果圖見圖 15。 圖 15:編碼 385080036 三維圖轉化維二維的效果圖 武漢工業學院畢業設計 25 結 論 在 Pro/Engineer三維模型的基礎上進行參數化設計系統的開發,是一種非常實用和高效的 CAD/CAM 應用軟件系統的開發方法。由應用程序檢索和處理不同驅動參數下的特征約束參數,調出模型庫中的對應三維實體圖,完全可實現零件快速設計的要求,從而提高設計效率和質量 。總的來說有以 下幾個優點和特色: ( 1)在 VC+6.0集成開發環境下編寫調用 Pro/E的接口程序,調用 Pro/E二次開發包Pro/TOOLKIT很好地實現系統的參數傳遞和修改。 ( 2)利用 Pro/ENGINEER WILDFIRE 三維參數化設計平臺上利用 Pro/TOOLKIT 開發工具添加用戶菜單,調用模型庫,實現帶輪模型的參數化顯示、修改和分析。 ( 3) 用戶可以結合自己實際情況定制個性化的 Pro/ENGINEER 系統 ,做到 真正的全相關性,做到任何地方的修改都會自動反映到所有相關地方,做到管理并發進程、實現并行工程的能力 。 ( 4)本平臺設計界面友好,操作簡單 ,符合工程人員的設計思想,只需輸入幾個參數,利用參數驅動,就可生成所需的零件實體三維圖,能夠很好地提高設計效率。 本論文只是將本平臺運用于帶輪并且沒有通過自定義特征來建模,所以其有很好的利用發展前景。在此作以下展望: ( 1)用戶自定義特征建模,利用約束特征定義,可以更大更廣泛地實現帶輪的設計,從而實現真正的參數化。 ( 2)本平臺同樣可以發展稱為其他零部件的設計系統,主要是對相關程序參數和模型庫等進行一定修改就可以實現零件的參數化設計。 ( 3) Pro/ENGINEER 提供 的二次開發工具 Pro/TOOLKIT 可以比較容易地實現由程序動態地、自動地進行特征建模的功能,并且所建模型能由程序自動加入較為豐富的非幾何特征,并存入模型統一的數據庫、特征庫中,為 CAD/CAM/CAE/CAPP 系統的集成打下良好基礎,這是本設計將來需要擴展的一個重要方向。 武漢工業學院畢業設計 26 謝 辭 為期三個月的畢業設計即將結束,在整個畢業設計過程中,讓我熟悉參數化設計方法的實現過程。這種設計方法可以很好地實現零 部件的設計。由于參數化設計方法涉及到的知識面很廣,所以在設計過程中遇到了很到困難,令我慶幸的是在整個過程中得到了很多老師同學的幫助和鼓勵。 首先感謝學校能夠提供很好的畢業設計的環境,從實驗室、 CAD 機房到圖書管等都免費對我們開放。其次要感謝我的指導老師葉老師,葉老師為我們畢業設計制定了周密的計劃,從一開始的翻譯到三維實體圖實現到編程到論文的修改等過程中都一一教我。我的每一步設計的實現都得益于葉老師的耐心指導。同時,葉老師嚴謹的治學態度和正直的為人精神,都將對我產生深遠的影響。另外,在設計過程中,得到了諸多 同學的幫助,在此一并表示感謝。 最后,再此感謝母校四年的培育,感謝四年來給我知識和思想的恩師! 武漢工業學院畢業設計 27 參 考 文 獻 1管耀文 . Pro/E機械設計實例課堂 M.北京:人民郵電出版社, 2006年 2月 . 2吳卓 ,趙國霞 ,丁志磊 .基于 PRO/E二次開發技術參數化技術的研究與應用 J. 工程機械 , 2006( 6) : 4-6. 3戴同 CAD/CAM/CAPP基本教程 M北京:機械工業出版社, l997. 4董曉英 ,李秀蓮 .現代 CAD技術的發展 J.農機化研究, 2004( 6): 15-16. 5黃維通 .VC+面向對象與可視化程序設計 .北京:清華大學出版社, 2003. 6C+程序設計(第三版) .北京:清華大學出版社, 2003. 7劉玲 ,周旭東 .VC+對 Pro/E二次開發參數化的研究 J.機械, 2004( 9):39-41. 8王曉林,唐良寶 .Pro/Toolkit的二次開發方法研究與實例分析 J. 機械研究與應用 , 2006,19( 12) :97-100. 9二代龍震工作室 . Pro/Toolkit插件設計 M.北京:電子工業出版社, 2005. 10楊青等 .基于 Pro/E的三維零件模型的參數化設計 J.機械設計 ,2006年月 , 23(9):53-56. 11林清安 . Pro/Engineer零件設計 M.北京:北京大學出版社, 2001. 12黃恒星 . Pro/Engineer模型參數分析 M.北京:人民郵電出版社, 2005. 13蔣素清 ,周如俊 ,蔣紅平 .基于 Pro/E參數化造型技術的研究與應用 J. 邢臺職業技術學院學報 , 2006,23(10):43-45. 14沈斌等 .Pro/E技術在零件參數化設計系統中的應用 J.機電 產品開發與創新 ,2006,19(1): 73-75. 15王曉林,唐良寶 .Pro/Toolkit的二次開發方法研究與實例分析 J. 機械研究與應用 , 2006,19( 12) :97-100. 16武漢工業學院機械基礎教研室 .機械設計課程設計 . 17鐘啟 ,李瀟波 ,邱清盈 .基于 Pro/Engineer二次開發帶傳動參數化 CADJ. 輕工機械, 2006, 24( 1) :62-64. 18徐幜 .機械設計手冊 33.北京:機械工業出版社, 1988. 19濮良貴 紀名剛 .機械設計 M.北京:高等 教育出版社, 2001. 20Pro/Engineer數控加工及二次開發技術 M.北京:機械工業出版社, 2005. 21曹淼龍等 .使用 VC開發 Pro/TOOLKIT應用程序 J.模具工程 ,2006,61(4):53-56. 22徐軍民 ,王艷霞 .基于 Pro/E的三維參數化零件設計 J.浙江科技學院報 , 2005, 17(l):18-20. 23李世國 Pro/Toolkit程序計 M北京:機械工業出版社, 2003 24張繼春二次開發實用教程 M北京:北京大學出版社, 2003. 武漢工業學院畢業設計 28 附表 1: V 帶輪的基準直徑系列及其對應外徑 基準直徑 dd 帶型 Y Z( SPZ) A( SPA) B( SPB) C( SPC) D E 外徑 da 50 53.2 54 63 66.2 67 71 74.2 75 75 79 80.5 80 83.2 8844 85.5 85 90.5 90 93.2 94 95.5 95 100.5 100 103.2 104 105.5 106 111.5 112 115.2 116 117.5 118 123.5 125 128.2 129 130.5 132 132 136 137.5 139 139 140 144 145.5 147 150 154 155.5 157 160 164 165.5 167 170 177 180 184 185.5 187 200 204 205.5 207 209.6 212 219 221.6 224 228 229.5 231 233.6 236 243 245.6 250 254 255.5 257 259.6 265 274.6 280 284 285.5 287 289.6 315 319 320.5 322 324.6 355 359 360.5 362 364.6 371.2 375 391.2 400 404 405.5 407 409.6 416.2 425 441.2 450 455.5 457 459.6 466.2 475 491.2 500 504 505.5 507 509 516.2 519.2 武漢工業學院畢業設計 29 附表 2: 帶輪鍵槽尺寸的確定 轂孔徑 d b h t2 6-8 2 2 1 8-10 3 3 1.4 10-12 4 4 1.8 12-17 5 5 23 17-22 6 6 2.8 30-38 10 8 3.3 38-44 12 8 3.3 44-50 14 9 3.8 50-58 16 10 5.3 58-65 18 11 4.4 65-75 20 12 4.9 75-85 22 14 5.4 85-95 25 14 5.4 95-110 28 16 6.4 110-130 32 18 7.4 130-150 36 20 8.4 150-170 40 22 9.4 170-200 45 25 10.5 200-230 50 28 11.4 230-260 56 32 12.4 260-290 63 32 12.4 290-330 70 36 14.4 330-380 80 40 15.4 380-440 90 45 17.4 440-500 100 50 19.5 武漢工業學院畢業設計 30 附錄 3: GuiInterface.cpp 程序 #include StdAfx.h #include paramdlg.h #include guiinterface.h extern C _declspec(dllexport) BOOL LoadDialog() AFX_MANAGE_STATE(AfxGetStaticModuleState(); CParamDlg paramDlg; if(paramDlg.DoModal() = IDOK) m_teethNum = paramDlg.m_teethNum; m_basicDiameter = paramDlg.m_basicDiameter; m_axisDiameter=paramDlg.m_axisDiameter; m_basicWidth= paramDlg.m_basicWidth; return TRUE; return FALSE; extern C _declspec(dllexport) float GetBasicDiameter() return m_basicDiameter; extern C _declspec(dllexport) float GetBasicWidth() return m_basicWidth; extern C _declspec(dllexport) float GetAxisDiameter() return m_axisDiameter; extern C _declspec(dllexport) int GetTeethNum() return m_teethNum; 附錄 4: ParamDlg.cpp 程序 / ParamDlg.cpp : implementation file / #include stdafx.h #include gui.h #include ParamDlg.h #ifdef _DEBUG #define new DEBUG_NEW 武漢工業學院畢業設計 31 #undef THIS_FILE static char THIS_FILE = _FILE_; #endif / / CParamDlg dialog CParamDlg:CParamDlg(CWnd* pParent /*=NULL*/) : CDialog(CParamDlg:IDD, pParent) /AFX_DATA_INIT(CParamDlg); m_teethNum = 0; m_basicDiameter = 0.0f; m_axisDiameter = 0.0f; m_basicWidth = 0.0f; /AFX_DATA_INIT void CParamDlg:DoDataExchange(CDataExchange* pDX) CDialog:DoDataExchange(pDX); /AFX_DATA_MAP(CParamDlg) DDX_Text(pDX, IDC_BIGNUM, m_teethNum); DDX_Text(pDX, IDC_BASICDIA, m_basicDiameter); DDX_Text(pDX, IDC_AXISDIA, m_axisDiameter); D
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 曲靖師范學院《工業機器人系統仿真》2023-2024學年第二學期期末試卷
- 外聘館長合同協議
- 塑料圍欄租賃合同協議
- 培訓班協議班合同
- 天津混凝土合同協議
- 外貿紡織面料合同協議
- 外包裝合同協議
- 土地買賣流轉合同協議
- 外墻吊籃出租合同協議
- 土地寄賣合同協議
- 江南美術遺產融入美育的數智化路徑探索
- 西雅圖駕駛證考題及答案
- 綜合執法考試試題及答案
- 軟式內鏡消毒管理與質量標準
- (高清版)DB11∕T2324-2024腳手架鋼板立網防護應用技術規程
- DBJ50T-284-2018 工程勘察信息模型設計標準
- 無人機吊裝作業安全措施
- 2012年7月國家開放大學專本科《法律文書》期末紙質考試試題及答案
- 《永輝超市營運能力現狀、問題及優化建議探析》10000字【論文】
- 2024鐵路通信線路施工合同規范范本3篇
- 2025年拉桿箱項目可行性研究報告
評論
0/150
提交評論