隨著計算機集成制造系統(Computer Integrated Manufacturing Systems)技術在國內的推廣,CAD軟件、ERP軟件得到廣泛的應用,企業的信息化程度也不斷提高。但是在實際應用中,CAD軟件和ERP軟件分屬不同的應用領域,其信息共享問題常常被人忽視,于是企業中存在的CAD數據、ERP數據,成了一個個信息“孤島”。對于同一產品或零件的信息各自從不同的角度定義,采用不同的數據模型描述,用不同的方式錄入、存儲、維護,造成大量重復錄入以及信息冗余,并得不到同步更新;同時在客觀上阻礙了進一步在整個企業中的信息化進程,而形成了新的信息瓶頸。
本文的研究目標就是針對我國模具行業在設計、制造、管理等方面所存在的上述主要問題,從模具企業的數字化設計、制造、管理需求出發,在已有的模具CAD系統、模具生產管理系統等成果基礎上,采用面向服務的架構集成相關應用系統。本平臺采用ESB作為其基礎框架,通過基于數據事件流的處理方式完成數據格式的轉換,采用基于Rete算法的規則引擎實現業務邏輯,將各種應用邏輯抽象為服務連接到ESB上,實現數據的無縫集成和實時共享。
1 模具企業的業務分析與建模
1.1 模具企業業務分析
CAD/CAE/CAM/CAPP在模具行業的廣泛應用,使得國內模具行業的生產技術能力大幅提高,然而生產管理能力卻相對滯后。近年來,一些大中型、競爭力強的模具企業實施了PDM、ERP等信息系統,生產管理能力有了一定程度的提高,也帶來了直接的經濟效益,但是仍然存在著CAD系統和ERP系統的信息流通不暢的問題[2]。一般來講,模具設計之后就可以進行采購和工藝設計,采購、工藝設計以及模具制造是可以并行的。采購的材料以及數量是根據模具圖紙的BOM信息決定的,BOM的獲取效率和準確率直接影響了采購的效率,從而影響整副模具交貨期。然而目前普遍的BOM集成是手動完成的,專門的BOM錄入人員將設計圖紙的BOM信息手動的錄入ERP系統中進行統一管理,這樣就大大降低了BOM更新的效率,同時由于人為失誤會導致BOM信息的不準確,可能造成庫存不足或者過量,導致整個制造過程的低效;規模較大的模具企業是在CAD系統中進行BOM表導出的二次開發,這在一定程度上提高了操作效率與精度,但在自動化方面還是非常欠缺。可見CAD系統和ERP系統的BOM信息的高效集成已經十分必要。
1.2 模具企業業務建模
模具企業是十分復雜的系統,包含如企業經營、產品設計、產品生產、物料采購等多個層面;整個業務過程不僅涉及到物流,還有大量的信息流、資金流;同時,模具企業是個動態變化的系統,客戶需求的頻繁改動使得整個生產過程存在大量的隨機因素和不確定性因素。因此,對模具企業的建模顯得尤為重要。通過對業務模型的分析,可以發現存在于模具企業的業務瓶頸,為優化和改造業務流程提供了科學依據。
企業建模的方法有很多,根據建模側重點各有不同,企業模型信息往往由這些反映各個側面的子模型組成,如功能與信息建模方法,過程建模方法,組織與資源建模方法,動態企業建模方法,集成化企業建模方法等。由于我們關心的重點是模具企業的業務過程,在此采用描述工作流程的過程建模方法進行模具企業的業務流程建模。目前,主流建模方法有集成計算機輔助制造(Integrated Computer Aided Manufacturing,ICAM)DEFinition系列方法、基于統一建模語言(Unified Modeling Language)的建模方法、基于業務流程建模標注(Business Process Modeling Notation)流程圖方法等。IDEF族的方法基本上是靜態建模,缺少動態的功能,很難表達復雜的邏輯關系和非確定的信息;UML角色工作流建模,是一種以角色為中心的建模方法,建模重點在角色的交互協作上,在流程描述上有所欠缺;基于BPMN的建模方法借鑒了UML活動圖,UML EDOC的業務流程圖,IDEF等的技術經驗,兼顧了復雜的流程語義和角色交互,為描述和研究復雜系統提供了強有力的手段。BPMN由一組圖形元素構成,便于開發一個簡單的,為大多數業務分析人員熟悉的流程圖。對于建模者來說,這些圖形都是易于區分和識別的。同時,眾多的成員保障了BPMN作為一個業務流程建模語言的標準。由此可見,基于BPMN的建模方法是很好的選擇。
通過對模具企業ERP系統和CAD系統的業務分析可得如下基于BPMN的業務流程圖。由圖1可知,物料信息是CAD系統需要與ERP系統頻繁交互的,ERP會根據由CAD系統提交的物料信息決定采購計劃。而針對于模具行業的實際業務特點,客戶需求的頻繁改動時有發生,物料信息也會隨之改變。如CAD系統改動的物料信息不能及時的更新到ERP系統中,采購清單就會與實際需求不一致,導致采購不足或者采購過剩,給企業帶來不必要的麻煩和損失。因此,物料信息的實時更新和一致性顯得尤為重要。平臺工作的關鍵是保證物料數據實時更新,使得物料信息在系統之間保持一致和高度透明,功能要求就是要解決CAD系統和ERP系統的BOM無縫集成的問題。
圖1 模具企業業務框架
面對業務流程不斷變化、多種異構系統重用和集成的問題,面向服務的集成是目前最有效的解決方案。在面向服務的思想下,具體應用程序的功能由一些松耦合并且具有統一接口定義方式的服務組合構建起來的。這些封裝良好的原子化的服務僅僅在它們共同的契約里暴露行為,服務外部不能看到服務的內部狀態和狀態轉化。同時,這些服務共享同一個消息總線,對迅速變化的業務環境具有良好適應力。這剛好可以解決模具企業需求多變所帶來的問題。通過對模型分析可以得出,集成的最佳時間點是3D模具圖紙設計好之后,BOM集成分為兩個主要的步驟:(1)從CAD系統讀取BOM信息;(2)BOM數據經過轉換,導入ERP系統。面向服務的解決方案可以對這兩個步驟進行服務的抽象,即一個讀取服務,一個寫入服務。在“3D設計/審核”環節之后,調用讀取服務和寫入服務,實現BOM的實時共享和無縫集成。
2 關鍵技術
2.1 基于ESB的數據集成技術
ESB為面向服務的集成提供了一個完備的基礎結構,結合了Web服務、XSLT(Extensible Stylesheet Language Transformations)以及對編排技術的支持等。ESB提供了事件驅動和文檔導向的處理模式,以及分布式的運行管理機制,它支持基于內容的路由和過濾,具備了復雜數據的傳輸能力,并可以提供一系列的標準接口。ESB對信息進行了適當的控制和處理,滿足了面向服務架構中安全性、策略性、可靠性和統計需求。使用通信協議負責服務之間所有的信息調控、流向和轉換。ESB采用基于XML的消息格式,支持如Web服務、JMS(Java Message Service)等標準,使服務的實現和服務通信相分離,有很好的開放性和可擴展性。集成的各個應用之間可以通過ESB發送和接收消息,異步的產生消息,這些都使得ESB成為面向服務架構、面向消息架構以及事件驅動架構的良好解決方案。
本平臺中,首先根據集成需求將各個集成操作抽象成為定義良好的服務,如CAD系統的文件BOM讀取服務,ERP系統的目標BOM寫入服務,以備ESB調用;其次,集成需要完成異構系統不同數據之間的格式轉換,以便共享數據。根據BOM數據格式的要求進行數據處理,將源BOM數據格式轉換成目標BOM數據格式,ESB根據轉換文件完成數據轉換;同時,ESB根據用戶需求,通過基于內容的路由機制實現集成邏輯;最終,用戶配置的監聽機制觸發定義好的ESB,實現兩系統之間的數據集成和共享。
2.2 基于數據事件流的數據處理
信息共享的一個重要的前提就是數據轉換,即將CAD系統和ERP系統中不同數據結構的信息相互轉換,這樣才能實現數據的一致性和實時共享。然而手工硬編碼的方式去完成數據結構的轉換是不可取的,既要耗費大量精力又缺乏平臺通用性。在這里,采用數據轉換引擎進行數據轉換,不僅支持基于XSLT的XML格式之間的轉換,還支持CSV到XML、XML到CSV、Java到XML、XML到Java等多種數據轉換形式,能夠為ESB提供靈活的數據轉換服務,同時利于平臺數據轉換功能的擴展。本平臺中,數據通信采用的是XML,數據結構的表示和轉換采用的是)ML Schema和XSLT。XML Schema可以定義BOM表中的元素、屬性,定義子元素的次序及數目,定義元素是否為空,是否可包含文本,定義元素和屬性的數據類型以及屬性的默認值等。XSLT作為一種基于XML的語言,在數據轉換引擎框架的支撐下用于將源BOM的XML文檔轉換成目標BOM的XML文檔。在本平臺中,XSLT正是發揮了轉換數據的重要作用,使CAD系統和ERP系統中不同結構的BOM信息得以共享。集成數據流如圖2所示。
圖2 集成數據流圖
數據集成時,系統自動載入雙方的Schema文件,生成XSLT轉換文件。轉換服務啟動時,數據轉換引擎將結構化的數據流轉變成事件流,然后進行分析,生成最終XML結果。
2.3 基于Rete算法的規則引擎與內容路由
本平臺采用基于Rete算法的規則引擎分離業務邏輯。Rete算法是目前效率最高的前向鏈形推理算法,核心思想是將分離的匹配項根據內容動態的構造匹配樹,減少重復操作,解決時間冗余的問題,從而大大減少計算量,提高計算效率。Rete算法的狀態保存和節點共享機制使其優于傳統的模式匹配算法。
平臺基于內容的路由采用的是Drools規則引擎,它是一種基于Rete算法的高效規則引擎,配有類似Java語言的規則描述語言,支持非XML的本地語言編寫規則,能描述較為復雜的邏輯,并且能用Excel對規則進行管理,大大方便了規則的管理與維護。執行邏輯如圖3所示。
圖3 Drools工作模式簡圖
“規則庫”是編好的Drools規則集合,待進行匹配的數據稱為“事實”,“模式匹配器”的作用是對新的數據和被修改的數據進行規則的匹配。當一條規則被完全匹配,這條規則和與其匹配的事實將激活被放入“規則執行議程”,由議程來負責安排執行。
進行BOM集成時,業務過程較為復雜,Drools規則引擎將業務邏輯和業務實現完全分離,解決了集成業務的維護和擴展問題。如在平臺的實現中,對于不需要審核的BOM信息,存入平臺備份并直接導入目標ERP系統;對于需要審核的數據則先存人平臺,等待審核,審核結束之后才能導入目標系統。
3 面向服務的CAD與ERP集成系統設計
3.1 集成系統功能架構
通過分析模具企業的業務特點和集成需求,集成平臺功能架構如圖4所示,主要包括3個功能層,分別是基礎功能層、數據集成層和用戶管理層。
圖4 集成平臺功能架構
基礎功能層完成底層原子服務的開發,包括CAD讀取服務的開發,ERP寫入服務的開發,同時對服務進行管理、發布與維護。CAD讀取服務例如UG的PRT文件BOM信息的獲取服務,AutoCAD的DWG文件BOM信息的讀取服務等。ERP寫入服務的開發要基于具體ERP軟件的平臺接口特點進行定制化開發,如eMan模具管理系統。對這些原子服務進行有效的開發與管理,為數據集成提供底層支持。
數據集成層的核心功能是整合基礎功能層提供發布的原子服務,在平臺配置完整的前提下完成數據集成。通過基于Rete算法的規則引擎抽象集成業務規則,將業務實現與業務邏輯有效分離,通過解釋規則內容完成服務路由;采用基于XSLT的Smooks轉換引擎完成對數據事件流的處理,從而將從CAD系統的XML數據格式轉換成ERP系統的目標XML數據格式;監聽事件提供多種監聽方式完成對ESB的觸發,包括FTP,JMS,文件系統等。用戶管理層的配置功能將為數據集成層做好所需的前件工作,如監聽方式的選擇、數據事件流處理所需的XSLT文件等。
用戶管理層主要是提供一個友好的人機界面,滿足用戶的定制配置需求。包括ESB組件的配置和部署,CAD適配器的配置以及數據結構配置。用戶可以根據業務需求定制開發、部署ESB。在CAD集成模塊的設計中,提出了一個重要的概念就是CAD適配器,每種適配器對應一類CAD軟件的一類應用,可以說它是一個二元組,包含ESB的監聽器,CAD轉換服務。一個特定CAD適配器通過一種ESB監聽CAD源文件,然后調用特定的服務進行解析,解析的數據通過數據映射,按照不同的需求再導入到需要的系統中,并且導人的過程是人為可控的。同時,平臺提供用戶界面進行數據結構的配置,以滿足不同數據結構在異構系統的共享和信息轉換。
3.2 集成系統技術架構
從模具企業BOM集成需求出發,結合面向服務的思想,設計了圖5所示的技術架構。本技術架構可以滿足數據集成需求。
圖5 集成平臺技術架構
平臺技術架構包括數據層、企業服務總線集成層、業務邏輯層以及Web界面層。數據層負責結構化/非結構化數據的管理,同時負責Web服務的發布和維護;通過企業服務總線提供的各類適配器,將從ERP系統和CAD系統中抽象出來的服務鏈接到服務總線上,從而實現數據的傳輸、轉換與路由;而模具企業中所特有的業務規則通過規則引擎進行處理,從而實現業務邏輯與業務實現之間的分離。最終通過統一的web集成界面,為企業用戶集成操作提供便利。
4 集成系統案例
本集成平臺已經成功集成了UG NX系統和eMan模具生產管理系統,平臺根據eMan系統的實際需求定制服務、配置ESB和所需數據結構,完成了BOM信息的轉換。具體流程如下:(1)開發UGNX系統的BOM讀取服務及eMan系統的BOM錄入服務,配置、部署ESB;(2)設計人員將設計好的模具圖放到指定文件夾,ESB通過文件系統方式被觸發執行;(3)ESB調用UG PRT原生文件的讀取服務,將文件信息以一種數據結構讀取出來;(4)根據業務邏輯決定服務路由,假如文件信息不需要審核,將信息直接以目標數據結構導入eMan,并存人平臺備份;如果需要審核,就暫不存人eMan;(5)對于需要審核的文件,在檢查、修改完畢后,將文件信息導入eMan。
4.1 集成適配器配置
適配器是集成的核心部件。適配器即配置好的功能組件,主要是ESB的配置。包括:選擇PRT讀取服務;選擇ESB的監聽方式;選擇eMan的BOM寫入服務;選擇是否需要審核等。登陸到適配器界面,系統將查詢數據庫所有適配器配置。顯示如圖6所示。
圖6 適配器界面
4.2 集成操作模塊實現
平臺提供操作界面方便用戶查詢、備忘已集成BOM信息,集成需審核的BOM信息。集成操作分為已集成模塊和未集成模塊。用戶可以在“已集成”模塊中根據各個查詢條件對已集成信息進行篩選。在“未集成”模塊中,用戶可以對篩選出的BOM信息進行修改和審查,同時可以預覽即將導入目標系統的信息,審核完畢后將符合要求的數據導入目標ERP系統。圖7展示了集成操作界面。
圖7 未集成操作
5 結語
平臺采用基于服務的方式實現異構系統的集成,方便了系統維護和擴充。對于企業需要集成的遺留系統,不需要做特定接口模塊的開發,只需將遺留系統中的功能抽象成為標準的web服務,從而通過集成平臺實現系統對接。這樣就減少了集成投入,也很好的保護了遺留數據;由于平臺的開發是基于各種標準的,具有基于web服務的開放性,各個功能模塊之間的耦合程度較低,大大方便了系統功能的擴充。
本文圍繞面向服務的模具企業CAD與ERP集成平臺的研究,深入分析了模具企業業務特點、生產過程中存在的信息共享問題以及所帶來的不良后果,闡明了面向服務集成的優勢。本平臺中,基于Rete算法的規則引擎實現了業務邏輯與業務實現的分離,基于數據事件流的數據轉換引擎解決了異構系統之間的數據轉換問題,最終通過ESB將BOM集成中的服務組合成為功能,實現了集成方案。該方案能夠快速響應模具企業多變的業務流程,簡化模具企業集成操作,提高自動化程度,最終提高模具企業效益。
轉載請注明出處:拓步ERP資訊網http://www.guhuozai8.cn/
本文網址:http://www.guhuozai8.cn/html/consultation/10820223252.html