基于Pro/ENGINEER焊接系統(tǒng)的開發(fā)
本系統(tǒng)是基于Pro/ENGINEER Wildfire 3.0為平臺,以Pro/TOOLKIT為開發(fā)工具,使用VC++.NET2002作為編譯工具,充分利用VC++.NET語言的功能和Pro/TOOLKIT提供的C/C++函數(shù)的集合,編寫出執(zhí)行程序,作為Pro/ENGINEER的一個外掛插件或模塊使用,以滿足焊接設(shè)計需要。
1.Pro/ENGINEER參數(shù)化設(shè)計
標(biāo)準(zhǔn)構(gòu)件是一系列依據(jù)國標(biāo)型號的型材零件,在設(shè)計上充分利用了Pro/ENGINEER參數(shù)化設(shè)計思想,將原型件參數(shù)化,通過控制主要參數(shù),實現(xiàn)組件對元件的不同設(shè)計要求。具體實現(xiàn)中要針對構(gòu)件的結(jié)構(gòu)特點設(shè)定必要的有限個參數(shù),并與原型所有構(gòu)造尺寸建立關(guān)系式,以實現(xiàn)整體參數(shù)化驅(qū)動造型。
2.ODBC數(shù)據(jù)庫應(yīng)用
標(biāo)準(zhǔn)構(gòu)件的參數(shù)是由相應(yīng)國標(biāo)提供,本系統(tǒng)是使用以下步驟操作數(shù)據(jù)庫。
(1)使用Microsoft Visual FoxPro6.0建立各種型材件數(shù)據(jù)庫表,并通過Microsoft WindowsXP控制面板的管理工具,新建一個數(shù)據(jù)源。
(2)由VC++.NET對話框模板資源創(chuàng)建對話框及列表控件,并添加相應(yīng)對話框類。
(3)建立數(shù)據(jù)表集類,使用CRecordset類來綁定數(shù)據(jù)表。
(4)設(shè)計調(diào)用函數(shù)和對話框消息響應(yīng)函數(shù),完成從數(shù)據(jù)庫讀取信息,顯示在列表框中,以及其他操作,如圖2所示。
3.裝配技術(shù)
裝配設(shè)計有兩種典型的方法,即自下而上和自上而下的裝配設(shè)計。本系統(tǒng)采用自下而上的裝配設(shè)計方法:引用已經(jīng)構(gòu)造好的零件模型、組件模型或參數(shù)化設(shè)計的模型,按組件或復(fù)合構(gòu)件的結(jié)構(gòu)順序,由最低層的元件開始,再逐級向上完成裝配建模。用到Pro/TOOLKIT兩個主要函數(shù)。
(1)元件裝配函數(shù),其函數(shù)原型定義如下:
#include //包含頭文件 ProError ProAsmcompAssemble(ProAssembly owner_assembly, //裝配件的句柄
ProSolid component_model,//是需要裝配進(jìn)來的模型句柄
ProMatrix init_pos,//是一個轉(zhuǎn)置矩陣,用于設(shè)置元件的初始位置
ProAsmcomp*feature//返回之后的元件對象)
Returns: PRO_TK_NO_ERROR //返回成功; PRO_TK_BAD_INPUTS //返回錯誤;
(2)重新定義裝配元件的裝配約束函數(shù),其函數(shù)原型定義如下:
#include //包含頭文件ProError ProAsmcompConstrRedefUI( ProAsmcomp *p_feat_handle//裝配元件對象句柄)
Returns:PRO_TK_NO_ERROR//返回成功; PRO_TK_BAD_INPUTS//返回錯誤;PRO_TK_USER_ABORT //返回中止;
4.焊縫定義
包括焊縫、坡口加工和凹槽的參數(shù)定義、特征定義。驅(qū)動源是元件或組件,采用實焊或是輕焊幾何表達(dá)。其中實焊(SOLID)指設(shè)計中創(chuàng)建并顯示實體幾何,“焊縫”或“坡口加工”特征包含了制造所需的所有必要數(shù)據(jù),并在設(shè)計中用實焊幾何表示,如圖3所示。輕焊(LIGHT)指參考現(xiàn)有曲線或邊,但沒有其自身的幾何。焊縫或坡口加工特征包括制造必需的所有參數(shù),但只用其參照的幾何(邊、曲面)表示,如圖4所示。實焊坡口加工的減少會顯著減少設(shè)計的再生和圖形載入時間,當(dāng)模型中有大量焊縫和坡口加工時,可使用輕焊表達(dá),在制造需要時可將它們?nèi)菀椎棉D(zhuǎn)為實焊表達(dá)。
5.元件拆分技術(shù)
在組件環(huán)境下定義的焊接特征、坡口加工切口和凹槽的幾何形狀及尺寸大小,需要在元件圖中表達(dá),以便在焊接前提前加工好。為此可選擇元件作驅(qū)動源進(jìn)行焊接定義,利用Pro/ ENGINEER模型單一數(shù)據(jù)庫的特點,直接讀取元件數(shù)據(jù)庫的文件進(jìn)行繪圖輸出,并實現(xiàn)模型編輯、數(shù)據(jù)更新同步。
6.2D工程圖繪制
Pro/ENGINEER是三維數(shù)據(jù)庫,通過矩陣變換很容易輸出二維圖形。本系統(tǒng)是基于自定義2D模板實現(xiàn)工程圖繪制。主要使用的是Pro/TOOLKIT函數(shù),其函數(shù)原型如下:
ProError ProDrawingFromTmpltCreat
ProName dwg_template, //繪圖模板名
ProModel * model, //創(chuàng)建繪圖時使用的實體模型名 ProDwgcreateOptions options, //繪圖創(chuàng)建的選項 ProDrawing * drawing, //創(chuàng)建的繪圖對象
ProDwgcreateErrs * errors ) //創(chuàng)建繪圖引起的警告和錯誤列表
其中參數(shù)options的取值為:PRODWGCREATE_DISPLAY_DRAWING:在窗口顯示新的繪圖;
PRODWGCREATE_SHOW_ERROR_DIALOG:顯示模板錯誤對話框;
PRODWGCREATE_WRITE_ERRORS_TO_FILE:將錯誤寫入磁盤文件。
7.標(biāo)準(zhǔn)模板應(yīng)用及自定義模板
使用Pro/ENGINEER符合國標(biāo)的元件模板(mmns_part_ solid)和組件模板(mmns_asm_design),作為實體模型文件讀入。二維繪圖可使用公制模板,如a0_drawing,或國標(biāo)圖樣A0、A1、A2、A3、A4,也可自定義繪圖模板,根據(jù)廠標(biāo)或習(xí)慣格式定制。將所有模板文件存為一個公用數(shù)據(jù)庫,便于系統(tǒng)調(diào)用。
8.焊接報告生成
在焊接工程圖中定義一個報告列表,添加重復(fù)區(qū)域,插入焊接參數(shù)(weldasm),由參數(shù)變量訪問繪圖焊接數(shù)據(jù),自動生成焊接報告。
評論