郭井寬, 楊家榮
上海電氣集團(tuán)股份有限公司 中央研究院 上海 200070
當(dāng)前,工業(yè)互聯(lián)網(wǎng)發(fā)展如火如荼,無(wú)論是對(duì)智能制造,還是對(duì)智能運(yùn)維而言,借助工業(yè)互聯(lián)網(wǎng)實(shí)現(xiàn)數(shù)字互聯(lián),將整個(gè)企業(yè)從底層設(shè)備和現(xiàn)場(chǎng)傳感器到機(jī)器的生產(chǎn)數(shù)據(jù)、工藝數(shù)據(jù)、能耗數(shù)據(jù)等采集起來(lái),為全局生產(chǎn)優(yōu)化和運(yùn)營(yíng)管理提供數(shù)據(jù)分析的基礎(chǔ),是當(dāng)前企業(yè)轉(zhuǎn)型的一條普遍路徑。然而,在推進(jìn)工業(yè)互聯(lián)網(wǎng)平臺(tái)的過(guò)程中,企業(yè)普遍反映面臨數(shù)據(jù)缺少和采集困難等問(wèn)題。雖然不少主流自動(dòng)化供應(yīng)商提供了從控制層到信息層的各種連接和數(shù)據(jù)交互解決方案,但是現(xiàn)實(shí)情況是很少有企業(yè)的所有設(shè)備或控制器均由一家供應(yīng)商提供,這導(dǎo)致在設(shè)備與控制器之間的信息交互方面,仍存在一定程度的困難和障礙。目前工業(yè)上用于通信的主要有現(xiàn)場(chǎng)總線、工業(yè)以太網(wǎng)等多種方式,由于早期的發(fā)展和競(jìng)爭(zhēng),用于通信的現(xiàn)場(chǎng)總線種類繁多,沒(méi)有統(tǒng)一的標(biāo)準(zhǔn),不同總線之間的數(shù)據(jù)傳輸與信息共享無(wú)法直接實(shí)現(xiàn),尤其是異構(gòu)網(wǎng)絡(luò)和各種型號(hào)、代次的產(chǎn)品與設(shè)備交叉混合使用,使工業(yè)現(xiàn)場(chǎng)的數(shù)據(jù)采集成為當(dāng)前工業(yè)互聯(lián)網(wǎng)推進(jìn)過(guò)程中的一大難題。由此可見(jiàn),應(yīng)用于過(guò)程控制的對(duì)象連接與嵌入(OPC)技術(shù)在工業(yè)互聯(lián)網(wǎng)中的應(yīng)用具有重要意義。
工業(yè)企業(yè)現(xiàn)場(chǎng)車間有機(jī)床、控制器等不同設(shè)備,接口形式不同,協(xié)議不同,訪問(wèn)連接的物理方式也不同,有的還在使用RS 232接口等方式,或通過(guò)專用的讀卡接口來(lái)訪問(wèn)數(shù)據(jù)。隨著工廠、車間自動(dòng)化與智能化的推進(jìn),人們對(duì)制造協(xié)同有越來(lái)越高的要求。企業(yè)中大量設(shè)備間的交互和連接是必須要實(shí)現(xiàn)的,而各臺(tái)機(jī)器所采用的卻是不同的通信協(xié)議。1995年,由羅克韋爾等企業(yè)發(fā)起,成立了OPC基金會(huì)。OPC技術(shù)的出現(xiàn),實(shí)現(xiàn)了不同設(shè)備廠商產(chǎn)品之間的相互集成與連接,為設(shè)備之間的通信和數(shù)據(jù)轉(zhuǎn)發(fā)提供了一個(gè)標(biāo)準(zhǔn)平臺(tái)。OPC技術(shù)中的對(duì)象連接與嵌入(OLE)技術(shù),與ActiveX等技術(shù)一樣,也是微軟基于組件對(duì)象模型(COM)技術(shù)而建立起來(lái)的[1]。隨著技術(shù)的發(fā)展和市場(chǎng)需求的提升,COM等技術(shù)已逐漸淘汰,與此相對(duì)應(yīng),OPC技術(shù)在不斷發(fā)展和進(jìn)步。OPC技術(shù)主要經(jīng)歷了三個(gè)階段:經(jīng)典OPC階段、OPC可擴(kuò)展標(biāo)記語(yǔ)言-數(shù)據(jù)訪問(wèn)(XML-DA)階段和OPC統(tǒng)一架構(gòu)(UA)階段。
在經(jīng)典OPC階段,OPC技術(shù)主要包括OPC數(shù)據(jù)訪問(wèn)(DA)接口、OPC報(bào)警與事件(AE)接口、OPC歷史數(shù)據(jù)訪問(wèn)(HDA)接口等,提供了一整套過(guò)程控制中數(shù)據(jù)交換的軟件標(biāo)準(zhǔn)和接口[2]。其中,OPC DA接口定義了數(shù)據(jù)交換的規(guī)范,OPC AE接口定義了報(bào)警、事件消息、變量的狀態(tài)及如何管理,HDA接口定義了訪問(wèn)及分析歷史數(shù)據(jù)的方法[3]。
在經(jīng)典OPC階段,OPC軟件可以分為OPC服務(wù)器軟件和OPC客戶端兩大類。OPC服務(wù)器軟件是整個(gè)系統(tǒng)的核心,對(duì)可編程序控制器(PLC)等現(xiàn)場(chǎng)設(shè)備的硬件驅(qū)動(dòng)進(jìn)行了很好的封裝,使客戶端在需要訪問(wèn)設(shè)備時(shí),不需要考慮具體的連接方式、通信協(xié)議等內(nèi)容。在實(shí)際通信時(shí),服務(wù)器與可編程序控制器等現(xiàn)場(chǎng)設(shè)備連接,通過(guò)驅(qū)動(dòng)程序?qū)⒏鞣N不同的現(xiàn)場(chǎng)總線、通信協(xié)議轉(zhuǎn)換為統(tǒng)一的OPC協(xié)議。另一方面,通過(guò)標(biāo)準(zhǔn)OPC協(xié)議也可以與OPC客戶端軟件進(jìn)行通信,實(shí)現(xiàn)將數(shù)據(jù)傳送至客戶端進(jìn)行操作,或?qū)?lái)自客戶端的指令發(fā)送至可編程序控制器等現(xiàn)場(chǎng)設(shè)備,實(shí)現(xiàn)控制的目標(biāo)。經(jīng)典OPC階段通信原理如圖1所示。
圖1 經(jīng)典OPC階段通信原理
在經(jīng)典OPC階段,OPC技術(shù)隨著發(fā)展及外部因素的變化,已經(jīng)不能完全滿足工業(yè)領(lǐng)域不斷發(fā)展的需求,主要表現(xiàn)在三個(gè)方面[4]。
(1) 由于安全性原因,微軟已經(jīng)弱化淘汰COM這種技術(shù),進(jìn)而轉(zhuǎn)向了跨平臺(tái)的面向服務(wù)的架構(gòu)(SOA)技術(shù)。
(2) OPC DA接口、OPC AE接口、OPC HDA接口地址完全獨(dú)立,開(kāi)發(fā)時(shí)需要分別調(diào)用,為開(kāi)發(fā)帶來(lái)了不便,并提高了難度。而OPC供應(yīng)商則希望提供一種數(shù)據(jù)模型,將所有接口統(tǒng)一起來(lái)。
(3) 為了應(yīng)對(duì)許多控制器基于嵌入式LINUX等操作系統(tǒng)進(jìn)行開(kāi)發(fā)的現(xiàn)狀,企業(yè)希望將技術(shù)應(yīng)用到非視窗操作系統(tǒng),終端用戶更是希望能夠在設(shè)備硬件的固件程序中直接訪問(wèn)OPC服務(wù)器軟件。
由于網(wǎng)絡(luò)防火墻會(huì)過(guò)濾掉大多數(shù)基于COM技術(shù)傳輸?shù)臄?shù)據(jù),加之為了適應(yīng)跨平臺(tái)和網(wǎng)絡(luò)連接下遠(yuǎn)程控制和訪問(wèn)等的要求,出現(xiàn)了XML技術(shù)和Web服務(wù),因此OPC基金會(huì)著手制訂了新的OPC XML-DA規(guī)范。這是第一個(gè)平臺(tái)獨(dú)立的OPC規(guī)范,使用超文本傳輸協(xié)議(HTTP)/簡(jiǎn)單對(duì)象訪問(wèn)協(xié)議(SOAP)和Web服務(wù)技術(shù)替代普通COM和分布式COM。受限于當(dāng)時(shí)的網(wǎng)絡(luò)傳輸帶寬等因素,OPC XML-DA規(guī)范將數(shù)據(jù)交換的方法減到最少,以便于網(wǎng)絡(luò)和企業(yè)信息的集成,同時(shí)解決了多個(gè)平臺(tái)之間的互操作性問(wèn)題,使嵌入式系統(tǒng)和非視窗操作系統(tǒng)也能使用OPC技術(shù)[5]。但是,由于數(shù)據(jù)傳輸效率的問(wèn)題,對(duì)數(shù)據(jù)傳輸有較高要求的場(chǎng)合仍然在使用經(jīng)典OPC階段的OPC技術(shù),OPC XML-DA規(guī)范的使用場(chǎng)合較少。
OPC UA是OPC基金會(huì)發(fā)布的一種最新通信方法,涵蓋了OPC DA、OPC HDA、OPC AE和OPC安全協(xié)議,在原有OPC技術(shù)的基礎(chǔ)上進(jìn)行了功能擴(kuò)展。OPC UA可以在視窗、LINUX等多種操作系統(tǒng)中運(yùn)行,適用于嵌入式設(shè)備和云設(shè)施。此外,OPC UA對(duì)模型架構(gòu)進(jìn)行了改進(jìn),如圖2所示。圖2中,JSON為JavaScript對(duì)象簡(jiǎn)譜,TCP為傳輸控制協(xié)議,UADP為統(tǒng)一訪問(wèn)數(shù)據(jù)平臺(tái),DUP為用戶數(shù)據(jù)報(bào)協(xié)議,TSN為時(shí)間敏感網(wǎng)絡(luò),MQTT為消息隊(duì)列遙測(cè)傳輸,AMQP為高級(jí)消息隊(duì)列協(xié)議。OPC UA彌補(bǔ)了許多早期OPC技術(shù)的不足,通信性能有了大幅提高,通信范圍也更廣。OPC UA已經(jīng)是工業(yè)自動(dòng)化領(lǐng)域眾所周知的通信方法,當(dāng)前,OPC基金會(huì)正在大力推動(dòng)OPC UA的開(kāi)發(fā)與應(yīng)用。
圖2 OPC UA模型架構(gòu)
隨著工業(yè)互聯(lián)網(wǎng)的發(fā)展,工業(yè)網(wǎng)絡(luò)將會(huì)面臨一項(xiàng)重要挑戰(zhàn),即要能夠承載系統(tǒng)中設(shè)備之間大規(guī)模的數(shù)據(jù)交互、信息融合與實(shí)時(shí)互操作。工業(yè)網(wǎng)絡(luò)對(duì)傳輸確定性、實(shí)時(shí)性、可靠性的要求都非常高,傳統(tǒng)以太網(wǎng)的通信機(jī)制是在網(wǎng)絡(luò)出現(xiàn)沖突時(shí)不斷重發(fā)數(shù)據(jù),顯然難以保證工業(yè)領(lǐng)域?qū)鬏攲?shí)時(shí)性的要求。另一方面,工業(yè)現(xiàn)場(chǎng)工況普遍較差,電磁干擾較多,同樣給傳輸?shù)目煽啃詭?lái)了較大的挑戰(zhàn)。雖然工業(yè)以太網(wǎng)相對(duì)于傳統(tǒng)以太網(wǎng)在實(shí)時(shí)性和傳輸速率方面有明顯改進(jìn),在滿足現(xiàn)場(chǎng)設(shè)備的控制要求等方面已經(jīng)表現(xiàn)相當(dāng)出色,但是面對(duì)工業(yè)互聯(lián)網(wǎng)時(shí)代仍然存在明顯短板。通信數(shù)據(jù)已經(jīng)不僅僅局限于設(shè)備和設(shè)備之間,還有各類傳感器、邊緣設(shè)備等都會(huì)接入網(wǎng)絡(luò),在面對(duì)各種類型及采集頻率的數(shù)據(jù)需要傳輸和處理時(shí),如何做到更精準(zhǔn)的控制和更短的延時(shí),是工業(yè)界面臨的一項(xiàng)重要挑戰(zhàn)。由此可見(jiàn),新一代工業(yè)網(wǎng)絡(luò)必須同時(shí)具備大帶寬、高速率和實(shí)時(shí)確定性的特性,這是現(xiàn)階段各大廠商對(duì)產(chǎn)品在網(wǎng)絡(luò)接口和通信協(xié)議方面進(jìn)行升級(jí)的一個(gè)重要方向。鑒于當(dāng)前工業(yè)系統(tǒng)的總體規(guī)模和復(fù)雜性不僅體現(xiàn)在同一協(xié)議網(wǎng)絡(luò)內(nèi)各設(shè)備之間,而且體現(xiàn)在跨協(xié)議、跨網(wǎng)絡(luò)系統(tǒng)之間,由此在交互時(shí)必須要考慮實(shí)時(shí)通信和互操作的解決方案。從通信協(xié)議的模型架構(gòu)看,解決方案主要分為數(shù)據(jù)傳輸和語(yǔ)義解析兩個(gè)層面。
在數(shù)據(jù)傳輸層面,目前大部分工業(yè)以太網(wǎng)協(xié)議都采用了以太網(wǎng)的物理介質(zhì)和TCP/網(wǎng)際協(xié)議(IP)的傳輸方式。為了達(dá)到數(shù)據(jù)通信實(shí)時(shí)確定性的要求,對(duì)數(shù)據(jù)鏈路層進(jìn)行不同程度的修改,在提升通信速率和帶寬的同時(shí),引入一種通用的實(shí)時(shí)確定性機(jī)制。TSN技術(shù)的出現(xiàn),保證了網(wǎng)絡(luò)短延時(shí)、高可靠性的要求,其核心技術(shù)包括網(wǎng)絡(luò)帶寬預(yù)留、精確時(shí)鐘同步、流量整形等[6]。
在語(yǔ)義解析層面,主要難點(diǎn)是各家廠商不同通信協(xié)議帶來(lái)的跨網(wǎng)絡(luò)互操作問(wèn)題??紤]到工業(yè)領(lǐng)域產(chǎn)品與應(yīng)用的復(fù)雜性和多樣性,各家廠商不會(huì)輕易放棄已有的標(biāo)準(zhǔn)和接口,應(yīng)用數(shù)據(jù)模型方面的差異必定會(huì)長(zhǎng)期存在。一些主流廠商正在試圖借助OPC UA來(lái)解決不同協(xié)議體系之間的互操作問(wèn)題。OPC UA作為一種設(shè)備互聯(lián)方法,實(shí)質(zhì)是由硬件供應(yīng)商、軟件開(kāi)發(fā)者、終端用戶共同制定和開(kāi)發(fā)的一整套規(guī)范,基本原理是將設(shè)備或系統(tǒng)間互操作所需的應(yīng)用數(shù)據(jù)由內(nèi)置的OPC UA數(shù)據(jù)端口以服務(wù)器-客戶端或訂閱-發(fā)布的形式進(jìn)行交互處理,從而實(shí)現(xiàn)相應(yīng)的通信操作[7]。當(dāng)前,施耐德、倍福、西門子、霍尼韋爾等廠商,以及微軟、華為等軟件企業(yè)都已集成或納入OPC UA,我國(guó)國(guó)家標(biāo)準(zhǔn)GB/T 33863—2017《OPC統(tǒng)一架構(gòu)》已經(jīng)發(fā)布,智能制造體系中也已經(jīng)將OPC UA納入了互操作規(guī)范[8]。
由OPC UA和TSN構(gòu)成的工業(yè)互聯(lián)網(wǎng)架構(gòu)如圖3所示。圖3中,TLS為安全傳輸層協(xié)議。OPC UA和TSN解決了互聯(lián)網(wǎng)對(duì)應(yīng)在工業(yè)領(lǐng)域的七層架構(gòu)問(wèn)題[9],不同模式適用于不同系統(tǒng),如服務(wù)器-客戶端模式能夠使傳統(tǒng)自動(dòng)化系統(tǒng)確保兼容性,訂閱-發(fā)布機(jī)制適合邊緣、云架構(gòu)的連接。最新發(fā)布的OPC UA納入了許多新技術(shù),如對(duì)原有的MQTT/AMQP機(jī)制進(jìn)行了集成,納入了由德國(guó)機(jī)械設(shè)備制造業(yè)聯(lián)合會(huì)機(jī)器視覺(jué)部主持開(kāi)發(fā)的機(jī)器視覺(jué)配套規(guī)范,以滿足當(dāng)前智能化浪潮下機(jī)器人對(duì)在制品位置、幾何尺寸等的識(shí)別需求,進(jìn)而方便機(jī)器人完成各種抓取、分揀工作。
圖3 由OPC UA和TSN構(gòu)成的工業(yè)互聯(lián)網(wǎng)架構(gòu)
當(dāng)前,OPC UA成為自動(dòng)化和信息化系統(tǒng)廠商關(guān)注的焦點(diǎn)。OPC UA為工業(yè)互聯(lián)網(wǎng)提供了一個(gè)標(biāo)準(zhǔn)與規(guī)范,其信息模型為工業(yè)互聯(lián)網(wǎng)的應(yīng)用和實(shí)施提供了更高效的數(shù)據(jù)采集、傳輸與應(yīng)用功能,同時(shí)可以降低開(kāi)發(fā)、測(cè)試驗(yàn)證、維護(hù)、升級(jí)的難度和成本[10-11]。未來(lái),由OPC UA和TSN構(gòu)成的采集系統(tǒng)將會(huì)成為邊緣計(jì)算端、云端等應(yīng)用的數(shù)據(jù)源。隨著數(shù)據(jù)采集成本的降低,移動(dòng)終端完全可以代替?zhèn)鹘y(tǒng)的人機(jī)界面為工程師顯示現(xiàn)場(chǎng)的狀態(tài)。與此同時(shí),機(jī)器制造商可以為客戶提供基于數(shù)據(jù)驅(qū)動(dòng)的服務(wù),包括預(yù)測(cè)性維護(hù)、基于時(shí)間的服務(wù)租用、智能運(yùn)維等,更為出色地發(fā)揮自身的技術(shù)能力,從而獲得盈利。如果數(shù)據(jù)采集通道不暢通,工業(yè)互聯(lián)網(wǎng)就無(wú)法發(fā)揮出價(jià)值。由此可見(jiàn),通過(guò)應(yīng)用OPC技術(shù),使信息在不同平臺(tái)間交換暢通無(wú)阻,從而節(jié)省軟件開(kāi)發(fā)時(shí)間,加快工業(yè)互聯(lián)網(wǎng)數(shù)據(jù)的采集和融合,進(jìn)而使整個(gè)制造業(yè)實(shí)現(xiàn)生產(chǎn)效能提升,具有重要意義。