蔡曉霞, 錢新標
(1.紹興職業(yè)技術學院,浙江 紹興 312000; 2.杭州銀界科技有限公司,浙江 杭州 310013)
?
PLC控制系統(tǒng)中OPC技術應用效率研究
蔡曉霞1, 錢新標2
(1.紹興職業(yè)技術學院,浙江 紹興 312000; 2.杭州銀界科技有限公司,浙江 杭州 310013)
針對SIMATIC NET等常用OPC軟件包在實際工程應用中存在使用不方便和占用系統(tǒng)資源大等問題,提出了采用InCoSol公司的S7A作為OPC服務器,VB編寫OPC客戶端,實現(xiàn)客戶端與現(xiàn)場設備S7-300/400PLC的數(shù)據(jù)信息的傳遞;同時提出了OPC與PLC之間通信以“數(shù)據(jù)塊”的形式交換數(shù)據(jù),將OPC與IFIX的I/O有機融合。實踐證明,系統(tǒng)占用資源小,通信穩(wěn)定且數(shù)據(jù)傳輸效率高。
PLC;OPC;通信;iFIX;S7A
OPC(OLE for Process Control,用于過程控制的OLE)是一個工業(yè)標準,OPC基金會是管理該標準的國際組織,OPC基金會現(xiàn)有會員遍布全球,包括世界上所有主要的自動化控制系統(tǒng)、儀器儀表及過程控制系統(tǒng)的公司[1]。 OPC技術是基于微軟的OLE(現(xiàn)在的Active X)、COM (部件對象模型)和DCOM (分布式部件對象模型)的技術,其包括一整套接口、屬性和方法的標準集,用于過程控制和制造業(yè)自動化系統(tǒng)[2]。
OPC為工業(yè)數(shù)據(jù)監(jiān)控軟件的開發(fā)帶來了便利,使得開發(fā)人員無需花費大量時間研究各種設備的通訊協(xié)議,其設備間的通訊由各個設備廠家的OPCServer來完成,而開發(fā)人員只要在應用程序中,添加相應的客戶端控件,并且和OPC服務器連接,就可以接收/發(fā)送數(shù)據(jù)。當前主流的自動化控制器制造商和軟件提供商都能全方位地支持OPC[3]。如SIEMENS為其S7-300/400可編程控制器(PLC)提供了SIMATIC NET軟件包, OMRON為其可編程控制器提供了OMRON-OPCServer軟件包等[4]。
當計算機安裝了OPCServer,進行正確的設置后,可建立與可編程控制器通訊,此時可編程控制器的所有存儲器都在OPCServer中可以瀏覽,開發(fā)人員可以從中取得所需要的一切數(shù)據(jù),這是它的優(yōu)點;在工程實踐中,它卻可能成為致命的缺陷。
本文提出了兩個問題,一是使用的方便性實用性問題,二是占用系統(tǒng)資源及效率問題,并針對存在的問題提出了相應的解決方案。
SIMATIC NET軟件包是西門子公司為其S7-300/400可編程控制提供的OPC服務器軟件,容量為一張光盤,且必須借助STEP7軟件才能完成OPC服務器的應用[5]。這些軟件的安裝程序繁瑣,經常出現(xiàn)安裝失敗現(xiàn)象;軟件運行時,后臺要運行許多與之相關的進程,占用不少的系統(tǒng)資源。
以ETHERNET建立SIMATIC_NET OPC服務器與S7-300PLC的連接為例,西門子公司官方提供的教程達35頁,除了大量的前提條件,其主要操作步驟有五大步,有的大步驟中又有多達9個分步驟,如圖1所示。如此多的步驟,只要一個地方未正確設置,就不能建立通訊連接,且不會提示不能連接的原因,也沒有相應的在線幫助。
圖1 SIMATIC NET教程
著名的iFIX組態(tài)軟件有一款驅動程序也要求系統(tǒng)安裝SIMATIC NET,將該計算機作為一個PC_Station,然后進行網絡組態(tài),這個過程比較復雜,且在操作過程中容易出現(xiàn)各種失敗。
SIMATIC NET,集中體現(xiàn)了當前OPC服務器軟件普遍存在的缺點:安裝不易,使用麻煩,效率低下。
InCoSol公司(Industrial Communications Solutions)專門做一個產品,即S7A。這款產品既是IFIX與西門子S7-300/400的I/O驅動程序,同時也是一個針對S7-300/400的OPCServer。
S7A的7.20 224版本的軟件安裝容量不到4M,實在是短小精悍。它既可以作為IFIX的I/O驅動器進行安裝,也可以獨立安裝在計算機上,作為OPC服務器。安裝了InCoSol公司的S7A,就不再需要西門子軟件的支持。它的使用也很方便,安裝完成后,運行S7ADidw.exe進行設置。以ETHERNET建立OPC與S7-300PLC的連接為例:第一步,選擇CHANNEL,即S7 TCP/IP,至于CHANNEL的名字是任意取的,如圖2所示。第二步,在上述的CHANNEL下面增加一個命名為PLC1的設備,并為PLC1配置IP地址。第三步,定義三個數(shù)據(jù)塊分別是DB1的0~99字節(jié)、M區(qū)的0~19字節(jié)、I區(qū)的0~19字節(jié)。然后,把這個配置文件命名為SH2013.S7A,保存到默認路徑下;在OPTION菜單下進入SETUP,并修改默認的配置文件為SH2013.S7A。如果硬件已經連接,OPC就能正常工作,如圖3所示。
圖2 S7A設置一個名為S7_TCP的通道
圖3 添加1個站點和3個數(shù)據(jù)塊
S7A與SIMATIC NET比較,具有安裝簡單、易于使用,而且非常高效。以S7A作為OPCServer,使用VB可以輕易編寫一個OPC的客戶端,實現(xiàn)從S7-300/400PLC采集數(shù)據(jù),然后根據(jù)要求存儲到后臺數(shù)據(jù)庫,或者進行數(shù)據(jù)分析處理,并轉發(fā)到模擬屏,等等。如圖4所示。
圖4 添加了1個站點和3個數(shù)據(jù)塊
在某高速公路隧道群數(shù)據(jù)監(jiān)控項目中,監(jiān)控軟件采用IFIX作為開發(fā)平臺,現(xiàn)場區(qū)域控制器16套、照明控制器14套、通風控制器6套,全部為OMRON的CJ1M可編程控制器[6]。I/O驅動開始采用OPC驅動,先用1套PLC進行測試,通信正常。在現(xiàn)場調試過程中,隨著連接到系統(tǒng)的PLC站點的增加,系統(tǒng)響應速度越來越慢,當PLC站點數(shù)達到10個左右時,數(shù)據(jù)刷新時間超過5秒,系統(tǒng)響應速度變慢,滯后嚴重,影響了監(jiān)控系統(tǒng)的正常運行,此刻必須放棄OPC。系統(tǒng)改用專用的I/O驅動S7A后,整個系統(tǒng)響應時間在1秒之內,目前已經穩(wěn)定運行一年多。
為何OPC不如I/O驅動高效,本文通過分析OPC工作流程和I/O驅動的工作流程來說明這一問題。圖5為目前OPC服務器的流程,如前述的SIMATIC NET和OMRON-OPCserver等。
圖6為IFIX的I/O驅動的工作流程。圖5中 “讀取標簽數(shù)據(jù)”和圖6中“讀數(shù)據(jù)塊數(shù)據(jù)”都是計算機與PLC之間交換數(shù)據(jù)的過程,需要使用網絡資源,這是最費時間的一個節(jié)點,也是系統(tǒng)的瓶頸所在。對于隧道群數(shù)據(jù)監(jiān)控項目,假設標簽數(shù)是3 600個,站點數(shù)是36個。完成一次數(shù)據(jù)刷新,按照圖5流程,需要交換數(shù)據(jù)3 600次;按照圖6流程,(假設每個站定義3個數(shù)據(jù)塊),只需要交換數(shù)據(jù)108次。交換數(shù)據(jù)次數(shù)越少,通訊占用的系統(tǒng)資源也越少,這正是IFIX的I/O驅動高效的原因。當然,數(shù)據(jù)塊中的字節(jié)數(shù)越多,相對時間也會越長,因此,數(shù)據(jù)塊中盡量集中包含有用的數(shù)據(jù)(在PLC程序設計時配合考慮)。
事實上,OPC和IFIX的I/O驅動并非對立,兩者完全可以融為一體。前述的S7A之所以是高效的OPC,正因為它同時是IFIX的I/O驅動,它是兩者的完美融合。
圖5 常用OPC工作流程圖 圖6 IFIX的I/O驅動的工作流程圖
OPC作為一個工業(yè)通信標準,是為方便用戶而制定,然而其通信效率普遍非常低下,只能做一些小應用。若OPC和PLC交換數(shù)據(jù)時,調整為以“數(shù)據(jù)塊”的形式進行,可以大幅提高通信效率。因此,希望“數(shù)據(jù)塊”能夠成為OPC標準的內容之一。
[1] 俞輝.OPC技術在電力機車振動試驗系統(tǒng)中的應用[J]. 自動化應用,2013,54(12):67-70.
[2] 郭敬,李定坤,朱斌.基于OPC協(xié)議的上料機器人控制系統(tǒng)[J].制造業(yè)自動化,2014,36(1):6-8.
[3] 陳維琨,吳鳳英.基于OPC技術的軋管設備工業(yè)網絡的通訊改造[J].電氣傳動,2015,45(4):73-75.
[4] 宋澤帥,王守城,段俊勇,等. 基于OPC技術的電能數(shù)據(jù)采集系統(tǒng)設計[J].電氣自動化2013,35(6):9-10.
[5] 丁承君,張春慧,王宏. 基于OPC技術的IFIX與S7-300的通信[J].煤,2010,19(5):71-74.
[6] 蔡曉霞,趙丹兵,錢新標.基于iFIX高速公路隧道監(jiān)控系統(tǒng)的設計與實現(xiàn)[J].電子技術應用,2011,37(12):22-24.
A Research on the Efficiency of OPC Application in PLC Control Systems
Cai Xiaoxia1, Qian Xinbiao2
(1. Shaoxing Vocational Technical College, Shaoxing Zhejiang 312000, China;2. Hangzhou Yinjie Science & Technology Co., Ltd., Hangzhou Zhejiang 310013, China)
In respect of inconvenient use and high system resource occupation of SIMATIC NET and other commonly used OPC software packages in their practical engineering applications, this paper proposes application of InCoSol’s S7A as OPC server and VB prepared OPC client to realize data information transmission between the client side and S7-300/400PLC. It is further proposed that data should be exchanged in the form of “data block” between OPC and PLC so that OPC and IFIX I/O may be integrated organically. Practice has proved that this design scheme occupies limited system resources and ensures stable communication and high data transmission efficiency.
PLC; OPC; communication; iFIX; S7A
10.3969/j.issn.1000-3886.2016.04.034
TD672
A
1000-3886(2016)04-0110-03
蔡曉霞(1978-),女,浙江天臺人,副教授,碩士,研究方向:設備遠程智能維護與智能控制。 錢新標(1968 -),男,金華人,高級工程師,主要從事數(shù)據(jù)采集系統(tǒng)的研究。
定稿日期: 2015-12-24