引言

    以太網作為一項比較成熟的技術正向自動化領域逐步滲透,從企業決策層、生產管理調度層向現場控制層延伸。

    以太網由于采取沖突競爭的傳輸方式,具有傳輸不確定性的特點。但隨著帶寬的增加、冗余措施的加強和自診斷程序的完善,以太網完全可以滿足中小型控制系統實時性的要求。同時以太網具有相關網絡產品價格低廉,">

      技術頻道

      OPC技術及其在工業以太網

      引言

      以太網作為一項比較成熟的技術正向自動化領域逐步滲透,從企業決策層、生產管理調度層向現場控制層延伸。

      以太網由于采取沖突競爭的傳輸方式,具有傳輸不確定性的特點。但隨著帶寬的增加、冗余措施的加強和自診斷程序的完善,以太網完全可以滿足中小型控制系統實時性的要求。同時以太網具有相關網絡產品價格低廉,開放性好、技術成熟等優點。目前,Profibus、Devicenet、Controlnet和Lonworks等都使用以太網傳送它們的報文,制定現場裝置與以太網通信的標準,使以太網進入工業自動化的現場級。當現場智能設備將現場信息通過工業以太網傳至監控計算機后,存在著信息共享與交互的問題。一方面,監控計算機內部應用程序需要對現場信息進行處理,另一方面,企業生產管理層需要與監控計算機進行信息溝通和傳遞。OPC的出現則解決了控制系統突破“信息孤島”的瓶頸問題。

      1OPC(OLE for Process Control)技術規范與意義

      OPC技術是以Microsoft的OLE/COM技術為基礎建立的一項技術規范與標準,它采用客戶/服務器(Client/Server)模型,定義了一組COM對象及其雙接口(Dual Interface)。

      OPC對象主要包括服務器(Server)、組(Group)和項(Item)。OPC服務器對象除了維護自身信息外,還作為組對象的容器,可動態地創建或釋放組對象;而組對象相對于項而言也是一個包容器,它提供一套管理項的機制;OPC項則表示了與OPC服務器中數據的連接,包括值(Value)、品質(Quality)、時間戳(Time Stamp)3個基本屬性。

      OPC對象雙接口由OPC自動化接口(Automation Interface)和定制接口(Custom Interface)組成。在C/S工作模式下,客戶程序通過接口與OPC服務器連接,調用OPC對象的方法。一般來說自動化接口能為高級語言客戶程序提供極大的便利,但數據傳輸效率較低,而定制接口則為用C/C++語言編寫的客戶程序帶來靈活高效的調用手段。

      OPC技術建立了一組符合工業控制要求的接口規范,將現場信號按照統一的標準與SCADA、HMI等軟件無縫連接起來,同時將硬件和應用軟件有效地分離開。只要硬件開發商提供帶有OPC接口的服務器,任何支持OPC接口的客戶程序均可采用統一的方式存取這些設備,無須重復開發驅動程序。這樣大大提高了控制系統的互操作性和適應性。

      2OPC數據存取服務器在以太網控制系統的層次結構

      圖1示意了以太網控制系統的總體層次結構。在現場控制層,以PC104嵌入式系統作為現場智能節點,其外接模擬量輸入輸出、開關信號輸入輸出等I/O卡,主要作用是執行各種控制功能及進行數據采集,進行狀態監測和報警,并將采集的數據上傳;監控計算機則采用PC機,裝有兩塊網卡,利用其中一塊與下位機PC104通信,而通過另一塊網卡與生產管理調度層的其他計算機組成局域網。監控計算機中運行OPC數據存取服務器程序,將現場智能節點傳上來的數據通過OPC接口送到監控軟件進行監控,并利用組態軟件進行復雜的組態工作,將組態信息下載到PC104上,調整其控制算法和參數。而其他管理調度層的計算機OPC客戶程序則通過DCOM的方式訪問OPC服務器程序,進行信息交互。

      由此可見,OPC服務器在以太網控制系統中將企業現場控制層與生產管理調度層有機地連接起來,組成一個開放性好、可靠性高的分布式控制系統,發揮了重要的橋梁作用。

      3OPC數據存取服務器的設計與實現

      OPC數據存取服務器可按圖2的系統結構設計。它主要由服務器對象、組對象、項對象、數據存儲區和TCP/IP通信接口組成。

      由于OPC數據存取服務器既要通過網卡與現場設備進行通信,又要通過OPC接口與客戶程序進行交互,所以采用多線程模型以保證數據存取的效率。為避免不同線程同時對數據區中的數據進行操作,還需要考慮對臨界區的互斥控制。

      OPC技術是以微軟的COM技術為基礎,同時需要直接與底層硬件打交道,所以采用VC實現比較靈活方便。OPC數據存取服務器主要分為OPC通用接口、硬件接口以及數據存儲區的實現,在本系統中硬件接口的實現主要是實現以太網通信接口。

      3.1 OPC通用接口的實現

      首先定義OPC數據存取服務器的名稱(ProgID)和類標識(CLSID),實現OPC數據存取服務器類廠對象。然后由OPC規范中定義的OPCServer類、OPCGroup類和OPCItem類,分別派生出裝置Device、板卡Board、通道Channel3個新類。

      OPC規范中定義的接口可分為可選接口和必選接口,但對任何OPC服務器而言,應實現必選接口的成員函數。因此在派生類中重載其父類中必選接口成員函數,并根據實際情況重載可選接口成員函數,例如IOPCBrowseServerAddressSpace接口等。

      為了滿足實際要求,還需要定義各個派生類的特殊屬性和方法并實現其方法。例如,在裝置類中增加IP地址屬性,用以標識現場PC104智能節點。另外增加搜索函數,自動列出已連入現場控制層的PC104智能節點的IP地址。

      3.2 以太網通信接口的實現

      通信接口的設計是OPC數據存取服務器應用于工業以太網控制系統的關鍵。由于控制系統不同于普通局域網,所以通信的可靠性和實時性是必須考慮的重要因素。

      (1)可靠性考慮 由于以太網支持TCP/IP協議,因此可利用socket套接字開發通信程序,這將大大降低開發難度。在利用socket編程時,主要用到的有流式套接字(SOCK_STREAM)和數據報套接字(SOCK_DGRAM)兩種,其對應的通信方式也有兩種,一種是面向連接的,采用TCP協議;一種是非面向連接的,采用UDP協議。當采用UDP協議時,它提供不可靠的無連接數據報傳輸服務,不提供報文到達確認、排序以及流量控制等功能,因此報文可能會丟失、重復以及亂序等。TCP則是建立在連接的抽象概念上的,它標識的是一個虛電路連接,需要兩個端點都同意連接才能通信;它將數據流看作字節的序列,為了便于傳輸又將這個序列劃分為若干段,在傳輸過程中,具有確認重傳功能;此外TCP使用專門的滑動窗口機制來解決傳輸效率和流量控制等問題。為保證可靠性在本系統中采用TCP通信協議。

      (2)實時性考慮以太網采用的是一種隨機訪問協議——帶沖突檢測的載波偵聽多路訪問(CSMA/CD)介質訪問控制協議,這種數據傳輸協議雖比較簡單,但它由沖突引起的數據傳輸時間的隨機性,成了阻礙以太網進入工業控制領域的根源。在目前應用于工業控制領域的以太網中,通過限制連接在以太網上的結點數目、控制網絡流量、使總線保持輕載工作條件,可以滿足控制的實時性要求。

      TCP/IP通信方式采用的是客戶端/服務器模式,服務器程序被動地等待通信,而客戶程序則主動地啟動通信。在本系統中,由于下位機PC104采用DOS系統,處于單線程方式,不但要負責通信,而且還要執行特定的控制功能,所以將PC104作為通信客戶方;而監控計算機采用支持多線程方式Windows NT/2000系統,可作為通信服務器方。因此在OPC數據存取服務器中專門創建一個線程用于監聽是否有客戶程序請求連接。如果有請求,則另創建一個線程來處理此次通信,將收到的數據存放到專為OPC服務器開辟的數據存儲區,通信結束后關閉此通信線程,監聽線程則一直運行。這樣可保證數據傳輸的實時性。

      3.3 數據存儲區的實現

      數據存儲區是OPC服務器程序中的重要組成部分,其中包含了由服務器程序方定義的數據項。OPC客戶程序通過OPC通用接口來訪問存儲區數據,硬件驅動部分也不斷地將最新的現場數據寫入到數據區。如果服務器程序實現了IOPCBrowseServerAddressSpace可選接口,那么客戶程序可通過該接口瀏覽到數據存儲區中數據項的名稱。

      在實際的設計過程中模仿OPC規范中組織數據的方法來組織數據存儲區,通過設計對應的CGlobalServer、CGlobalGroup、CGlobalItem 3個數據項類來管理數據存儲區。其中CGlobalServer包容了CGlobalGroup類對象的實例并定義了一些成員函數對CGlobalGroup類對象的具體數據進行操作,而CGlobalGroup類包容了CGlobalItem類對象的實例并定義了一些成員函數來對CGlobalItem類對象的具體數據進行操作,CGlobalItem數據項類包括了數值(Value)、品質(Quality)、時間戳(Time Stamp)3個基本屬性,另外還有數據項名稱、工程量單位等屬性。由于數據項總是和具體的硬件相關,因此需要添加與設備有關的屬性以及相關函數來設置和獲取這些屬性。

      4OPC 數據交換服務器在以太網控制系統中的應用

      為了更好的解決信息交互問題,OPC基金會于2003年3月發布了OPC數據交換(Data eXchange)的1.0規范。它其實是一個OPC以太網數據交換標準,是對數據存取規范(DA)的擴展,與數據存取規范的最大不同在于數據存取規范解決的是現場信息在控制網絡中縱向傳輸問題,而數據交換規范(DX)解決的是現場信息在控制網絡中的橫向傳輸問題。該規范提出一個標準的組態接口架構,使得任何控制網絡上的OPC數據存取服務器之間只要支持該接口就能通信。同時它還支持遠程的組態、診斷、監控、管理,目標是Plug & Play(即插即用)。圖3顯示了OPC數據交換技術實現數據存取服務器間信息交互的結構,這時候就不再需要雙口/多口的客戶端來支持OPC數據存取服務器之間的通信。

      5結束語

      本文中設計的OPC數據存取服務器已在以太網控制系統中運行良好,整個控制系統也已通過測試和考核,證明能夠滿足一般工業控制領域對傳輸時延的要求,其可操作性、開放性、可靠性也較高,完全適用于中小型控制領域。隨著以太網技術的發展,相信它能逐步勝任那些目前由工業自動化網絡承擔的控制任務。將OPC技術引入工業以太網控制系統能有效地促進以太網控制系統的發展以及企業現場控制層和生產過程管理層、調度決策層的集成。

      文章版權歸西部工控xbgk所有,未經許可不得轉載。

      主站蜘蛛池模板: 日韩国产精品无码一区二区三区| 亚洲国产精品一区二区第一页| 亚洲国产日韩一区高清在线 | 精品免费国产一区二区| 国产精品被窝福利一区| 午夜福利无码一区二区| 精品久久一区二区三区| 国产精品第一区第27页| 午夜在线视频一区二区三区| 中文无码AV一区二区三区| 在线观看国产一区二区三区| 国产精品福利一区二区久久| 国产午夜精品一区二区三区 | 亚洲国产美国国产综合一区二区 | 亚洲AV无码一区二区二三区入口 | 99精品国产高清一区二区| 亚洲一区二区视频在线观看| 日本高清天码一区在线播放| 久久4k岛国高清一区二区| 久久久99精品一区二区| 国产成人av一区二区三区在线| 蜜臀AV无码一区二区三区| 国产日本一区二区三区| 精品国产鲁一鲁一区二区| 午夜精品一区二区三区免费视频| 国产午夜精品一区理论片飘花| 亚洲A∨精品一区二区三区 | 人成精品视频三区二区一区 | 国产精品男男视频一区二区三区 | 精品福利一区二区三区精品国产第一国产综合精品 | 精品国产一区二区三区在线| 亚洲国产精品无码第一区二区三区| 久久久精品人妻一区二区三区四 | 国产精品无码一区二区在线观一| 冲田杏梨高清无一区二区| 一区二区三区四区在线播放| 精品视频在线观看你懂的一区| 国产高清在线精品一区二区三区 | 在线一区二区观看| 国产伦精品一区二区| 国产aⅴ一区二区|