任凱斌,曾鵬飛,郝永平
(1.沈陽理工大學 機械工程學院,遼寧 沈陽 110159;2.沈陽理工大學 CAD/CAM技術研究與開發中心,遼寧 沈陽 110159)
電子郵件系統的功能是借助于網絡使得計算機之間實現數據的傳遞。隨著互聯網的普及,各企業之間的業務交流越來越多地依賴于網絡通信,電子郵件系統因此也成為企業之間進行溝通的主流應用。
近年來,國內外許多學者就郵件系統與諸多其他領域的集成應用進行了大量研究。例如:譚德才[1]為了使船舶運輸與陸上企業之間永遠保持網絡在線,應用電子郵件使用簡單、性能穩定等特點來實現數據遠程同步復制,設計了一種遠程異構數據庫的郵件系統;金艷[2]針對企業電子郵件系統的模塊管理獨立、電子郵件的效率低下,提出建設一個規范的電子郵件系統來實現對企業電子郵件信息的管理,進而設計了基于REST的企業電子郵件系統;李紅濤[3]針對某公司為了加強對一線員工的關懷和心理疏導,提出了解決這一問題的最佳方法為開發郵件系統,因而設計了業務協同平臺的郵件系統。然而將電子郵件系統應用于制造業,尤其像生產車間這種信息量大、信息變化頻繁的制造業現場,卻很少有研究。
本文針對某兵工企業需要實現數字化生產車間內部與外部其他部門以及質量監管部門的實時數據共享這一需求,以該企業彈藥分廠離散型車間生產為背景,應用信息集成技術與可視化管理技術相結合,研究開發出一個基于數字化生產車間的郵件系統。以發送郵件的方式將現場產生的實時數據及時地進行遠距離傳輸,從而達到遠程審核管理、異地協同監控和數據共享的效果。

圖1 數字化車間業務模型
數字化生產車間管理系統的核心是質量管理的數字化[4]。數字化質量管理是在現代質量管理技術的基礎上,以信息論、系統論和控制論為基礎理論指導,綜合運用計算機、數字化、網絡通信以及先進制造等一系列現代化技術,建立了以數字化質量管理信息系統為核心的管理工具。通過質量數據的實時采集、傳遞、分析和反饋控制,規范了質量信息的收集與管理[5]。產品的質量出現問題,其并不是檢驗出來的,而是在生產制造過程中產生的。因此必須把質量管理的重點放在制造過程上。數字化車間不僅是制造系統的基本組成部分,更是生產過程的重要樞紐[6]。數字化車間管理內容包括下面5個方面:生產計劃的數字化管理、生產質量的數字化管理、技術文檔的數字化管理、制造物流的數字化管理和制造資源的數字化管理[7]。在我國傳統的數字化生產車間中,這5部分內容的大多數數據都是以工藝卡片的方式人工進行傳遞,車間的信息化程度很低,很難有效地對資源進行合理配置和優化管理。因此,只有運用現代的生產管理方法,依靠信息技術來解決這一問題。應用Web郵件系統很大程度上實現了制造過程的信息化、自動化,加工過程的有序化和網絡化管理。離散型生產車間主要是根據用戶提出的產品性能要求和結構特點來安排生產,企業接收到的訂單具有隨機性,企業必須每接收一份訂單就做一次安排,并及時地將生產計劃傳達給生產車間,以便在交貨期能按時交貨。圖1為彈藥數字化生產車間與郵件系統集成后的業務模型圖。
通過Web郵件技術在數字化生產車間管理系統中的應用,總廠可以以郵件發送的形式給各分廠發送生產部制定的年度、季度、月度生產計劃文件;數字化生產車間內部的質量報表、工藝文檔、技術文檔、派工單、工藝卡片都可通過郵件發送系統進行數據傳輸,這樣大大減少了人員流動量,節省了不必要的工作時間。除此之外,數字化生產車間可以將車間生產現場采集來的實時數據以發送郵件的方式傳遞給遠程有關管理部門,以便接受審查。
JavaMail API是SUN公司為Java開發者提供的公用郵件API框架[8],支持各種電子郵件的通信協議,如SMTP、IMAP和POP3,它為Java應用程序提供了處理電子郵件的通用接口[9]。系統在設計Web郵件系統時,應用了JavaMail API的核心3大類:Message類、Transport類和Store類,采用Message類的實例化對象來創建解析郵件,用Transport類中的SMTP協議來實現郵件的發送功能,然后用Store類中的POP3協議實現郵件的接收。除此之外郵件發送還用到了Session類,Session類主要用于對整個郵件收發的應用程序所需的環境信息進行定義,并收集客戶端與郵件服務器建立網絡連接的通信信息,譬如郵件服務器的主機名、端口號、采取的郵件發送和接收協議等主要內容。Session對象把這些環境信息和通信內容用于郵件收發的Transport和Store對象,以及為客戶端創建Message對象時提供信息支撐。
系統在創建電子郵件時,代碼編寫的思路過程為:首先創建郵件;然后創建MimeBodyPart對象對數字化生產車間產生的圖片、聲音、動畫和附件等進行封裝;之后再創建MimeMultiPart對象來描述各MimeBodyPart數據之間的關系;最后再把保存所有數據的容器加入到郵件中去。其中用到的JavaMail API之間的關系如圖2所示。

圖2 JavaMail API對郵件收發原理示意圖
數字化車間管理系統采用B/S(瀏覽器/服務器)結構的MVC(模型—視圖—控制器)設計模式。B/S結構具有瘦客戶端的優點,便于系統的維護與擴展[10]。MVC程序開發設計模式可以實現顯示模塊與功能模塊的分離,提高程序的可維護性、可移植性、可擴展性與可重用性,降低程序的開發難度[11]。圖3為該數字化車間管理系統的B/S結構圖。Web郵件系統與數字化車間管理系統應用服務器層中的多個管理模塊實現了集成,其中最為重要的是實現了質量控制管理模塊與Web郵件的集成,因為對于彈藥生產來說,質量就是生命線,對于出錯是零容忍的。

圖3 B/S結構圖
系統的整個運行環境為瀏覽器運行環境和Web服務器運行環境。
(1)瀏覽器運行環境為:操作系統Windows XP或Windows 7;Web瀏覽器IE6.0及以上版本。
(2)Web服務器運行環境為:操作系統Windows XP;Java EE版本JDK1.6。
(3)Web服務器為Apache Tomcat 7.0,數據庫采用Microsoft SQL Server 2008。
系統在視圖層采用JSP技術、JavaScript技術對數字化生產車間應用服務器層中的工藝管理模塊、設備管理模塊、工具管理模塊、人員管理模塊、產品管理模塊、報表管理模塊、庫存管理模塊、質量控制管理模塊、計劃與調度管理等模塊的Web網頁視圖界面進行編寫。當用戶從不同模塊界面發送來請求時,MVC設計模式中的Struts框架會根據Struts.xml中的映射配置將用戶的請求交給相應的Action類,基于AOP面向切面編程的思想來為請求提供各種預處理和切面處理的應用功能[12]。在控制層,系統根據Spring框架中Spring-context.xml配置文件中的Action與Service的依賴注入關系,將業務處理功能交給Service進行處理,如SPC質量控制圖的生成、實現報表的下載、電子郵件的收發等。在模型層,由Hibernate框架中的對象關系映射(Object Relation Mapping,ORM)將實體類中的對象自動持久化到關系數據庫中[13]。下面以質量控制管理模塊與郵件系統集成為例,用戶進入到數字化生產車間的質量控制管理模塊界面,如圖4所示。該質量控制管理模塊對產品質量的數字化管理主要是通過SPC技術相應算法對生產過程中實時采集的數據進行計算,然后通過基于Web服務的SPC控制圖對數據進行顯示來實現的。

圖4 實時數據顯示界面
控制圖控制界限采用3σ法則,控制圖上的點應落入(μ-3σ,μ+3σ)之內,如圖5所示,上控制界限為UCL,下控制界限為LCL,若控制圖上的點處于控制圖界限之外,則可以認為生產過程質量處于異常狀態。

圖5 SPC質量控制圖
控制圖中主要參數的計算公式如下:
(1)基本參數計算公式
R=每組的(最大值-最小值)=xmax-xmin

(2)控制圖界限參數計算公式




R控制圖控制線:



其中,A2、D3、D4的值為均值—極差控制圖的3σ控制界限系數,由表1可查。

表1 控制圖系數表
圖5中,SPC控制圖中有個“郵件發送”按鈕,點擊“郵件發送”按鈕時,服務器會根據Struts.xml中的映射配置找到質量控制管理模塊(QualityControlAction.java)這個類里面的下載(downLoad)方法先實現下載功能,以便發送郵件時的附件上傳,然后將返回結果根據Struts.xml文件中的result配置跳轉到郵件發送頁面。在進入郵件系統進行郵件發送時,調用郵件發送(sendMail)方法來實現郵件發送功能,具體實現過程如圖6所示。

圖6 郵件發送流程圖
由于軍工產品信息屬于保密信息,為了監視文件在傳輸過程中是否有被截取篡改,在文件上傳時需要對上傳文件進行加密處理,本系統應用了MD5碼技術對附件進行了加密,在加密完成后便可獲得相對應文件的MD5碼,然后點擊發送按鈕即可完成郵件發送。MD5碼主要加密代碼如下:
private static string GetMd5String(string msg)
{
StringBuilder sb = new StringBuilder();
using (MD5 md5 = MD5.Create())
{
byte[] bytes = System.Text.Encoding.Default.GetBytes(msg);
byte[] md5Byte = md5.ComputeHash(bytes);
for(int i =0;i { sb.Append(md5Byte[i].ToString("x2")); } } return sb.ToString(); } private static string GetMd5StringFromFile(string filePath) { StringBuilder sb = new StringBuilder(); using (MD5 md5 = MD5.Create()) { using (FileStream fs = File.OpenRead(filePath)) { byte[] md5Bytes = md5.ComputeHash(fs); for (int i = 0; i < md5Bytes.Length;i++ ) { sb.Append(md5Bytes[i].ToString("x2")); } } } return sb.ToString(); } 分廠對數字化車間生產現場的質量管理是通過審查SPC質量控制圖來實現的,總廠通過接收分廠實時發送過來的郵件,進而實現對數字化生產車間的實時監控。圖7為總廠收到分廠發送過來的月完成月報表和數字化生產車間現場根據采集來的實時數據生成的SPC質量控制圖。 圖7 總廠接收到分廠發送過來的郵件圖 本系統將郵件發送功能與Web應用進行了集成,將數字化生產車間管理系統與郵件系統進行了集成,利用Java語言的“一次編譯,處處運行”的特點及Spring AOP面向切面編程思想和IOC依賴注入的方法,使得該系統具有了平臺無關、很強的擴展性和低耦合的特點。通過郵件客戶端工具可以連接互聯網上的任意一臺主機,最后實現了向遠程用戶發送復雜電子郵件的功能。通過該郵件集成系統可以實現企業領導對各部門的監控以及上級集團公司、地方政府、質量認證機構對企業的監控等,從而實現多方位對數字化生產車間的監控與協同處理。 參考文獻 [1] 譚德才.基于郵件系統的遠程異構數據庫同步設計與實現[D].廣州:華南理工大學,2010. [2] 金艷.基于REST的企業電子郵件系統的設計與實現[D].長春:吉林大學,2015. [3] 李紅濤.業務協同平臺郵件子系統的設計與實現[D].西安:西安電子科技大學,2015. [4] 張根保.數字化質量管理系統及其關鍵技術[J].中國計量學院學報,2005,16(2):85-92. [5] 楊緒紅.企業數字化管理模式研究[D].北京:北京交通大學,2003. [6] 孫會海,郝永平,孫會花.基于web的離散型車間管理系統研究[J].機械設計與制造,2011(10):238-240. [7] 曹軍,尹超,劉飛,等.機械加工車間數字化制造描述模型及總體框架[J].重慶大學學報,2012,35(9):48-55. [8] 鐘珞,劉玲,夏紅霞.基于JavaMail API的Web郵件系統開發[J].武漢理工大學學報,2006,28(6):84-86. [9] DEBBABI M, SALCH M, TALHI C, et al. Security evaluation of J2ME CLDC embedded Java platform[J].Journal of Object Technology,2006,5(2):125-154. [10] 康雷,張樹本,楊堅.基于B/S模式的GPU集群管理系統設計[J].計算機工程,2015,41(10):6-9. [11] 張俐.基于MVC模式的分頁組件應用[J].計算機工程,2011,37(21):255-257. [12] ELRAD T, AKSIT M,KICZALES G, et al. Discussing aspects of AOP[J].Communications of the ACM,2011,44(10):33-38. [13] 嚴成武.支持分庫分表和讀寫分離的ORM框架的設計與實現[D].哈爾濱:哈爾濱工業大學,2016.
4 結論