航空制造業(yè)中的零件有其自身的特點,對比其他行業(yè)的零件存在材料特殊,結(jié)構(gòu)復(fù)雜,熱處理、表面處理類型多,質(zhì)量控制嚴(yán)苛,無損檢測過程多;從批量上講,零件屬于單件小批量生產(chǎn),零件種類多。因此,航空制造業(yè)中的工藝項目管理存在數(shù)據(jù)量大,管理繁瑣的特點。
項目管理主要涉及兩方面的工作:一是全面把握設(shè)計端信息來源;二是有效解決制造端工藝文件管理。工藝技術(shù)部門依據(jù)設(shè)計的零件數(shù)模,編制制造大綱,完成零件的生產(chǎn)制造。飛機零件的設(shè)計基于CATIA平臺進行,零件相關(guān)的材料、熱處理、表面處理、無損檢測等非幾何信息都存放在數(shù)模結(jié)構(gòu)樹中,因此,快速有效的獲取項目零件結(jié)構(gòu)樹信息為項目管理的第一步。
要完成零件制造,除了編制制造大綱之外,還有數(shù)控程序、刀具清單等機加配套文件;機加完成后還需協(xié)作單位進行熱處理、表面處理、無損檢測等過程;多單位協(xié)同工作將產(chǎn)生大量技術(shù)狀態(tài)協(xié)調(diào)的交接單、指示單。通常,一個機型項目相關(guān)的各種工藝文件總量上萬份。管理好這些工藝文件能夠監(jiān)控項目的執(zhí)行情況,減少現(xiàn)場問題的發(fā)生,從而提高項目管理效率。因此,工藝文件的有效管理為項目管理的第二步。
針對目前數(shù)據(jù)管理混亂,項目管理效率不高的現(xiàn)狀,對CATIA數(shù)模結(jié)構(gòu)樹信息自動提取、工藝文件的有效管理方面進行研究,基于CATIA、ACCESS、EXCEL聯(lián)合二次開發(fā)工具軟件來解決項目管理中的難點問題。
自動提取CATIA結(jié)構(gòu)樹信息
目前CATIA數(shù)模信息的獲取是通過人工拷貝結(jié)構(gòu)樹上的信息,手動匯總形成項目總信息表。由于零件數(shù)量多、工作量大,造成數(shù)據(jù)維護困難,而且人工操作也容易出錯,可靠性差。為了改善現(xiàn)狀,通過CATIA二次開發(fā)提取零件結(jié)構(gòu)樹信息。
有研究針對裝配數(shù)模通過循環(huán)裝配數(shù)模下的零件數(shù)模,依次輸出零件的結(jié)構(gòu)樹信息[1~2]。但在實際工程中,零件分工通常按結(jié)構(gòu)特征分工,而不是以裝配關(guān)系整塊分工,因此,直接針對單個零件數(shù)模提取結(jié)構(gòu)樹信息的方式通用性更強。只需要將待提取信息的零件數(shù)模置于相同文件夾下面,以文件夾控制導(dǎo)出數(shù)據(jù)范圍,靈活性更強。
遍歷文件夾下面CATIA數(shù)模的核心偽代碼如下:
Private Sub GetPartName()
'獲取所有CATIA文件名
i=0
'獲取文件夾下CATIA數(shù)模文件名
PartName(i)=Dir(FileRoad&"*."&"CATPart")
'遍歷所有CATIA文件,文件名存入PartName()數(shù)組
Do Until PartName(i)=""
i=i+1
PartName(i)=Dir
Loop
End Sub
依據(jù)項目需求,采用VB對CATIA進行二次開發(fā)。軟件執(zhí)行流程如下:首先,打開一個零件項目,確定輸出信息類別;然后,遍歷項目包內(nèi)所有的零件名稱存入File數(shù)組,接著輸出所有零件中相應(yīng)類別下的數(shù)據(jù);最后,后臺運行EXCEL生成項目總信息表。流程圖如圖1所示,項目總信息報表如圖3左半部分所示。
基于ACCESS平臺的工藝文件管理
針對文件管理,很多文件審簽都走PDM系統(tǒng),PDM系統(tǒng)大而全,但是在具體針對項目文件管理方面還不夠靈活,因此有必要針對實際情況開發(fā)部門級應(yīng)用。
目前,項目文件管理雜亂無章、規(guī)范不一,總結(jié)起來主要存在兩個問題:第一,單人獨自管理與自己相關(guān)的文件,沒有信息共享;第二,工藝文件的名字不規(guī)范,文件命名依賴于人的偏好,同一種類型的文件,不同的人命名相差甚遠,外人無法通過文件名明確這個文件的主要內(nèi)容,阻礙協(xié)同工作中的交流。因此,要實現(xiàn)大量工藝文件的有效管理必須解決上述問題。
針對數(shù)據(jù)共享問題,現(xiàn)采用數(shù)據(jù)上傳服務(wù)器集中存儲,使每一個合法用戶都能通過客戶端訪問數(shù)據(jù),方便協(xié)同處理問題。針對命名不規(guī)范問題,現(xiàn)通過客戶端對上傳文件自動規(guī)范性重命名后上傳;上傳文件前會讓用戶選擇與該文件相關(guān)的信息,包括機型、圖號、文件類別、附加說明等,利用軟件強制規(guī)范文件命名格式。
ACCCESS是微軟把數(shù)據(jù)庫引擎(Microsoft JET database engine)的圖形用戶界面和軟件開發(fā)工具結(jié)合在一起的數(shù)據(jù)庫管理系統(tǒng)。MS ACCESS以它自己的格式將數(shù)據(jù)存于ACCESS JET的數(shù)據(jù)庫引擎里,它可以直接導(dǎo)入或者鏈接數(shù)據(jù)(這些數(shù)據(jù)存儲于其他應(yīng)用程序或數(shù)據(jù)庫)。
ACCESS除了具有存儲數(shù)據(jù)功能外,還具有強大的數(shù)據(jù)處理和開發(fā)軟件的能力。基于ACCESS開發(fā)軟件速度快,效率高和EXCEL互導(dǎo)數(shù)據(jù)方便,ACCESS的內(nèi)置開發(fā)語言為VBA。
客戶端主要功能是將工藝文件資料通過軟件自動化規(guī)范重命名后上傳服務(wù)器,除主要功能外,還具有刪除服務(wù)器上舊版本文件,查詢相關(guān)零件的所有相關(guān)工藝文件和導(dǎo)出機型相關(guān)文件總清單的功能。程序流程圖如圖2所示。
程序通過超鏈接實現(xiàn)客戶端記錄與服務(wù)器上文件的鏈接,在客戶端查詢零件圖號后,程序后臺的搜索模塊會在服務(wù)器上相應(yīng)數(shù)據(jù)庫中檢索相關(guān)文件,匹配到和零件相關(guān)的工藝文件時,獲取該文件的名稱、地址信息,然后在客戶端生成超鏈接。除了直接通過超鏈接訪問文件外,還可以通過點擊記錄中的“下載”,將服務(wù)器端的文件下載至本機。
通過對文件的重命名后提交服務(wù)器,獲取服務(wù)器端文件名和文件地址在前臺生成文件超鏈接。
核心功能偽代碼如下:
Private Sub FileSubmission()
'文件提交函數(shù)
Name OldName As NewName[3]
'更改文件名
Filecopy SourceFile, DestinationFile[3]
'將源文件上傳服務(wù)器
Dim rst As DAO.Recordset
StrSQL="select*from DataSheet1"
Ser rst=CurrentDb.OpenRecordset(strSQL,dbOpenDynaset)
'給記錄賦值
rst.AddNew'添加新記錄
rst.Fields!Hyperlink="DisplayText#FullAddress#"
'給超鏈接賦值
rst.Update'更新記錄
rst.Close'關(guān)閉記錄
Set rst=Nothing'釋放內(nèi)存
Me.Refresh'刷新窗體
End sub
鑒于EXCEL在數(shù)據(jù)透視和數(shù)據(jù)處理方面的強大功能[4],通過向Excel中寫入數(shù)據(jù),生成項目文件清單報表。
數(shù)據(jù)導(dǎo)出函數(shù)ExportDataToEXCEL核心偽代碼如下:
Private Sub ExportDataToEXCEL()’數(shù)據(jù)導(dǎo)出函數(shù)
Dim xlApp As Application
Dim xlbook As Workbook
Dim xlSheet As Worksheet
'獲取正在運行的excel程序
Set xlApp=GetObject(,"EXCEL.Application")
If xlApp Is Nothing Then
'新建一個excel程序
Set xlApp=CreateObject(,"EXCEL.Application")
End If
Set xlbook=xlApp.Workbooks.Add
Set xlSheet=xlbook.Worksheets(1)
'給EXCEL的"A1"單元格賦值
xlSheet.Cells(1,1)= "Data"
'詳細過程略
'
xlSheet.Cells.EntireColumn.AutoFit
xlApp.Visible=True '顯示excel界面
End Sub
將CATIA導(dǎo)出的項目總信息報表和ACCESS導(dǎo)出的項目文件報表,以零件圖號為關(guān)鍵字,通過excel運算將兩個信息表進行合并,形成項目管理的數(shù)據(jù)報表。報表將設(shè)計端和工藝端的信息緊密聯(lián)系在一起,便于數(shù)據(jù)的比較分析;通過該數(shù)據(jù)報表,可以快速得出無損清單、表處清單,核查交接文件提交情況,避免了很多無效的人力勞動。項目管理報表如圖3所示。
本項目通過聯(lián)合CATIA、ACCESS、EXCEL開發(fā)多個功能模塊,使得從設(shè)計端數(shù)模信息提取到制造端工藝文件管理整個過程都自動化進行,大大提高工作效率。最后,將整個項目的信息匯總形成項目管理報表,使項目管理過程中的數(shù)據(jù)都顯性的展示出來,解決以往由于數(shù)據(jù)管理混亂造成的諸多項目管理問題,降低了項目管理的難度,提高了項目管理的效率;本文關(guān)于文件管理的思路具有獨創(chuàng)性與普適性,可以推廣到類似的文件管理項目中,具有很高的推廣應(yīng)用價值。