在CIMS體系的三層結構中,MES系統(tǒng)軟件作為聯(lián)系制造行業(yè)管理層與過程控制層之間的紐帶,在提高企業(yè)生產效率和管理水平、改善產品質量、降低生產損耗和節(jié)能減排等方面起著至關重要的作用。在近十幾年,MES系統(tǒng)軟件在國外的大中小企業(yè)中得到了很快的推廣和應用,特別是一些大型的跨國企業(yè),已經有了非常成熟的產品和應用經驗。國內在MES系統(tǒng)軟件的研究與應用方面起步較晚,但受到ERP等思想廣泛推廣的影響,很多企業(yè)已經注意到了它對生產的重大影響力,所以目前在國內發(fā)展迅速,特別在流程等行業(yè)已經有了突破性的發(fā)展。
MES系統(tǒng)軟件平臺是以裝配生產線為背景而開發(fā)的MES系統(tǒng)軟件通用軟件,以現(xiàn)有的MES系統(tǒng)軟件平臺的經驗及我們在裝配制造系統(tǒng)開發(fā)方面的經驗,實現(xiàn)裝配車間的數(shù)字化管理。平臺的核心是基于事件的處理機制,所有的生產過程、生產環(huán)節(jié)、操作都被描述成事件,通過對事件的處理來實現(xiàn)車間生產過程的管理。目前平臺已經基本開發(fā)完成,但是性能尚不能滿足企業(yè)的實際需要,需要對平臺優(yōu)化,達到進行實際應用的目的。因此,本文針對MES系統(tǒng)軟件平臺性能問題,引入并發(fā)處理機制對平臺的核心功能進行優(yōu)化,為MES系統(tǒng)軟件的實際應用打下基礎。
平臺架構以及關鍵服務
MES系統(tǒng)軟件平臺由基礎服務、模型創(chuàng)建、生產管理套件、質量分析套件、效率分析套件、報表統(tǒng)計套件等模塊構成。MES系統(tǒng)軟件體系結構中所有的功能都是以平臺服務為基礎運行的,實現(xiàn)生產事件到客戶端的發(fā)布。平臺服務是整個平臺的核心,是平臺設計與開發(fā)的重點。車間生產過程中的事件按照類型被分成四大類:計劃類、生產類、報警類、廢品類,具體包括上線事件、下線事件、缺料事件、廢料事件、廢品事件、異常事件。
信息網關服務(Gate Way)、服務事件監(jiān)控服務(Event Man.ager)、數(shù)據(jù)采集服務(Data Reader)為平臺的關鍵服務,其它服務都是構建在這三個服務之上進行擴展后得到的,這三個關鍵服務間的通信均采用消息總線進行信息交換。整個服務的運行機制是以事件觸發(fā)機制為基礎的,并通過實時監(jiān)測特定數(shù)據(jù)源的標簽值的變化來感知事件的發(fā)生,并利用信息網關服務將事件發(fā)布到事件的訂閱方。其中服務事件監(jiān)控服務為事件處理的關鍵服務。事件管理服務通過事件模型的配置信息,獲得相關的事件觸發(fā)條件及事件發(fā)生時調用的業(yè)務處理過程,并通過數(shù)據(jù)讀取服務采用多線程技術動態(tài)監(jiān)測相關標簽的變化,當滿足事件觸發(fā)條件后,觸發(fā)相應的業(yè)務處理過程。業(yè)務處理過程根據(jù)生產的狀態(tài)及業(yè)務規(guī)則進行業(yè)務處理,同時為了通知MES系統(tǒng)軟件的客戶端,將信息發(fā)布到消息隊列中,然后等待其它處理過程。
平臺優(yōu)化的實現(xiàn)
目前MES系統(tǒng)軟件平臺的處理機制在MES系統(tǒng)軟件平臺的關鍵服務中,事件的處理機制為順序處理,所有事件排隊,遵循FIFO原則。在平臺建立企業(yè)的產品模型、工廠模型及生產事件模型后,進行生產計劃接收、生產指令下達,這個過程的完成觸發(fā)了相應的生產事件,接下來就由服務事件監(jiān)控服務進行處理。如果一個生產事件被觸發(fā),服務事件監(jiān)控服務將會通過數(shù)據(jù)采集服務獲得這一事件。經過判斷,如果滿足某些事件觸發(fā)條件,則進入事件處理流程。
在事件處理流程中,事件相關數(shù)據(jù)首先將進入一個列表中,和其它事件一起按順序被取出,事件的排列順序完全遵守平臺的配置順序。在接下來的處理過程中,這些事件被逐一取出,按照不同的事件類型分類,進行不同的處理,而所有的處理過程全部由主線程來完成,處理完成后,平臺繼續(xù)監(jiān)測生產事件的發(fā)生,重復整個處理過程。因為只有一個線程在處理數(shù)據(jù),所以數(shù)據(jù)等待的時間很長,這就是影響平臺性能的主要問題。如果引入多線程并發(fā)處理機制,一定能夠大幅度提高平臺性能。
性能優(yōu)化方案
并發(fā)的概念很早就已經出現(xiàn)(尤其是多任務操作系統(tǒng)的出現(xiàn)),并發(fā)在提高系統(tǒng)資源的有效利用率和改進軟件的性能方面具有較大的優(yōu)勢。相對于順序結構,并發(fā)結構可以同時進行多項工作,加快處理速度,在更短的時間內或在相同的時間內解決更多的問題。而且并發(fā)結構節(jié)省投入,可以以較低的投入完成順序計算的任務。在某些情況下,也只有采用并發(fā)結構才能達到目標要求。但是并發(fā)結構的執(zhí)行必須要考慮同步、沖突等問題,因此,如何實現(xiàn)進程間相互作用控制,例如對共享資源存取的同步控制及通訊控制便成為一個關鍵問題。
目前并發(fā)處理系統(tǒng)的構架主要采用基于線程的并發(fā)控制技術,其中包括同步多線程技術和異步多線程技術。基于同步多線程的并發(fā)結構主要有主/從(Boss/WoOer)、對等(Peer)和流水線(Pipene)三種。多線程也帶來了線程同步、上下文切換等開銷,基于事件的并發(fā)控制,即異步多線程技術,可以省去這些開銷,它利用操作的異步執(zhí)行來提高系統(tǒng)并發(fā)性。然而,大多數(shù)操作系統(tǒng)都沒有很好的異步L/0支持,而且異步操作會使得程序難于編寫和維護。
對于MES系統(tǒng)軟件平臺的事件處理,因為處理時采用相同的方法,所以比較適合采用對等結構的并發(fā)處理方法,同時根據(jù)平臺的實際處理情況加入一定的規(guī)則。例如,對現(xiàn)在的平臺可以根據(jù)事件的類型分別建立對應的線程:計劃事件、生產事件、廢品事件、報警事件。各類事件可以定義優(yōu)先級來避免沖突,如報警事件應該先處理,所以定義為高優(yōu)先級,生產事件數(shù)量大,可以定義為一般優(yōu)先級,等等。在生產的過程中也有一些生產規(guī)則需要遵守,例如,車間實際生產時,首先要建立生產計劃,然后才能進行生產操作。所以,首先出發(fā)的應該是計劃事件,計劃事件進程應該擁有高的優(yōu)先級。在生產過程中,出現(xiàn)廢品和報警事件時需要及時處理,降低對生產的影響。所以,廢品和報警事件的線程優(yōu)先級要高于生產事件的線程。
優(yōu)化方案應用
根據(jù)以上制訂的優(yōu)化策略,將原來平臺的事件處理主線程分為幾個線程,分別處理不同工位產生的事件。事件隸屬的工位可以在事件初始化時獲得。實際上相當于首先獲取工位數(shù),以結構為驅動,中心詞的作用不太明顯。然后進行分組。有需要處理的數(shù)據(jù)時,根據(jù)產生數(shù)據(jù)的工位確定調用哪一個線程進行處理。同時建立一個線程池,保證只有一個線程讀寫數(shù)據(jù)庫核心數(shù)據(jù),防止產生沖突和錯誤。在平臺優(yōu)化的過程中,只有事件處理的部分進行了修改,保證了平臺其他部分的穩(wěn)定性,在系統(tǒng)調試的過程中減少了很大的工作量,也防止出現(xiàn)修改錯誤,提高了工作效率。
盡管采用線程池并增加線程的個數(shù)可以提高系統(tǒng)的性能。但是線程的數(shù)量并不是說越多越好,因為如果線程數(shù)量過多,會造成CPU不停地中斷,反而影響速度。已有研究給出了并發(fā)用戶數(shù)為N時,線程池性能達到大值時的線程數(shù)n滿足下列公式:
其中,設定每一個用戶具有同等的概率去發(fā)送同樣多的請求數(shù),C1為創(chuàng)建一個線程的開銷,C:為單個線程的管理開銷。考慮到一個線程能夠使用的虛擬內存空間以及線程占用的??臻g大小和其他資源,很多時候是不會使線程數(shù)達到線程數(shù)n,而且系統(tǒng)支持的線程數(shù)是有限的。
通過上面的公式,考慮到平臺性能測試的數(shù)據(jù),以及實施的環(huán)境,得出線程數(shù)不需要超過10個。因為平臺首先要保證運行穩(wěn)定,性能只要能夠達到用戶實際生產要求就可以,所以選擇線程數(shù)為5。這時平臺的性能既有很大的提高,同時也能穩(wěn)定運行。
平臺應用
MES系統(tǒng)軟件平臺是以裝配生產線為背景而開發(fā)的MES系統(tǒng)軟件通用軟件,按照裝配線的生產節(jié)拍為3分鐘,150個工位,每個工位同時產生lO個生產事件計算,優(yōu)化前平臺勉強能夠滿足企業(yè)的生產需要,但是在實際的生產中,這樣的性能是無法滿足企業(yè)要求的?,F(xiàn)在將事件處理機制改為多線程并發(fā)處理機制后,性能有了明顯提高。在相同的測試環(huán)境下,平臺的響應時間有了明顯的縮短,能夠達到實際生產的需要。
效率解決方案覆蓋了全面的企業(yè)生產、管理與決策信息,涵蓋內容豐富,其中生產制造執(zhí)行系統(tǒng)(E-MES),倉庫管理系統(tǒng)(E-WMS),SMT防錯料系統(tǒng)與SMT智能首件檢測儀是信息核心軟硬件產品。除此之外,還為客戶提供電子工票管理系統(tǒng)、電子標簽揀貨系統(tǒng)等各項服務。公司以中小型制造企業(yè)作為主要服務對象,業(yè)務涉及汽車整車行業(yè),汽車零配件行業(yè)、IT產品、家電裝配、電子產品、裝備制造等眾多行業(yè)。