壓力變送器制造車(chē)間具有品種多、小批量生產(chǎn)等特點(diǎn)。車(chē)間排好生產(chǎn)計(jì)劃后,往往根據(jù)經(jīng)驗(yàn)制定物料需求計(jì)劃和領(lǐng)料單,這樣就可能導(dǎo)致物料不夠或浪費(fèi)。在制品跟蹤過(guò)程中,采用紙質(zhì)卡片形式,無(wú)法做到流程實(shí)時(shí)共享;插單現(xiàn)象也容易造成生產(chǎn)管理混亂等。傳統(tǒng)方法缺乏生產(chǎn)執(zhí)行數(shù)據(jù)的廣度和深度。
制造執(zhí)行系統(tǒng)(manufacturing execution system,MES)的突出特點(diǎn)是優(yōu)化生產(chǎn)過(guò)程,協(xié)調(diào)生產(chǎn)任務(wù)。將MES引入企業(yè)壓力變送器的制造車(chē)間,可實(shí)現(xiàn)制造自動(dòng)化,從而提高生產(chǎn)力和競(jìng)爭(zhēng)力。
1、壓力變送器車(chē)間工藝流程
首先進(jìn)行半杯體加工、零件清洗、玻璃燒結(jié)、球面磨削、再清洗、真空鍍膜、膜片處理、膜片張緊等,這些工序統(tǒng)稱(chēng)為電容傳感組件制作;然后對(duì)膜盒進(jìn)行焊接、在膜盒中心位置進(jìn)行灌油;最后進(jìn)行膜盒封裝,并貼上二維碼作為標(biāo)志。壓力變送器生產(chǎn)工藝流程如圖1所示。

圖1 壓力變送器生產(chǎn)工藝流程圖
電路板用于三防處理和溫度測(cè)試等。在機(jī)械構(gòu)件加工并且檢測(cè)合格前提下,進(jìn)行整機(jī)裝配。整機(jī)根據(jù)量程范圍進(jìn)行溫度補(bǔ)償、整機(jī)調(diào)試,在所有工序完成后包裝出廠。生產(chǎn)過(guò)程中,在每一道工序完成后都會(huì)進(jìn)行半成品檢驗(yàn),對(duì)不合格品進(jìn)行統(tǒng)一報(bào)廢處置。
2、MES功能模塊設(shè)計(jì)
①系統(tǒng)模塊架構(gòu)基于壓力變送器車(chē)間生產(chǎn)特點(diǎn)設(shè)計(jì)的MES主要包括基礎(chǔ)信息管理、生產(chǎn)過(guò)程管理、生產(chǎn)調(diào)度管理、查詢和報(bào)表管理、可擴(kuò)展接口等五部分。
基礎(chǔ)信息管理主要用于對(duì)登錄系統(tǒng)的用戶進(jìn)行管理、跟蹤車(chē)間設(shè)備信息、對(duì)車(chē)間內(nèi)物料移動(dòng)進(jìn)行計(jì)劃監(jiān)視、記錄每天系統(tǒng)數(shù)據(jù)更新情況等。MES架構(gòu)如圖2所示。

圖2 壓力變送器制造車(chē)間MES架構(gòu)圖
生產(chǎn)過(guò)程管理中,電容膜盒是壓力變送器重要的檢測(cè)元件,相應(yīng)關(guān)鍵工藝參數(shù)都要分步記錄在MES中。溫度補(bǔ)償是保證變送器數(shù)據(jù)準(zhǔn)確測(cè)量的前提。為準(zhǔn)確得到各個(gè)點(diǎn)的補(bǔ)償值,需要進(jìn)行裝配、校驗(yàn)、包裝、統(tǒng)計(jì)、質(zhì)量檢測(cè)等工作,實(shí)時(shí)記錄每一批次產(chǎn)品的最終采集信息,嚴(yán)把產(chǎn)品質(zhì)量關(guān)。
按照生產(chǎn)計(jì)劃或訂單需求,生產(chǎn)調(diào)度管理用于對(duì)生產(chǎn)運(yùn)營(yíng)的整個(gè)過(guò)程進(jìn)行協(xié)調(diào)和管理,并對(duì)每一環(huán)節(jié)進(jìn)行更優(yōu)化的排產(chǎn),控制生產(chǎn)過(guò)程中的物料流和庫(kù)存。有偏差時(shí),系統(tǒng)及時(shí)響應(yīng)和報(bào)警。
當(dāng)壓力變送器出現(xiàn)返修時(shí),系統(tǒng)能在盡量不影響當(dāng)前生產(chǎn)任務(wù)的同時(shí),在對(duì)應(yīng)生產(chǎn)環(huán)節(jié)進(jìn)行插入式排產(chǎn),并對(duì)返修過(guò)程進(jìn)行記錄。膜盒的制作周期較長(zhǎng),可以作為半成品進(jìn)行出入庫(kù)管理。通過(guò)看板實(shí)時(shí)顯示車(chē)間的生產(chǎn)過(guò)程,從而提高加工效率。
查詢和報(bào)表管理便于管理員進(jìn)行記錄追蹤和存檔工作。生產(chǎn)過(guò)程中的任一環(huán)節(jié)可作任意級(jí)對(duì)應(yīng)的關(guān)聯(lián)查詢,并且在一些必要的環(huán)節(jié)設(shè)定報(bào)表查詢功能,以便產(chǎn)品跟蹤,實(shí)現(xiàn)半成品、成品從原材料、生產(chǎn)加工、裝箱全流程的質(zhì)量信息管控。
②系統(tǒng)模塊流程
MES生產(chǎn)規(guī)劃運(yùn)行流程如圖3所示。通過(guò)企業(yè)資源計(jì)劃(enterprise resource planning,ERP)或管理員調(diào)度產(chǎn)生訂單和料號(hào),保證訂單數(shù)據(jù)的準(zhǔn)確性,同時(shí)防止產(chǎn)生重復(fù)的號(hào)碼。采用統(tǒng)一的流程管理,防止生產(chǎn)過(guò)程順序錯(cuò)誤。每個(gè)制作環(huán)節(jié)都有相應(yīng)的半成品系列號(hào)條碼,方便進(jìn)行相關(guān)聯(lián)的數(shù)據(jù)追蹤,防止因產(chǎn)品不合格造成后續(xù)成本的浪費(fèi)。

圖3 壓力變送器制造車(chē)間MES生產(chǎn)規(guī)劃運(yùn)行流程圖

圖4 系統(tǒng)流程圖
系統(tǒng)流程精確到每個(gè)環(huán)節(jié)的作業(yè)過(guò)程。系統(tǒng)流程如圖4所示。
通過(guò)統(tǒng)一的生產(chǎn)工序管理,在數(shù)據(jù)采集端,利用無(wú)線射頻識(shí)別(radio frequency identification,RFID)和條形碼技術(shù)選擇生產(chǎn)任務(wù),降低輸入錯(cuò)誤率。每個(gè)產(chǎn)品零件上都有唯一條碼,以便系統(tǒng)作關(guān)聯(lián)記錄和統(tǒng)計(jì)。
MES能對(duì)車(chē)間在制品、庫(kù)存等全程進(jìn)行動(dòng)態(tài)管理和監(jiān)控;能將正在加工的產(chǎn)品名稱(chēng)、工序號(hào)、批次號(hào)、編號(hào)等信息直接顯示于工位看板。這樣大大減少了工人的工作量。工人完成自己相應(yīng)工序后,相關(guān)數(shù)據(jù)隨即被輸入數(shù)據(jù)庫(kù)中并加以保存。當(dāng)車(chē)間現(xiàn)場(chǎng)發(fā)生意外情況時(shí),相關(guān)部門(mén)迅速得到信息,及時(shí)作出調(diào)整,排除事故,使后續(xù)生產(chǎn)順利進(jìn)行。
3、MES實(shí)現(xiàn)方法
①整體思路
MES采用客戶機(jī)/服務(wù)器(client/server,C/S)模式。C/S模式具有界面清晰、數(shù)據(jù)實(shí)時(shí)處理能力強(qiáng)、傳輸速度穩(wěn)定、安全性好等特點(diǎn),能滿足車(chē)間各制造環(huán)節(jié)頻繁地與系統(tǒng)相關(guān)功能模塊通信的要求。系統(tǒng)分為客戶端、服務(wù)器、數(shù)據(jù)庫(kù)三層。數(shù)據(jù)庫(kù)不再與客戶端直接相連,而是通過(guò)若干業(yè)務(wù)邏輯構(gòu)建共享數(shù)據(jù)庫(kù),從而減少雙方的連接次數(shù),提高數(shù)據(jù)庫(kù)服務(wù)器的運(yùn)行效率和安全性能,也方便系統(tǒng)的維護(hù)。
服務(wù)器采用Servlet技術(shù)開(kāi)發(fā)。數(shù)據(jù)庫(kù)管理系統(tǒng)采用MySQL軟件定義、存儲(chǔ)數(shù)據(jù)。
②客戶端
客戶端使用微軟推出的用戶界面框架(windows presentation foundation,WPF)。它以DirectX為核心繪圖函數(shù),視覺(jué)效果更佳。其外觀使用可擴(kuò)展應(yīng)用程序標(biāo)記語(yǔ)言(XAML)設(shè)計(jì),操作行為則使用C#語(yǔ)言實(shí)現(xiàn),界面清晰美觀。
根據(jù)系統(tǒng)模塊架構(gòu)和車(chē)間工區(qū)劃分情況,將客戶端界面主菜單分為半杯體制作、膜盒制作、傳感頭裝配、溫度補(bǔ)償、總裝、質(zhì)量檢測(cè)、生產(chǎn)調(diào)度管理、查詢和報(bào)表管理、基本信息管理。菜單需要根據(jù)工區(qū)進(jìn)行權(quán)限設(shè)置,不同工區(qū)的工人只能對(duì)自己的作業(yè)頁(yè)面進(jìn)行操作;管理頁(yè)面只對(duì)參與相關(guān)管理工作的人員開(kāi)放權(quán)限??蛻舳思戎С止と藪呙枳陨砉ぬ?hào)二維碼登錄,又支持掃描工單自動(dòng)彈出相關(guān)作業(yè)。
客戶端使用HTTP協(xié)議發(fā)送Request請(qǐng)求給服務(wù)器,待服務(wù)器處理完成準(zhǔn)備進(jìn)行Response響應(yīng)時(shí),會(huì)將響應(yīng)封裝成Json格式回傳給客戶端??蛻舳耸盏胶髮?duì)Json包進(jìn)行解析,并進(jìn)行相應(yīng)的用戶界面處理??蛻舳瞬捎肞OST方法推送數(shù)據(jù)至服務(wù)器。
服務(wù)器利用StreamReader類(lèi)獲取GetRespons-eStream的內(nèi)容,并以StreamReader類(lèi)的Read方法依次讀取每一行的內(nèi)容直至行尾,實(shí)現(xiàn)數(shù)據(jù)格式轉(zhuǎn)換。核心代碼大致如下:
Stream respStream = response.GetResponseStream();
//響應(yīng)信息為Stream
StreamReaderrespStreamReader = new StreamReader(respStream,Encoding.UTF8);
//UTF8解析
byteRead=respStreamReader.Read(cbuffer,0,256);
//解析放入byteRead
respStream.Close();
客戶端會(huì)事先和服務(wù)器定義每組Json包的數(shù)據(jù)類(lèi)型和結(jié)構(gòu)形式,然后通過(guò)JsonConvert.DeserializeObject<jsondata>(strBuff)反序列化,將收到的Json包進(jìn)行數(shù)據(jù)解析。解析后的相應(yīng)字段可顯示在客戶端。
③服務(wù)器
服務(wù)器主要用于處理客戶端請(qǐng)求。Servlet工作原理如圖5所示。當(dāng)服務(wù)器響應(yīng)后,把請(qǐng)求轉(zhuǎn)交給Servlet引擎進(jìn)行處理。如果Servlet中含有訪問(wèn)數(shù)據(jù)庫(kù)的操作,則還要通過(guò)Java數(shù)據(jù)庫(kù)連接(Javadatabaseconnectivity,JDBC)驅(qū)動(dòng)對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作訪問(wèn),最后Servlet將動(dòng)態(tài)生成的信息發(fā)送至客戶端。
在一個(gè)Servlet周期,要調(diào)用init()方法和destroy()方法。init()方法在javax.Servlet接口中定義,完成初始化工作。初始化后Servlet接受客戶端請(qǐng)求。當(dāng)處理請(qǐng)求完成時(shí),destroy()方法被調(diào)用,釋放init()方法中申請(qǐng)的資源。而Servlet處理請(qǐng)求的流程大致為:Servlet根據(jù)請(qǐng)求創(chuàng)建對(duì)象HttpServletRequest和HttpServletResponse,然后調(diào)用doPost()方法響應(yīng)客戶端請(qǐng)求。
HttpServletRequest接口主要包含getCookie()方法和getSession()方法,分別用于存放客戶端的Cookie數(shù)組和獲取當(dāng)前HTTP會(huì)話對(duì)象。HttpServletResponse接口是對(duì)客戶端的HTTP響應(yīng),其中包含的addCookie()方法和setStatus()方法,分別用于向響應(yīng)結(jié)果中加入Cookie和將響應(yīng)狀態(tài)碼設(shè)定為指定值。此外,Servlet分配1個(gè)Session用于存放客戶端的狀態(tài)信息,getId()作為Cookie保存在客戶端中,用于讓Servlet讀取并找到相應(yīng)的狀態(tài)信息。invalidate()可以定期釋放Session占用的資源;setAttribute(name,value)和getAttribute(name)用于讀/寫(xiě)Session中的屬性值;isNew()用來(lái)判斷Session是否為新創(chuàng)建。
服務(wù)器根據(jù)客戶端的請(qǐng)求類(lèi)型,對(duì)系統(tǒng)中的應(yīng)用邏輯進(jìn)行判斷和處理,并將處理結(jié)果返回給客戶端。
④數(shù)據(jù)庫(kù)
MySQL數(shù)據(jù)庫(kù)可以運(yùn)行在不同的操作系統(tǒng),實(shí)現(xiàn)多用戶、多線程、多語(yǔ)言的程序接口。根據(jù)壓力變送器的工藝流程,數(shù)據(jù)庫(kù)主要表單名稱(chēng)及內(nèi)容如表1所示。
表1 數(shù)據(jù)庫(kù)主要表單名稱(chēng)及內(nèi)容
序號(hào) 表單名 表單內(nèi)容
1 半杯體制作 過(guò)程工藝參數(shù)
2 膜盒制作 過(guò)程工藝參數(shù)
3 傳感頭裝配 過(guò)程工藝參數(shù)
4 溫度補(bǔ)償過(guò)程 工藝參數(shù)
5 總裝過(guò)程 工藝參數(shù)
6 質(zhì)量檢測(cè) 每個(gè)工區(qū)的質(zhì)量檢測(cè)結(jié)果
7 調(diào)度 合同數(shù)據(jù)記錄表
8 賬號(hào)管理 系統(tǒng)賬號(hào)、密碼、權(quán)限等
表1中:質(zhì)量檢測(cè)關(guān)聯(lián)了五大工藝中所有的檢測(cè)數(shù)據(jù);賬號(hào)管理則覆蓋了整個(gè)MES系統(tǒng)。
五大工藝流程中,各環(huán)節(jié)的批號(hào)和編號(hào)具有相關(guān)性。膜盒制作由兩個(gè)批次相同的半杯體組成;變送器在完成膜盒、電路板等元件組裝后,會(huì)根據(jù)出廠編號(hào)進(jìn)行溫度補(bǔ)償和總裝。
MySQL提供了一套JDBC。它由一些類(lèi)和接口組成,用于實(shí)現(xiàn)通信,并訪問(wèn)、操作數(shù)據(jù)庫(kù),使得開(kāi)發(fā)和操作數(shù)據(jù)庫(kù)可以直接調(diào)用,無(wú)需考慮資源內(nèi)部的問(wèn)題。操作數(shù)據(jù)庫(kù)的步驟大致如下:
a、加載MySQL的驅(qū)動(dòng)
Stringdriver="com.mysql.jdbc.Driver";
b、定義要連接數(shù)據(jù)庫(kù)的url地址
Stringurl="jdbc:mysql://localhost:3306/mes_db";
c、加載數(shù)據(jù)庫(kù)驅(qū)動(dòng)
Class.forName(driver);
d、調(diào)用DriverManager的getConnection()方法,獲得對(duì)象
conn=(Connection)DriverManager.getConnection(url,用戶名,密碼);
e、連接完成后,針對(duì)數(shù)據(jù)庫(kù)操作中不帶參數(shù)的SQL語(yǔ)句,使用Connection接口的createStatement()方法傳遞。
Statementstmt=conn.createStatement();
而對(duì)數(shù)據(jù)庫(kù)中的表進(jìn)行插入、更新、查詢、刪除等帶有參數(shù)的操作,使用Connection接口的prepareStatement()方法傳遞。
PreparedStatementpstmt=(PreparedStatement)conn.
prepareStatement(“insert、update、select、delete的SQL語(yǔ)句”);
pstmt.setString(1,user.getName());//對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作
inti=pstmt.executeUpdate();
//執(zhí)行insert/update/delete等語(yǔ)句時(shí)使用
inti=pstmt.executeQuery();
//執(zhí)行select/update等語(yǔ)句時(shí)使用
f、操作完成后關(guān)閉JDBC對(duì)象,釋放所有資源。
MES實(shí)現(xiàn)了壓力變送器制造車(chē)間的信息共享,將制造計(jì)劃與實(shí)際生產(chǎn)相結(jié)合,提高了生產(chǎn)設(shè)備的利用率和企業(yè)的管理效率,實(shí)現(xiàn)了車(chē)間管理流程的信息化。系統(tǒng)既具有簡(jiǎn)單實(shí)用、可配置性強(qiáng)、界面簡(jiǎn)潔等特點(diǎn),還具有一定的擴(kuò)展性。MES系統(tǒng)為企業(yè)實(shí)現(xiàn)信息化制造、信息化管理和提高自身競(jìng)爭(zhēng)力提供了一定的參考。
作者:上海自動(dòng)化儀表有限公司 崔晨
