何 非,李東波
HE Fei, LI Dong-bo
(南京理工大學 機械工程學院,南京 210094)
制造執行系統是位于上層的計劃管理系統與底層控制系統之間的面向車間層的管理控制系統。MES不僅能實現對生產信息的跟蹤,而且能對信息加以分析,并對可能發生的事情進行預測[1]。目前,國外的MES的研究和應用已經取得了明顯的成效,在國內一些典型企業的應用也已經取得成功。但是,傳統的MES存在著一定的不足:1)應用范圍窄、通用性差:傳統MES一般只解決某個特定的領域問題,如車間質量管理、生產單元分配等;2)缺乏柔性、不易修改和擴充,可配置性差:傳統MES是針對特定行業或企業的固定業務流程開發,系統不能隨業務過程的變化進行功能配置和動態改變;3)開發周期長,使用成本較高,不利于在中小企業得到推廣[2]。
針對上述問題,國內外已經對MES的可集成性、可配置性及可重構性展開研究,特別是工作流技術的引進,為制造執行系統的可配置提供了非常有效的途徑。但是由于缺乏有效的理論支持,車間業務流程難以向工作流過程模型進行轉換。而一些成熟的商業軟件,如Siemens的“Simatic IT”等,其應用對象是以流程行業為主,將其應用到離散行業中則存在一定的缺陷。因此,本文針對這一問題,以裝配型生產方式為研究對象,充分利用各種BOM信息,以工作流技術為基礎,研究了一種裝配流程可配置、業務組件可重構的制造執行系統。
工作流是針對日常工作中具有固定程序的活動而提出的一個概念,其提出的目的是通過將工作分解成定義良好的任務、角色,按照一定的規則和過程來執行這些任務并對它們進行監控,以達到提高辦事效率、降低生產成本、提高企業生產經營管理水平和企業競爭力的目標。工作流的運行是由工作流管理系統來完成的,工作流管理系統由兩部分組成:過程定義和建模階段及過程執行階段。在過程定義和建模階段,工作流管理系統將要建模的業務過程表示成計算機可處理的形式化描述;執行控制模塊為工作流過程定義的執行提供一個運行環境,并根據工作流建模的過程定義,引導該過程的自動執行。通過管理系統和執行者的交互,可以有效推動工作流實例的進行,并監控工作流的運行狀態[3]。
傳統的MES開發需要為每個活動開發相應的用戶界面和處理類,這些類既要完成業務過程的處理,還需要維護業務數據和過程數據,如果業務過程發生改動,則需要大量改動源代碼,增加開發成本。
利用工作流技術可以在建模時,通過工作流模型完成業務過程,在執行時由工作流引擎控制過程的運行[4]。在基于工作流技術的MES中,通過把處理類中的業務過程處理掉,而只保留其中的業務邏輯,并將其作為獨立的組件提供,以提高其可重用性。基于工作流技術的MES軟件體系結構如圖1所示。其中系統數據庫存儲了三部分數據:工作流模型數據保存定義好的組織模型和業務過程模型;工作流控制數據是工作流引擎維護的、用于記錄過程實例與活動實例的狀態信息;工作流業務數據是MES業務邏輯操作處理的數據[5]。

圖1 基于工作流技術的MES系統體系結構
由此可見,將工作流引擎作為MES的核心,可以很方便把生產過程、組織結構、物料生產信息、生產運營資金和工作列表有效的結合起來,實現系統的可配置。同時由于業務邏輯和業務過程的分離,可以輕松實現MES的可重構[6,7]。但是,由于實際的生產運作流程是非常復雜的,而且不同的行業其生產方式也不盡相同,實際的生產現場也存在著大量變更與反復,因此如何快速、有效且完整的將實際的生產業務流程以工作流的方式進行建模成為MES可配置化的重要問題。
制造過程是一個由原材料、毛坯、外購件等逐步變成在制品、半成品、最后變成成品的過程,其本質實際上是一個業務過程,其目標是最終的產品,其子目標則是對組成該過程的零部件的生產。因此,采用工作流的方式對制造過程進行建模,可以完整、有效的描述制造過程中經過的所有步驟,而且通過操作人員與系統間的信息交互,可實現生產任務的分配、協調和監督。
在生產過程的每一個步驟中,都要涉及一定的資源、設備、人員等,另外還要與之相關的基礎數據,如設計數據、工藝數據、庫存數據、裝配數據等。通常,這些數據都包括在BOM中,但是BOM表達的是產品的結構或裝配視圖,是一種以產品為中心的建模方法。如果僅僅通過結構視圖,是無法直接得到各項任務的時間計劃的,只有通過過程模型才能確定工作進行的先后順序,建立最終的任務時間計劃。
因此引入基于產品結構的BOM來實現生產過程的工作流建模,為實現現實的生產業務流程在MES中的可配置提供了有效的途徑。目前,已有學者對樹型BOM的流程化建模展開研究,并取得了一定的理論成果。但是這些研究是以設計BOM為出發點的,其研究缺乏針對性,使得其成果難以在實際中得到應用。本文以裝配型生產為研究對象,以裝配BOM為基礎,構建了一種制造過程的工作流建模方式。
裝配BOM主要包含了制造BOM中的部分信息,一是物料的基本信息及管理信息,二是產品在裝配過程中所需要的裝配信息。裝配BOM中所需要的物料信息有:
1) 物料代碼;
2) 常規管理有關的信息。如圖號、物料名稱、版本、物理狀態屬性等;
3) 同生產管理有關的信息。如庫存管理信息(安全庫存、分類編碼等)、車間制造信息(提前期、物料供應信息等)、采購信息(采購價格、最小訂貨數量等)、銷售信息(發運最小數量、是否可發運等)。
在裝配過程中所需要的信息有:
1) 增加的中間件信息;
2) 各零部件之間的裝配關系信息,如裝配的先后順序,裝配所需的物料及數量等;
3) 零部件個體的工藝信息,如制造/裝配時間等。
圖2與圖3分別展示了某產品A的設計BOM與裝配BOM,其中斜線中的數字為所用零部件的數量,圖4中的子部件為裝配BOM中所有的中間件。

圖2 產品A的設計BOM

圖3 產品A的裝配BOM
由此可見,針對裝配型生產,較之設計BOM 與制造BOM,裝配BOM能更清晰、更完整的描述產品的裝配業務過程。首先利用其裝配關系等信息,能夠建立一個良好的生產工作流過程模型;其次,裝配BOM中的物料信息,又為MES系統中其他各子系統的監控管理提供了非常詳盡的依據。
因此選用裝配BOM,能有效夠構建產品裝配的工作流過程模型,為MES中工作流程的建立供了良好的理論依據;同時,由于BOM信息可以直接從PDM中直接獲取,便于裝配過程工作流建模的自動建立,輕松實現MES的快速可配置。
Petri網理論目前已廣泛應用于制造系統的分析、建模和仿真中。作為一種圖形化的建模方法,Petri網和工作流在結構之間存在明確的映射關系,在制造過程的建模和工作流建模方面得到了廣泛的應用。Petri網包括三個基本元素,即庫所、躍遷和連接。庫所表示的是系統在該處的狀態,躍遷則描述的是使狀態發生改變而發生的事件,庫所與躍遷之間的聯系由弧連接,因此通過Petri網可以很方便的描述工作流活動之間的關系。工作流所定義的活動有四種結構:1) 順序結構;2) 并行結構,包括有條件分支、與并;3) 條件結構,包括有條件分支、或并;4) 循環結構。表1顯示了如何用Petri網來表示這些結構,其中正方形表示躍遷,用T標記,圓圈表示庫所,用P表示[8]。

表1 工作流建模基本變遷結構
從BOM和Petri網的基本特征可以看出,BOM表達的是產品的結構視圖,Petri網表達的是過程視圖。因此從產品裝配的角度出發,實現產品裝配的過程控制,在模型描述意義上就是BOM結構模型向Petri網過程模型的映射[9]。本文從裝配BOM出發,結合文獻[8]中的方法給出由裝配BOM向Petri網映射的步驟。
首先對裝配B O M 進行定義: 令BOM=(C,R,F);其中C是根部件,R是裝配該根部件所需的子部件或零件,F為部件C和零件R之間的對應關系。Petri網的定義如下:令PN=(P,T,N);其中P是網中庫所的集合,T是躍遷的集合,是連接庫所與躍遷的有向弧的集合。
值得注意的是,由于本方法是以裝配BOM為基礎,因此其中PRE(準備)躍遷代表物料的準備與配送過程,而非產品的加工準備流程;ASM(裝配)躍遷代表產品的裝配過程,而不是產品的制造過程(PRO躍遷)。

具體映射步驟如下:躍遷,合并成一個節點。
圖3中的裝配BOM通過映射后得到的Petri網模型如圖4所示。

圖4 Petri網過程視圖實例
通過上述方法,可以有效建立裝配過程的工作流過程模型,其采用的Petri網建模方法不僅描述了主要的工作流過程關系,而且其中的庫所和躍遷還能表示多種含義。庫所可以表示任務開始的時間,任務執行單位,任務進行地點等非過程相關特性;而躍遷則表示對象通過該躍遷發生什么樣的變化,執行多長時間等過程相關特性,是車間計劃的執行、監控及變更的重要依據,為MES的工作流過程模型與各業務組建間的信息交互提供了重要的數據。
如圖1所示,業務邏輯的驅動需要有相關的業務數據及控制數據的支持。因此,裝配過程的工作流過程建模只是實現了MES可配置的第一步,要實現各業務模塊與工作流模型之間的無縫集成,在其兩者之間必須有嚴格的信息定義及接口方式,以保證各業務模塊的順利運行有足夠的信息支持。所以在上述基于BOM的裝配過程工作流建模完成后,仍需要在過程模型中綁定相關信息,如質量信息、物料信息及設備信息等,為各子模塊提供有效的管理基礎信息。
一般來說,這些信息都包括在各類BOM中,如物料的庫存管理及配送信息包括在制造BOM中,產品的質量信息包括在質量BOM中,刀具及設備的使用信息包括在工藝BOM中,如果能夠將這些BOM信息綁定到各個工作流程中,通過與各子系統之間的信息交互,則可以為MES的運作及管理提供有效的依據,保證了生產現場的有效監控及優化管理。
實際上,在以工作流為基礎的MES中,已經具備了將外部信息綁定到各工作流節點上的功能,圖5展示的是一般工作流MES業務模型的數據庫關系圖[5]。

圖5 傳統工作流MES的業務模型

圖6 改進后的業務模型
其中“活動實例信息”記錄的是各種任務,包括待處理的和已完成的任務;“業務過程信息”描述了MES工作過程并記錄過程活動的功能配置信息,也就是業務工作流模型信息,其中表Process描述車間生產過程的總體信息,表Activity表示生產過程中的每個活動,表Transition描述活動轉移路徑;“功能配置信息”是將參數數據、用戶界面和業務邏輯處理類可供系統配置調用,其中表DataSet記錄了活動執行時調用的參數信息,包括參數傳遞信息、參數類型、參數順序等,表Form描述操作的界面,表Application描述業務邏輯信息,并接受DataSet傳遞過來的業務數據。
由此可見,所有和生產過程相關的BOM信息都可以存放在DataSet表中,通過與生產工作流模型的關聯實現與各功能模型實現信息交互,為各功能模塊的監控與管理提供有效的依據。同時通過對現場數據的采集,可以將這些數據記錄到數據庫中,通過進一步的分析與處理,能夠預測當前車間所處的狀態,為進一步的生產計劃的定制及生產過程中的物料控制提供了基礎。
由于這些BOM都是以設計BOM為基礎的,與裝配BOM存在著相同的結構與形式,因此能夠在工作流模型構建時直接從PDM導入,輕松實現信息的無縫集成。為了實現不同的BOM信息與相關的子系統的信息交互,其功能數據配置信息的數據庫結構圖如6所示。
下面從各類BOM出發,分別探討BOM與相關子系統間的信息交互。
1)裝配BOM與過程管理、作業計劃及調度管理
前文已述,庫所可以表示任務開始的時間,任務執行單位,任務進行地點等非過程相關特性;而躍遷則表示對象通過該躍遷發生什么樣的變化,執行多長時間等過程相關特性,而這些信息都是包括在裝配BOM中的。當任務計劃下達后,標準的作業開始時間、結束時間、單件操作時間等信息即綁定到工作流模型中的各個節點上。當任務開始執行時,MES則通過過程管理系統從現場獲取實際的產品裝配信息,將這些信息與裝配BOM中的標準作業信息進行比較,便能夠輕松判斷車間當前的生產運作情況。如果生產出現異常或實際生產與原有生產計劃不符,調度管理系統可根據現場的數據做出生產調整,同時計劃管理系統也可做出相關調整。
2)制造BOM與庫存及配送管理
制造BOM中包含了各類零件的詳細信息,如物料的來源信息、物料的使用數量、物料使用的時間差異等,是MRP不可缺少的基礎數據,同時也為MES中的庫存準備及物料配送提供了重要數據。由于明確了物料的使用時間、數量、類型和來源,庫房可以清晰明了的查看各個工位所需物料的數量及時間,當任務下達后,可根據物料需求計劃及時安排物料的采購及調運;同時協同過程管理和產品跟蹤系統所提供的數據,能獲取現場的物料使用情況及物料的當前需求量,通過這些信息可及時進行物料的準備及配送,并對現有庫存余量進行監控,及時調整外協件的供應,確保生產的正常運行。
3)工藝BOM與工具管理及設備管理
工藝BOM中包括了各種裝配工藝,自制件的加工工藝及設備、刀具、工裝的使用等。通過工藝BOM,并借助底層控制系統,能實時記錄并分析設備及刀具的使用情況,如設備的使用時間、故障發生率,刀具的使用時間、使用頻率、刀具異常報警等,同時能夠快速有效的制定設備的維修、保養、換油計劃,刀具的準備計劃采購計劃等。
4)質量BOM與質量管理
質量BOM中包含了基本的質量規范、產品質量考核標準、產品和零件檢測規程和方法、檢驗設備信息和不合格處理辦法等。通過與工作流模型進行綁定,在自動檢測點,能夠對所采集的數據進行自動判斷,實現質量的在線監控;在手工檢測點,則能夠提供相應的檢驗流程及方法,而且可以綁定相關的質量表單,方便工人填寫實現電子記錄。另外,利用這些產品的質量記錄信息,可以通過統計分析等方法提取隱藏的潛在的有用信息,挖掘影響的產品質量問題的源頭。
通過上述研究,我們已經找出了裝配型生產的工作流過程模型的構建方法,并通過將BOM信息綁定到工作流模型中,實現了業務過程數據與業務過程模型的無縫結合。因此,以工作流引擎為核心,能成功實現制造過程的可配置及業務組件的可重構。其系統整體構架如圖7所示。
圖中工作流引擎由7個處理模塊組成,其中任務管理模塊是工作流引擎的控制中樞,用于處理在系統執行過程中所要進行的任務;過程訪問接口用于解釋業務過程模型,主要從PDM中獲取裝配BOM,將BOM轉換為Petri網模型,構建工作流過程模型;組織訪問接口用于解釋組織模型及角色定義,將使用權限設定到業務流程的各個節點,實現系統的權限管理;數據訪問接口則從PDM中獲取數據,控制活動狀態和過程轉移數據,將各類BOM信息綁定業務流程中;組件調用接口調用MES業務邏輯組件,處理任務數據;用戶操作接口實現用戶界面和工作列表處理程序之間的交互;管理監控接口則通過底層工業控制網絡采集生產過程信息,實現管理和監控功能。

圖7 系統總體構架

圖8 某部件的工作流過程模型界面
本系統應用JAVA技術進行開發,采用B/S的三層體系結構來構建企業的生產業務解決方案。其中表示層采用JSP技術,負責與用戶進行交互,接受用戶的指令等;業務邏輯層由Servlet和JavaBean等類型程序實現,根據用戶的指令和企業業務處理邏輯,對數據信息進行相關處理,并將處理結果返回表示層;數據訪問層則由JDBC連接SQL Server數據庫,處理系統與數據庫系統和其它應用服務的通信。目前該系統已經在某軍工企業得到初步實現與應用,圖8展示的是某部件級產品由裝配BOM轉化后得出的工作流過程模型。
本文以裝配型生產為研究對象,充分利用各類BOM信息,研究了一種裝配流程可配置的制造執行系統。以工作流技術為核心,利用裝配BOM構建裝配過程的工作流過程模型,并將其他各類BOM信息綁定到該模型中,保證各功能模塊間的信息交互,成功實現制造過程的可配置及業務組件的可重構。實踐表明,本方法符合裝配型企業的實際生產需求,當裝配流程發生改變或有新產品裝配時,只需直接導入PDM中的數據,并通過一定的調整,能快速實現MES與實際生產流程的匹配。而且該系統無需重新編寫程序,具有良好的可擴充性、可配置性及可重構性,大大縮短了系統的開發周期,節約企業信息化成本。
[1] Knill B. Application of Manufacturing Execution Systems [J]. Industry Week,1996,245(9):8-10.
[2] 李波,李輝,陳鷹.可重構制造執行系統的研究[J].機械科學與技術,2006,25(6):721-724.
[3] 范玉順.工作流管理技術基礎[M].北京:清華大學出版社,2001:28-54.
[4] CHIN-YIN HUANG. Distributed manufacturing execution systems: A workflow perspective[J].Journal of Intelligent Manufacturing, 2002,13(6): 485-497.
[5] 俞鵬超,楊建軍.工作流在MES中的設計與實現[J].先進制造技術,2005,24(3):34-36.
[6] Zhou ZQ, Li MJ,Liguan SG. Research of Workflow technology for discrete manufacturing oriented MES[A]. 3RD CHINA-JAPAN Conference on Mechatronics 2006 FUZHOU[C].: 353-356,2006.
[7] Hwang HC,Choi BK. Workflow-Based Dynamic Scheduling of Job Shop Operations[J].International Journal of Computer Integrated Manufacturing,2007,20(6):557-566.
[8] 周萬坤,朱劍英.面向制造過程的工作流建模[J].機械科學與技術,2004,23(2):230-233.
[9] van der Aalst. The application of Petri Nets to Workflow Management[J].The Journal of Circuits, Systems and Computers 1998,8:21-66.