摘要:在分析零件事物特性表的基礎上,提出了基于系列化配置原理的產品設計技術。分析了使用該技術的產品開發的一般流程。研究了將產品配置和工藝配置在同一配置表中的存儲技術;從三維CAD產品模型中進行特征提取的算法;零件工序簡圖的自動生成技術等關鍵技術和算法。以發動機氣門產品為研究對象,使用UML的包圖設計了發動機氣門產品設計系統的組件模型,基于該組件模型和SolidWorks 三維CAD平臺,使用Visual C++6.0實現了原型系統。
關鍵詞: 系列化配置; 系統集成;CAD/CAPP; SolidWorks
中圖法分類號:TP391文獻標識碼:A
文章編號:1001-3695(2007)01-0247-04
目前,客戶需求越來越多樣化,生產企業大多采用的是面向訂單的生產方式,對于面向訂單進行產品設計和制造的企業,如何縮短訂單完成時間,及時提供高質量的產品是企業追求的目標。通常影響企業完成訂單時間的主要原因是產品設計和工藝設計的時間太長。為此很多企業購買了通用的CAD系統(包括二維和三維)、CAPP系統來提高開發效率,減少建立產品數據的時間。但是由于這些系統具有通用性、缺乏針對性、缺少必要的CAD/CAPP系統之間的集成機制,所以采用這些軟件系統后雖然減少了局部的產品開發時間,但是對于從整體上縮短訂單完成時間收效甚微。為了提高產品的開發效率,通常需要對通用的CAD系統進行二次開發,建立企
業自己專用的產品參數化建模和工藝設計系統。實踐證明,支持產品快速配置的方法和技術可以有效地提高產品開發效率。因此在過去的十年中,有大量的研究項目與配置有關,產品配置引起了研究人員極大的興趣[1 ],何陳棋,譚建榮等人在分析大批量定制模式下配置設計知識的基礎上,規劃面向產品族的配置設計本體、知識域及其屬性,提出基于面向對象思想的產品配置設計模塊[2]。另外作為產品配置方法基礎的基于事物特性表的設計的方法已經成為提高企業設計效率的一種重要手段,張燕,譚建榮基于事物特性表的設計并開發了標準建庫[3],魯玉軍等人提出了基于事物特性表的產品變型設計[4]。
1產品系列化配置原理
按照DIN4000的規定,事物特性表是一個包括所有對象特性的表格。零件的每一個變型相當于事物特性表中的一行數據[5]。在事物特性表的基礎上,可以考慮采用系列化配置來支持產品的快速設計開發,系列化配置方法可以說是事物特性表的擴展,系列化配置方法可以在單一的文件中對零件或裝配體生成多個造型設計以及對應的工藝設計變化。配置提供了簡便的方法來開發與管理一組有著不同尺寸、零部件、或其他參數的模型。 要生成一個配置,先指定名稱與屬性,然后再根據實際需要來修改模型以生成不同的設計變化。在零件文件中,配置可以生成具有不同尺寸、特征和屬性(包括自定義屬性)的零件系列。工藝配置是在零件配置的基礎上,根據零件配置的數量生成對應數量的工藝配置。圖1給出了基于系列化配置原理生成產品模型、工藝模型、毛坯模型和模具模型的示意圖。
2基于系列化配置原理的產品設計過程
基于系列化配置原理的產品設計包括產品參數化實體建模設計和產品參數化工藝設計。其工作流程如圖2所示。具體過程描述如下:
(1)首先根據設計人員提供的產品三維模型和二維工程圖,使用系統提供的參數錄入功能,錄入為制定工藝需要的所有設計和工藝參數。
(2)輸入完成后對于新類型的零件,根據其特征在零件編碼庫和特征矩陣庫的支持下進行編碼和確定所在組。
(3)生成產品特征參數表和產品圖紙,對產品特征參數表進行審核,確認是否需要修改,如果需要修改,并且修改影響到特征的改變,則轉回到(1),否則繼續進行。
圖1基于系列化配置原理的產品配置模型
圖2基于系列化配置原理的產品設計流程
(4)根據零件的編碼在典型工藝流程庫中查找相匹配的工藝流程。如果找到典型工藝流程,則生成工藝流程圖;如果沒有找到典型工藝流程,則根據特征匹配原則,找到最相近的一個典型工藝流程,進行編輯修改,生成一個非典型工藝流程,對于編輯完成的非典型工藝流程,也可以將其保存到典型工藝流程庫中,以后作為一個典型工藝流程使用。
(5)在生成工藝流程圖的同時,根據零件參數表中的參數,自動生成上下模具圖,模具工藝文件、模具檢驗文件、毛坯圖、成品檢驗包裝文件、材料定額、材料計劃表和采購計劃表等。
(6)在失效模式數據庫的支持下,根據前面生成工藝流程圖,系統自動進行失效模式分析,根據失效模式結果生成控制計劃、工藝卡。生成工藝卡后,系統提示進行確認。確認通過后,自動進行成本核算,生成工序卡、過程指導卡和檢驗指導卡,并進行作業設定。如果確認時認為需要修改,則修改工藝流程,修改后再次失效模式分析,重復上述過程,進行作業設定后同樣也需要確認。確認通過后,可以輸出與工藝相關的所有文件。
3基于系列化配置原理的產品開發的關鍵技術
3.1產品模型和配置表的建立
在獲得客戶需求的產品草圖或模型后,根據需求,使用三維CAD軟件建立產品三維特征模型。建立產品三維特征模型后,為了構建產品系列化配置數據表,首先需要自動獲得產品的所有幾何尺寸,然后存儲在Excel表中。根據當前產品模型的尺寸數據生成產品的缺省配置記錄;根據產品的系列化配置需要,在配置數據表中增加多條滿足條件的產品配置記錄。如圖3給出的包括產品配置和對應工藝配置的排氣門配置數據表。
圖3配置數據的Excel表存儲
3.2特征提取算法
產品加工工藝設計需求的產品信息有以下幾種方法:
(1)直接將工藝設計需要的信息輸入到CAPP系統中[6];
(2)通過對CAD模型進行特征識別,識別出需要加工的特征[7];
(3)從CAD模型中通過采用特征提取算法[8]直接提取需要的信息。直接輸入方法在早期的CAPP系統中應用廣泛,但是由于重復輸入的工作量很大,嚴重影響了系統的工作效率。特征識別方法是智能型CAPP系統的基礎,但是特征識別算法復雜,并且在處理二義性問題方面還存在問題。特征提取方法在CAD模型的基礎上,根據需求,通過使用API(Application Program Interface)通過編程,直接從CAD模型中獲取需要的信息,根據這些信息確定特征的加工工藝,然后根據對應的工藝流程,輸出到CAM系統,生成NC代碼,由數控機床加工出合格的零件。該方法具有針對性強、易于實現等優點。缺點是對于不同的CAD系統需要開發不同的特征提取適配器實現特征提取。
零件特征信息的提取算法的基本原理:首先通過CAD系統的API接口連接到CAD系統中,從API接口里獲取特征對象Feature,然后從Feature對象中獲取幾何信息和其他屬性信息。特征提取算法的偽代碼描述如下:
Algorithm FeatureExtracting
Begin;//開始
If FeatureDataTable is not exist Then
Create Table FeatureDataTable
//建立數據表,存放特征以及特征的幾何信息
Else Drop Table FeatureDataTable
End if
For each Feature in Feature aggregate
GetFirstFeature();//獲取Feature對象
GetGeometryInfo();
//從特征對象Feature中獲取幾何信息
Save to FeatureDataTable;
GetNextFeature();
//遍歷該零件下一個特征
Endfor
End
圖4給出了對應的特征提取算法流程圖。對于特征對象Feature的獲取分為指定特征對象的獲取和所有特征對象的獲取兩種情況。對于指定特征對象的獲取,在獲取Feature對象時,可以采用在程序里面進行過濾,判斷的方法以及直接采用鼠標拾取的方法等兩種方法。對于在程序里面進行過濾和判斷的方法1,即首先從接口里獲取了第一個特征對象Feature,然后對其過濾和判斷。過濾和判斷的條件就是特征名稱;對于鼠標的拾取方法2,即用戶用鼠標在CAD系統特征結構樹上,選中所需的特征名稱,然后激活程序。如果是單選,在獲取特征對象時就無需過濾,如果用戶多選,那就必須要過濾,判斷所選對象是不是特征類型。具體處理方法首先同樣是通過API接口得到CAD系統的最高層對象,然后通過API最高層對象獲取CAD系統選擇管理器對象(SelectionManager),再獲取存放在它里面的特征對象。
所有特征對象的獲取方法,首先建立一張特征數據表,里面存放著體特征的特征名稱。從接口里得到第一個特征對象,然后遍歷該零件所有的體特征,這與前面的指定特征對象的獲取采用一樣的方法。在每次循環時要判斷返回值是否屬于體特征,也就是比較返回值是否存在于特征數據表中。
圖4特征提取算法流程
在得到Feature對象后,就可進入獲取幾何信息的環節。在CAD系統中零件的幾何信息(包括基本尺寸、公差)通常存儲于尺寸對象(Dimension)中。在獲取幾何信息的同時要區分幾何類型,即是基本尺寸,還是尺寸公差?;境叽邕€要區分線性尺寸(直線尺寸、直徑尺寸、半徑尺寸)和角度尺寸。之所以要這么細分,是因為我們提取幾何信息的目的是為了后面CAPP和CAM使用。尺寸的類型對加工和工藝均有影響。最后從尺寸對象中提取幾何信息,根據所提取的幾何信息的類型調用CAD系統中不同的API函數就可實現。
3.3零件工序簡圖的自動生成技術
零件加工工序卡上的工序簡圖是工序卡上的一項必備內容。在以前的二維CAPP系統中通常采用從工序二維簡圖庫中選擇合適的工序簡圖,然后直接插入工序卡上指定位置的方法。這種方法的工序二維簡圖是個靜態的,沒有與產品信息直接關聯,當產品幾何數據發生改變時,工序二維簡圖無法跟著改變。為了解決這個問題,可以采用基于三維模型的零件工序簡圖的自動生成技術。如圖5所示,零件工序簡圖以二維工程圖的方式存在于零件工序簡圖電子倉庫中,與零件三維模型相關聯,零件三維模型發生改變時,由于零件工序簡圖和零件三維模型的關聯約束關系,所以零件工序簡圖會自動跟著改變。規則庫中則以零件編碼和工序編碼作為主鍵,采用IF…THEN規則建立零件編碼和工序編碼以及零件工序簡圖的圖號之間的關系。當生成工序卡時,根據規則庫中的規則到零件工序簡圖電子倉庫中查找需要的工序簡圖,然后插入到工序卡上指定的位置。例如規則1:IF SGT1696 and Qg1 Then SGT1696 Qg1(SGT1696為圖號組成的發動機排氣門零件的編碼,QG001位切割下料工序的編碼)需要注意的是,對于熱處理等工序的工序簡圖無需與零件三維特征模型關聯,只需建立對應的規則就可以了。
圖5零件工序自動生成簡圖
4應用實例
4.1系統設計及實現
SolidWorks目前已經成為微機上廣泛使用的主流三維CAD系統,基于系列化配置原理的產品設計(CAD/CAPP)原型系統基于SolidWorks三維CAD平臺,使用Visual C++和SQL Server 2000作為開發工具,采用COM構件的設計思路實現的。
(1)COM模型和構件
目前主要有三種類型的構件模型統治著整個市場,即COM+,CORBA以及Java/EJB[9]。三種構件模型均可適用于開發企業級應用程序。其中,CORBA在過去使用比較多,規范成熟,但是服務實現不成熟,是衰退的領導者,目前希望能夠與Java/EJB結合在一起。Java/EJB近年來發展很快,很多組織正在投資基于EJB的解決方案,但還不夠成熟。COM+基于Windows操作系統的統治地位,獲得了巨大成功,成為當前構件模型的領導者。
COM+在COM的基礎上,進一步將COM,DOM和MTS統一起來,形成了真正適合于企業應用的構件技術[10]。COM+不僅繼承了COM,DOM和MTS的許多特性,同時也增加了負載平衡、內存數據庫、事件模型、隊列服務等服務。鑒于COM+構件模型的技術優勢,采用COM+構件模型作為構建氣門產品設計系統的基礎。系統的構件模型如圖6所示。
圖6氣門產品設計系統組件模型
每一個功能模塊作為一個COM構件進行開發,從系統主組件中獲得請求參數strConnect與m_pSldWorks進行處理,將彈出對應的對話框,在對話框中進行相應的操作從而實現產品建模和工藝設計。氣門參數化設計構件的入口函數如下:
extern \"C\" __declspec(dllexport) void ValveParaDesigndll(CString strConnect, LPSLDWORKS m_pSldWorks)
{AFX_MANAGE_STATE(AfxGetStaticModuleState());
LPMODELDOC pModelDoc2 = NULL;
HRESULT hres;
long errors=(long)(swGenericError);
CvalveParaDesigndlg dlg;
if(!dlg.DoModal() == IDOK)
return;}
(2)配置數據的Excel表存儲
SolidWorks系統提供的系列零件設計表可以很好地支持設計參數配置和工藝參數配置,但是在使用該系列零件設計表時必須按照規則進行存儲,否則模型無法使用這些配置數據。需要注意的規則包括:
①父子關系。在Excel表中采用“$父關系”字段進行標志。設計參數配置的該字段為空,工藝參數配置的該字段為對應的設計參數配置名稱。
②特征的壓縮狀態。在Excel表中使用特征名稱字段進行標志。如“$狀態@旋轉2”。對于為了生成工藝配置增加的特征,需要將該字段設置為壓縮,使用字符“U”進行標志。一個JX493Q1排氣門(圖號為SGT1696)產品配置數據的Excel配置表如圖3所示。
(3)使用ADO技術連接數據庫
ADO(Active Database Object)是Microsoft開發的較新的數據庫應用程序接口,是一個面向對象的接口,實際上是一個ActiveX對象集,可以在服務器中提供對數據庫操作的強大功能。比如,要連接一個數據庫,可以創建一個Connection對象;而使用Recordset對象,可以返回對數據庫的查詢結果。ADO優點在于易于理解,且只包含了不多的幾個對象,如Connection,Recordset,Error和Command對象。這些對象為數據庫的使用提供了極大方便。
4.2氣門設計系統實例
4.2.1氣門產品參數化設計
基于系列化配置原理,開發了一個發動機氣門設計系統。該系統首先建立。設計開始首先根據在氣門設計系統的數據庫中根據氣門類型、大端盤徑D、桿徑d和桿長L等參數組成的成組編碼檢索是否包括類似的氣門產品,如果數據庫中存在類似產品,則針對同一系列的氣門,可以選擇不同的產品配置,自動生成不同配置數據的氣門、氣門壓模、氣門上模和毛坯的三維模型與工程圖紙。如果數據庫中不存在類似產品,則用戶需要首先自己建模,然后存儲到數據庫中。氣門參數化設計的界面如圖7所示。
圖7氣門參數化設計界面
4.2.2氣門產品工藝設計
根據氣門的編碼直接檢索到典型加工工藝流程,生成對應的工藝流程卡和工序卡。氣門工藝流程卡和工序卡上的加工數據來自氣門CAD特征模型。通過應用前面提出的特征提取算法,可以實現氣門特征信息的提取。例如對于JX493Q1排氣門(圖號為SGT1696)盤部特征的提取代碼片段如下所示:
str_Name=_T(\"盤部\");//指定的特征名稱
m_pModelDoc>IFirstFeature(m_pFeature);//獲取First Feature對象
while(m_pFeature!=NULL)
{if(m_pFeature!=NULL)
{m_pFeature>get_Name(FeatureName);
str_Name=FeatureName;}
str_FeatureName.TrimRight(_T(\" \"));
if(str_Name==str_FeatureName)
{break;//如果是盤部特征跳出循環}
str_Name=_T(\"\");
m_pFeature>IGetNextFeature(m_pFeature);}
在特征提取算法的基礎上,使用SolidWorks開發的工序模板,生成的切割下料工序卡片如圖8所示。
圖8基于CAD模型生成的零件工序卡
5結論
使用基于系列化配置原理的產品開發技術和系統,可以全面實現產品設計和工藝編制的參數化,大大縮短產品設計和工藝技術準備的時間,保證工藝的規范性和先進性。同時,為配合企業與國際合作,在工藝參數化的基礎上,加強企業的產品設計能力,能與主機廠同步設計,滿足主機廠不斷提出的新要求。本文主要取得的研究結果如下:
(1)基于系列化配置原理的產品設計技術對相似性產品的設計效率提高顯著;
(2)通過對CAD三維模型的特征信息的提取,為實現CAD/CAPP系統的有機集成提供一種新的方式;
(3)通過工序簡圖數據庫與規則庫的結合,實現了零件工序卡上工序簡圖的自動生成;
(4)并以SolidWorks為平臺,氣門為研究對象,開發了基于系列化配置原理的氣門設計原型系統,并進行了實驗驗證。
參考文獻:
[1]Sabin D, Weigel R. Product Configuration Frameworks:A Survey [J]. IEEE Intelligent Systems, 1998,13(4):4249.
[2]何陳棋,譚建榮,張樹有,等. 基于本體論和知識規則的大批量定制配置設計技術研究[J]. 中國機械工程,20-04,15(9):783787,791.
[3]張燕,譚建榮. 基于事物特性表的標準建庫設計[J] . 中國機械工程,1999,10(3):326329.
[4]魯玉軍,余軍合,祁國寧. 基于事物特性表的產品變型設計[J] . 計算機集成制造系統,2003,9(10):840844.
[5]蕭塔納. 制造企業的產品數據管理[M]. 祁國寧.北京:機械工業出版社,2000.
[6]董家驤,汪叔淳. CAPP系統開發工具零件信息描述與輸入[J] . 中國機械工程,1992,3(3):912.
[7]M W Fu, S K Ong, W F Lu, et al. An Approach to Identify Design and Manufacturing Features from a Data Exchanged part Model[J]. ComputerAided Design, 2003,35: 979993.
[8]Zhengdong Huang, Derek YipHoi. Parametric Modeling of Part Fa ̄mily Machining Process Plans from Independently Generated Product Data Sets[J]. Journal of Computing and Information Science in Engineering,2003,(3):231242.
[9]Alan W Brown. 大規模基于構件的軟件開發[M]. 趙文耕,張志,等.北京:機械工業出版社,2003.
[10]潘安民. COM原理與應用[M]. 北京:清華大學出版社,20-04.
作者簡介:
丁毓峰(1972),男,吉林通化人,副教授,主要研究方向為CAD/CAM集成、協同設計和制造;楊峰(1978),男,江蘇南京人,碩士研究生,主要研究方向為CAD/CAM集成、數據挖掘;陳雷(1980),男,碩士研究生,主要研究方向為CAPP系統設計開發;吳波(1962),江西九江人,教授,主要研究方向為機械系統維修理論、企業信息化。
注:本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文