鄭繼旭
隨著工業技術的不斷發展,各制造部門對不同種類的滾動軸承需求量不斷增加。在市場競爭激烈的當今,以最快的速度設計出與需求配套的滾動軸承,縮短產品設計周期是眾企業所追求的目標,因此滾動軸承參數化設計一直得到業界重視。而圓柱滾子軸承的結構形狀由幾個主要尺寸參數驅動,這些參數與結構的控制尺寸有明顯的對應關系,只要對這幾個參數進行修改,就可以得到新的產品,因而參數化的設計方法非常適用于圓柱滾子軸承的設計。而開發圓柱滾子軸承CAD系統,無疑將促進軸承設計自動化,提高軸承生產企業的發展速度。
Pro/E軟件是目前三維CAD軟件中最具有代表性的一種,它是基于單一數據庫(整個Pro/ENGINEER系統建立在單一的數據庫上,具有完整而統一的模型,提供了雙向關聯性的功能)的參數化通用CAD軟件,它提出了真正的全相關性(任何地方的修改都會自動反映到所有相關地方)、基于特征的參數化造型等概念。因此,以Pro/E軟件為平臺進行滾子軸承CAD系統的二次開發,使之適合國內企業設計的要求,對于提高產品設計效率并滿足更高層次的要求也有很大的現實意義。
開發的圓柱滾子軸承三維CAD系統,建立了常用的圓柱滾子軸承基本參數數據庫,利用VC++創建的交互式界面,用戶可通過對話框輸入基本參數或選擇軸承型號,自動查找并計算出軸承各零件的詳細尺寸,并根據尺寸值檢索相應數據庫,查出相應尺寸公差、形位公差,再通過Pro/Toolkit的底層函數將這些參數傳遞到調用的Pro/E參數模型中,驅動并生成新的圓柱滾子軸承零件與裝配體的三維模型,以及相應的二維工程圖與設計文件。整個CAD系統主要包括:圓柱滾子軸承數據庫、參數優化設計和三維、二維工程圖建模三大模塊。
系統采用Microsoft Access數據庫,參照最新滾動軸承設計手冊與滾動軸承設計標準數據中圓柱滾子軸承的有關資料,建立了標準軸承型號、外型尺寸、參數選擇及尺寸公差、形位公差等資料的產品設計表。系統程序依靠數據庫訪問對象(DAO)來實現對數據庫的存儲、查詢、檢索等操作,同時增加了軟件維護認證口令。
該模塊利用CAD系統與滾子軸承的數據庫接口,從數據庫中檢索出軸承主要外形結構尺寸參數,同時對軸承主參數進行優化設計以獲得軸承零件的詳細參數,并根據優化后的參數選取數據庫中對應的尺寸公差和形位公差等工程圖所需參數。
建立不同類型的圓柱滾子軸承零件、裝配體三維模型及二維工程圖的基準圖形,并設置各基準圖形中的所要驅動的參數(如三維尺寸、結構、裝配體中各零件間的關系及工程圖名稱,明細表,標注符號,公差等)。然后將VC++檢索數據庫優化設計得到的各參數,賦值給調用的參數化的基準圖形,來生成新的軸承零件、三維裝配模型及相應的二維工程圖。
2.1.1 添加頭文件和庫文件路徑
利用Pro/TOOLKIT進行三維參數化建模,必須利用Pro/TOOLKIT提供的用于底層資源調用的C語言函數庫和頭文件以及Visual C++提供的MFC類庫來共同完成,所以要在Visual C++環境中添加頭文件和庫文件路徑。
選擇VC++主菜單命令TOOLS | OPTIONS,在OPTIONS對話框中選擇DIRECTORIES選項,在Include Files項下添加~protoolkitincludes等項,同樣在Library Files項下添加~protoolkiti486 ntobj等項(其中“~”是指Pro/ENGINEER野火版的安裝目錄)。
2.1.2 設置Project/Settings選項
1)添加庫文件:選擇VC++主菜單命令PROJECT| SETTING,在SETTING對話框中選擇LINK選項卡,在Category選項卡里選擇General,在Object/library modules域內添加下列庫文件:protoolkit.lib pt_asynchronous.lib wsock32.lib mpr.lib protkmd.lib。
2)設置強制輸出:選擇VC++主菜單命令PROJECT| SETTING,在SETTING對話框中選擇LINK選項卡,在Category選項卡里選擇Customize,選中Force files output選項,設置該工程為強制輸出狀態。
2.1.3 設置環境變量
采用Pro/TOOLKIT異步開發模式,必須預先設置環境變量,環境變量設置的內容為:
變量名:PRO_COMM_MSG_EXE
變量值:~ i486_ntobjpro_comm_msg.exe
//“~”是指Pro/ENGINEER野火版的安裝目錄。
在CAD中要實現參數化設計,參數化模型的創建是關鍵。
參數化模型是在零件圖形中加入一定的幾何約束和工程約束。幾何約束包括結構約束(指幾何元素之間的拓撲約束關系,如平行、垂直、相切、對稱等)和尺寸約束(通過尺寸標注表示的約束,如距離、角度、半徑等)。工程約束是指尺寸之間的約束關系,通過定義尺寸變量及它們之間在數值上和邏輯上的關系來表示。
圓柱滾子軸承零件參數化模型的創建,首先要按設計要求建立圓柱滾子軸承各零件模型,通過Pro/E工具下拉菜單中的參數選項,增加模型的全約束參數,并通過關系選項將系統變量與定義的參數連接起來,系統程序通過控制這些變量以實現零件的參數化再生。
裝配體中,需要定義好各個零件間的裝配關系,才能順利使再生完成。
而工程圖的參數化開發較三維模型困難,1)要通過環境配置文件config.pro來定制窗口形式及一些重要文件的路徑 ,如繪圖設置文件、 跟蹤文件、 符號庫、 標準件庫、 格式庫等 ,以及模型單位、公差模式、圖層設定、映射鍵設置等,再通過繪圖設置文件prodetail.dtl來設置尺寸高度、文本注釋、文本方向、幾何公差標準、字體屬性、箭頭樣式等選項的特性;2)要創建標題欄、參數化的表格內容、軸承行業所用的特殊符號庫及美觀的二維工程圖模板;再次,將定義的各項工程圖符號,以一定關系與對應的尺寸線相關聯;3)模板調用時要注意三維模型與其對應的二維工程圖模板要逐一匹配,匹配錯誤將導致模板調用錯誤。
DAO是用于和微軟的Access數據庫接口。在數據庫應用程序僅需與Access數據庫接口時,使用DAO編程方便易行。通過打開相關數據庫表,遍歷選擇出對應的參數,并對其進行操作,便可獲得需要的數據。
用戶可通過對話框輸入基本參數(即軸承的內徑d、外徑D、寬度B等)或選擇軸承型號,自動查找并計算出軸承各零件的詳細尺寸并根據尺寸值檢索相應數據庫,查出相應尺寸公差、形位公差。計算過程中,先通過優化設計過程確定高速圓柱滾子軸承的結構主參數(如滾子中心圓直徑Dm,滾子直徑Dw,滾子長度Lw,滾子數量Z,徑向游隙Pa等),然后按照圓柱滾子軸承設計主導文件編程計算出其余常規幾何參數。
Pro/TOOLKIT提供有專門對特征進行訪問和處理的各類函數,主要包括特征對象、訪問特征、特征查詢、處理特征等,通過這些函數,可以很方便的查詢、修改三維實體的尺寸。三維實體的每個尺寸在Pro/TOOLKIT中用一個整形標識符進行識別,稱之為尺寸的ID,通過尺寸的ID,可以方便的查詢、顯示和修改與之對應的尺寸值。
利用系統程序優化計算得到的變量,傳遞給參數化模型中的各參數,便可得到新的三維零件、裝配體及工程圖模型。
以外圈模型為例,來講述系統二次開發中參數的傳遞過程。外圈模型的樣板模型建立主要是草繪封閉鏈繞軸旋轉而成,是Pro/E的基本操作,不再贅述,注意擋邊與油溝的連接部分應光滑連接即可,而其參數化驅動主要程序代碼如下:
…
UpdateData(true);
double oradius,iradius,D,W,width…; //定義變量
…
ProModelitem feature;
…
oradius=m_oradius; //參數變量賦值
…
ProMdl part;
ProMdlRetrieve(L"~outer.prt.1", PRO_MDL_PART, &part); //將外圈模型調入內存
ProMdlDisplay(part) ; //顯示外圈模型
ProMdlIdGet(part,&i); //獲取外圈尺寸的ID
ProModelitemInit(part,i,PRO_PART,&feature);//初始化模型
ProParameterInit(&feature,L"ORADIUS",¶m1); //初始化外圈模型參數
…
value1.type=PRO_PARAM_DOUBLE;
value1.value.d_val=oradius; //參數變量賦值—外圈外徑
…
ProParameterValueSet(¶m1,&value1); //設置外圈外徑參數值
…
ProSolidRegenerate((ProSolid)part, PRO_B_TRUE); //再生外圈模型UpdateData(false);
…
要注意的是,變量均由參數化模型中的參數在關系中賦予;另外,在裝配體模型調入內存中采用的是PRO_MDL_ASSEMBLY變量,而工程圖調入內存采用的是PRO_MDL_DRAWING變量,若寫錯的話,將無法調出參數化模型。
以NU208E型軸承的設計為例介紹該系統的應用。首先,點程序運行圖標,彈出系統菜單對話框如圖1所示,通過下拉菜單選擇NU型號軸承中的02系列按鈕,彈出如圖2所示的主參數調入界面;接著,通過相應的組合下拉框,選擇208E型號,及滾子與保持架類型,點檢索按鈕,基本尺寸便顯示在右邊相應的文本框中,再點設計按鈕,系統通過優化程序對基本參數進行優化,之后彈出優化設計的參數結果,如圖3所示;最后點擊其上的出圖按鈕,調用繪圖對話框如圖4所示,點啟動pro/e后,再點相應的零件,裝配,及工程圖,便可將所得的各項參數傳遞給調用的各參數模型,同時繪制出滿足生產要求的新圖形。其中,裝配圖與外圈工程圖分別如圖5、6所示,其它略。

圖1 系統菜單對話框按鈕
利用Pro/E三維繪圖軟件與VC++語言編程相結合的方法,提出了一種可視化交互設計的參數化繪圖方法。解決了MFC與 Pro/Toolkit的接口連接,數據庫的調用,Pro/E參數化模板的調用及參數驅動等關鍵問題。用戶可通過對話框輸入基本參數或選擇軸承型號,來完成產品參數設計,同時自動繪制出三維模型及二維工程圖,從而提高了設計效率,大大節省了設計人員在設計、建模和裝配時花費的時間和精力, 具有很大的實際意義;同時,也為企業產品走參數化之路提供了廣泛的參考價值。

圖2 參數調入界面

圖3 滾子軸承參數設計顯示

圖4 繪制圓柱滾子軸承三維模型及工程圖

圖5 圓柱滾子軸承裝配圖的三維模型

圖6 圓柱滾子軸承外圈工程圖
[1] 李世國. Pro/ TOOL KIT 程序設計[M]. 北京: 機械工業出版社, 2003.
[2] Parametric Technology Corporation. Pro/ENGINEER wildfire Pro/TOOLKIT user’s guide[C]. USA: PTC, 2003.
[3] 張繼春. Pro/ ENGINEER 二次開發實用教程[M]. 北京:北京大學出版社, 2003.
[4] 鄔義杰,金哲. 圓錐滾子軸承CAD系統的二次開發與實現[J]. 機電工程, 2005, 22 (3) : 45-48.
[5] 楊青, 等. 基于Pro/Engineer的三維零件模型的參數化設計[J]. 機械設計, 2006, 23(9): 53-56.