《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 模擬設(shè)計 > 設(shè)計應(yīng)用 > PID優(yōu)化整定系統(tǒng)中OPC接口的研究與應(yīng)用
PID優(yōu)化整定系統(tǒng)中OPC接口的研究與應(yīng)用
摘要: 現(xiàn)階段 PID 參數(shù)的設(shè)置很大程度上依賴于操作工人的經(jīng)驗,對于沒有經(jīng)驗的工作人員 來說調(diào)整PID 參數(shù)有些難度。PID 優(yōu)化整定系統(tǒng)正是針對此問題,自行設(shè)計開發(fā)的系統(tǒng)軟件, 其目的是為了實現(xiàn)PID 參數(shù)整定的簡單化,對于沒有合適參數(shù)的回路通過計算得到接近的 參數(shù)值,對已有的參數(shù)給出優(yōu)化的參數(shù)值。PID 優(yōu)化整定系統(tǒng)的基礎(chǔ)是數(shù)據(jù)采集模塊。數(shù)據(jù) 采集模塊以O(shè)PC 協(xié)議作為接口通訊方式,連接DCS 工程師站與上位機進行數(shù)據(jù)讀取。
Abstract:
Key words :

  1、引言

  隨著國內(nèi)外石油化工領(lǐng)域工業(yè)自動化的不斷發(fā)展,采用先進技術(shù)對現(xiàn)有裝置進行技術(shù)改 造,逐步提高裝置的生產(chǎn)規(guī)模和工藝技術(shù)水平,提高裝置的經(jīng)濟效益是一種必然的趨勢。在 此趨勢下,很多企業(yè)希望通過先進控制的方法達到以上目的。而裝置先進控制以及回路自動 控制的基礎(chǔ)就是PID 參數(shù)的合適設(shè)置。 現(xiàn)階段 PID 參數(shù)的設(shè)置很大程度上依賴于操作工人的經(jīng)驗,對于沒有經(jīng)驗的工作人員 來說調(diào)整PID 參數(shù)有些難度。PID 優(yōu)化整定系統(tǒng)" title="整定系統(tǒng)">整定系統(tǒng)正是針對此問題,自行設(shè)計開發(fā)的系統(tǒng)軟件, 其目的是為了實現(xiàn)PID 參數(shù)整定的簡單化,對于沒有合適參數(shù)的回路通過計算得到接近的 參數(shù)值,對已有的參數(shù)給出優(yōu)化的參數(shù)值。PID 優(yōu)化整定系統(tǒng)的基礎(chǔ)是數(shù)據(jù)采集模塊。數(shù)據(jù) 采集模塊以O(shè)PC 協(xié)議作為接口通訊方式,連接DCS 工程師站與上位機進行數(shù)據(jù)讀取。

  2、DCS 及OPC 概述

  DCS(Distributed Control System)集散控制系統(tǒng)產(chǎn)生于20 世紀70 年代,它滿足了大型 生產(chǎn)的自動化要求,大大提高了單套裝置的生產(chǎn)能力[1]。在國內(nèi)大型石油化工聯(lián)合企業(yè)中, 主要煉油化工裝置已經(jīng)基本實現(xiàn)了DCS 控制,優(yōu)化了生產(chǎn)過程并提高了生產(chǎn)效率,但由于 大多數(shù)DCS 系統(tǒng)是封閉系統(tǒng),普遍缺乏統(tǒng)一、標準的開放式接口,難以滿足企業(yè)信息化和 管控一體化的發(fā)展要求。為了解決這些問題,一些與微軟公司合作的自動化硬件和軟件供應(yīng)商聯(lián)合制定了一套稱為OPC 規(guī)范的接口協(xié)議,以此來提高過程控制工業(yè)中的自動化/控制 應(yīng)用程序,現(xiàn)場系統(tǒng)/設(shè)備以及商業(yè)/辦公室應(yīng)用程序之間的互操作性[2]。

  OPC是一個開放的工業(yè)接口標準,意指用于過程控制的OLE技術(shù)[3]。OPC基于微軟的 OLE、COM和DCOM技術(shù),包括一整套接口、屬性和方法的標準集,用于過程控制和制造 業(yè)自動化系統(tǒng)[4]。OPC技術(shù)的實質(zhì)是允許任何設(shè)備與其它設(shè)備自由通訊的一種機制,是一種 用于過程控制和工業(yè)自動化的即插即用的軟件技術(shù),是一種過程實時數(shù)據(jù)交換的工業(yè)標準 [5]。這個接口規(guī)范不但能夠應(yīng)用于單臺計算機,而且可以支持網(wǎng)絡(luò)上分布式應(yīng)用程序之間的 通訊,以及不同平臺上應(yīng)用程序之間的通訊。其基本思想是:每個硬件供應(yīng)商為其設(shè)備開發(fā) 一個通用的數(shù)據(jù)接口(即OPC Server),供其它系統(tǒng)讀寫信息,客戶應(yīng)用軟件也可以通過OPC 規(guī)范的接口來讀寫硬件設(shè)備的信息(作為OPCClient)。我們在使OPC時,不必關(guān)心底層硬件內(nèi) 部的具體細節(jié),只需遵循OPC數(shù)據(jù)接口協(xié)議,就能夠從不同OPC數(shù)據(jù)服務(wù)器中取得數(shù)據(jù)[6]。

  3、OPC接口" title="OPC接口">OPC接口的設(shè)計

  OPC接口的設(shè)計包括OPC服務(wù)器端和客戶端兩個部分,其實質(zhì)就是連接數(shù)據(jù)源和數(shù)據(jù)使 用者之間的通道。目前,許多DCS產(chǎn)品都推出和集成了OPC服務(wù)器,例如基于Windows操作 系統(tǒng)的YOKOGAWA CS3000 DCS和ROSEMOUNT DELTA V DCS。因此,設(shè)計PID優(yōu)化" title="PID優(yōu)化">PID優(yōu)化整定 系統(tǒng)的OPC接口有很大的普遍性和實用性。

  3.1 OPC接口的選擇及實現(xiàn)

  OPC規(guī)范規(guī)定了兩套接口標準:OPC自定義接口和OPC自動化接口,如圖1所示。自定 義接口的效率高,通過該接口,客戶能夠發(fā)揮OPC服務(wù)器的最佳性能,采用C++語言的客戶 一般采用自定義接口方案;自動化接口使解釋性語言和宏語言訪問OPC服務(wù)器成為可能,采 用VB、Delphi等語言的客戶一般采用自動化接口[7]。

 

  圖 1 OPC 接口類型

  其中,客戶端程序的開發(fā)主要是指客戶端程序中 OPC 接口部分的開發(fā)??蛻舳顺绦虮?身可以完成很多復雜的數(shù)據(jù)處理與顯示功能,但需要通過OPC 接口部分訪問OPC 服務(wù)器, 對現(xiàn)場數(shù)據(jù)進行存取。設(shè)計時可根據(jù)不同的需求特點,應(yīng)用不同的接口標準。

  3.2 OPC數(shù)據(jù)存取服務(wù)器的訪問方式

  OPC客戶程序?qū)PC服務(wù)器中數(shù)據(jù)的訪問方式主要有同步、異步和訂閱三種。客戶程序 可按照一定的周期對服務(wù)器程序進行數(shù)據(jù)同步存取操作,此時客戶方的調(diào)用函數(shù)一直運行到 所有數(shù)據(jù)讀寫完成。在異步通信方式下,服務(wù)器程序定期刷新OPC項,并判斷其數(shù)值或品質(zhì) 是否變化,如果有變化則將變化后的數(shù)據(jù)發(fā)送給客戶程序,此時客戶方的調(diào)用函數(shù)可立刻返 回。顯然,異步通報方式的通信效率更高,但有多個客戶程序與服務(wù)器相連時,同步讀寫方 式更具時效性[8]。第三種訂閱方式,即OPC服務(wù)器監(jiān)控的數(shù)據(jù)在狀態(tài)發(fā)生改變時主動的通知 客戶程序[9],而不用客戶被動地、一次次地去查詢數(shù)據(jù),判斷其是否發(fā)生改變。對于每個組 對象,客戶程序可根據(jù)需要采用其中一種數(shù)據(jù)存取方式。

  4、PID優(yōu)化整定系統(tǒng)OPC接口的架構(gòu)與實現(xiàn)

  4.1 PID優(yōu)化整定系統(tǒng)的軟、硬件結(jié)構(gòu)

  PID優(yōu)化整定系統(tǒng)的硬件為一臺裝有OPC接口客戶端程序的PC機,根據(jù)實際情況分別采 用添加網(wǎng)卡或使用路由器的方式接入到控制系統(tǒng)的工程師站上,使PID優(yōu)化整定系統(tǒng)與工程 師站處在同一局域網(wǎng)內(nèi)。如果原有的工程師站上配有雙網(wǎng)卡,則直接使用網(wǎng)線與工程師站連 接;如果沒有雙網(wǎng)卡,或不方便接入的,則添加路由器,將兩臺機器接入同一網(wǎng)內(nèi)。

 

  圖2 系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)圖

  PID優(yōu)化整定系統(tǒng)的軟件是指優(yōu)化整定PC機上裝有的自行開發(fā)的PID優(yōu)化整定軟件。數(shù) 據(jù)采集的通訊接口方式使用OPC自動化接口方式,數(shù)據(jù)采集所搭建的環(huán)境結(jié)構(gòu)如圖2所示。

  4.2 OPC接口的實現(xiàn)

  由圖2可以看出,整個系統(tǒng)的服務(wù)器端采用DCS提供的OPC接口,在工程師站上放置使 用OPC數(shù)據(jù)訪問接口編寫的OPC應(yīng)用程序,它主要有兩個方面的功能:一是作為控制系統(tǒng)的 客戶端,連接下位機與上位機,讀取現(xiàn)場數(shù)據(jù);二是作為PID優(yōu)化整定系統(tǒng)的服務(wù)器端,連 接PID優(yōu)化整定系統(tǒng)與下位機,將數(shù)據(jù)讀取到PID優(yōu)化整定站,供后期數(shù)據(jù)計算使用。而數(shù) 據(jù)采集部分的客戶端,則放置在PID優(yōu)化整定站,是使用VB語言,按照OPC自動化訪問接口 編寫的應(yīng)用程序。讀取數(shù)據(jù)后,將相關(guān)數(shù)據(jù)保存在Access數(shù)據(jù)庫中,以便于以后隨時查詢使 用。在全部數(shù)據(jù)讀取過程中,應(yīng)用的網(wǎng)絡(luò)協(xié)議主要為TCP/IP協(xié)議。

  4.2.1 OPC服務(wù)器端的實現(xiàn)

  根據(jù)不同工廠DCS設(shè)備或者工程師站操作系統(tǒng)的具體情況,服務(wù)器端分別采用兩種接口 方式,即自動化接口和自定義接口編寫服務(wù)器端程序。例如,對于YOKOGAWA CS3000 DCS, 采用的是VB編寫的自動化接口方式;對于ROSEMOUNT DELTA V DCS采用的是C++編寫的 自定義接口方式。

  4.2.2 OPC客戶端的實現(xiàn)

  客戶端的主要實現(xiàn)方式是OPC自動化接口方式,使用VB編寫應(yīng)用程序。對于工廠各裝 置回路中pv(實測值)、sv(設(shè)定值)、mv(閥門開度)參數(shù)的采集使用同步通訊的方式; 而對于回路控制的自動、手動情況的采集則使用訂閱通訊的方式,即在參數(shù)(控制狀態(tài))發(fā) 生改變時主動通知客戶端程序。 OPC數(shù)據(jù)訪問對象由分層結(jié)構(gòu)組成,它由上而下包括OPC服務(wù)器對象(OPCServer)、 組對象(OPCGroup)、項對象(OPCItem),在設(shè)計OPC客戶端程序時,基本按照以上順 序進行連接。對于OPC自動化接口方式,OPC基金會專門為它的開發(fā)提供了“自動化包裝器” OPCDAAuto.dll,在編寫程序前,應(yīng)該首先在VB項目中引用該動態(tài)鏈接庫,這樣才能調(diào)用 OPC自動化規(guī)范中定義的屬性、方法和事件。客戶端程序設(shè)計的基本步驟如下:

 ?。?)在VB工程中添加對OPCDAAuto.dll的引用。

  (2)聲明OPC對象。

  (3)連接OPC服務(wù)器,創(chuàng)建OPC對象。設(shè)計時需要調(diào)用OPC服務(wù)器對象的“Connect” 方法,和OPC服務(wù)器建立連接。之后,用OPC服務(wù)器對象的“OPCGroups”屬性生成一個組 集合,再調(diào)用“Add”方法在OPC組集合中添加新的OPC組。最后,在對OPC服務(wù)器進行訪 問前,要使用“OPCItems”屬性生成項集合,并使用“Add”添加新的OPC項。

 ?。?)讀取數(shù)據(jù)。對于裝置回路PID參數(shù)采集采用同步讀取方式,對于裝置回路的控制 狀態(tài)采集采用訂閱讀取方式;最多可同時讀取16條回路的參數(shù)。

 ?。?)刪除OPC對象,斷開與服務(wù)器的連接。連接著OPC服務(wù)器的OPC應(yīng)用程序,在退 出之前必須斷開與OPC服務(wù)器的連接。否則,OPC服務(wù)器不知道OPC應(yīng)用程序的退出,計算 機資源就一直不能被釋放,長此以往,會造成計算機資源枯竭而產(chǎn)生嚴重問題。斷開連接時, 使用“Disconnect”方法;并將OPCItems、OPCGroup和OPCServer都置為Nothing,刪除對象。

  4.3 數(shù)據(jù)存儲及導出的實現(xiàn)

  為了給后期PID優(yōu)化整定提供大量完整的數(shù)據(jù),在數(shù)據(jù)采集過程中需要將大量數(shù)據(jù)保存 在Access數(shù)據(jù)庫中,以備使用。由于同時讀取多條回路,數(shù)據(jù)量很大,為避免在最后保存數(shù) 據(jù)時由于數(shù)據(jù)量過大而造成時間過慢,甚至是死機現(xiàn)象,設(shè)計時采取每讀取30個數(shù)據(jù)自動保 存一次的方法。另外,在把數(shù)據(jù)導出到Excel過程中,由于Excel自身的限制,一張Sheet保存 的數(shù)據(jù)有限,為了避免數(shù)據(jù)溢出,設(shè)計成每保存一定數(shù)據(jù)自動生成一張新的Sheet進行存儲。

  5、結(jié)束語

  以O(shè)PC為接口通訊方式的數(shù)據(jù)采集模塊是PID優(yōu)化整定系統(tǒng)的基礎(chǔ),該模塊及整個PID 優(yōu)化整定系統(tǒng)的設(shè)計都相對獨立于現(xiàn)場工程師站,使用OPC通訊也只進行讀操作而不進行寫 操作。該設(shè)計的好處是,既能使兩臺機器互相沒有影響,又能使客戶端采集到全部DCS數(shù)據(jù)。 鑒于石油化工企業(yè)的重要性,數(shù)據(jù)采集只讀不寫,具有較好的安全性,可以保證原系統(tǒng)數(shù)據(jù) 的安全和純潔,也避免了數(shù)據(jù)錯誤造成的影響,保證了生產(chǎn)的安全。目前,PID優(yōu)化整定系 統(tǒng)經(jīng)過實驗室長期檢驗,已經(jīng)穩(wěn)定的運行于國內(nèi)許多石油化工企業(yè)中,且運行狀況良好。 現(xiàn)在,絕大多數(shù)工控廠商為實現(xiàn)系統(tǒng)的開放性,其DCS都提供了OPC接口。同時,OPC 基金會也在不斷推出新的產(chǎn)品,從OPC DA到OPC XML-DA,再到OPC UA。OPC必然會向 更為廣泛的跨語言、跨平臺、企業(yè)級的方向發(fā)展。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。