張 蕾
( 中國電子科技集團(tuán)公司第二研究所, 太原030024)
典型的物聯(lián)網(wǎng)是通過信息傳感設(shè)備,按照約定協(xié)議將任意物品接入互聯(lián)網(wǎng),組成無時空限制的物聯(lián)網(wǎng)絡(luò)拓?fù)洌琁IOT 自底向上可分為三層:感知層、網(wǎng)絡(luò)層和應(yīng)用層[1]。
工業(yè)應(yīng)用環(huán)境中,物聯(lián)網(wǎng)架構(gòu)在感知層對數(shù)據(jù)采集的實(shí)時性有著更加嚴(yán)格的要求,傳統(tǒng)的物聯(lián)網(wǎng)中數(shù)據(jù)采集后需要通過網(wǎng)絡(luò)層,傳輸層,應(yīng)用層,經(jīng)過處理加工以后,數(shù)據(jù)按照原路反饋至感知層才可進(jìn)行下一步操作。由于網(wǎng)絡(luò)層中以太網(wǎng)和電信網(wǎng)缺乏實(shí)時性的保障,在高速率、海量數(shù)據(jù)的傳輸中造成數(shù)據(jù)傳輸滯后。加上不同企業(yè)為了在其管理范圍內(nèi)進(jìn)行數(shù)據(jù)采集與監(jiān)視,都具有自己專有的一套SCADA(Supervisory Control And Data Acquisition)系統(tǒng),即監(jiān)制與數(shù)據(jù)采集系統(tǒng)。如何將其與互聯(lián)網(wǎng)進(jìn)行有機(jī)融合,為區(qū)分層級傳輸與緩存至SCADA 數(shù)據(jù)庫的數(shù)據(jù)集合,本文在傳統(tǒng)物聯(lián)網(wǎng)架構(gòu)中增加了現(xiàn)場管理層。工業(yè)物聯(lián)網(wǎng)(IIOT)的典型架構(gòu)如圖1 所示。
圖1 IIOT 四層體系架構(gòu)圖
感知層通過傳感器、掃描儀、射頻等設(shè)備進(jìn)行數(shù)據(jù)采集。
現(xiàn)場管理層主要指工廠的本地調(diào)度管理中心,融合在企業(yè)的工業(yè)監(jiān)控系統(tǒng)中。調(diào)度中心統(tǒng)籌整個工業(yè)系統(tǒng)的數(shù)據(jù)傳輸、甄別數(shù)據(jù)類別、來源,及時處理底層采集的數(shù)據(jù),其可編程的特點(diǎn)為整個網(wǎng)絡(luò)提供快了速數(shù)據(jù)響應(yīng)、過程指令控制等功能。此外,通過該層的web 服務(wù)器、數(shù)據(jù)庫服務(wù)器,調(diào)度中心可對外提供數(shù)據(jù)接口,并將傳感器采集的數(shù)據(jù)實(shí)時傳輸至應(yīng)用層,對后續(xù)數(shù)據(jù)處理分析與應(yīng)用起到了重要的作用。
網(wǎng)絡(luò)層是連接感知層與應(yīng)用層的橋梁,負(fù)責(zé)體系中的網(wǎng)絡(luò)組建,異構(gòu)網(wǎng)絡(luò)相連,并依托大數(shù)據(jù)、云計算等技術(shù)進(jìn)行海量信息智能處理。
應(yīng)用層位于體系的最上層,通過處理不同的業(yè)務(wù)需求,整合分析底層傳輸?shù)臄?shù)據(jù)信息,并對外提供相應(yīng)的解決方案。
SCADA 系統(tǒng)在IIOT 體系結(jié)構(gòu)中面向現(xiàn)場管理層,它可以通過與工業(yè)機(jī)器人、傳感器、PLC 等通訊實(shí)現(xiàn)數(shù)據(jù)采集和設(shè)備生產(chǎn)過程監(jiān)控。同時,也為車間的運(yùn)營管理提供統(tǒng)一的數(shù)據(jù)基礎(chǔ),是連接車間MES系統(tǒng)和生產(chǎn)線自動化設(shè)備之間的紐帶,如圖2 所示。
在SCADA 系統(tǒng)中通過多種驅(qū)動和協(xié)議與設(shè)備層進(jìn)行數(shù)據(jù)交互,其中過程控制統(tǒng)一架構(gòu)(OPC UA)提供了統(tǒng)一的標(biāo)準(zhǔn)技術(shù)框架,是工業(yè)4.0 中解決跨層級數(shù)據(jù)交互一種數(shù)據(jù)通信標(biāo)準(zhǔn)。OPC UA作為一種面向服務(wù)的協(xié)議,其目的是為了使工業(yè)化通訊更加標(biāo)準(zhǔn)化[2]。它具有以下優(yōu)點(diǎn):
圖2 SCADA 系統(tǒng)架構(gòu)
(1) 傳輸性能高。OPC UA 數(shù)據(jù)幀采用二進(jìn)制或XML 格式進(jìn)行編碼,通信過程中可以根據(jù)實(shí)際情況需要自動選擇傳輸效率更高的編碼類型。此外,OPC UA 還支持HTTP 和TCP/IP 等多種網(wǎng)絡(luò)協(xié)議。在面向上層服務(wù)器數(shù)據(jù)交互時,通常采用XML 格式通過HTTP 進(jìn)行傳遞,便于應(yīng)用層獲取結(jié)構(gòu)化數(shù)據(jù);而面向設(shè)備層時,往往采用二進(jìn)制格式編碼通過TCP/IP 協(xié)議通信,以提高底層控制器的訪問效率。
(2)通信機(jī)制可靠。OPC UA 通過數(shù)據(jù)加密、標(biāo)記等技術(shù)保證了數(shù)據(jù)可靠性,拒絕非授權(quán)訪問導(dǎo)致的信息泄露,同時,OPC UA 的訪問規(guī)范要求應(yīng)用程序必須執(zhí)行安全協(xié)議,因此其通信機(jī)制可靠性和安全性較高。
(3)平臺無關(guān)性。OPC UA 協(xié)議采用面向服務(wù)的架構(gòu),獨(dú)立于操作系統(tǒng)實(shí)現(xiàn),支持多種底層設(shè)備的數(shù)據(jù)通訊接口,使其能更靈活的進(jìn)行數(shù)據(jù)交換,可以連接不同廠商的設(shè)備,實(shí)現(xiàn)自底向上或由上而下的數(shù)據(jù)集成,極大地增強(qiáng)了其擴(kuò)展性。
(4)實(shí)現(xiàn)統(tǒng)一訪問。OPC UA 將地址空間集成到服務(wù)端,可以構(gòu)建復(fù)雜的數(shù)據(jù)結(jié)構(gòu),用統(tǒng)一抽象的模型描述各類設(shè)備,從而實(shí)現(xiàn)節(jié)點(diǎn)的統(tǒng)一訪問。
OPC UA 基于面向?qū)ο蟮男畔⒔7椒?,其最小單元稱之為節(jié)點(diǎn)。通過節(jié)點(diǎn)間的引用關(guān)系形成層次化結(jié)構(gòu),將一系列節(jié)點(diǎn)統(tǒng)一到地址空間中。節(jié)點(diǎn)由節(jié)點(diǎn)屬性和引用構(gòu)成,屬性是節(jié)點(diǎn)特征化數(shù)據(jù)的抽象描述,引用定義了節(jié)點(diǎn)間的關(guān)系,如圖3 所示。
圖3 OPC UA 節(jié)點(diǎn)建模
OPC UA 采用Client/Server 模式,如圖4 所示,OPC UA 客戶端通過通信棧發(fā)送請求信息到OPC UA 服務(wù)端,服務(wù)端對請求數(shù)據(jù)進(jìn)行解析,將相應(yīng)節(jié)點(diǎn)數(shù)據(jù)通過消息棧發(fā)送響應(yīng)信息回傳給客戶端。
圖4 基于C/S 架構(gòu)的OPC UA 通信模式
OPC UA 的數(shù)據(jù)通信的一般流程為:
(1) 對底層設(shè)備信息建模,并在數(shù)據(jù)中心數(shù)據(jù)庫中進(jìn)行描述,結(jié)合設(shè)備層級關(guān)系,加入節(jié)點(diǎn)引用標(biāo)記;
(2) 調(diào)用OPC UA 服務(wù)器定義的API 接口,并針對底層設(shè)備模型(真實(shí)對象)構(gòu)建相應(yīng)的OPC UA 服務(wù)器;
(3) 將設(shè)備層需要采集或控制的數(shù)據(jù)在服務(wù)器節(jié)點(diǎn)中進(jìn)行裝載封裝,提供客戶端調(diào)用;
(4) 在應(yīng)用層構(gòu)建OPC UA 客戶端,解析服務(wù)端響應(yīng)請求中的數(shù)據(jù);
(5) 讀取數(shù)據(jù)庫中相應(yīng)信息完成數(shù)據(jù)采集工作,或向數(shù)據(jù)庫寫入數(shù)據(jù)實(shí)現(xiàn)設(shè)備驅(qū)動。
針對數(shù)字化車間無統(tǒng)一通信協(xié)議導(dǎo)致信息流不暢、數(shù)據(jù)實(shí)時性較差的弊端,采用OPC UA 對數(shù)字化車間的通xun 架構(gòu)進(jìn)行了構(gòu)建,如圖5 所示。
圖5 數(shù)字化車間通信架構(gòu)
數(shù)字化車間通信架構(gòu)主要包括四個層級,分別為:
設(shè)備層:由PLC 設(shè)備、數(shù)控設(shè)備、傳感器、工業(yè)機(jī)器人等構(gòu)成。在設(shè)備層中,將各類設(shè)備統(tǒng)一抽象映射到OPC UA 地址空間中,把設(shè)備數(shù)據(jù)和訪問控制方法封裝為定義為服務(wù)器節(jié)點(diǎn),通過訂閱/發(fā)布模式對外發(fā)布應(yīng)用程序。而設(shè)備間也可以通過在設(shè)備上分別構(gòu)建OPC UA 客戶端來的進(jìn)行數(shù)據(jù)交互。
數(shù)據(jù)通信層:核心是SCADA 系統(tǒng),由SCADA 服務(wù)端為MES 等管理信息系統(tǒng)提供數(shù)據(jù),向下通過設(shè)備層客戶端讀取或?qū)懭牍?jié)點(diǎn)數(shù)據(jù),實(shí)現(xiàn)對設(shè)備數(shù)據(jù)的采集和設(shè)備控制。
制造執(zhí)行層:通過在MES 系統(tǒng)中構(gòu)建OPC UA 客戶端,向SCADA 系統(tǒng)采集設(shè)備狀態(tài)、質(zhì)量等過程數(shù)據(jù),派發(fā)工單指令,驅(qū)動設(shè)備生產(chǎn)。向上傳遞生產(chǎn)過程信息,實(shí)現(xiàn)與ERP 等系統(tǒng)的集成。
企業(yè)數(shù)據(jù)決策層:面向ERP 等企業(yè)管理信息平臺,主要作用為向MES 下達(dá)生產(chǎn)計劃,通過豐富的UI 界面展現(xiàn)車間運(yùn)行狀態(tài),輔助決策。
以數(shù)字化車間中常見的PLC 設(shè)備為例,從數(shù)據(jù)采集和設(shè)備監(jiān)控兩方面對OPC UA 數(shù)據(jù)通信進(jìn)行分析,如圖6 所示。
圖6 典型OPC UA 數(shù)據(jù)通信應(yīng)用
(1)數(shù)據(jù)采集時,PLC 設(shè)備將數(shù)據(jù)采集程序封裝成API 接口,裝載到OPC UA 服務(wù)端,等待OPC UA 客戶端的調(diào)用,客戶端調(diào)用成功后將設(shè)備數(shù)據(jù)存儲到數(shù)據(jù)庫中,最后傳遞給MES 系統(tǒng)。
(2)設(shè)備控制時,在MES 端構(gòu)建客戶端,下達(dá)設(shè)備控制指令,通過OPC UA 協(xié)議,調(diào)API 接口,OPC UA 服務(wù)端解析客戶端請求數(shù)據(jù)幀,通過具體的PLC 控制程序?qū)崿F(xiàn)設(shè)備驅(qū)動。對應(yīng)工序結(jié)束后,依次反饋完成信號,逐級發(fā)送響應(yīng)數(shù)據(jù)。
面向數(shù)字化車間存在不同種類設(shè)備的特點(diǎn),基于OPC UA 重構(gòu)數(shù)字化車間數(shù)據(jù)通信方式,OPC UA 協(xié)議通過在地址空間中的映射,實(shí)現(xiàn)語義統(tǒng)一條件下的建模,構(gòu)建標(biāo)準(zhǔn)化的接口規(guī)范,打通了各層數(shù)據(jù)的壁壘。并且適配各類設(shè)備驅(qū)動,無需針對性定制化開發(fā),降低成本投入,也提高了系統(tǒng)的可重用性和擴(kuò)展性。通過對節(jié)點(diǎn)進(jìn)行數(shù)據(jù)封裝,大大提高了資源模型的重用性。同時,OPC UA 將設(shè)備數(shù)據(jù)存放于數(shù)據(jù)中心,為制造執(zhí)行和企業(yè)決策以及大數(shù)據(jù)應(yīng)用提供了數(shù)據(jù)支撐。
OPC UA 的通訊架構(gòu)基于工業(yè)以太網(wǎng),雖然能夠保證傳輸速率和數(shù)據(jù)實(shí)時性,但缺乏與無線設(shè)備通訊,在很大程度上增加了它的局限性。隨著5G技術(shù)的飛速發(fā)展,其未來應(yīng)用場景會更加豐富。