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