王德權(quán),黃成海
(大連工業(yè)大學機械工程與自動化學院,遼寧大連 116034)
汽車發(fā)動機裝配線MES中的訂單管理系統(tǒng)
王德權(quán),黃成海
(大連工業(yè)大學機械工程與自動化學院,遼寧大連 116034)
通過對某汽車發(fā)動機制造企業(yè)的生產(chǎn)訂單管理制度和業(yè)務(wù)流程的分析和研究,開發(fā)了一套生產(chǎn)訂單管理軟件。在基于ERP/MES/PCS三層體系結(jié)構(gòu)的制造企業(yè)信息系統(tǒng)中,位于制造執(zhí)行系統(tǒng)內(nèi)部頂層的生產(chǎn)訂單管理系統(tǒng)負責ERP和MES之間的信息交互,在ERP和MES中起著信息橋梁的關(guān)鍵作用。采用Oracle透明網(wǎng)關(guān)技術(shù),使Oracle數(shù)據(jù)庫訪問SQL Server2008數(shù)據(jù)庫,基于SQL Server 2008中的CLR集成技術(shù)、UDP協(xié)議的網(wǎng)絡(luò)通信等關(guān)鍵技術(shù)實現(xiàn)了SQL Server 2008數(shù)據(jù)庫主動與訂單管理系統(tǒng)通訊。運行結(jié)果表明該系統(tǒng)性能穩(wěn)定,滿足生產(chǎn)需要。
生產(chǎn)訂單管理系統(tǒng);MES;汽車發(fā)動機裝配線
20世紀90年代初,工業(yè)界開始認識到需要一個可以將業(yè)務(wù)系統(tǒng)和控制系統(tǒng)集成在一起的中間層[1-3]。同時,企業(yè)信息化建設(shè)的過程又是變革管理思想、改進管理模式、優(yōu)化管理流程、提高員工素質(zhì)的過程,是提升企業(yè)經(jīng)營管理水平、縮小企業(yè)目標與資源能力之間缺口的有力手段。在基于ERP/MES/PCS的三層體系結(jié)構(gòu)中,ERP完成從銷售訂單到生產(chǎn)訂單的轉(zhuǎn)化,而從生產(chǎn)訂單投入到產(chǎn)品完成的整個生產(chǎn)過程中生產(chǎn)訂單信息在各級系統(tǒng)中流動,經(jīng)各級系統(tǒng)的不同處理,直到產(chǎn)品完成的整個訂單在制造執(zhí)行階段的管理任務(wù)由MES實現(xiàn)[4]。MES介于ERP與底層控制和自動化系統(tǒng)之間,起著承上啟下的作用,是ERP系統(tǒng)數(shù)據(jù)基礎(chǔ)和保證[5-6]。本文介紹的生產(chǎn)訂單管理系統(tǒng)是汽車發(fā)動機生產(chǎn)線制造執(zhí)行系統(tǒng)(MES)的一個子系統(tǒng)。該系統(tǒng)承擔MES所賦予的生產(chǎn)訂單管理業(yè)務(wù),同時MES實現(xiàn)與ERP系統(tǒng)集成的關(guān)鍵,是MES正常運行的前提和基礎(chǔ)。
本系統(tǒng)運用Visual C#編程語言編寫,采用SQL Server 2008作為后臺數(shù)據(jù)庫。目前,本系統(tǒng)正在某汽車發(fā)動機生產(chǎn)線投入使用,運行穩(wěn)定。
本系統(tǒng)主要由訂單信息導(dǎo)入,訂單信息下達,計劃調(diào)度,查看訂單狀態(tài)等部分組成。
訂單信息導(dǎo)入模塊是負責把SAP生成的生產(chǎn)訂單信息(包括發(fā)動機訂單計劃、發(fā)動機裝配指南、操作指導(dǎo)等信息)自動導(dǎo)入到SQL Server 2008數(shù)據(jù)庫。通過訂單信息下達模塊把生產(chǎn)訂單信息自動下達到各個工控機的MES中。查看訂單信息模塊可以查詢和維護訂單信息并且可以查詢歷史訂單的執(zhí)行狀況,如果發(fā)現(xiàn)訂單執(zhí)行出現(xiàn)異常可以手動管理這些訂單信息。通過計劃調(diào)度調(diào)模塊調(diào)整生產(chǎn)訂單的執(zhí)行順序。
根據(jù)現(xiàn)場的設(shè)備情況和要求,網(wǎng)絡(luò)結(jié)構(gòu)采用圖1所示的結(jié)構(gòu)。本信息系統(tǒng)服務(wù)器和SAP服務(wù)器放置在不同的地理位置,通過光纖進行連接。所有裝配線上的工控機通過100M以太網(wǎng)卡與交換機連接,與本信息系統(tǒng)服務(wù)器實時通訊。
圖1 系統(tǒng)結(jié)構(gòu)
該企業(yè)信息系統(tǒng)中存在著異構(gòu)數(shù)據(jù)庫。異構(gòu)數(shù)據(jù)庫系統(tǒng)是指異構(gòu)的多數(shù)據(jù)庫系統(tǒng),即組成它的成員數(shù)據(jù)庫的硬件、系統(tǒng)軟件(如操作系統(tǒng))不同,或成員數(shù)據(jù)庫具有不同數(shù)據(jù)庫管理系統(tǒng)(DBMS)[7]。例如該企業(yè)SAP系統(tǒng)的后臺Oracle數(shù)據(jù)庫與MES系統(tǒng)的后臺SQL Server2008數(shù)據(jù)庫。那么在進行系統(tǒng)之間的數(shù)據(jù)整合過程中,將不可避免的涉及到異構(gòu)數(shù)據(jù)庫之間的無逢的數(shù)據(jù)訪問。因此在導(dǎo)入訂單信息之前先解決不同數(shù)據(jù)庫之間數(shù)據(jù)交互問題是實現(xiàn)整個系統(tǒng)的第一步。
在Oracle數(shù)據(jù)庫訪問SQL Server2008數(shù)據(jù)庫中需要利用Oracle中提供的透明網(wǎng)關(guān)技術(shù)。針對Oracle與其他異構(gòu)平臺之間的數(shù)據(jù)訪問,Oracle通過異構(gòu)服務(wù)實現(xiàn)對異種數(shù)據(jù)源的連接,根據(jù)代理程序的不同,分為透明網(wǎng)關(guān)和普通連接2種技術(shù)。普通連接是一種使用ODBC或者OLEDB驅(qū)動程序訪問任何ODBC或OLEDB兼容的非Oracle系統(tǒng)的通用解決方案。透明網(wǎng)關(guān)是一種為非Oracle系統(tǒng)特別編碼、量身定制的解決方案,它提供一種比普通連接擁有更多功能和更好性能的優(yōu)化解決方案。普通連接依賴于業(yè)界標準,而透明網(wǎng)關(guān)使用它的本地接口訪問非Oracle系統(tǒng)[8]。其關(guān)鍵配置如下:
(1)安裝Oracle中提供的透明網(wǎng)關(guān)組件。
(2)配置網(wǎng)關(guān)初始參數(shù)文件。
(3)為透明網(wǎng)關(guān)配置網(wǎng)絡(luò)監(jiān)聽器。
(4)配置tnsname.ora配置文件。
SQL Server2008引入了MicrosoftWindows的.NET Framework的公共語言運行庫 (CLR)Common LanguageRuntime 組件的集成[9]。CLR 是 Microsoft.NET Framework的核心,為所有.NET Framework代碼提供執(zhí)行環(huán)境。這意味著可以使用任意.NET Framework語言編寫存儲過程、觸發(fā)器、用戶定義類型、用戶定義函數(shù)、用戶定義聚合函數(shù)以及流處理表值函數(shù)。
用戶數(shù)據(jù)報協(xié)議(UDP)是ISO參考模型中一種無連接的傳輸層協(xié)議,提供面向操作的簡單非可靠信息傳送服務(wù)[10]。UDP協(xié)議在數(shù)據(jù)傳輸之前,通信雙方不需要建立連接,因此不需要維護連接狀態(tài),UDP信息包的標題很短,只有8個字節(jié),相對于TCP的建立連接并20個字節(jié)信息包的額外開銷很小,因此本系統(tǒng)采用UDP協(xié)議來實現(xiàn)通訊。c#中UDP的編程有兩種方式:直接使用Socket類和使用UDP類。UDPClient類對基礎(chǔ)的Socket進行了封裝、發(fā)送和接受數(shù)據(jù)時不必考慮底層套接字收發(fā)時必須處理的一些細節(jié)問題,開發(fā)簡單、效率較高。因此本系統(tǒng)利用.NET中的UDPClient類對UDP協(xié)議進行編程,實現(xiàn)網(wǎng)絡(luò)通訊。
建立SQL Server2008數(shù)據(jù)庫與Oracle數(shù)據(jù)庫之間的連接后,本系統(tǒng)會監(jiān)測到Oracle數(shù)據(jù)庫中的新生成的訂單信息并把訂單信息自動導(dǎo)入到本系統(tǒng)的后臺SQL Server2008數(shù)據(jù)庫中,訂單信息導(dǎo)入到本系統(tǒng)的SQL Server2008數(shù)據(jù)庫時,需要檢測該訂單在本系統(tǒng)數(shù)據(jù)庫中的合法性(包括訂單計劃是否已經(jīng)存在,發(fā)動機號是否存在,工位號是否存在,裝配指南的訂單號是否有重號,發(fā)動機類型是否正確等),因此并沒有實際導(dǎo)入到實際表中,而存儲在數(shù)據(jù)庫所在的計算機內(nèi)存中的臨時表里,此過程由數(shù)據(jù)庫來負責檢測。如果檢測成功數(shù)據(jù)庫把訂單信息導(dǎo)入到實際表中,同時把訂單導(dǎo)入成功結(jié)果反饋給Oracle數(shù)據(jù)庫。如果檢測失敗則把導(dǎo)入失敗信息反饋給Oracle數(shù)據(jù)庫以便于SAP計劃員根據(jù)此信息維護訂單信息。如圖2所示。
圖2 生產(chǎn)訂單流程圖
為了實現(xiàn)自動化,SQL Server2008數(shù)據(jù)庫成功導(dǎo)入訂單信息后,需要主動通知生產(chǎn)訂單管理系統(tǒng)。此功能通過SQL Server 2008中的CLR集成技術(shù)和基于UDP協(xié)議的網(wǎng)絡(luò)通信技術(shù)來實現(xiàn)的。主要步驟如下。
(1)編寫客戶端UDPclient通訊類并生成一個動態(tài)鏈接庫。主要代碼如下:
(2)把通訊類生成為動態(tài)鏈接庫后,需要在SQL Server2008數(shù)據(jù)庫上注冊程序集。
(3)在數(shù)據(jù)庫SQL Server2008中建立自定義函數(shù)準備調(diào)用程序集。代碼如下:
(4)在數(shù)據(jù)庫SQL Server2008中定義觸發(fā)器來自動調(diào)用已經(jīng)寫好的自定義函數(shù),把通訊信號發(fā)送給訂單管理系統(tǒng)。
訂單管理系統(tǒng)接收到SQL Server2008數(shù)據(jù)庫的導(dǎo)入成功信號后,自動把生產(chǎn)訂單信息通過UDP通信協(xié)議下達到各個工控機的MES中。各個工位的工控機接收訂單信息后,把收到信息結(jié)果寫入到數(shù)據(jù)庫中,以便管理員查出訂單下達的執(zhí)行情況。
系統(tǒng)在自動導(dǎo)入并下達訂單時,不可避免出現(xiàn)異常,導(dǎo)致自動訂單導(dǎo)入失敗、訂單下達失敗,因此需要管理員查詢訂單的執(zhí)行狀態(tài),并手動管理訂單信息。
管理員可以查詢歷史生產(chǎn)訂單導(dǎo)入狀態(tài),訂單導(dǎo)入狀態(tài)分別為導(dǎo)入成功,導(dǎo)入失敗,可以導(dǎo)入。
導(dǎo)入成功:訂單信息成功導(dǎo)入到本系統(tǒng)的SQL Server2008數(shù)據(jù)庫。
導(dǎo)入失敗:訂單信息沒有成功導(dǎo)入到本系統(tǒng)得SQL Server2008數(shù)據(jù)庫。
可以導(dǎo)入:SAP系統(tǒng)根據(jù)本系統(tǒng)反饋的導(dǎo)入失敗信息,修改相應(yīng)的錯誤信息后把導(dǎo)入狀態(tài)從導(dǎo)入失敗改成可以導(dǎo)入,本系統(tǒng)管理員根據(jù)此狀態(tài)手動導(dǎo)入。
單擊界面上的SAP導(dǎo)入按鈕把SAP中的訂單信息顯示在界面上。管理員查看訂單狀態(tài),如果其中訂單狀態(tài)為【可以導(dǎo)入】,就說明此訂單可以從SAP系統(tǒng)的Oracle數(shù)據(jù)庫手動導(dǎo)入到本系統(tǒng)的后臺SQL Server2008數(shù)據(jù)庫中。
管理員根據(jù)訂單號查詢各個工位的訂單下達情況,該界面可以查詢哪個工位下達成功,哪個工位下達失敗。如果有下達失敗的工位,選擇要下達的訂單信息和工位號后單擊下達按鈕,把訂單信息重新下達到各個工控機中。下達過程中界面上實時顯示訂單下達狀態(tài)信息。訂單下達界面如圖3所示。
圖3 訂單下達界面
此外此模塊可以查詢和維護已經(jīng)導(dǎo)入的訂單信息,包括訂單號、發(fā)動機號、裝配指南等信息。
計劃調(diào)度模塊主要功能是通過時間和訂單下達狀態(tài)進行篩選訂單,選定訂單后調(diào)整生產(chǎn)訂單的執(zhí)行順序。訂單下達狀態(tài)分別為未下達,已下達,已完成。
未下達:表示生產(chǎn)訂單信息沒有下達到各個工控機當中。
已下達:表示生產(chǎn)訂單信息已經(jīng)下達到各個工控機當中。
已完成:表示已經(jīng)下達的訂單號正常完成生產(chǎn)。
當訂單狀態(tài)為未下達時這個訂單沒有下達到各個工控機只在本系統(tǒng)的數(shù)據(jù)庫中,因此只需調(diào)數(shù)據(jù)庫上的訂單順序即可,不需要計劃同步到各個工控機。當訂單狀態(tài)為已下達時這個訂單已經(jīng)下達到各個工控機當中,因此調(diào)整完訂單順序后必須同步到各個工控機中。計劃調(diào)度界面如圖4所示。
此外此模塊可以工位訂單管理功能,工位訂單管理是對生產(chǎn)訂單中的每臺發(fā)動機生產(chǎn)順序進行管理。
圖4 計劃調(diào)度界面
生產(chǎn)訂單管理是制造業(yè)信息化的重要組成部分,是提升制造企業(yè)生產(chǎn)管理水平和制造效率的重要途徑。訂單管理系統(tǒng)使MES系統(tǒng)與SAP系統(tǒng)進行信息交互的功能,其運行狀況直接影響到兩個信息系統(tǒng)的集成和整體運行效果。盡管本文主要以汽車發(fā)動機生產(chǎn)線為背景,但是其內(nèi)容對其他類型的制造業(yè)MES的生產(chǎn)訂單管理系統(tǒng)開發(fā)與應(yīng)用也有一定的參考和借鑒作用。
[1]湯洪博.鋼鐵企業(yè)MES中的生產(chǎn)計劃管理模式[J].控制工程,2005,12(6):577 -579,582.
[2]檀長松.硅鋼MES系統(tǒng)中的生產(chǎn)訂單管理[J].安徽冶金,2010(3):41-44.
[3]張志檁.國內(nèi)外制造執(zhí)行系統(tǒng)(MES)的應(yīng)用與發(fā)展[J].自動化博覽,2004(5):5-4.
[4]劉明周,方葉祥.CIMS下面向訂單的動態(tài)生產(chǎn)計劃解決方法[J].合肥工業(yè)大學學報(自然科學版),2004,27(4):414-417.
[5]高遠飆,劉仁金.ERP與MES集成技術(shù)及其應(yīng)用研究[J].計算機應(yīng)用與軟件,2009,26(9):69 -71,74.
[6]叢培勇,范玉青.ERP與MES集成關(guān)系研究[J].制造業(yè)自動化,2007,29(8):1 -5.
[7]馬德云,俞時權(quán),胡浩民.異構(gòu)數(shù)據(jù)庫的集成[J].計算機工程,2002,28(10):283 -284.
[8]蘇淑文,翁敬農(nóng).Oracle系統(tǒng)異構(gòu)環(huán)境下的信息集成[J].微機發(fā)展,2004,14(10):1 -3.
[9]德萊尼,著,陳寶國,譯.深入解析SQL Server 2008(第1版)[M].北京:人民郵電出版社,2009.
[10]趙飛,葉震.UDP協(xié)議與TCP協(xié)議的對比分析與可靠性改進[J].微機發(fā)展,2006,16(9):219-221.
(編輯 李秀敏)
Order Management System of Manufacturing Execution System for Automobile Engine Assembly Line
WANG De-quan ,HUANG Cheng-hai
(School of Mechanical Engineering and Automation,Dalian Polytechnic University,Dalian Liaoning 116034,China)
By analyzing and researching themanagement and business process ofmanufacturing company’s production order,developing a set of production order management software;In the information system based on SAP/MES/PCS three-level architlecture formanufacturing company.the production ordermanagement system located in the top of layer w ithin MES is responsible for providers data interfaces,and plays a role as information brige link between SAP and MES.The system using ORACLE transparent gateways technology,Make the Oracle Database access Sql Server Database,Based on the SQL Server 2008 CLR integration technology,UDP protocol network communication technology to realize Sql Server 2008 actively communicate w ith ordermnangement system.The Running result shows that the system is very stable,and can fully meet the needs of production.
production ordermanagement information system;MES;automobile engine assembly line
TH16;TG65
A
1001-2265(2013)03-0127-03
2012-08-27
王德權(quán)(1964—),男,遼寧大連人,大連工業(yè)大學機械工程與自動化學院教授,工學碩士,主要研究方向為企業(yè)信息化,(E-mail)wangdq@dlpu.edu.cn。