20世紀(jì)90年代,美國(guó)先進(jìn)制造協(xié)會(huì)(AMR)首先提出了制造執(zhí)行系統(tǒng)(Manufacturing Execution Systern,MES)的概念并引起廣泛關(guān)注。工業(yè)發(fā)達(dá)國(guó)家對(duì)MES技術(shù)開(kāi)展了系統(tǒng)的研究,提出了完整的軟件體系架構(gòu),研制開(kāi)發(fā)了許多比較成功的MES軟件產(chǎn)品。國(guó)內(nèi)對(duì)MES的研究起步較晚.在國(guó)家863計(jì)劃資助下進(jìn)行了流程工業(yè)MES的理論、內(nèi)涵、體系結(jié)構(gòu)、軟件和應(yīng)用等方面的廣泛和深入的研究。并取得了一定的成果。但是在面向離散制造行業(yè)的制造執(zhí)行系統(tǒng)軟件方面相對(duì)較弱。由于生產(chǎn)模式的多變性以及自動(dòng)化程度的差異性。MES的實(shí)施和應(yīng)用受到了極大的挑戰(zhàn)。我國(guó)航天制造企業(yè)的生產(chǎn)特點(diǎn)是單件、小批量、多品種、批產(chǎn)與研制相結(jié)合。由于起步比較晚,自動(dòng)化程度比較低,信息化環(huán)節(jié)較薄弱,存在的普遍問(wèn)題有:
(1)紙質(zhì)卡片貫穿在整個(gè)零件加工過(guò)程中,零件加工的每一個(gè)步驟都需要人工填寫(xiě)相應(yīng)的生產(chǎn)數(shù)據(jù)。
(2)管理層信息化程度比較高,ERP/MRPⅡ得到了廣泛的應(yīng)用,但車(chē)間層基本上仍然采用傳統(tǒng)的手工作坊式生產(chǎn)與管理,自頂向下表現(xiàn)為對(duì)生產(chǎn)指令的反應(yīng)緩慢,自底向上表現(xiàn)為生產(chǎn)執(zhí)行信息不能及時(shí)得到反饋。
(3)缺乏有效的監(jiān)控生產(chǎn)運(yùn)行的手段,進(jìn)度信息以紙質(zhì)文檔或口頭的形式傳達(dá),缺乏實(shí)時(shí)性,有效性也存在問(wèn)題。
(4)車(chē)間管理層與控制層之間缺乏良好的信息交互手段,與生產(chǎn)相關(guān)的各部門(mén)間信息流通不暢,信息粗糙、滯后,追溯困難。
本課題針對(duì)某航天制造企業(yè)的生產(chǎn)模式和單件小批量、產(chǎn)研結(jié)合的生產(chǎn)特點(diǎn),以實(shí)現(xiàn)MES系統(tǒng)最終目標(biāo)為指導(dǎo)并結(jié)合車(chē)間的實(shí)際情況.成功地構(gòu)建并實(shí)施了MES系統(tǒng)的解決方案。
1 系統(tǒng)設(shè)計(jì)
1.1 總體架構(gòu)設(shè)計(jì)
經(jīng)過(guò)需求調(diào)研分析,該MES系統(tǒng)應(yīng)用的部門(mén)有科研生產(chǎn)處、加工車(chē)間、數(shù)據(jù)中心和倉(cāng)庫(kù)等,地理位置分散。結(jié)合企業(yè)軟硬件的實(shí)際情況,分析了3種網(wǎng)絡(luò)體系結(jié)構(gòu)的優(yōu)缺點(diǎn),采用瀏覽器/服務(wù)器(BrowsedServer)的3層網(wǎng)絡(luò)體系結(jié)構(gòu),標(biāo)準(zhǔn)的關(guān)系型數(shù)據(jù)庫(kù)以及J2EE平臺(tái)作為系統(tǒng)的運(yùn)行環(huán)境,來(lái)構(gòu)建基于B/S的車(chē)間制造執(zhí)行系統(tǒng)?傮w結(jié)構(gòu)包括用戶界面層、應(yīng)用系統(tǒng)層、系統(tǒng)支持及數(shù)據(jù)庫(kù)層等三大部分。為適應(yīng)網(wǎng)絡(luò)應(yīng)用和擴(kuò)展性的需要,系統(tǒng)開(kāi)發(fā)實(shí)現(xiàn)中采用Freemarker+Webwork+Spring+Hibemate的多層B/s架構(gòu),在應(yīng)用實(shí)現(xiàn)的層面上對(duì)MES系統(tǒng)體系結(jié)構(gòu)作了進(jìn)一步的劃分。系統(tǒng)總體架構(gòu)如圖1所示。
圖1 MES系統(tǒng)總體架構(gòu)
(1)用戶界面層(即表示層)。通過(guò)瀏覽器作為系統(tǒng)的前端,實(shí)現(xiàn)信息的錄入、查詢與分析結(jié)果的可視化展現(xiàn)。這一層包括采用符合MVC模式的Freemarker/Webwork取代傳統(tǒng)JSP/Servlet的界面開(kāi)發(fā)方式,以實(shí)現(xiàn)更為靈活、柔性的用戶交互界面。
(2)應(yīng)用系統(tǒng)層。該層是所有業(yè)務(wù)邏輯的實(shí)現(xiàn)層,是MES系統(tǒng)的核心部分。這一層負(fù)責(zé)接收客戶端的請(qǐng)求,并將數(shù)據(jù)庫(kù)層返回的業(yè)務(wù)數(shù)據(jù)進(jìn)行運(yùn)算處理返回到用戶界面。OSWorkflow工作流引擎負(fù)責(zé)驅(qū)動(dòng)零件加工流程的自動(dòng)流轉(zhuǎn)。在Hibernate基礎(chǔ)之上封裝了持久性訪問(wèn)層,把所有的持久性邏輯全部放到這一層實(shí)現(xiàn)。為了能夠最大程度地重用系統(tǒng)模塊,同時(shí)又能和工作流引擎很好地配合。采用了輕量級(jí)的Spring框架體系。
(3)系統(tǒng)支持及數(shù)據(jù)庫(kù)層。使用Hibernate取代JDBC數(shù)據(jù)連接和操作方式,實(shí)現(xiàn)關(guān)系數(shù)據(jù)到可操作對(duì)象實(shí)例的映射,并維護(hù)數(shù)據(jù)庫(kù)連接和數(shù)據(jù)緩存,提升效率。
1.2 系統(tǒng)功能設(shè)計(jì)
該系統(tǒng)實(shí)施的目標(biāo)生產(chǎn)車(chē)間存在的主要問(wèn)題是完全沒(méi)有作業(yè)計(jì)劃,生產(chǎn)計(jì)劃的執(zhí)行和進(jìn)度的控制由若干名計(jì)調(diào)員人工掌握,經(jīng)常導(dǎo)致生產(chǎn)任務(wù)不能按節(jié)點(diǎn)完成;加工過(guò)程的流轉(zhuǎn)以紙質(zhì)零件周轉(zhuǎn)卡為中心.負(fù)責(zé)任務(wù)的標(biāo)識(shí)和派發(fā),記錄質(zhì)量檢驗(yàn)的數(shù)據(jù)等。容易造成生產(chǎn)數(shù)據(jù)的遺失而無(wú)法在出現(xiàn)質(zhì)量問(wèn)題時(shí)得到很好的追溯。該系統(tǒng)主要包括計(jì)劃調(diào)度、派工管理、質(zhì)量管理、監(jiān)控管理、用戶權(quán)限管理和資源管理模塊。
圖2 MES系統(tǒng)功能樹(shù)
(1)用戶權(quán)限管理。按照用戶、角色、權(quán)限的層次關(guān)系構(gòu)造本系統(tǒng)的權(quán)限管理。系統(tǒng)中定義多個(gè)不同的角色,每個(gè)角色被賦予各自的功能權(quán)限。注冊(cè)用戶被賦予一個(gè)或多個(gè)角色.建立用戶與權(quán)限的映射關(guān)系。通過(guò)在系統(tǒng)的入口處對(duì)登陸用戶的權(quán)限實(shí)施強(qiáng)行檢查。
(2)計(jì)劃調(diào)度。通過(guò)與計(jì)劃系統(tǒng)的接口獲取生產(chǎn)計(jì)劃和月考核計(jì)劃,結(jié)合車(chē)間設(shè)備的生產(chǎn)能力,對(duì)下發(fā)的生產(chǎn)計(jì)劃進(jìn)行分解,制定具有可執(zhí)行性的生產(chǎn)作業(yè)計(jì)劃。通過(guò)手工拖動(dòng)可編輯的甘特圖實(shí)現(xiàn)作業(yè)計(jì)劃的調(diào)度排序并給相應(yīng)的任務(wù)分配制造資源。
(3)質(zhì)量管理。該模塊分為質(zhì)量檢驗(yàn)和質(zhì)量問(wèn)題統(tǒng)計(jì)兩大部分。質(zhì)量檢驗(yàn)有首件三檢、工序檢驗(yàn)、總檢和軍代表檢驗(yàn);質(zhì)量問(wèn)題統(tǒng)計(jì)則是對(duì)采集到的質(zhì)量數(shù)據(jù)進(jìn)行統(tǒng)計(jì)分析并以圖表的形式展現(xiàn)給用戶,有利于管理者確定出現(xiàn)質(zhì)量問(wèn)題的生產(chǎn)環(huán)節(jié)并采取相應(yīng)的措施加以控制。
(4)派工管理。該模塊主要根據(jù)甘特圖排產(chǎn)的結(jié)果生成派工單。如果是開(kāi)始工序則打印零件周轉(zhuǎn)卡,將生產(chǎn)任務(wù)派發(fā)到人或設(shè)備進(jìn)行生產(chǎn)。
(5)監(jiān)控管理。監(jiān)控每一項(xiàng)生產(chǎn)計(jì)劃的實(shí)施進(jìn)度和每一批零件的工序進(jìn)度,同時(shí)監(jiān)控設(shè)備和人員的實(shí)時(shí)狀態(tài).為生產(chǎn)任務(wù)的派工提供依據(jù)。
(6)資源管理。包括工藝文檔的借閱管理,工裝、刀具的出入庫(kù)管理。設(shè)備基本信息的維護(hù)和設(shè)備保養(yǎng)、維修的管理15l以及人員管理,用以保證生產(chǎn)的正常進(jìn)行,提供資源使用情況的歷史記錄,確保設(shè)備能夠正確運(yùn)轉(zhuǎn),同時(shí)提供資源的實(shí)時(shí)狀態(tài)信息。
1.3 數(shù)據(jù)庫(kù)設(shè)計(jì)
使用Embarcadero公司的CASE工具產(chǎn)品ER—Studio建立數(shù)據(jù)庫(kù)邏輯模型和物理模型,在轉(zhuǎn)換為平臺(tái)相關(guān)的物理模型之前將邏輯模型進(jìn)行了嚴(yán)格的規(guī)范化,使數(shù)據(jù)庫(kù)的設(shè)計(jì)完全符合第三范式的要求,消除數(shù)據(jù)冗余,消除部分依賴和傳遞依賴。
整個(gè)數(shù)據(jù)庫(kù)的結(jié)構(gòu)在邏輯上分為3部分:第1部分是支持用戶權(quán)限管理模塊的系統(tǒng)用戶表、角色表、權(quán)限表和維護(hù)它們之間對(duì)應(yīng)關(guān)系的分解表;第2部分為支持工作流引擎運(yùn)行所必需的系統(tǒng)表.考慮到該工作流系統(tǒng)只是在車(chē)間內(nèi)部運(yùn)行,用戶權(quán)限管理模塊定義的表已能夠很好地滿足要求。因此沒(méi)有定義額外的與工作流相關(guān)的組織機(jī)構(gòu)管理表;第3部分也是最重要的部分,是支持企業(yè)商業(yè)規(guī)則的一系列的表?紤]到企業(yè)的生產(chǎn)性質(zhì),通過(guò)在第3部分的每一張表里添加一個(gè)標(biāo)識(shí)位以達(dá)到數(shù)據(jù)假刪除的目的,雖然在表現(xiàn)形式上數(shù)據(jù)已被刪除,但用戶的刪除操作只是改變數(shù)據(jù)的標(biāo)識(shí)位而該記錄仍然存在于數(shù)據(jù)庫(kù)相關(guān)表中。這種做法的缺點(diǎn)是隨著數(shù)據(jù)的日積月累,數(shù)據(jù)量的不斷增大而導(dǎo)致系統(tǒng)性能的降低,考慮到企業(yè)在數(shù)據(jù)維護(hù)方面的技術(shù)能力比較強(qiáng),可以通過(guò)人為的定期備份或刪除一定的數(shù)據(jù)來(lái)達(dá)到瘦身的目的。數(shù)據(jù)庫(kù)物理模型主要部分如圖3所示。
圖3 數(shù)據(jù)庫(kù)物理模型
2 關(guān)鍵技術(shù)
2.1 工作流模型驅(qū)動(dòng)
OSWorkflow是Opensymphony組織開(kāi)發(fā)的一個(gè)基于JAVA的開(kāi)源工作流引擎,它的最大特點(diǎn)就是極高的靈活性,更重要的是它可以很容易地同MES系統(tǒng)使用的輕量級(jí)J2EE框架Spring整合到一起并很容易地得到依賴解析、組件裝配和生命周期管理的支持。
OSWorkflow的核心是XML格式的工作流描述文件。一個(gè)工作流描述文件描述了針對(duì)特定流程所有的步驟(Steps)、狀態(tài)(States)、路徑(Transitions)和方法(Functions)。在MES系統(tǒng)中,從CAPP系統(tǒng)獲得的零件生產(chǎn)工藝規(guī)程就是工作流描述文件自動(dòng)生成的依據(jù)。每一道工序?qū)?yīng)工作流的一個(gè)步驟,每一個(gè)步驟有一個(gè)或多個(gè)動(dòng)作,動(dòng)作可以被設(shè)置為是否自動(dòng)執(zhí)行.或者通過(guò)與用戶的交互來(lái)由程序選擇執(zhí)行,因此零件生產(chǎn)過(guò)程中的首件檢驗(yàn)、工序檢驗(yàn)就是流程中步驟的動(dòng)作,在步驟的動(dòng)作里完成零件生產(chǎn)執(zhí)行數(shù)據(jù)的持久化和跳轉(zhuǎn)到下一個(gè)步驟。由于零件的生產(chǎn)過(guò)程必須嚴(yán)格按照工藝規(guī)程定義的工序步驟順序進(jìn)行,完成了上一道工序的加工才能進(jìn)入到下一道工序的加工,因此每一個(gè)流程都只有一條路徑。描述文件生成后立即被加載到工作流引擎解釋執(zhí)行,調(diào)度員可以根據(jù)實(shí)際情況選擇掛起或終止某一個(gè)流程。
2.2 數(shù)據(jù)對(duì)象的持久化
傳統(tǒng)的JDBC連接方式存在的問(wèn)題是,每一次數(shù)據(jù)訪問(wèn)必須經(jīng)過(guò)建立數(shù)據(jù)庫(kù)連接、打開(kāi)數(shù)據(jù)庫(kù)、存取數(shù)據(jù)、關(guān)閉數(shù)據(jù)庫(kù)這一系列步驟,這樣既消耗資源又費(fèi)時(shí).頻繁發(fā)生會(huì)導(dǎo)致系統(tǒng)性能急劇下降,甚至崩潰,如果在程序段中沒(méi)有正確關(guān)閉ResuhSet、Statement、Connection資源,執(zhí)行該段程序時(shí)留下沒(méi)有關(guān)閉的連接,還會(huì)造成數(shù)據(jù)庫(kù)連接泄露。MES系統(tǒng)采用對(duì)象關(guān)系映射(Object—Relation Mapping,ORM)工具Hibernate完成對(duì)數(shù)據(jù)的持久化操作。Hibernate內(nèi)建的連接池提供和控制開(kāi)放的數(shù)據(jù)庫(kù)連接,因此可以重用已經(jīng)存在的數(shù)據(jù)庫(kù)連接,避免打開(kāi)和關(guān)閉數(shù)據(jù)庫(kù)帶來(lái)的延遲:二級(jí)的數(shù)據(jù)緩存機(jī)制顯著地降低了數(shù)據(jù)庫(kù)的操作頻率:數(shù)據(jù)庫(kù)中的關(guān)系數(shù)據(jù)被映射成為操作方便的普通JAVA對(duì)象,提高了開(kāi)發(fā)效率。
2.3 基于模版的表現(xiàn)層技術(shù)
Freemarker是基于JAVA實(shí)現(xiàn)的模版引擎技術(shù)。模版+數(shù)據(jù)模型=輸出,通過(guò)改變數(shù)據(jù)模型的內(nèi)容實(shí)現(xiàn)數(shù)據(jù)的動(dòng)態(tài)輸出。與傳統(tǒng)的HTML頁(yè)面不同的是,用Freemarker標(biāo)記替換需要?jiǎng)討B(tài)輸出的部分,形成模版文件,服務(wù)器端根據(jù)客戶端請(qǐng)求返回?cái)?shù)據(jù)內(nèi)容,將對(duì)應(yīng)的模版文件加載到模版引擎中,在引擎中完成模版與數(shù)據(jù)模型的綁定,并用數(shù)據(jù)模型中的內(nèi)容替換模版中的相應(yīng)標(biāo)記,最后把最終結(jié)果返回到客戶端。通過(guò)使用Freemarker模版技術(shù),能夠很好地將表現(xiàn)層和邏輯層分離開(kāi)來(lái)。
3 系統(tǒng)實(shí)現(xiàn)及特點(diǎn)
3.1 生產(chǎn)進(jìn)度實(shí)時(shí)監(jiān)控
在MESA定義的MES系統(tǒng)功能模型中,非常重要的一個(gè)功能點(diǎn)就是生產(chǎn)過(guò)程的實(shí)時(shí)監(jiān)控。當(dāng)生產(chǎn)任務(wù)開(kāi)始執(zhí)行后。工作流引擎解釋過(guò)程模型文件,根據(jù)過(guò)程模型和工作流相關(guān)數(shù)據(jù)為批次作業(yè)的生產(chǎn)過(guò)程進(jìn)行導(dǎo)航,提供便捷的現(xiàn)場(chǎng)信息采集與執(zhí)行反饋的實(shí)現(xiàn)手段,利用客戶端采集的任務(wù)狀態(tài)數(shù)據(jù)驅(qū)動(dòng)過(guò)程執(zhí)行,并實(shí)時(shí)通知工人更新任務(wù)監(jiān)視界面,保證正確的工人在正確的時(shí)候得到正確的信息,實(shí)現(xiàn)在制品加工過(guò)程的自動(dòng)流轉(zhuǎn)。同時(shí)工作流引擎根據(jù)客戶端采集的工序加工的進(jìn)度和質(zhì)量信息,匯總后為管理員提供圖形化的實(shí)時(shí)生產(chǎn)進(jìn)度信息,如圖4所示。
圖4 生產(chǎn)進(jìn)度監(jiān)控
3.2 強(qiáng)大的統(tǒng)計(jì)分析能力
(1)工作流引擎在驅(qū)動(dòng)生產(chǎn)過(guò)程自動(dòng)運(yùn)行的同時(shí),在每一個(gè)活動(dòng)都會(huì)把重要的生產(chǎn)信息通過(guò)Hibernate提供的接口存入到數(shù)據(jù)庫(kù)中,為后續(xù)的統(tǒng)計(jì)分析提供信息的來(lái)源。
(2)質(zhì)量信息統(tǒng)計(jì)與分析:分類(lèi)查看不同時(shí)間段內(nèi)生產(chǎn)過(guò)程中發(fā)生質(zhì)量問(wèn)題的次數(shù)以及相應(yīng)的處理情況,并以圖形化方式匯總展現(xiàn)質(zhì)量問(wèn)題產(chǎn)生的原因。
(3)工時(shí)信息的統(tǒng)計(jì):多層次統(tǒng)計(jì)零件生產(chǎn)工時(shí)信息,包括工人工時(shí)、班組工時(shí)、產(chǎn)品工時(shí)、車(chē)間月工時(shí)統(tǒng)計(jì),一方面為工人報(bào)酬計(jì)算提供可靠的數(shù)據(jù),另一方面為零件工藝規(guī)程的改進(jìn)提供參考。
3.3 可配置與可重用
(1)可配置主要體現(xiàn)在系統(tǒng)功能上。系統(tǒng)管理員根據(jù)人員的變動(dòng)和角色的轉(zhuǎn)換,為用戶靈活分配系統(tǒng)操作權(quán)限,在避免越權(quán)行使職能的同時(shí)也解決了重要系統(tǒng)用戶無(wú)法完成本職工作而導(dǎo)致業(yè)務(wù)邏輯無(wú)法順利執(zhí)行的問(wèn)題。
(2)可重用主要體現(xiàn)在功能模塊上。得益于系統(tǒng)架構(gòu)的靈活性,MES系統(tǒng)各功能模塊是相互獨(dú)立、完備的功能模型,通過(guò)不同的組合適應(yīng)企業(yè)發(fā)展過(guò)程中需求的變更,具備良好的可重用性和可擴(kuò)展性。
3.4 甘特圖排產(chǎn)
車(chē)間詳細(xì)作業(yè)計(jì)劃的制定和排產(chǎn)是MES的核心功能之一,是提高車(chē)間生產(chǎn)效益的基礎(chǔ)和關(guān)鍵。系統(tǒng)通過(guò)采用富客戶端技術(shù)。實(shí)現(xiàn)了對(duì)作業(yè)計(jì)劃進(jìn)行基于甘特圖的可視化的拖動(dòng)編輯。為車(chē)間制定計(jì)劃時(shí)提供每一臺(tái)設(shè)備完整的任務(wù)信息。減少了計(jì)調(diào)員的工作量。極大地提高了系統(tǒng)的易操作性,如圖5所示。
圖5 甘特圖排產(chǎn)
4 結(jié)束語(yǔ)
本課題最終實(shí)現(xiàn)了面向航天離散制造企業(yè)的MES系統(tǒng),目前已在該企業(yè)得到全面的應(yīng)用,在很大程度上改善了車(chē)間的生產(chǎn)管理,在提高車(chē)間執(zhí)行能力和應(yīng)變能力的同時(shí)為企業(yè)領(lǐng)導(dǎo)層決策提供準(zhǔn)確的信息。促進(jìn)了企業(yè)信息化的發(fā)展進(jìn)程。下一步工作將是根據(jù)用戶的需求對(duì)功能進(jìn)行完善和擴(kuò)展。
轉(zhuǎn)載請(qǐng)注明出處:拓步ERP資訊網(wǎng)http://www.oesoe.com/
本文標(biāo)題:面向航天制造企業(yè)的制造執(zhí)行系統(tǒng)研究與應(yīng)用
本文網(wǎng)址:http://www.oesoe.com/html/solutions/1401936311.html