連磊
[摘? ? 要]散貨工業(yè)自動(dòng)化堆取料控制系統(tǒng)中,最終客戶端需要能夠連接多臺(tái)設(shè)備,對(duì)多個(gè)服務(wù)器進(jìn)行數(shù)據(jù)的監(jiān)控,轉(zhuǎn)儲(chǔ);現(xiàn)場(chǎng)使用的AC800M系列PLC,通過使用ABB組態(tài)軟件OPC SERVER FOR AC800M_5.1能夠?qū)崿F(xiàn)客戶端與服務(wù)器間兩臺(tái)計(jì)算機(jī)間的OPC數(shù)據(jù)訪問連接,但其僅能實(shí)現(xiàn)單對(duì)單的連接,無法滿足現(xiàn)場(chǎng)一臺(tái)客戶端計(jì)算機(jī)讀取多臺(tái)服務(wù)器端計(jì)算機(jī)和工控PLC間的數(shù)據(jù)需求。如何通過OPC DA 協(xié)議將服務(wù)器計(jì)算機(jī)上的監(jiān)控?cái)?shù)據(jù)轉(zhuǎn)存到OPC UA協(xié)議計(jì)算機(jī)服務(wù)器上,以及客戶端計(jì)算機(jī)如何進(jìn)行遠(yuǎn)程訪問OPC UA計(jì)算機(jī)服務(wù)器上的數(shù)據(jù),從而實(shí)現(xiàn)多對(duì)多的數(shù)據(jù)訪問傳輸,以及借此方式如何通過上位機(jī)通訊組態(tài)以達(dá)到中控遠(yuǎn)程操作時(shí)能夠?qū)υO(shè)備當(dāng)前狀態(tài)進(jìn)行實(shí)時(shí)的監(jiān)控和遠(yuǎn)程的控制。
[關(guān)鍵詞]ABB;OPC UA服務(wù)器;OPC DA服務(wù)器;PLC;工業(yè)系統(tǒng);上位機(jī)
[中圖分類號(hào)]U673.3 [文獻(xiàn)標(biāo)志碼]A [文章編號(hào)]2095–6487(2021)07–0–03
Data Transmission between ABB server and Client?Based on OPC UA and OPC DA Protocol
Lian Lei
[Abstract]In the bulk cargo industrial automation stacking and reclaiming control system, the final client needs to be able to connect multiple devices to monitor and dump data on multiple servers; the AC800M series PLC used on site, through the use of ABB configuration software OPC SERVER FOR AC800M_5.1 can realize the OPC data access connection between the two computers between the client and the server, but it can only realize a one-to-one connection, which cannot meet the requirements of a client computer to read multiple server-side computers and industrial control on site Data requirements between PLCs. How to transfer the monitoring data on the server computer to the OPC UA protocol computer server through the OPC DA protocol and how the client computer remotely access the data on the OPC UA computer server, so as to realize the many-to-many data access transmission and use this How to achieve real-time monitoring and remote control of the current state of the equipment through the communication configuration of the upper computer to achieve the remote operation of the central control.
[Keywords]ABB; OPC UA server; OPC DA server; PLC; industrial system; host computer
1 概述
無人散貨碼頭和自動(dòng)化作業(yè)趨勢(shì),在當(dāng)前時(shí)代潮流中愈演愈烈。為使中控操作站能夠有效地對(duì)現(xiàn)場(chǎng)設(shè)備進(jìn)行數(shù)據(jù)采集、參數(shù)調(diào)整、歷史數(shù)據(jù)和故障查詢、進(jìn)行數(shù)據(jù)備份,需要一種通訊方式,解決中控操作站與多個(gè)現(xiàn)場(chǎng)設(shè)備間的通訊問題??紤]到散貨碼頭現(xiàn)場(chǎng)取料機(jī)、堆料機(jī)、卸船機(jī)等作業(yè)設(shè)備采用的工控PLC以AC800M系列居多的情況,本文針對(duì)如何使用KEPSERVER、ABB OPC SERVER以及CIMPLICITY等軟件,利用OPC DA、OPC UA通訊協(xié)議,實(shí)現(xiàn)客戶端計(jì)算機(jī)讀取多臺(tái)服務(wù)器端計(jì)算機(jī)數(shù)據(jù)的通訊方式和上位機(jī)監(jiān)控方式,做以下分析。
2 OPC DA及OPC UA技術(shù)簡介
伴隨著工業(yè)信息技術(shù)的快速發(fā)展,傳統(tǒng)工業(yè)控制系統(tǒng)中不同廠家的非標(biāo)準(zhǔn)通信方式導(dǎo)致系統(tǒng)的可靠性、穩(wěn)定性及擴(kuò)展性較差,不利于系統(tǒng)的后期拓展及維護(hù),阻礙了工控行業(yè)的自動(dòng)化、智能化發(fā)展。為了解決軟硬件設(shè)備之間的數(shù)據(jù)接口問題,OPC技術(shù)隨之產(chǎn)生。它將OPC客戶端與服務(wù)器在物理上分開,減少硬件制造商和軟件開發(fā)商之間的依賴,極大地提高了雙方的工作效率有效解決了工控行業(yè)復(fù)雜驅(qū)動(dòng)程序造成的數(shù)據(jù)接口問題,減少資源浪費(fèi),提升通信質(zhì)量等。
OPC的全稱是OLE for Process Control,即是用于過程控制的OLE,它是針對(duì)現(xiàn)場(chǎng)控制系統(tǒng)的一個(gè)工業(yè)標(biāo)準(zhǔn)接口,是工業(yè)自動(dòng)化控制和生產(chǎn)自動(dòng)化領(lǐng)域中使用的最為廣泛的硬件與軟件的基本接口標(biāo)準(zhǔn)。其是基于微軟的OLE(現(xiàn)在的Active X)、COM (控件對(duì)象模型)和DCOM (分布式控件對(duì)象模型)接口技術(shù),自動(dòng)化應(yīng)用中使用的一整套接口、屬性和方法的標(biāo)準(zhǔn)集在OPC技術(shù)中均有包括,其常常在過程控制和制造業(yè)自動(dòng)化系統(tǒng)中有大量使用。OPC接口技術(shù)保證了工業(yè)自動(dòng)化系統(tǒng)中獨(dú)立單元之間標(biāo)準(zhǔn)化的互聯(lián)互通,順應(yīng)了自動(dòng)化系統(tǒng)向開放、互操作、網(wǎng)絡(luò)化、標(biāo)準(zhǔn)化方向發(fā)展的趨勢(shì)。
OPC接口協(xié)議,是以O(shè)PC基金組織規(guī)定的OPC規(guī)范群為基礎(chǔ)開發(fā)的軟件驅(qū)動(dòng)協(xié)議。它負(fù)責(zé)作為中間通道從數(shù)據(jù)源(服務(wù)器)讀取數(shù)據(jù),然后再同另外一端的客戶端進(jìn)行交互,完成通信。如圖1所示的客戶端計(jì)算機(jī)與服務(wù)器端計(jì)算機(jī)的結(jié)構(gòu)圖中,通信的發(fā)起端只能是客戶端,服務(wù)器被動(dòng)響應(yīng)??蛻舳伺c服務(wù)器間的通訊是雙向的,客戶端不僅可以在服務(wù)器中隨時(shí)讀出數(shù)據(jù),也能夠隨時(shí)地向服務(wù)中寫入數(shù)據(jù),修改參數(shù),從而實(shí)現(xiàn)對(duì)遠(yuǎn)程設(shè)備的實(shí)時(shí)監(jiān)測(cè)和控制。
OPC DA協(xié)議是一種OPC數(shù)據(jù)訪問規(guī)范,是客戶端計(jì)算機(jī)與服務(wù)器端計(jì)算機(jī)間實(shí)現(xiàn)數(shù)據(jù)交互的通訊協(xié)議,使客戶端計(jì)算機(jī)能夠?qū)Ψ?wù)器中的數(shù)據(jù)進(jìn)行實(shí)時(shí)的讀取和寫入,明確指出了實(shí)時(shí)數(shù)據(jù)應(yīng)該如何在PLC、HMI等數(shù)據(jù)源和數(shù)據(jù)接收者在未知彼此間特定通訊協(xié)議的狀況下進(jìn)行數(shù)據(jù)的交換。OPC DA協(xié)議技術(shù)在本質(zhì)上是以微軟的COM和DCOM的技術(shù)為基礎(chǔ)的,對(duì)于需要在局域網(wǎng)、廣域網(wǎng)及以太網(wǎng)上的不同對(duì)象的計(jì)算機(jī)上進(jìn)行遠(yuǎn)程OPC服務(wù)器計(jì)算機(jī)的訪問需要進(jìn)行DCOM的配置,以實(shí)現(xiàn)COM的對(duì)象擴(kuò)展至網(wǎng)絡(luò)。DCOM的配置與操作系統(tǒng)的安全體系緊密相關(guān),然而不同版本操作系統(tǒng)的安全體系又或多或少的有所差別。此外,不同的OPC服務(wù)器運(yùn)行的方式也不盡相同,并且不同的操作應(yīng)用系統(tǒng)對(duì)系統(tǒng)的安全性能的要求也不盡相同。系統(tǒng)與系統(tǒng)和服務(wù)器與服務(wù)器間的細(xì)微差別往往導(dǎo)致了DCOM配置繁瑣并且復(fù)雜,使兩者間無法建立有效的遠(yuǎn)程訪問連接。
為有效地將現(xiàn)有的OPC規(guī)范 (DA、A&E、HDA、命令、復(fù)雜數(shù)據(jù)和對(duì)象類型) 集成進(jìn)來,需要新的協(xié)議來進(jìn)行統(tǒng)籌,借此OPC UA協(xié)議成為了現(xiàn)在的新的OPC協(xié)議規(guī)范。 OPC UA協(xié)議提供了一致、完整的地址空間和服務(wù)模型,解決了過去同一系統(tǒng)的信息不能以統(tǒng)一方式被訪問的問題。新的OPC UA協(xié)議規(guī)范不再以微軟的COM和DCOM技術(shù)為基礎(chǔ),借此不同版本的Windows操作系統(tǒng)間的連接以及不同Linux操作系統(tǒng)包括其他的嵌入式平臺(tái)的計(jì)算機(jī)間均能夠通過OPC UA協(xié)議規(guī)范實(shí)現(xiàn)數(shù)據(jù)交互,進(jìn)行通信訪問。OPC UA協(xié)議不是OPC DA協(xié)議的替代品,而是在現(xiàn)有的OPC DA協(xié)議架構(gòu)的基礎(chǔ)上進(jìn)行了補(bǔ)充和增強(qiáng)。通過系統(tǒng)管理員開放后的任何單一端口進(jìn)行通信,以實(shí)現(xiàn)跨越防火墻和VPN的路障的目標(biāo),從而達(dá)到安全訪問連接的目的,進(jìn)而有效地將多個(gè)OPC DA協(xié)議的數(shù)據(jù)源聚合到工業(yè)系統(tǒng)中,提高了傳輸性能。
3 服務(wù)器與客戶端總成
隨著OPC UA通訊協(xié)議技術(shù)的廣泛應(yīng)用,工業(yè)系統(tǒng)中OPC DA通訊協(xié)議和OPC UA通訊協(xié)議無法相互兼容的問題越來越突出。然而OPC UA通訊協(xié)議最明顯的優(yōu)勢(shì)就是實(shí)現(xiàn)多平臺(tái)的通訊跨接,大量減少OPC DA通訊過程中,DCOM的煩惱配置工作。但是在一些老舊項(xiàng)目中,新型的OPC UA通訊協(xié)議規(guī)范無法得到兼容,為此,便需要使用中間插件來實(shí)現(xiàn)以O(shè)PC DA通訊協(xié)議為基礎(chǔ)的數(shù)據(jù)源到以O(shè)PC UA通訊協(xié)議為基礎(chǔ)的數(shù)據(jù)源的轉(zhuǎn)換操作的目的。
針對(duì)散貨碼頭工控PLC以及HMI設(shè)備的使用情況,以KEPSERVER V5作為通訊軟件基礎(chǔ),實(shí)現(xiàn)OPC DA通訊協(xié)數(shù)據(jù)源到OPC UA通訊數(shù)據(jù)源的轉(zhuǎn)換操作。在遠(yuǎn)程計(jì)算機(jī)上生成OPC UA協(xié)議客戶端,在本地PLC 組態(tài)用計(jì)算機(jī)上生成OPC UA協(xié)議服務(wù)器和OPC DA協(xié)議客戶端。服務(wù)器及客戶端的整體架構(gòu)如圖2所示。KEP OPC 軟件還能夠快速有效地建立起同物聯(lián)網(wǎng)平臺(tái)上的MQTT代理服務(wù)器和數(shù)據(jù)庫間的穩(wěn)定數(shù)據(jù)訪問連接,作為一個(gè)高性能的中間運(yùn)行插件,在工業(yè)系統(tǒng)領(lǐng)域中起到數(shù)據(jù)橋梁和紐帶的作用,為用戶實(shí)現(xiàn)了數(shù)據(jù)的快速采集和接入,并且能夠連續(xù)穩(wěn)定運(yùn)行。通過OPC協(xié)議,進(jìn)行數(shù)據(jù)采集操作,從而實(shí)現(xiàn)物聯(lián)網(wǎng)終端平臺(tái)的深度邊緣計(jì)算,可以為智能制造、醫(yī)療制藥、智能家居、能源化工等行業(yè)提供生產(chǎn)數(shù)據(jù)的實(shí)時(shí)交換、實(shí)時(shí)控制、歷史數(shù)據(jù)存儲(chǔ),為工業(yè)互聯(lián)網(wǎng)平臺(tái)的大數(shù)據(jù)分析和應(yīng)用提供基礎(chǔ)數(shù)據(jù)和分析服務(wù)的基礎(chǔ)設(shè)施。
3.1 客戶端計(jì)算機(jī)
于中控計(jì)算機(jī)上,使用KEPSERVER軟件生成UA協(xié)議客戶端,將每臺(tái)設(shè)備上UA服務(wù)器導(dǎo)出的安全證書轉(zhuǎn)存導(dǎo)入中控客戶端計(jì)算機(jī),完成中控客戶端對(duì)設(shè)UA服務(wù)器的訪問通道的建立。
(1)通過KEPSERVER軟件,打開OPC UA Configuration Manager,在Trusted Servers配置項(xiàng)中,導(dǎo)入單機(jī)UA服務(wù)器的數(shù)字證書。
(2)打開OPC UA Configuration Manager,在Trusted Clients配置項(xiàng)中,導(dǎo)出中控UA客戶端數(shù)字證書。如圖3所示。
3.2 服務(wù)端計(jì)算機(jī)
散貨碼頭現(xiàn)場(chǎng)使用的單機(jī)PLC大都為ABB AC800M系列的工控PLC,其本身支持OPC DA協(xié)議的通訊,并自帶OPC DA服務(wù)器。針對(duì)此情況,需將OPC DA的數(shù)據(jù)源轉(zhuǎn)儲(chǔ)為OPC UA的數(shù)據(jù)源,并啟用OPC UA服務(wù)器。
3.2.1 DA與UA協(xié)議數(shù)據(jù)源轉(zhuǎn)換存儲(chǔ)
(1)打開ABB OPC SERVER 軟件,首先與PLC建立連接機(jī)制;借此對(duì)單機(jī)PLC中的數(shù)據(jù)進(jìn)行實(shí)時(shí)采集,生成OPC DA數(shù)據(jù)源。
(2)同一服務(wù)器上,使用KEPSERVER軟件,通過OPC DA CLIENT通訊協(xié)議,將以O(shè)PC UA協(xié)議為基礎(chǔ)的數(shù)據(jù)源和以O(shè)PC DA協(xié)議為基礎(chǔ)的數(shù)據(jù)源建立連接訪問機(jī)制,將OPC DA服務(wù)器上的數(shù)據(jù)源轉(zhuǎn)存至OPC UA服務(wù)器上,借此完成數(shù)據(jù)集的采集。
3.2.2 OPC UA服務(wù)器啟用及安全端口建立
(1)打開OPC UA Configuration Manager,在Server Endpoints配置項(xiàng)中,完成單機(jī)設(shè)備上OPC UA服務(wù)器的啟用,每個(gè)服務(wù)器的地址以計(jì)算機(jī)的IP和TCP端口號(hào)為基礎(chǔ)。如圖4所示。
(2)打開KEPSERVER EX settings配置,在configure一欄中,進(jìn)行遠(yuǎn)程連接訪問許可確認(rèn),并選擇遠(yuǎn)程訪問的通道。
(3)在操作系統(tǒng)防火墻中,進(jìn)行新建入站規(guī)則,添加OPC UA服務(wù)器允許通過的遠(yuǎn)程訪問時(shí)的TCP端口。
(4)打開OPC UA Configuration Manager,Instance Certificates的配置項(xiàng)中,將單機(jī)UA服務(wù)器數(shù)字證書導(dǎo)出。
(5)打開OPC UA Configuration Manager,在Trusted Clients配置項(xiàng)中,將中控UA客戶端數(shù)字證書導(dǎo)入,完成數(shù)字憑證的交換。
3.3 OPC協(xié)議數(shù)據(jù)讀取及寫入
使用OPC UA CLIENT協(xié)議在建立的OPC UA客戶端計(jì)算機(jī)上遠(yuǎn)程訪問讀取OPC UA服務(wù)器計(jì)算機(jī)上的數(shù)據(jù)源。
(1)打開KEPSERVER軟件,建立OPC UA CLIENT通訊協(xié)議通道,讀取遠(yuǎn)程服務(wù)器上UA協(xié)議數(shù)據(jù)源;輸入U(xiǎn)A服務(wù)器站點(diǎn)。UA服務(wù)器站點(diǎn)格式:OPC.TCP//服務(wù)器地址(IP):端口號(hào)。
(2)完成OPC UA協(xié)議通道的建立后,建立需要遠(yuǎn)程通信的設(shè)備,進(jìn)而將UA服務(wù)器上數(shù)據(jù)源導(dǎo)入U(xiǎn)A客戶端計(jì)算機(jī),供用戶使用。
4 結(jié)束語
根據(jù)散貨碼頭現(xiàn)場(chǎng)情況的測(cè)試,此方案具有可行性,在保證硬件網(wǎng)絡(luò)暢通無阻的情況下,通訊方式穩(wěn)定,并且服務(wù)器與客戶端計(jì)算機(jī)間的響應(yīng)速度較好??紤]到散貨碼頭現(xiàn)場(chǎng)存在人為斷電、事故斷電以及客戶端和服務(wù)器計(jì)算機(jī)關(guān)機(jī)的情況,需要將客戶端計(jì)算機(jī)和服務(wù)器計(jì)算機(jī)以及建立通訊所需的相關(guān)軟件設(shè)置為上電自啟的方式,避免因掉電情況而產(chǎn)生的通訊故障。在完成一系列的系統(tǒng)配置后,一臺(tái)客戶端計(jì)算機(jī)就可以從多臺(tái)服務(wù)器端計(jì)算機(jī)和工控PLC間讀取所需的監(jiān)控?cái)?shù)據(jù)、進(jìn)行數(shù)據(jù)轉(zhuǎn)存以及發(fā)送客戶端的控制信號(hào)。使用此方法,使通訊系統(tǒng)搭建所需的配置操作更為簡單快捷,且其通訊情況穩(wěn)定、通訊響應(yīng)速度快,大大減少了因通訊丟失、通訊故障而發(fā)生的重大安全事故,保證了中控遠(yuǎn)程操作時(shí)的通訊安全性和實(shí)時(shí)性,使得中控在進(jìn)行遠(yuǎn)程操作重大設(shè)備的時(shí)候,能夠平穩(wěn)而有序地進(jìn)行生產(chǎn)作業(yè)。
參考文獻(xiàn)
[1] 趙子龍,李妮,周衛(wèi)斌,游國棟.基于OPCXML-DA技術(shù)的服務(wù)器與客戶端實(shí)現(xiàn)[D].天津:天津大學(xué),2017.
[2] 曲曉峰,苗東旭.一種用于發(fā)電設(shè)備數(shù)據(jù)采集的跨平臺(tái)OPC DA客戶端軟件設(shè)計(jì)[D].哈爾濱:哈爾濱電氣集團(tuán)有限公司中央研究院,2019.
[3] 魏秋新.OPC Server在橋機(jī)RCMS開發(fā)中的應(yīng)用[D].廈門:廈門海天集裝箱有限公司,2009.
[4] 蔡明章,李昊,甘洋,等. 基于OPC-DA服務(wù)器的應(yīng)用研究與設(shè)計(jì)[D].昆明: 昆明理工大學(xué)信息工程與自動(dòng)化學(xué)院,2014.
[5] 張憲民,薛棟棟,鄧家和,李海.智能制造中基于OPC UA的多源數(shù)據(jù)傳輸與解析技術(shù)[D].廣東:華南理工大學(xué)廣東省精密準(zhǔn)備與制造技術(shù)重點(diǎn)實(shí)驗(yàn)室,2021.