陳立敏,王中杰,謝璐璐
CHEN Li-min, WANG Zhong-jie, XIE Lu-lu
(同濟大學 電子與信息工程學院,上海 201804)
制造業體現了一個國家的生產力水平,是衡量一個國家整體發展狀況的重要因素。李伯虎院士指出,21世紀,制造業的發展更加依賴高新技術應用的推動[1]。制造業信息化是當前制造業發展的主要趨勢,建立一個功能完善的集成制造系統是制造業發展面臨的一個重大課題。
針對我國制造業發展現狀,科技部提出“云制造”的設想。云制造是一種利用網絡和云制造服務平臺,按用戶需求組織網上制造資源,為用戶提供各類按需制造服務的一種網絡化制造新模式[1]。云制造是在云計算提供的基礎設施即服務(IaaS)、平臺即服務(PaaS)、軟件即服務(SaaS)基礎上的延伸和發展,它豐富、拓展了云計算的資源共享內容、服務模式和技術。云制造的研究與應用將會加速推進我國制造業信息化向網絡化、智能化、服務化方向發展[2]。
排產系統一直是制造領域研究的熱點。一個性能優良的排產系統能夠極大地提高制造過程的效率,并能幫助企業制定合理的生產計劃。目前絕大多數排產系統采用的是傳統的C/S(Client/Server)結構,存在著計算機資源占用量大、維護和升級困難、可移植性差等弊端,并且是以企業自身的制造資源提供相對固定的解決方案,缺乏多樣性和合理性。云制造資源共享的服務理念為解決當前排產系統發展遇到的問題提供了新的思路和契機。本文針對排產系統目前遇到的困境以及云制造對排產的特殊需求,重點闡述了實現云排產系統需要解決的若干關鍵技術。
云排產是以先進的排產技術為基礎,借鑒云制造服務模式提出的新概念。云制造以制造服務為核心,云排產是將排產功能作為一種服務提供給各制造企業。云排產將排產功能建立在大量的分布式服務器端,而非本地的計算機系統中。企業通過Internet或其他網絡接入方式訪問云排產系統即可得到排產服務。和傳統排產功能實現方式相比,云排產節省了企業自身的計算資源并提高了執行效率。
云排產系統是建立在云排產概念上的排產系統。云排產系統集中了各制造企業的制造資源(包括軟件、硬件、人力等)并使用虛擬化技術建立一個公有制造資源池。云排產系統的目標是通過調度云端制造資源,為制造企業提供更合理和更全面的生產制造解決方案,實現制造資源的最大利用和整體均衡利用。和傳統排產系統相比,云排產系統在資源利用和制造模式上更為合理可靠。
云排產系統的結構如圖1所示,主要由四個部分組成:云排產系統客戶端、云排產系統管理平臺、云排產系統功能平臺和分布式數據庫管理平臺。

圖1 云排產系統結構圖
云排產系統的客戶端組成由PC客戶端、移動終端以及其他可通過網絡接入的終端組成。云排產系統管理平臺是針對系統中通過虛擬化技術集中的各制造企業的制造資源,以及系統的安全體系的管理。云排產系統功能平臺集中了系統面向用戶提供的排產相關服務,主要功能包括訂單導入排產、任務計劃設定、排產模型設定、工藝流程設定、生產資源設定、優化排產方案、排產結果展示、生產計劃生成以及排產模型維護等功能。分布式數據庫管理平臺負責系統數據庫系統的維護。
與常規排產系統相比,云排產系統涉及的關鍵技術主要包括工藝管理、系統安全、大數據并發處理以及優化排產四個方面,下面分別對這四項關鍵技術進行闡述。
工藝管理是云排產系統必不可少的組成部分。云排產系統需要定義良好的工藝描述方式。一種有效的方式為通過OWL(Ontology Web Language)[3]文件對工藝信息進行描述。OWL和其他數據描述方式相比不僅關注信息內容的描述,更關注信息內容之間的聯系性??梢允褂肞rotégé軟件進行OWL工藝文件的創建。下面描述一個通過Protégé軟件創建工藝文件并從服務器端解析獲取工藝的過程。
在Protégé中創建頂層本體類(Ontology Class)“工藝路線”,在“工藝路線”本體類下面創建子類,這些子類是產品的工藝路線必須組成的部分,比如“工序名”、“工序號”、“工序單位”、“工序順序號”、“工序類型”、“工期”、“能力類型”等。創建本體類及子類后,開始創建對象屬性(Object Property)。
定義對象屬性時需要聲明屬性的定義域(Domain)和值域(Range),表1所示為具體的聲明及定義信息。

表1 對象屬性詳細定義
在本體類和對象屬性均創建好之后,開始創建各本體類的實例(Individual)。一個本體類可以創建任意多個實例。在頂級本體類“工藝路線”下創建永久實例“工藝流程”,然后將產品的具體制造工藝依次創建為各本體類的實例,實例的值即是工藝的具體信息。在OWL中,實例之間的關系是通過三元組(Subject-Property-Object)進行描述。假定“工藝路線”本體類下有實例“S產品生產”,“工序內容”下有實例“S零件銑加工”,“工序類型”下有實例“銑加工”,則這幾個實例之間的關系如表2中所示。

表2 實例關系描述
在本體類、對象屬性以及實例均創建好之后,生成OWL文件,通過云排產系統工藝文件輸入接口上傳到云端制造資源池中。如果云排產系統服務器端需要使用“S部件生產”工藝,可以在系統中創建SPARQL語句,并通過Jena的API將OWL文件轉換成本體樹模型進行查詢,一個具體的流程如圖2中所示。

圖2 工藝查詢流程
查詢結束之后,“S部件生產”的詳細工藝信息記錄在ResultSet中。這種查詢方式是通過將上傳的OWL工藝文件轉換成工藝本體樹,利用Jena提供的API在本體數結構上進行查詢,其查詢效率和速度要優于直接從數據庫中讀取。
如何保證云排產系統的安全性是構建云排產系統的重要因素。云排產系統集中了企業和制造單位大量的工藝信息和制造資源信息,這些信息是大部分企業的核心機密,所以保證這些數據的安全是極為重要的。圖3所示為云排產系統的安全架構。云排產系統的安全架構主要由安全連接層、安全管理層和安全存儲層組成。
安全連接層是確保云端訪問層用戶和系統交互過程中的安全性。用戶在進入系統之前首先要進行用戶認證。用戶認證是云排產系統安全性的初級保障,云排產系統采用密碼認證技術實現對云端訪問層用戶身份的確認。由于使用明文傳輸用戶名和密碼的安全隱患較大,系統實現中我們將密碼認證技術和加密技術相結合,以實現安全的密碼認證。用戶身份確認合法后,系統開始實施權限控制。權限控制即是系統根據不同云端訪問層用戶的身份授予相應的操作權限,在設定的訪問控制策略下實現用戶授權。授權結束后,用戶和系統之間開始建立安全連接。云排產系統使用SSL安全傳輸協議建立安全交互通道。建立好安全連接后,用戶可以正常訪問系統,但每一次操作都要經過行為鑒定。行為鑒定是對用戶的操作合法性進行檢測,判定用戶的行為是否在系統授予的權限范圍內,以防止有黑客或不法牟利者侵入系統進行非法操作。系統一旦檢測到用戶有越權或非常規行為,立即記錄用戶IP、身份等信息,列入警示黑名單中,并斷開與用戶之間的網絡連接。

圖3 云排產系統安全架構圖
安全管理層是對安全連接層實現技術的管理和維護。用戶管理是對云端訪問層用戶的信息以及用戶認證方式的管理??刂撇呗怨芾硎窃O定系統的訪問控制模型,以及劃分系統用戶的權限等。行為規則管理的主要對象是用戶行為規則庫。系統通過建立用戶行為規則庫存儲每個用戶的訪問規則,以方便系統通過訪問規則檢測用戶有無非法操作。數據加密管理是針對系統數據加密協議的管理。在系統數據傳輸過程、數據庫讀寫過程中均涉及到不同的加密協議,如何有效識別并管理不同的加密協議是云排產系統功能性和安全性的重要保障。數據隔離[4]管理是保證系統不同用戶之間數據的獨立性,保證用戶數據的私密性。
安全存儲層是整個云排產系統安全體系十分重要的部分。數據存儲層直接存儲著用戶的信息和數據,以及系統的控制策略模型和用戶行為規則等和安全管理息息相關的數據。這里我們采取的策略是存儲加密和數據備份。存儲加密是指將用戶的信息和數據加密后存儲,以保護數據的隱私性。數據備份則是定期保存用戶的數據,防止因為物理故障丟失用戶數據時能及時進行數據恢復。
云排產系統的安全體系實現了從前端到后臺完整的安全保護措施,充分考慮了數據的傳輸安全、存儲安全并保障了數據的完整性和私密性,能有效地避免非法用戶進入系統并對惡意攻擊等破壞行為有很好的檢測和防護措施。
作為一個云端服務系統,必須要考慮當出現大規模用戶訪問系統時系統的數據處理能力。云排產系統的數據存儲在數據庫中,云排產系統的業務高峰也將會是數據庫服務器的業務高峰。隨著同一時間段云端訪問用戶的增加,數據庫的IO吞吐量以及創建連接、執行查詢等操作花費的時間開銷將成為整個系統數據處理的瓶頸。云排產系統采用數據緩存[5]技術來減少對數據庫的訪問。在系統的前端使用頁面緩存技術,以減少前端對數據庫的訪問。在服務器端進行數據處理時系統將一些數據庫中經常被訪問的數據建立數據緩沖池進行保存。另外,在服務器和數據庫之間建立一個連接緩沖池,每當出現數據庫連接請求時,優先從連接池中獲取空閑連接,以減少創建連接的次數。同時建立分布式數據庫系統,優化數據庫的配置屬性,提高查詢效率和多事務處理能力。圖4所示為系統的數據緩存結構圖。通過這些措施,系統的數據庫瓶頸問題能得到有效解決,數據處理能力也有了很大的提高。

圖4 系統數據緩存結構圖
云排產系統是一個多任務高并發處理平臺,通過建立數據處理服務器集群來滿足高并發多任務的大數據處理需求。這里的一個技術難點為如何建立有效的集群調度策略。云排產系統為云端所有待排產任務建立一個任務隊列,然后通過任務的級別、等待時間和重要性來計算任務的優先級,同時通過各節點數據處理服務器的CPU信息、內存信息和任務處理率來計算節點服務器的負荷率。云排產系統根據服務器的負荷率選擇合適的節點處理用戶的排產請求,節點服務器根據任務的優先級啟動線程進行排產任務處理,基本的處理流程如圖5所示。通過數據緩存技術和服務器集群技術,云排產系統有效地提升了并發大數據的處理能力。

圖5 云排產系統集群數據處理流程圖
任務排產是云排產系統提供的核心服務。和普通排產系統相比,云排產系統擁有更豐富的制造資源和先進的排產技術。在用戶出現排產結果不滿意,比如生產資源出現超負荷工作狀態,資源利用不均衡等,如何采取有效的策略使排產結果得到優化是實現云排產系統的關鍵所在。一個實現優化的參考模型如圖6所示。假定排產過程結束后,某些生產資源出現了負荷飽滿狀態,用戶可以通過從系統的排產模型庫中選擇其他的排產模型進行一次重排產,以解決超負荷問題。另一種方式為系統在云端制造資源池中為用戶尋找可替代的制造資源,生成推薦方案。用戶如果使用系統提供的推薦方案,那么系統將會向可替代制造資源所屬的用戶發出服務請求。如果請求成功,那么超負荷問題即可得到解決。如果請求失敗,系統會為用戶尋找其他可替代制造資源。通過這樣的舉措,既有效地優化了排產結果,又能使云端制造資源得到均衡利用,充分展示了云排產模式的可靠性和社會價值。

圖6 云排產系統排產優化結構圖
本文提出了四項構建云排產系統急需解決的關鍵技術,這些關鍵技術的實施和改進將能極大地提升云排產系統的功能性、可靠性。目前,課題組已經實現了基于語義的動態工藝定義和識別技術,并基于現有的各項云制造工藝流程,對常見的云制造排產服務進行了智能化建模,實現了基于多模型的分布式資源調度與排產優化服務,日后將進一步完善系統的安全體系構建,提高系統對復雜海量排產任務的大數據并發處理和分析能力,優化云排產系統的性能。隨著制造業信息化的不斷推進和云制造技術的不斷發展,云排產系統將會是排產系統未來的重大發展趨勢之一。
[1]李伯虎,張霖,王時龍,陶飛,曹軍威,姜曉丹,宋曉,柴旭東.云制造——面向服務的網絡化制造新模式[J].計算機集成制造系統, 2010,16(1):1-7.
[2]唐國純,羅自強.云制造的體系結構研究[J].制造業自動化, 2012,34(9):85-87.
[3]丁松,唐勝群,劉坤,張亮,秦學.非一致OWL本體的推理方法研究[J].計算機工程與應用,2011,47(9):21-24.
[4]張敬亮,張軍偉,張建剛,許魯.藍鯨文件系統中元數據與數據隔離技術[J].計算機工程,2010,36(2):28-30.
[5]曹麗娟,謝強,丁秋林.基于分布式數據緩存技術的Web-OLAP系統研究[J].計算機應用, 2008,28(2):515-518.