電力自動化產品按訂單生產的特點決定了其生產方式屬于小批量、多品種的定制模式。由于目前電力系統二次設備相關產品升級換代很快,交貨期較短,要求企業必須具備快速的反應能力,因此需要在提高產品工藝質量、企業快速應變能力,以及降低生產制造成本等方面進行更深入的研究。
產品數據管理(Product Data Management,PDM)主要用于管理產品從設計到銷售各階段中所有與產品相關的信息和過程,其主要功能有文檔管理、產品結構管理、資源管理等。計算機輔助設計(Computer Aided Design,CAD)系統已經得到了廣泛的應用,但是在傳統的制造企業中,CAD系統僅僅作為繪圖工具使用,并且與PDM系統彼此獨立,形成了“CAD繪圖,PDM管理圖紙”的模式,不僅CAD系統產生的大量數據得不到有效的管理,PDM系統的功能也沒有得到有效的發揮,并且由于兩系統彼此孤立,容易產生信息不對稱等問題。
為了解決這些問題,不少企業致力于開發PDM/CAD集成系統,實現產品數據及相關信息的共享。采用PDM/CAD集成系統,能從根本上解決信息不對稱問題,消除“信息孤島”,有效地管理產品數據,提升企業整體設計水平和管理水平。
針對上述問題,本文嘗試利用VC++.NET作為開發平臺,對AutoCAD進行二次開發,與某電力二次設備公司所使用的PDM系統進行深度集成,開發一套C/S架構(Client/Service,客戶機/服務器)的PDM/CAD集成系統,實現產品結構樹的自動搭建并與裝配圖明細表保持同步一致性,且可以從中輸出產品物料清單(Bill of Material,BOM)。
1 系統框架總體設計
如圖1所示,系統采用3層的C/S架構,分別為界面層、功能實現層、數據庫層。其中數據庫使用PDM系統的數據庫,采用分布式架構,部署在企業級服務器上,響應功能實現層的指令,對整個產品研發、設計過程中的文檔、模型和圖紙進行統一管控;功能實現層安裝在本地計算機上,根據用戶的操作,完成相關數據處理,并向數據庫發送相應的指令;用戶界面層嵌入在AutoCAD操作界面中,主要包括對裝配圖BOM的管理和對數據庫的操作及一些輔助繪圖功能。
圖1 系統結構
在用戶登錄后,系統會自動校驗其權限,根據權限的不同,將會顯示不同的界面。在客戶端用戶只需按照步驟繪制工程圖,系統功能實現層將在后臺自動調用相應的功能模塊,并將操作轉換為相應的數據庫指令,對數據庫進行修改。
采用這種結構的優點是:采用分布式的數據庫,可以提高系統的安全性、靈活性和健壯性,數據直接進入PDM數據庫,保證了數據的同步一致性,用戶同樣可以通過PDM的界面來查看產品結構、管理任務等。
2 數據庫設計
服務器端數據庫如圖2所示,主要包括用戶表、工程表、圖紙表、整機表、零件表、產品結構表等。
圖2 系統數據庫
工程表包含了工程的基本信息、承接人及所處狀態等,工程包含了若干整機產品,這些信息都存儲在產品整機庫中,利用PDM系統提供的接口,可以實現工程的審核、校對、修改等操作及產品整機的版本控制等功能。
根據企業應用,將零部件分為5類:專用件、空機柜、通用件、外購件、標準件。由于該企業的產品以定制為主,因此存在著大量的定制零件,為了方便追溯和管理,專用件以工程為單位進行管理,專用件只可在所屬工程中使用,若遇到可直接復用的專用件也必須再重新注冊;通用件是一類特殊的專用件,指在不同規格產品中都會使用,或已經形成企業標準的部件或零件;空機柜可能是自產通用件,也可能是從其他廠家購入的,由于其特殊性,將這部分數據提取出來,在設計數據庫時作為單獨的一類;外購件是企業從外部直接購入,不需要進行再加工便可直接應用于產品裝配中的專用零部件,如交換機等,部分空機柜也屬于外購件;標準件是指根據國家標準制定的零件,如螺絲、螺母等。
與零部件庫相對應的則是產品整機庫,產品整機庫用于存儲已經設計的產品/整機信息,產品結構表則存儲著整機產品和部件的構成信息,包括父零件代號、子零件代號、組成用量、所屬工序、備注等。通過此表存儲的信息可以搭建產品結構。
圖紙庫存儲著整機或零件物料對應的工程圖及其相關信息,數據庫中的圖紙與產品或零部件存在一對一或一對多的關系。一些沒有對應物料的圖紙按照文檔的方式來存儲、管理。用戶表包含了用戶的用戶名、密碼、權限等,根據權限不同,用戶可以對數據庫進行不同的操作,一般用戶只具有對自己工程及其整機產品庫、專用件庫的修改權限和其他庫的只讀權限;設計管理員具有對通用件、標準件、外購件庫的修改權限;用戶管理員則可以進行新建用戶、修改用戶權限等操作。
3 產品結構樹的生成
該企業的產品以整機為主,在PDM/CAD系統集成前,需要專人對照整機裝配圖的明細表將物料信息逐個錄入PDM系統,這樣的方式忽略了產品的結構,不僅容易產生錯誤,而且延長了整個產品的設計周期。本系統利用AutoCAD提供的二次開發工具及PDM接口,使得用戶無需關心產品結構樹的搭建過程,只需要按照標準繪制CAD圖紙即可,整機裝配圖的繪制過程也就是產品結構樹的搭建過程。
為了統一標準,繪制裝配圖時,只能使用在PDM中注冊過的物料。圖3所示為添加一個物料時的系統流程圖。用戶選擇一個物料,并選擇是否需要在圖中顯示該物料圖形,對于一些不需要在圖中顯示圖形的物料,用戶只需指定其使用工序和用量即可。對于需要在圖中顯示圖形的物料,系統將自動讀取其對應的圖紙,從中提取圖塊插入到裝配圖中,并在圖塊中寫人物料代號、名稱、裝配工序等信息。通過物料代號,能判斷BOM中是否已經存在該物料,不存在則將物料信息添加到BOM中,同時在數據庫的產品結構表中添加一條新記錄;若物料已經存在,則在數據庫及BOM中更新其組成用量而不至產生重復的記錄。
圖3 插入物料流程圖
執行上述操作后,系統將會生成裝配件與零件的關聯關系,父節點為裝配件,子節點為零件,由此可構建產品結構樹。整機裝配圖繪制完成后,其產品結構樹也隨之搭建完成。由于在圖塊中記錄了零件的相關信息,通過對這些信息的讀取,系統能夠識別圖塊的復制、刪除等操作,從而在后臺做出相應的操作。同時系統提供了產品BOM的編輯功能,用戶刪除物料BOM,系統也會自動刪除對應圖塊,修改產品結構樹,從而保證了圖形、BOM(明細表)與產品結構樹的同步一致性。
4 產品報表輸出
產品設計完成后,需要將其設計BOM(EBOM)轉化為生產BOM(MBOM),從而指導相關部門進行原材料采購或生產,以及對產品進行成本核算等。MBOM可以通過遍歷產品結構樹得到,系統提供了導出接口以及表格格式編輯功能,可將MBOM按照指定格式導出為EXCEL文件。
產品結構樹是樹狀結構,根節點為工程,如圖4所示,只需要從工程出發,按照一定的遍歷算法,即可獲得其全部子節點。本系統采用廣度優先的原則,首先獲得T0所有的第一級子件T11~T1m,再查詢這些節點是否有子節點,如果存在,就繼續讀取,如此反復,直到獲得全部子節點。將這些節點代表的零件信息輸出,即可生成MBOM。
圖4 產品結構樹
在遍歷過程中,存在一些物料,例如空機柜或外購部件,雖然可以繼續展開,但由于其已經是采購/生產的最小單位,系統不會將其展開。
5 系統實現
本系統采用了AtucCAD作為設計平臺,Orade9i作為數據庫,開發工具選用的是VC++.NET。本文第4個章節描述的構建產品結構樹的過程,其中添加多個物料到整機BOM中的關鍵代碼如下:
使用此系統進行產品設計,圖紙明細表與產品結構樹的對比如圖5所示。
圖5 裝配圖明細表與產品結構樹的對比
6 結束語
本文描述的PDM/CAD集成系統,實現了圖紙文檔的一體化管理,保證了產品結構樹與裝配圖的同步一致性,完成了EBOM到MBOM的轉換與輸出。該系統已在某電力二次設備公司使用,公司設計人員依托其進行設計,達到了減少設計時間、降低產品成本的目的,取得了較好的成效。
核心關注:拓步ERP系統平臺是覆蓋了眾多的業務領域、行業應用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業務管理理念,功能涉及供應鏈、成本、制造、CRM、HR等眾多業務領域的管理,全面涵蓋了企業關注ERP管理系統的核心領域,是眾多中小企業信息化建設首選的ERP管理軟件信賴品牌。
轉載請注明出處:拓步ERP資訊網http://www.guhuozai8.cn/