趙龍濤,喬元華,周勝梅,魏蘭磊,楊 靖
(1.山東科技大學(xué) 信息與電氣工程學(xué)院,山東 青島 266590;2.滕州市東大礦業(yè)集團(tuán) 山東 滕州 277518;3.桂林電子科技大學(xué) 電子工程與自動化學(xué)院,廣西 桂林 541004)
隨著科技的發(fā)展和人們生活水平的提高,人們對工作環(huán)境的要求也在逐漸的提高,人們的自我保護(hù)意識、維權(quán)意識,都達(dá)到了一個相當(dāng)高的程度。工作環(huán)境的好壞,直接影響著人們的身心健康。在眾多的工作中,礦井里的工作環(huán)境無疑是比較殘酷的。隨著科技的進(jìn)步與發(fā)展,礦井中的工作環(huán)境已有了很大的改善。礦井工作環(huán)境的安全與否,已成為衡量一個礦業(yè)發(fā)展的重要指標(biāo)。因此,對礦井環(huán)境的檢測,也變得尤為重要。
然而,在當(dāng)今的眾多礦井環(huán)境檢測系統(tǒng)存在許多問題:
1)目前的多數(shù)系統(tǒng)多具有單一性的特點(diǎn),不能在同一個控制平臺上全面的顯示眾多的檢測數(shù)據(jù);
2)大多數(shù)價格比較昂貴,不便于全面的推廣;
3)由于許多硬件生產(chǎn)廠家的不同,致使硬件之間的通訊往往存在銜接性的問題。
鑒于目前礦井環(huán)境檢測系統(tǒng)中存在的眾多問題,筆者根據(jù)煤礦安全的檢測的實(shí)際需要,采用OPC技術(shù)對現(xiàn)有的硬件資源進(jìn)行優(yōu)化配置,使本檢測系統(tǒng)盡量達(dá)到先進(jìn)、實(shí)用、完善、經(jīng)濟(jì)的目的。
OPC(OLE for Process Control)是由OPC基金會設(shè)計推出的一種為過程控制設(shè)計的OLE技術(shù)[1]。實(shí)質(zhì)上,OPC是一項(xiàng)工業(yè)控制中的技術(shù)規(guī)范與標(biāo)準(zhǔn),是在微軟公司的OLE/COM/DCOM技術(shù)基礎(chǔ)上,采用Client/Server模型,定義的一個開放式的接口。在定義中,OPC SERVER可以是數(shù)據(jù)的提供者,OPC程序可以是數(shù)據(jù)的使用者[2]。
OPC的對象主要由服務(wù)器 (Server)、 組 (Group) 和項(xiàng)(Item)3部分組成。其中,服務(wù)器對應(yīng)OPC SERVER,即為一種設(shè)備的驅(qū)動程序,負(fù)責(zé)維護(hù)服務(wù)器有關(guān)的信息。每一個服務(wù)器中可以包含多個組,每一個組可以提供一種管理項(xiàng)的機(jī)制,并且負(fù)責(zé)維護(hù)自身的信息,同時從邏輯上完成對項(xiàng)的管理。每一個組中可以包含多個項(xiàng),項(xiàng)作為與OPC服務(wù)器的數(shù)據(jù)連接[3]。
OPC最大的優(yōu)勢是即插即用,即采用標(biāo)準(zhǔn)的規(guī)范方式配置硬件與軟件接口的連接,使硬件資源更加方便的加入到已有的系統(tǒng)中,不需要特別復(fù)雜的配置即可投入使用,且對現(xiàn)有的系統(tǒng)沒有什么影響。系統(tǒng)中的信息可以很方便的進(jìn)行數(shù)據(jù)共享,實(shí)現(xiàn)數(shù)據(jù)維護(hù)、數(shù)據(jù)監(jiān)控、數(shù)據(jù)存儲與打印的目的。
OPC技術(shù)的使用,對開發(fā)者來說可以不必過多考慮硬件設(shè)備驅(qū)動的的問題,不必去設(shè)計特定的接口,使開發(fā)變得較為簡潔容易。對于用戶而言,可以選擇各種商業(yè)的軟件包,使得系統(tǒng)集成的成本大大降低。由于逐漸忽略了硬件不同生產(chǎn)廠家的問題,使得系統(tǒng)的修改與升級也變得簡便起來。
在礦井環(huán)境監(jiān)測中,通常需要對礦井瓦斯、風(fēng)速、粉塵、一氧化碳、溫度、濕度、氧氣、壓力、硫化氫和二氧化碳等多種參數(shù)進(jìn)行檢測。目前的監(jiān)控檢測系統(tǒng)多具有單一性的特點(diǎn),即使是對多種數(shù)據(jù)的檢測,也往往具有相對的片面性。由于不同的生產(chǎn)廠家對各種儀器設(shè)計的不同,每種儀器的優(yōu)缺點(diǎn)各異,通信之間往往存在著多種弊端。而采用OPC技術(shù)對各種硬件資源進(jìn)行優(yōu)化,使各種數(shù)據(jù)參數(shù)均能顯示到一個上位機(jī)上,方便對礦井中各個參數(shù)的檢測[4]。
在礦井中采用SIMENS的S7-400H系列模塊,進(jìn)行礦井環(huán)境數(shù)據(jù)的采集處理與通信。傳感器采集的模擬信號通過模擬量輸入模塊SM-431,將過程模擬信號轉(zhuǎn)換成S7-400H內(nèi)部可以處理的數(shù)字信號,由于SM-431:AI16*13位為16點(diǎn)輸入,可測量的電壓/電流無量程限制,具有13位分辨率,且模擬部分與總線分離,適合本設(shè)計的應(yīng)用。
經(jīng)SM-431處理的信號傳到CPU414-4H中,以其為核心,利用SIMENS S7通訊網(wǎng)絡(luò)中的以太網(wǎng)及PROFIBUS現(xiàn)場總線,采用兩層網(wǎng)絡(luò)控制結(jié)構(gòu)。上層以PC機(jī)為監(jiān)控平臺,通過以太網(wǎng)(TCP/IP)建立上位機(jī)和下位機(jī)PLC S7-400的通信連接。通過C#編寫的上位機(jī)軟件對礦井的實(shí)時數(shù)據(jù)進(jìn)行監(jiān)控顯示,并通過數(shù)據(jù)庫SQL SERVER進(jìn)行相關(guān)數(shù)據(jù)的存儲,以便對歷史數(shù)據(jù)的查詢、打印等。總體硬件配置結(jié)構(gòu)圖如圖1所示。

圖1 硬件配置結(jié)構(gòu)圖Fig.1 Structure diagram of the hardware configuration
文中以 SIMATIC NET作為OPC的服務(wù)器,SIMATIC NET是一種公開的、多元的通訊系統(tǒng),包含了西門子公司的大部分網(wǎng)卡驅(qū)動程序,可以用它實(shí)現(xiàn)現(xiàn)場PLC、主機(jī)、工作站和個人電腦之間的聯(lián)網(wǎng)通訊。作為一種高效的通訊網(wǎng)絡(luò)體系,主要支持工業(yè)以太網(wǎng)、PROFIBUS現(xiàn)場總線、A-S Interface前端總線等。SIMATIC NET OPC服務(wù)器不僅提供了數(shù)據(jù)訪問接口,同時還提供了報警和事件的接口等多種功能[5]。
安裝必備的軟件STEP7,它是一個獨(dú)立的軟件包,可以用來創(chuàng)建S7-400,S7-300和PC項(xiàng)目,同時對S7的功能模塊進(jìn)行編輯。通過STEP7對PC站進(jìn)行調(diào)試,并在PC站和S7-400H系統(tǒng)中設(shè)置一個冗余的S7的連接。
通過如圖2所示,在SMATIC NET軟件中根據(jù)圖中的步驟建立OPC服務(wù)器與S7-400H的連接,當(dāng)所有步驟完成后,可以在OPC Scout中測試連接的正確性。

圖2 OPC SERVER與S7-400H創(chuàng)立連接的步驟圖Fig.2 Structure diagram of the connection between OPC SERVER and S7-400H
實(shí)現(xiàn)OPC數(shù)據(jù)的訪問有3種方式,分別是同步通訊、異步通訊和訂閱方式通訊[6]。其中訂閱方式通常情況下也屬于異步通訊的范疇。
同步通訊,即當(dāng)OPC客戶程序?qū)PC服務(wù)器進(jìn)行讀寫數(shù)據(jù)的操作時,OPC客戶程序必須等待一段時間,直到OPC服務(wù)器所有的操作全部完成后,OPC客戶程序才能返回。由于OPC客戶程序要等待一段時間,這樣使得同步通訊的效率大大降低。當(dāng)有大量的程序需要進(jìn)行操作時,必然導(dǎo)致OPC客戶程序的堵塞。因此,同步通訊只適用于那種簡單的、數(shù)據(jù)量較少的通訊場合。
異步通訊,即OPC客戶程序要對OPC服務(wù)器進(jìn)行相關(guān)操作時,OPC客戶程序操作完成后立即返回,不需要相應(yīng)的等待,可以去完成其它的操作。異步通訊的通訊效率在很大程度上搞過同步通訊,異步通訊的優(yōu)勢,使其比較適合與大量數(shù)據(jù)的通訊場合或者是多個OPC客戶程序?qū)我籓PC服務(wù)器訪問的情況[7]。
本設(shè)計中,即采用異步通訊的方式實(shí)現(xiàn)OPC客戶端對OPC服務(wù)器的訪問。現(xiàn)在采用自定義接口在C#中實(shí)現(xiàn)OPC數(shù)據(jù)的訪問,具體的操作步驟如圖3所示。

圖3 建立異步讀寫的步驟圖Fig.3 Structure diagram of the steps to build asynchronous reading and writing
在C#中的Windows窗體,進(jìn)行相應(yīng)窗口的設(shè)計,主界面frmMaimForm顯示各個采集站點(diǎn)的工作情況,以及對實(shí)時數(shù)據(jù)的監(jiān)控,可以通過comboBox1的下拉列表對礦井中相應(yīng)基站的查看,可以通過菜單中的連接進(jìn)入相對應(yīng)的子窗口查看,通過comboBox2的下拉列表對礦井中單一數(shù)據(jù)匯總,比如在某一時刻,各個采集點(diǎn)的溫度情況對比。在主窗口中可以通過相應(yīng)的控件,查看及設(shè)定子窗口中的信息。如圖4所示,上位機(jī)的結(jié)構(gòu)功能圖。

圖4 上位機(jī)結(jié)構(gòu)功能圖Fig.4 Structure diagram of computer configuration and function
該上位機(jī)具有的功能優(yōu)勢:
1)實(shí)時顯示 將檢測到的眾多數(shù)據(jù),實(shí)時的顯示在上位機(jī)上,并繪出相應(yīng)的趨勢曲線。利用Crystal Sports進(jìn)行相關(guān)數(shù)據(jù)的分析,顯示各種需要的圖表、曲線,進(jìn)而完成導(dǎo)出或打印的工作。
2)數(shù)據(jù)定時存儲 把生產(chǎn)現(xiàn)場的數(shù)據(jù)信息、設(shè)備運(yùn)行狀態(tài)及報警信息等數(shù)據(jù)儲存到SQL SERVER數(shù)據(jù)庫中,方便備用查詢及打印。
3)報警功能 對各種重要的參量設(shè)定報警界限,并根據(jù)相關(guān)數(shù)據(jù)的重要指標(biāo),設(shè)定報警優(yōu)先級。進(jìn)而方便操作員根據(jù)報警情況,有先后的去排除故障。
4)數(shù)據(jù)分析 對SQL Server數(shù)據(jù)庫中的大量數(shù)據(jù)經(jīng)行分析,對各種傳感器采集的信息進(jìn)行融合分析,采用特定的算法分析,進(jìn)而完成礦井中的環(huán)境檢測。
5)操作簡便 操作界面簡潔,可觀測數(shù)據(jù)顯示簡單明了。
隨著OPC技術(shù)的不斷應(yīng)用,各種設(shè)備間的通訊變得簡單起來,使控制系統(tǒng)的開發(fā)更靈活、更簡便,更易于擴(kuò)展。如本設(shè)計中利用C#和OPC技術(shù)設(shè)計的礦井環(huán)境檢測系統(tǒng)就具有操作簡單,聯(lián)網(wǎng)方便,數(shù)據(jù)共享,實(shí)時監(jiān)控,數(shù)據(jù)分析以及一定的可擴(kuò)展性的優(yōu)點(diǎn)。
[1]張燁林,陳德海.淺談OPC技術(shù)應(yīng)用[J].科技信息,2008(2):66.ZHANG Ye-lin,CHEN De-hai.Talking about the application of OPC technology[J].Science&Technology Information,2008(2):66.
[2]王樹東,王洪波,譚華,等.OPC技術(shù)在城市污水處理系統(tǒng)中的應(yīng)用研究[J].電氣自動化,2011,33(3):35.
WANG Shu-dong,WANG Hong-bo,TAN Hua,et al.Application and research of OPC technology in the control system of urban sewage treatment[J].Electric Automation,2011,33(3):35.
[3]張曉宇,王加軍.OPC技術(shù)在建筑智能化控制中的應(yīng)用[J].通信與廣播電視,2009(2):30-34.
ZHANG Xiao-yu,WANG Jia-jun.Application ofOPC technology in the controlofbuilding intelligence[J].Communications&Radio and Television,2009(2):30-34.
[4]王冬梅.基于PLC和智能傳感器模塊的礦井安全參數(shù)檢測系統(tǒng)[J].礦山機(jī)械,2010(18):67-70.
WANG Dong-mei.Monitoring system formine safety parameters based on PLC and intelligent sensor module[J].Mine&Machine,2010(18):67-70
[5]黃欣敏.基于C#語言的工業(yè)計算機(jī)與S7-300的OPC通訊[J].重型機(jī)械,2011(5):39-42.
HUANG Xin-min.Implementation ofC# based OPC communication between industrial computer and S7-300,Heavy Machinery,2011(5):39-42.
[6]西門子(中國)有限公司.如何在C#中實(shí)現(xiàn)OPC數(shù)據(jù)訪問.[EB/OL].(2009-05).http://wenku.baidu.com/view/cbddo876 aaf ff3ffe47ace3.html.
[7]朱立軍,安娜,陳未如.基于Visual C#的OPC客戶端實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù),2009(2):171-173.
ZHU Li-jun,AN Na,CHEN Wei-ru.Implementation of OPC client based on visual C#[J].Modern Electronic Technology,2009(2):171-173.
[8]錢燁,巨林倉,李飛翔.軟冗余PLC控制在工業(yè)鏈條鍋爐的應(yīng)用[J].陜西電力,2009(7):54-56.
QIAN Ye,JU Lin-cang,LI Fei-xiang.Application of softwareredundancy PLC control in industrial grate boiler[J].Shaanxi Electric Power,2009(7):54-56.