□ 金 ?!?張為民,2□ 費麗娜,4□Jürgen Fleischer□ 羅 亮
1.同濟大學(xué)機械與能源工程學(xué)院 上海201804
2.同濟大學(xué)中德學(xué)院 上海201804
3.同濟大學(xué)中德先進制造技術(shù)中心 上海201804
4.卡爾蔡司(上海)管理有限公司 上海200131
5.卡爾斯魯厄理工學(xué)院生產(chǎn)技術(shù)研究所 德國卡爾斯魯厄76131
2013年4月在漢諾威工業(yè)博覽會上,德國政府提出了“工業(yè)4.0”戰(zhàn)略[1]。德國聯(lián)邦教育研究部發(fā)布的《工業(yè)4.0戰(zhàn)略計劃實施建議》定義了工業(yè)4.0的本質(zhì)特征是智能化,即以充分互聯(lián)的智能工廠為核心,構(gòu)建信息系統(tǒng)與工業(yè)生產(chǎn)技術(shù)高度融合的信息物理系統(tǒng),建立起一整套定制化的產(chǎn)品設(shè)計、生產(chǎn)及服務(wù)模式,實現(xiàn)由制造向“智造”的轉(zhuǎn)型升級[2]。在這種情況下,工業(yè)4.0給中國制造業(yè)提出了全新的要求,主要難點在于信息系統(tǒng)落后,未能借助互聯(lián)網(wǎng)實現(xiàn)充分互聯(lián)、信息快速交互共享。制造系統(tǒng)只有解決了信息系統(tǒng)落后的問題,同時增進制造設(shè)備間的信息數(shù)據(jù)交互,才能實現(xiàn)更高程度的智能制造和不同生產(chǎn)單元及環(huán)節(jié)間的高效協(xié)同工作。
為改善信息系統(tǒng)落后的現(xiàn)狀,避免各系統(tǒng)間相互獨立和信息數(shù)據(jù)缺乏共享,實現(xiàn)信息與物理系統(tǒng)的深度融合。首先必須有效解決對生產(chǎn)制造系統(tǒng)中必要信息數(shù)據(jù)的獲取與集成,尤其是決定產(chǎn)品質(zhì)量優(yōu)劣的質(zhì)量信息數(shù)據(jù)。筆者針對某工業(yè)4.0液壓閥示范生產(chǎn)線,以以太網(wǎng)為數(shù)據(jù)傳輸通道,應(yīng)用OPC UA(O/E for Process Control)技術(shù)規(guī)范設(shè)計并開發(fā)了OPC UA服務(wù)器作為質(zhì)量數(shù)據(jù)采集終端,同時開發(fā)了OPC UA客戶端并集成于ActiveCockpit智能動態(tài)生產(chǎn)管理系統(tǒng)中,最終實現(xiàn)基于OPC UA的可視化質(zhì)量數(shù)據(jù)監(jiān)測。
目前國內(nèi)制造企業(yè)各個生產(chǎn)單元之間相互獨立、數(shù)據(jù)交互困難,信息系統(tǒng)與物理系統(tǒng)嚴(yán)重分離,導(dǎo)致了一系列信息孤島問題。不僅車間管理層無法及時有效地實施管理監(jiān)控,而且嚴(yán)重制約了各個系統(tǒng)間的協(xié)調(diào)工作能力,整個生產(chǎn)系統(tǒng)效率低下。主要原因在于:工廠內(nèi)的多個信息系統(tǒng)由于系統(tǒng)架構(gòu)存在差異,沒有實現(xiàn)信息的共享集成,各自獨立工作,缺乏協(xié)調(diào)性;由于信息采集手段的落后,導(dǎo)致無法實時準(zhǔn)確地采集制造過程的相關(guān)信息,無法為企業(yè)管理層及其它系統(tǒng)提供數(shù)據(jù)支持。
為解決上述問題,搭建了如圖1所示的工業(yè)4.0液壓閥示范生產(chǎn)線的系統(tǒng)流程。企業(yè)的生產(chǎn)質(zhì)量管理大部分是基于質(zhì)量數(shù)據(jù)進行的,在對圖1中質(zhì)量檢測環(huán)節(jié)的相關(guān)信息數(shù)據(jù)的集成過程中,發(fā)現(xiàn)質(zhì)量數(shù)據(jù)的集成仍存在諸多問題,僅利用現(xiàn)有的質(zhì)量管理手段無法適應(yīng)對產(chǎn)品質(zhì)量管理效率的要求,主要體現(xiàn)在以下幾個方面。
▲圖1 工業(yè)4.0液壓閥示范生產(chǎn)線系統(tǒng)流程圖
(1)質(zhì)量數(shù)據(jù)流通不暢。對質(zhì)量信息的處理過程孤立于其它過程,不僅數(shù)據(jù)采集點分散,而且數(shù)據(jù)采集軟件來自不同廠家,無統(tǒng)一軟件接口,導(dǎo)致質(zhì)量檢測部門無法及時向生產(chǎn)計劃和加工部門傳遞質(zhì)量信息,生產(chǎn)管理部門也無法實時獲取產(chǎn)品質(zhì)量的最新數(shù)據(jù)。對于問題產(chǎn)品或問題工藝,無法及時做出調(diào)整,不利于提高生產(chǎn)率。
(2)缺乏高效的系統(tǒng)。無法對進入生產(chǎn)車間的物料質(zhì)量及后續(xù)加工狀況進行持續(xù)追蹤,導(dǎo)致無法向決策層提供產(chǎn)品相關(guān)的質(zhì)量決策依據(jù)[3]。
因此,統(tǒng)一質(zhì)量數(shù)據(jù)與生產(chǎn)過程中其它數(shù)據(jù)的采集軟件接口,并最終實現(xiàn)對產(chǎn)品質(zhì)量數(shù)據(jù)的集成與監(jiān)測就顯得至關(guān)重要。
現(xiàn)有分布式系統(tǒng)大多采用服務(wù)器/客戶端結(jié)構(gòu),但由于設(shè)備沒有通用的接口標(biāo)準(zhǔn),設(shè)備廠商分別使用自主開發(fā)的標(biāo)準(zhǔn)接口應(yīng)用程序,系統(tǒng)開放性存在很大局限性。在控制現(xiàn)場的數(shù)據(jù)交互亟需優(yōu)化的條件下,OPC技術(shù)的產(chǎn)生解決了一部分問題[4]。但原有OPC技術(shù)規(guī)范在技術(shù)上存在局限性,基于微軟的COM(組件對象模型)/DCOM(分布式組件對象模型)只能在微軟環(huán)境下應(yīng)用,平臺依賴性大且DCOM不能用于互聯(lián)網(wǎng)通信。為解決上述問題,OPC基金會發(fā)布了新一代統(tǒng)一數(shù)據(jù)交互標(biāo)準(zhǔn)OPC UA[5]。
OPC UA技術(shù)使用消息傳遞機制,解決了傳統(tǒng)OPC在跨平臺方面的限制,可以在Linux、Unix和Mac等其它平臺使用,具有平臺無關(guān)性。基于TCP/IP和SOAP/HTTP兩種與平臺獨立的傳輸協(xié)議進行消息傳遞,傳輸協(xié)議不僅與平臺獨立,而且能夠跨越防火墻??蛻舳税l(fā)送服務(wù)請求,服務(wù)器響應(yīng)請求并返回客戶端的請求結(jié)果??蛻舳藷o需了解復(fù)雜系統(tǒng)的整個模型,只要訪問最小的一塊數(shù)據(jù)即可。OPC UA集成了傳統(tǒng)OPC DA(Data Access)、A&E(Alarm&Event)和HDA(Historical Data Access)的功能和信息,使用通用接口對外提供信息,可擴展性強,適用范圍從嵌入式系統(tǒng)至企業(yè)資源管理軟件,能夠?qū)崿F(xiàn)更好的工廠級數(shù)據(jù)采集與管理。此外,OPC UA還提供了一致、完整的地址空間和服務(wù)模型,系統(tǒng)可以統(tǒng)一訪問一個集成的地址空間[6]。
OPC UA服務(wù)器提供給客戶端的信息數(shù)據(jù)與服務(wù)器的地址空間息息相關(guān),地址空間是一組通過引用形式關(guān)聯(lián)的節(jié)點。利用OPC UA提出的具有一致性的地址空間和服務(wù)模型,用單個服務(wù)器即可將數(shù)據(jù)、報警與事件和歷史信息統(tǒng)一至地址空間,并以統(tǒng)一服務(wù)形式向外提供接口。
OPC UA服務(wù)器的所有功能必須基于地址空間實現(xiàn),因此構(gòu)建地址空間是定義和開發(fā)服務(wù)器的關(guān)鍵。節(jié)點是地址空間的基本單位,由節(jié)點屬性和節(jié)點引用組成。屬性用于描述節(jié)點的數(shù)據(jù)元素,是節(jié)點類定義的一部分,可通過讀寫、查詢和訂閱監(jiān)視等方式存取屬性值;而引用是作為引用類型節(jié)點類定義,每個節(jié)點只能用一次相同引用類型引用其它節(jié)點[7]。
▲圖2 OPC UA服務(wù)器地址空間的獲取和監(jiān)測數(shù)據(jù)
在構(gòu)建OPC UA服務(wù)器的地址空間前,必須明確質(zhì)量數(shù)據(jù)監(jiān)測系統(tǒng)需要獲取和監(jiān)測的數(shù)據(jù),可分為特征質(zhì)量數(shù)據(jù)、檢測可靠性數(shù)據(jù)和工件信息數(shù)據(jù)三大類,具體數(shù)據(jù)如圖2所示。為了監(jiān)控示范生產(chǎn)線上工件的加工質(zhì)量情況,首先必須監(jiān)控能夠反映工件加工特征合格與否的測量數(shù)據(jù)。因此,需要為三坐標(biāo)測量機開發(fā)能夠采集工件特征質(zhì)量數(shù)據(jù)的OPC UA服務(wù)器,特征質(zhì)量數(shù)據(jù)包括被測工件的各個特征名、特征理論上下限、實際偏差值、特征名義值和實際測量值。其次,影響測量結(jié)果的因素主要有設(shè)備本身的誤差、測量環(huán)境與測量人員及方法。由于三坐標(biāo)測量機及其探針通常情況下都會對其進行定期校準(zhǔn),因此設(shè)備本身誤差可以忽略不計。環(huán)境因素中影響較大的為外界溫度和濕度,與溫度、濕度相關(guān)的數(shù)據(jù)由設(shè)備自帶的溫度和濕度傳感器自動采集,并實時將此數(shù)據(jù)上傳至測量程序中;同時,測量人員在測量程序中輸入自己的工號信息。測量方法是影響測量結(jié)果準(zhǔn)確性的關(guān)鍵因素,指測量人員對每個特征選取的測量策略和測量評定方法[8]。因此,要確保檢測程序針對每個特征選擇的測量方案的可靠性,需要采集測量人員信息、檢測時間、測量溫濕度、測量策略和測量評定方法。最后,監(jiān)控管理要實現(xiàn)對被測不合格工件的追蹤與反饋,實時監(jiān)控被測工件的基本信息數(shù)據(jù)。這些基本信息數(shù)據(jù)包括工件號、工件名稱、產(chǎn)品訂單號、工件測量結(jié)果和各加工工位設(shè)備號及工位上下線時間,它們均存儲在工件所在托盤上安裝的RFID(射頻識別)芯片內(nèi),由三坐標(biāo)測量機上的RFID讀寫頭在測量前讀取獲得。
OPC UA客戶端的主要功能是連接OPC UA服務(wù)器,查找與讀取地址空間中變量存放的數(shù)據(jù),并將這些數(shù)據(jù)存儲至本地數(shù)據(jù)庫中,同時訂閱作為監(jiān)控項的相關(guān)變量。讀取數(shù)據(jù)時,OPC UA客戶端在服務(wù)器地址空間中瀏覽,通過NodeId找到變量號并發(fā)送讀取數(shù)據(jù)請求;服務(wù)器收到讀取請求后,執(zhí)行讀取回調(diào)的函數(shù),將緩存數(shù)據(jù)加載到地址空間的變量中,從而獲得地址空間中的設(shè)備數(shù)據(jù)[9]。
OPC UA客戶端和OPC UA服務(wù)器的架構(gòu)如圖3所示,包括OPC UA通信棧、OPC UA服務(wù)器/客戶端接口和OPC UA服務(wù)器/客戶端應(yīng)用程序。由圖3可知,其交互方式有兩種:第一種是OPC UA客戶端通過客戶端接口發(fā)送服務(wù)請求,通信棧將其轉(zhuǎn)化為請求消息后,通過底層通信實體發(fā)送至服務(wù)器通信棧,服務(wù)器接口調(diào)用對應(yīng)的響應(yīng)服務(wù),至地址空間的指定節(jié)點,完成響應(yīng)任務(wù)后返回一個響應(yīng)消息;第二種是客戶端通過客戶端接口發(fā)送發(fā)布請求,通信棧將其轉(zhuǎn)化為發(fā)布消息后,通過底層通信實體發(fā)送至服務(wù)器通信棧,服務(wù)器接口發(fā)送至訂閱,一旦指定監(jiān)測的節(jié)點項目產(chǎn)生變化,即由訂閱發(fā)送至客戶端[10]。
▲圖3 OPC UA服務(wù)器與客戶端架構(gòu)
在Visual Studio 2017編譯環(huán)境下,利用Open62541提供的Open62541 v0.3開源庫,使用C++語言編寫實現(xiàn)OPC UA服務(wù)器[11-12]。將開源庫在CMake工具中編譯生成庫文件,并在解決方案中配置好編程環(huán)境的項目屬性,向源文件中添加.h頭文件,以完成開發(fā)服務(wù)器的準(zhǔn)備工作。
構(gòu)建地址空間時,首先,要定義地址空間節(jié)點管理類,使其能夠?qū)崿F(xiàn)對地址空間所有節(jié)點的有效管理。其次,將設(shè)備在服務(wù)器對象文件夾下建立設(shè)備實例,其類型繼承基本對象類型,并創(chuàng)建各個實例對象的數(shù)據(jù)類別。最后,將監(jiān)控變量依次添加到對應(yīng)數(shù)據(jù)類別下的節(jié)點,定義其通用屬性(見表1),并添加必要的節(jié)點引用。在UaExpert軟件中,可查看所開發(fā)OPC UA服務(wù)器的部分地址空間,如圖4所示。
表1 節(jié)點的通用屬性
▲圖4 測量設(shè)備的OPC UA服務(wù)器地址空間
OPC UA客戶端在Node.js運行環(huán)境下進行開發(fā)[13],其工作流程如圖5所示。由于編程過程需要調(diào)用特定模塊,因此開發(fā)前使用npm命令安裝node-opcua等相關(guān)必要模塊。為了方便客戶端調(diào)用,編寫新建客戶端函數(shù),讀寫函數(shù)及訂閱監(jiān)控變量函數(shù),并設(shè)置監(jiān)控參數(shù)。在程序中載入安裝的模塊,調(diào)用新建客戶端的函數(shù),并將其所連接的服務(wù)器IP地址設(shè)置成對應(yīng)設(shè)備的IP地址。調(diào)用訂閱監(jiān)控變量函數(shù),監(jiān)控相關(guān)變量,為工件測量結(jié)果變量設(shè)置訂閱,一旦為不合格,則產(chǎn)生報警事件,并將超差特征的測量數(shù)據(jù)反饋至對應(yīng)設(shè)備號處,由設(shè)備人員及時做出調(diào)整。
OPC UA服務(wù)器和客戶端分別運行于三坐標(biāo)測量機設(shè)備的計算機(PC端)與信息可視化集成系統(tǒng)端,或其它需要實時獲取質(zhì)量數(shù)據(jù)的相關(guān)部門PC端。針對測量設(shè)備開發(fā)出的OPC UA服務(wù)器及相應(yīng)客戶端,能夠解決質(zhì)量數(shù)據(jù)流通不暢的問題,實時集成質(zhì)量數(shù)據(jù)與其它過程數(shù)據(jù),實現(xiàn)企業(yè)管理層對質(zhì)量數(shù)據(jù)的實時監(jiān)控,使管理層能夠及時做出調(diào)整,從而大大提高生產(chǎn)效率;同時,集成的工件信息數(shù)據(jù)能夠及時追蹤問題產(chǎn)品,有效幫助管理層進行決策。
工業(yè)4.0液壓閥示范生產(chǎn)線的DuraMax三坐標(biāo)測量機不提供OPC UA接口,只能使用生產(chǎn)商自帶的數(shù)據(jù)采集與管理軟件,工廠能獲得的報告形式如圖6所示,管理層與生產(chǎn)部門無法及時獲取質(zhì)量信息,與檢測部門數(shù)據(jù)交互困難。
▲圖5 OPC UA客戶端工作流程圖
▲圖6 三坐標(biāo)測量機原測量數(shù)據(jù)報告
將基于OPC UA的質(zhì)量信息集成技術(shù)應(yīng)用于工業(yè)4.0液壓閥示范生產(chǎn)線,開發(fā)出Duramax三坐標(biāo)測量機的OPC UA服務(wù)器與集成在ActiveCockpit智能動態(tài)可視化生產(chǎn)管理系統(tǒng)的OPC UA客戶端。運行OPC UA服務(wù)器和客戶端,智能動態(tài)可視化生產(chǎn)管理系統(tǒng)的液壓閥閥體質(zhì)量數(shù)據(jù)監(jiān)測界面如圖7所示,實現(xiàn)了對測量設(shè)備上被測加工工件的質(zhì)量數(shù)據(jù)實時監(jiān)測。由于整個工業(yè)4.0液壓閥示范生產(chǎn)線都采用了OPC UA接口,因此,液壓閥閥體的質(zhì)量信息同時還能與制造示范線上的其它各類信息數(shù)據(jù)集成,構(gòu)建了符合工業(yè)4.0理念的信息物理系統(tǒng),管理層可以方便及時地實現(xiàn)對整個工業(yè)現(xiàn)場的管理與監(jiān)控。
▲圖7 ActiveCockpit液壓閥閥體質(zhì)量數(shù)據(jù)集成監(jiān)控界面
通過深入研究OPC UA技術(shù)規(guī)范,基于OPC UA技術(shù),使用C++編程語言和Node.js運行環(huán)境為測量設(shè)備開發(fā)了OPC UA服務(wù)器和OPC UA客戶端,不僅統(tǒng)一了測量設(shè)備與其它生產(chǎn)設(shè)備、監(jiān)控管理設(shè)備的數(shù)據(jù)交互接口,而且實時、有效地集成了質(zhì)量數(shù)據(jù)與過程數(shù)據(jù)。基于OPC UA技術(shù)的質(zhì)量數(shù)據(jù)監(jiān)測系統(tǒng),實現(xiàn)了對產(chǎn)品質(zhì)量數(shù)據(jù)的實時監(jiān)控,使管理層能夠?qū)崟r監(jiān)測產(chǎn)品加工質(zhì)量,并依據(jù)實際質(zhì)量數(shù)據(jù),管理和調(diào)整產(chǎn)品的生產(chǎn)制造,有效提高了生產(chǎn)效率。