1、引言
隨著國內外石油化工領域工業(yè)自動化的不斷發(fā)展,采用先進技術對現(xiàn)有裝置進行技術改 造,逐步提高裝置的生產規(guī)模和工藝技術水平,提高裝置的經濟效益是一種必然的趨勢。在 此趨勢下,很多企業(yè)希望通過先進控制的方法達到以上目的。而裝置先進控制以及回路自動 控制的基礎就是PID 參數(shù)的合適設置。 現(xiàn)階段 PID 參數(shù)的設置很大程度上依賴于操作工人的經驗,對于沒有經驗的工作人員 來說調整PID 參數(shù)有些難度。PID 優(yōu)化整定系統(tǒng)正是針對此問題,自行設計開發(fā)的系統(tǒng)軟件, 其目的是為了實現(xiàn)PID 參數(shù)整定的簡單化,對于沒有合適參數(shù)的回路通過計算得到接近的 參數(shù)值,對已有的參數(shù)給出優(yōu)化的參數(shù)值。PID 優(yōu)化整定系統(tǒng)的基礎是數(shù)據(jù)采集模塊。數(shù)據(jù)采集模塊以OPC 協(xié)議作為接口通訊方式,連接DCS 工程師站與上位機進行數(shù)據(jù)讀取。
2、DCS 及OPC 概述
DCS(Distributed Control System)集散控制系統(tǒng)產生于20 世紀70 年代,它滿足了大型 生產的自動化要求,大大提高了單套裝置的生產能力。在國內大型石油化工聯(lián)合企業(yè)中, 主要煉油化工裝置已經基本實現(xiàn)了DCS 控制,優(yōu)化了生產過程并提高了生產效率,但由于 大多數(shù)DCS 系統(tǒng)是封閉系統(tǒng),普遍缺乏統(tǒng)一、標準的開放式接口,難以滿足企業(yè)信息化和 管控一體化的發(fā)展要求。為了解決這些問題,一些與微軟公司合作的自動化硬件和軟件供應商聯(lián)合制定了一套稱為OPC 規(guī)范的接口協(xié)議,以此來提高過程控制工業(yè)中的自動化/控制 應用程序,現(xiàn)場系統(tǒng)/設備以及商業(yè)/辦公室應用程序之間的互操作性。
OPC是一個開放的工業(yè)接口標準,意指用于過程控制的OLE技術。OPC基于微軟的 OLE、COM和DCOM技術,包括一整套接口、屬性和方法的標準集,用于過程控制和制造 業(yè)自動化系統(tǒng)。OPC技術的實質是允許任何設備與其它設備自由通訊的一種機制,是一種 用于過程控制和工業(yè)自動化的即插即用的軟件技術,是一種過程實時數(shù)據(jù)交換的工業(yè)標準 。這個接口規(guī)范不但能夠應用于單臺計算機,而且可以支持網絡上分布式應用程序之間的 通訊,以及不同平臺上應用程序之間的通訊。其基本思想是:每個硬件供應商為其設備開發(fā) 一個通用的數(shù)據(jù)接口(即OPC Server),供其它系統(tǒng)讀寫信息,客戶應用軟件也可以通過OPC 規(guī)范的接口來讀寫硬件設備的信息(作為OPCClient)。我們在使OPC時,不必關心底層硬件內 部的具體細節(jié),只需遵循OPC數(shù)據(jù)接口協(xié)議,就能夠從不同OPC數(shù)據(jù)服務器中取得數(shù)據(jù)。
3、OPC接口的設計
OPC接口的設計包括OPC服務器端和客戶端兩個部分,其實質就是連接數(shù)據(jù)源和數(shù)據(jù)使 用者之間的通道。目前,許多DCS產品都推出和集成了OPC服務器,例如基于Windows操作 系統(tǒng)的YOKOGAWA CS3000 DCS和ROSEMOUNT DELTA V DCS。因此,設計PID優(yōu)化整定 系統(tǒng)的OPC接口有很大的普遍性和實用性。
3.1 OPC接口的選擇及實現(xiàn)
OPC規(guī)范規(guī)定了兩套接口標準:OPC自定義接口和OPC自動化接口,如圖1所示。自定 義接口的效率高,通過該接口,客戶能夠發(fā)揮OPC服務器的最佳性能,采用C++語言的客戶 一般采用自定義接口方案;自動化接口使解釋性語言和宏語言訪問OPC服務器成為可能,采 用VB、Delphi等語言的客戶一般采用自動化接口。
圖 1 OPC 接口類型
其中,客戶端程序的開發(fā)主要是指客戶端程序中 OPC 接口部分的開發(fā)。客戶端程序本 身可以完成很多復雜的數(shù)據(jù)處理與顯示功能,但需要通過OPC 接口部分訪問OPC 服務器, 對現(xiàn)場數(shù)據(jù)進行存取。設計時可根據(jù)不同的需求特點,應用不同的接口標準。
3.2 OPC數(shù)據(jù)存取服務器的訪問方式
OPC客戶程序對OPC服務器中數(shù)據(jù)的訪問方式主要有同步、異步和訂閱三種??蛻舫绦?可按照一定的周期對服務器程序進行數(shù)據(jù)同步存取操作,此時客戶方的調用函數(shù)一直運行到 所有數(shù)據(jù)讀寫完成。在異步通信方式下,服務器程序定期刷新OPC項,并判斷其數(shù)值或品質 是否變化,如果有變化則將變化后的數(shù)據(jù)發(fā)送給客戶程序,此時客戶方的調用函數(shù)可立刻返 回。顯然,異步通報方式的通信效率更高,但有多個客戶程序與服務器相連時,同步讀寫方 式更具時效性。第三種訂閱方式,即OPC服務器監(jiān)控的數(shù)據(jù)在狀態(tài)發(fā)生改變時主動的通知 客戶程序,而不用客戶被動地、一次次地去查詢數(shù)據(jù),判斷其是否發(fā)生改變。對于每個組 對象,客戶程序可根據(jù)需要采用其中一種數(shù)據(jù)存取方式。
4、PID優(yōu)化整定系統(tǒng)OPC接口的架構與實現(xiàn)
4.1 PID優(yōu)化整定系統(tǒng)的軟、硬件結構
PID優(yōu)化整定系統(tǒng)的硬件為一臺裝有OPC接口客戶端程序的PC機,根據(jù)實際情況分別采 用添加網卡或使用路由器的方式接入到控制系統(tǒng)的工程師站上,使PID優(yōu)化整定系統(tǒng)與工程 師站處在同一局域網內。如果原有的工程師站上配有雙網卡,則直接使用網線與工程師站連 接;如果沒有雙網卡,或不方便接入的,則添加路由器,將兩臺機器接入同一網內。
圖2 系統(tǒng)網絡結構圖
PID優(yōu)化整定系統(tǒng)的軟件是指優(yōu)化整定PC機上裝有的自行開發(fā)的PID優(yōu)化整定軟件。數(shù) 據(jù)采集的通訊接口方式使用OPC自動化接口方式,數(shù)據(jù)采集所搭建的環(huán)境結構如圖2所示。
4.2 OPC接口的實現(xiàn)
由圖2可以看出,整個系統(tǒng)的服務器端采用DCS提供的OPC接口,在工程師站上放置使 用OPC數(shù)據(jù)訪問接口編寫的OPC應用程序,它主要有兩個方面的功能:一是作為控制系統(tǒng)的 客戶端,連接下位機與上位機,讀取現(xiàn)場數(shù)據(jù);二是作為PID優(yōu)化整定系統(tǒng)的服務器端,連 接PID優(yōu)化整定系統(tǒng)與下位機,將數(shù)據(jù)讀取到PID優(yōu)化整定站,供后期數(shù)據(jù)計算使用。而數(shù) 據(jù)采集部分的客戶端,則放置在PID優(yōu)化整定站,是使用VB語言,按照OPC自動化訪問接口 編寫的應用程序。讀取數(shù)據(jù)后,將相關數(shù)據(jù)保存在Access數(shù)據(jù)庫中,以便于以后隨時查詢使 用。在全部數(shù)據(jù)讀取過程中,應用的網絡協(xié)議主要為TCP/IP協(xié)議。
4.2.1 OPC服務器端的實現(xiàn)
根據(jù)不同工廠DCS設備或者工程師站操作系統(tǒng)的具體情況,服務器端分別采用兩種接口 方式,即自動化接口和自定義接口編寫服務器端程序。例如,對于YOKOGAWA CS3000 DCS, 采用的是VB編寫的自動化接口方式;對于ROSEMOUNT DELTA V DCS采用的是C++編寫的 自定義接口方式。
4.2.2 OPC客戶端的實現(xiàn)
客戶端的主要實現(xiàn)方式是OPC自動化接口方式,使用VB編寫應用程序。對于工廠各裝 置回路中pv(實測值)、sv(設定值)、mv(閥門開度)參數(shù)的采集使用同步通訊的方式; 而對于回路控制的自動、手動情況的采集則使用訂閱通訊的方式,即在參數(shù)(控制狀態(tài))發(fā) 生改變時主動通知客戶端程序。 OPC數(shù)據(jù)訪問對象由分層結構組成,它由上而下包括OPC服務器對象(OPCServer)、 組對象(OPCGroup)、項對象(OPCItem),在設計OPC客戶端程序時,基本按照以上順 序進行連接。對于OPC自動化接口方式,OPC基金會專門為它的開發(fā)提供了“自動化包裝器” OPCDAAuto.dll,在編寫程序前,應該首先在VB項目中引用該動態(tài)鏈接庫,這樣才能調用 OPC自動化規(guī)范中定義的屬性、方法和事件??蛻舳顺绦蛟O計的基本步驟如下:
(1)在VB工程中添加對OPCDAAuto.dll的引用。
(2)聲明OPC對象。
(3)連接OPC服務器,創(chuàng)建OPC對象。設計時需要調用OPC服務器對象的“Connect” 方法,和OPC服務器建立連接。之后,用OPC服務器對象的“OPCGroups”屬性生成一個組 集合,再調用“Add”方法在OPC組集合中添加新的OPC組。最后,在對OPC服務器進行訪 問前,要使用“OPCItems”屬性生成項集合,并使用“Add”添加新的OPC項。
(4)讀取數(shù)據(jù)。對于裝置回路PID參數(shù)采集采用同步讀取方式,對于裝置回路的控制 狀態(tài)采集采用訂閱讀取方式;最多可同時讀取16條回路的參數(shù)。
(5)刪除OPC對象,斷開與服務器的連接。連接著OPC服務器的OPC應用程序,在退 出之前必須斷開與OPC服務器的連接。否則,OPC服務器不知道OPC應用程序的退出,計算 機資源就一直不能被釋放,長此以往,會造成計算機資源枯竭而產生嚴重問題。斷開連接時, 使用“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)象,設計時采取每讀取30個數(shù)據(jù)自動保 存一次的方法。另外,在把數(shù)據(jù)導出到Excel過程中,由于Excel自身的限制,一張Sheet保存 的數(shù)據(jù)有限,為了避免數(shù)據(jù)溢出,設計成每保存一定數(shù)據(jù)自動生成一張新的Sheet進行存儲。
5、結束語
以OPC為接口通訊方式的數(shù)據(jù)采集模塊是PID優(yōu)化整定系統(tǒng)的基礎,該模塊及整個PID 優(yōu)化整定系統(tǒng)的設計都相對獨立于現(xiàn)場工程師站,使用OPC通訊也只進行讀操作而不進行寫 操作。該設計的好處是,既能使兩臺機器互相沒有影響,又能使客戶端采集到全部DCS數(shù)據(jù)。 鑒于石油化工企業(yè)的重要性,數(shù)據(jù)采集只讀不寫,具有較好的安全性,可以保證原系統(tǒng)數(shù)據(jù) 的安全和純潔,也避免了數(shù)據(jù)錯誤造成的影響,保證了生產的安全。目前,PID優(yōu)化整定系 統(tǒng)經過實驗室長期檢驗,已經穩(wěn)定的運行于國內許多石油化工企業(yè)中,且運行狀況良好。 現(xiàn)在,絕大多數(shù)工控廠商為實現(xiàn)系統(tǒng)的開放性,其DCS都提供了OPC接口。同時,OPC 基金會也在不斷推出新的產品,從OPC DA到OPC XML-DA,再到OPC UA。OPC必然會向 更為廣泛的跨語言、跨平臺、企業(yè)級的方向發(fā)展。
責任編輯:gt
-
數(shù)據(jù)采集
+關注
關注
39文章
6108瀏覽量
113653 -
服務器
+關注
關注
12文章
9160瀏覽量
85421 -
PID
+關注
關注
35文章
1472瀏覽量
85521
發(fā)布評論請先 登錄
相關推薦
評論