999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于國產軟硬件平臺的OPC UA服務器設計與實現*

2018-12-25 02:25:26閔曉霜
網絡安全與數據管理 2018年12期
關鍵詞:功能服務

閔曉霜,楊 鑫

(中國電子信息產業集團有限公司第六研究所,北京 102209)

0 引言

在工業4.0與智能制造時代,首先需要解決的就是互聯互通的問題,為了實現M2M(機器到機器)、B2M(商業系統與機器)以及B2B(商業系統之間)的協同,滿足來自各個維度的數據交互需求,OPC UA成為最佳的選擇[1]。OPC UA作為數據互聯的標準與規范,為工業4.0時代提供底層技術支撐及解決方案。在工業控制現場,OPC UA能夠有效實現嵌入式現場設備、DCS、PLC等設備與生產管理系統、SCADA、HMI等管理監視系統的互操作。

OPC統一架構(OPC UA)是由OPC基金會繼傳統OPC技術獲得成功應用之后推出的新的OPC標準。傳統OPC基于COM/DCOM技術,而這項基礎技術不再發展并且只能支持Windows操作系統;同時,傳統OPC提供的服務數據模型不統一,導致用戶訪問不同數據的方法不統一,不支持復雜的數據結構,且在安全方面也存在不足[2],為解決這些問題,滿足時代發展需求,OPC UA得以推出并大力發展。OPC UA基于Socket傳輸層,采用以信息為中心的分層架構,與平臺無關,能夠兼容Windows、Linux等操作系統,OPC UA提供一系列通用信息模型,提供完全面向對象,同時包含元數據和對象描述的地址空間,在一個地址空間中就可訪問所有對象,支持客戶服務器模型、發布訂閱模型,提供復雜數據規范,集成安全功能,并且OPC UA兼容傳統OPC。

自OPC UA規范發布以來,很多國外知名廠商如艾默生、西門子、倍福等已經研發并推出支持OPC UA標準的產品,并得到了應用[3]。我國于2017年9月正式發布了GB/T 33863.1~.8-2017《OPC統一架構》標準,并成立了OPC中國認證測試實驗室,標志著OPC UA技術正式成為我國智能制造發展的關鍵技術之一[4],文獻[5]實現了數據管理功能,文獻[6]實現了具備一定安全機制的OPC UA服務器,但二者都是基于微軟平臺實現的,并不能滿足服務器的安全需求。

為了滿足工業控制系統中核心基礎設備的安全保密,本文基于國產軟硬件平臺設計并實現OPC UA服務器,提供數據訪問服務,能夠對控制設備進行安全隔離,并在PLC系統中進行測試驗證,能夠支持第三方客戶端的數據訪問,滿足工業現場數據交互需求。

1 基于國產軟硬件平臺的OPC UA服務器設計

1.1 OPC UA服務器總體設計

本文OPC UA服務器基于國產軟硬件平臺,采用國產控制器,搭載麒麟操作系統,采用Qt5開發OPC UA服務器。

1.1.1OPCUA服務器模式

OPC UA服務器可以同時支持客戶端-服務器模型和發布訂閱模型,這兩種通信機制獨立于實際通信協議,如TCP和HTTPS可用于客戶端-服務器模式,而UDP、AMQP和MQTT可用于發布訂閱模式。

(1)客戶端-服務器模式

OPC UA客戶端訪問OPC UA服務器的專用服務。這是一種對等的方式,提供了信息安全和確定的信息交換,對連接數量有一定限制。適合客戶端個數一定,交換信息需求確定的系統。

(2)發布者-訂閱者模式

OPC UA服務器通過配置信息可供任意數量的訂閱者使用。這是一種廣播機制,提供了一個無需信息確認的即發即棄的信息交換方式。適合多點連接且對實時性要求高的系統。

本文的OPC UA服務器使用客戶端-服務器模式,通過建立TCP連接,提供安全、確定的數據交換。

1.1.2軟件分層架構

OPC UA應用程序開發基于軟件分層架構。OPC UA堆棧位于分層架構的底層,它采用OPC基金會定義的TCP / IP通信協議,能夠實現所有的OPC UA服務呼叫,處理通信協議;在堆棧上層為OPC UA軟件工具開發包(Software Development Kit,SDK),SDK的主要功能為運行OPC UA服務器的服務,包括數據訪問、報警功能、信息模型建立、節點管理、訂閱管理、會議管理以及身份認證管理;分層架構的最上層為OPC UA服務器應用程序。

本文的OPC UA服務器采用軟件分層架構,基于C++ OPC UA服務器SDK進行開發,利用Qt的跨平臺特性以及對標準C++的支持,首先將SDK移植到國產系統中,然后基于SDK進行應用功能開發。

1.2 OPC UA服務器軟件設計

1.2.1功能說明

OPC UA服務器的主要功能是將控制器的數據映射到服務器地址空間中進行管理,并與控制器進行數據交互,同時,對外與支持OPC UA協議的設備(如SCADA、HMI和第三方客戶端等)基于地址空間進行數據讀寫操作,支持啟動/停止服務、配置可訪問數據及訪問權限、運行守護以及冗余防護等功能。

該OPC UA服務器實現的主要功能如圖1所示,配置功能負責人機交互的配置及配置數據生成,服務器啟動服務時根據配置數據的參數啟動并執行數據訪問功能,安全認證和冗余功能用于保證服務器運行過程中的通信與運行安全。

圖1 OPC UA服務器功能圖

(1)基于協議棧的數據訪問功能

包括數據的讀寫、讀寫權限的修改、登錄服務和退出登錄服務??蛻舳送ㄟ^服務器對控制器中的數據進行實時獲取,并將數據映射到服務器的地址空間,客戶端通過對地址空間的訪問進行對數據的讀寫操作。在與下位機進行通信時采用一問多答、循環收包的方式。

(2)配置功能

通過配置界面對服務器地址空間的數據進行配置,以便服務器能夠管理服務器中的數據。

(3)啟停服務功能

服務器開啟服務后,客戶端能夠進行相應的訪問操作;停止服務后,客戶端則無法繼續對服務器進行訪問。

(4)安全認證功能

包括身份鑒別機制、基于角色的用戶授權機制以及數據傳輸過程的安全機制。身份鑒別機制指客戶端與服務器建立連接進行數據訪問時,系統對用戶進行輸入用戶名和密碼的登錄身份驗證。基于角色的用戶授權機制指的是對工程師、管理員以及操作員等不同身份的角色,設置不同的訪問權限。數據傳輸安全機制指的是對通信數據加密以及OPC變量表的CRC校驗功能。

(5)冗余功能

在服務器啟動之后,自動開啟冗余守護進程機制,實時備份服務器中的數據,檢測主機的運行狀態,因此能夠在主機無響應時啟用備機功能。

1.2.2工作過程

當OPC UA服務器應用在工控系統中時,系統的工作過程如下:

(1)用戶在編程組態軟件中,將控制程序與OPC數據配置信息下裝到控制器中,同時生成OPC數據配置文件。

(2)在服務器中可創建站,通過加載解析上述OPC數據配置文件,能夠對該站的變量進行配置,將其添加到服務器的數據列表中,即加入地址空間管理,每個變量對應一個節點,可對節點的訪問權限及屬性進行配置。配置完成后,可啟動OPC UA服務器,則服務器開始與PLC通信交互OPC數據表中的數據,同時,管理地址空間中的節點,處理來自客戶端的連接以及服務請求。

(3)客戶端想要訪問PLC中的變量信息時,首先對服務器發送服務請求,要求建立與服務器的連接,服務器收到請求后,在其地址空間內查找對應的節點信息,服務器根據變量與節點的映射,與控制器通過私有協議進行變量讀寫等操作,最后在服務器接口調用請求/響應服務,給客戶端返回有效信息。

上述過程的數據流圖如圖2所示。

圖2 系統的數據流圖

2 可跨平臺的OPC UA服務器實現

2.1 SDK的移植

OPC UA SDK產品供應商常見的有MatrikonOPC、ProSys、Unified Automation等,在選擇采購SDK時主要注意的包括SDK提供的是庫還是源碼、提供的功能、支持的平臺以及技術支持等因素[7]。本文使用的SDK以C++源碼的形式提供,提供數據訪問等功能。本文首先將SDK移植到國內操作系統中,使用Qt開發環境進行編譯,然后基于SDK提供的API進行應用功能開發。

SDK開發包目錄結構如圖3所示,主要包括:

…/OPC_UA_SDK/lib:用于存放SDK編譯以后生成的庫。

…/OPC_UA_SDK/Examples:包含示例程序,可基于例程進行應用開發。

圖3 OPC UA軟件開發包

使用Qt編譯生成的庫在lib目錄下,應用軟件直接引用生成的動態庫,examples中包含示例程序,基于示例程序、調用SDK提供的API進行應用開發。

2.2 服務器應用開發

OPC UA服務器應用程序開發分為4個模塊,分別為:通用功能模塊Global、基礎應用功能模塊CommonOPCUA、配置管理模塊ConfigUI、OPC UA服務器模塊OPCUASvr。

(1)Global模塊提供基礎功能支持,與OPC UA業務無關,實現了數據類型轉換、字符串轉換、CRC校驗算法等功能。

(2)CommonOPCUA模塊實現OPC UA業務相關的通用功能,包括OPC UA服務器所需的地址空間、序列化、反序列化、變量表文件解析、對象節點的管理等。通過調用該功能接口能夠實現與文件數據進行交互,加載控制器生成的服務器配置文件并進行解析,生成包含地址空間信息的二進制文件。

(3)ConfigUI模塊實現服務器配置的人機交互功能,包括主界面、數據訪問配置界面、添加站對話框、編輯節點屬性對話框。

(4)OPCUASvr模塊實現OCPUA協議棧功能,提供OPC UA服務,包括啟動、停止服務、數據訪問服務等,使用SDK提供的API接口,引用了SDK的動態庫。

2.3 地址空間開發

地址空間的開發為OPC UA服務器應用程序開發中關鍵的部分,當服務器對底層PLC設備中的數據進行采集處理時,把每個PLC設備抽象為一個對象,把所要訪問的數據信息,即對象中的地址空間,作為其中的一個節點,從而創建一個從節點到對象自下而上的類似文件夾結構的地址空間結構,增強了數據處理效率。

本文服務器地址空間中的數據為測量模擬數據,即通過數據訪問獲取的實時IO模擬量。地址空間的編碼實現,首先需要在程序中定義節點管理類,用于管理整個地址空間的所有節點,并在服務器啟動時申請內存空間。NodeManagerDemo的主要功能是實現服務器和PLC控制器等下位機設備的通信,完成數據的讀寫。NodeManagerDemoBase主要是在地址空間內部建立點表,包括定義節點的ID、節點的名稱、節點類型等,方便OPC UA客戶端對服務器地址空間的數據進行處理。地址空間編碼實現的具體空間結構如圖4和圖5所示。

圖4 地址空間主要類圖

圖5 服務器主要類圖

服務器軟件的主要流程圖如圖6和圖7所示,包括服務器啟動以及地址空間節點管理。

圖6 服務器啟動流程圖

圖7 節點管理流程圖

3 驗證

本文OPC UA服務器在PLC系統中進行驗證,并采用第三方提供的標準OPC UA客戶端驗證OPC UA服務器功能。驗證功能包括數據訪問、數據讀寫、數據讀寫權限設置、安全認證。在測試過程中,用一個及多個客戶端對服務器設備進行連接,最終,定義監視的變量在OPC UA客戶端能夠看到變量節點,并能夠對變量進行讀寫操作。驗證結果表明該OPC UA服務器滿足功能和設計需求,具備在實際工業現場使用的條件。

4 結論

隨著工業信息化及智能制造的發展,我國工控行業也在加強對關鍵基礎技術的研究與應用。OPC UA作為數據互聯的基礎標準與規范,在工業控制系統中是一個必須掌握與深入研究的技術。本文所開發的OPC UA服務器實現了基本的數據訪問、地址空間與節點管理等功能。后續將再此基礎上,將OPC UA服務器移植到嵌入式操作系統中,并實現歷史數據訪問、報警與事件,增強安全功能設計,提供功能更加豐富、更加安全、更加通用的OPC UA產品。此外,OPC UA與其他新興技術的結合,也是今后重要的研究方向。

猜你喜歡
功能服務
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
服務在身邊 健康每一天
今日農業(2019年14期)2019-09-18 01:21:54
服務在身邊 健康每一天
今日農業(2019年12期)2019-08-15 00:56:32
服務在身邊 健康每一天
今日農業(2019年10期)2019-01-04 04:28:15
服務在身邊 健康每一天
今日農業(2019年15期)2019-01-03 12:11:33
服務在身邊 健康每一天
今日農業(2019年16期)2019-01-03 11:39:20
招行30年:從“滿意服務”到“感動服務”
商周刊(2017年9期)2017-08-22 02:57:56
關于非首都功能疏解的幾點思考
懷孕了,凝血功能怎么變?
媽媽寶寶(2017年2期)2017-02-21 01:21:24
“簡直”和“幾乎”的表達功能
主站蜘蛛池模板: 国产v欧美v日韩v综合精品| 国内精品自在欧美一区| 国产中文在线亚洲精品官网| 在线观看热码亚洲av每日更新| 台湾AV国片精品女同性| 日日碰狠狠添天天爽| 成人小视频网| 被公侵犯人妻少妇一区二区三区| 真实国产乱子伦视频| 亚洲欧美日本国产综合在线| 欧美久久网| 久久国产精品麻豆系列| 999国产精品| 最新亚洲人成网站在线观看| 国产毛片不卡| 亚洲天堂啪啪| 亚洲天堂在线视频| 欧美一区二区啪啪| 久久国产精品影院| 91探花在线观看国产最新| 亚洲 欧美 偷自乱 图片| 中文字幕有乳无码| 亚洲天堂网视频| 日韩无码黄色网站| 最新国产在线| 91久久偷偷做嫩草影院电| 99人体免费视频| 中文字幕亚洲精品2页| 久久久亚洲色| 久久精品国产电影| 热久久这里是精品6免费观看| 538精品在线观看| 免费一级大毛片a一观看不卡| 久久99国产乱子伦精品免| 色婷婷成人| 五月激情婷婷综合| 日韩国产综合精选| Jizz国产色系免费| 国产黄在线免费观看| 亚洲视频欧美不卡| 国产成人啪视频一区二区三区| 99热这里只有精品免费| 日韩在线2020专区| 另类综合视频| 久久91精品牛牛| 欧美一区二区三区香蕉视| 不卡午夜视频| 国产女人在线视频| 日韩欧美中文在线| 蝌蚪国产精品视频第一页| 97av视频在线观看| 亚洲精品午夜天堂网页| 亚洲欧洲美色一区二区三区| 亚洲精品男人天堂| 天天爽免费视频| 高清不卡毛片| 无码综合天天久久综合网| 国产精品极品美女自在线| 欧洲免费精品视频在线| 亚洲精选高清无码| 欧美激情第一区| 久久精品国产精品国产一区| 亚洲视频四区| 久久99热66这里只有精品一| 日韩成人午夜| 91国内在线视频| 久久天天躁狠狠躁夜夜2020一| 国产成人无码Av在线播放无广告| 视频一本大道香蕉久在线播放 | 18黑白丝水手服自慰喷水网站| 91探花国产综合在线精品| 欧美一级特黄aaaaaa在线看片| a天堂视频在线| 国产香蕉97碰碰视频VA碰碰看| 91亚洲精选| 欧美日本二区| 日本高清在线看免费观看| 亚洲IV视频免费在线光看| 白浆视频在线观看| 久久久久亚洲AV成人网站软件| 国产情侣一区二区三区| 国模视频一区二区|